Как стать автором
Обновить
1
0
Анна Рожкова @RogotulkA

Пользователь

Отправить сообщение

Как я сделал синтез своего голоса

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров33K

Всем привет! Меня зовут Гриша Стерлинг, я занимаюсь синтезом речи в SberDevices. Недавно прошла конференция AI Journey, где я рассказал, как сделал синтез своего голоса. За 15 минут выступления я не успел рассказать все, поэтому решил написать большой пост с деталями. Он будет интересен датасаентистам, людям из бизнеса и ai‑энтузиастам. Приглашаю всех под кат.

Читать дальше
Всего голосов 24: ↑22 и ↓2+25
Комментарии8

Спам, спам, спам…

Время на прочтение4 мин
Количество просмотров35K
Каждый активный абонент в среднем получает более четырех нежелательных звонков в неделю — это реклама, предложения банков, иногда просто мошенничество. Большинство клиентов негативно реагируют на такого рода звонки. Для решения этой проблемы мы разработали услугу “Блокировка спам-звонков”, подключив которую, пользователь перестает получать нежелательные звонки, а в конце каждого дня система оповещает абонента о вызовах, которые были заблокированы. В этой статье data scientist’ы МТС Анна Рожкова (@RogotulkA) и Ольга Герасимова(@ynonaolga) расскажут как разработали алгоритм, отличающий номера спамеров от остальной абонентской базы.


Читать дальше →
Всего голосов 17: ↑12 и ↓5+12
Комментарии77

Туториал по Uplift моделированию. Часть 2

Время на прочтение7 мин
Количество просмотров30K


В первой части мы познакомились с uplift моделированием и узнали, что метод позволяет выбирать оптимальную стратегию коммуникации с клиентом, а также разобрали особенности сбора данных для обучения модели и несколько базовых алгоритмов. Однако эти подходы не позволяли оптимизировать uplift напрямую. Поэтому в этой части разберем более сложные, но не менее интересные подходы.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+12
Комментарии5

Туториал по uplift моделированию. Часть 1

Время на прочтение9 мин
Количество просмотров94K

Команда Big Data МТС активно извлекает знания из имеющихся данных и решает большое количество задач для бизнеса. Один из типов задач машинного обучения, с которыми мы сталкиваемся – это задачи моделирования uplift. С помощью этого подхода оценивается эффект от коммуникации с клиентами и выбирается группа, которая наиболее подвержена влиянию.

Такой класс задач прост в реализации, но не получил большого распространения в литературе про машинное обучение. Небольшой цикл статей, подготовленный Ириной Елисовой (iraelisova) и Максимом Шевченко (maks-sh), можно рассматривать как руководство к решению таких задач. В рамках него мы познакомимся с uplift моделями, рассмотрим, чем они отличаются от других подходов, и разберем их реализации.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+27
Комментарии4

Дерево ван Эмде Боаса

Время на прочтение6 мин
Количество просмотров19K
Всем доброго времени суток!

Сегодня я расскажу вам об одной интересной структуре данных, про которую слышали лишь немногие и про которую очень незаслуженно мало написано в рунете, да и в англоязычном информации, в общем-то, тоже негусто. Решено было исправить ситуацию и поделиться с общественностью в доступной форме этой достаточно экзотической структурой данных.

Дерево ван Эмде Боаса (van Emde Boas tree) — ассоциативный массив, который позволяет хранить целые числа в диапазоне [0; U), где U = 2k, проще говоря, числа, состоящие не более чем из k бит. Казалось бы, зачем нужно еще какое-то дерево, да еще позволяющее хранить только целые числа, когда существует множество различных сбалансриованных двоичных деревьев поиска, позволяющих выполнять операции вставки, удаления и прочие за O(log n), где n — количество элементов в дереве?

Главная особенность этой структуры — выполнение всех операций за время O(log(log(U))) независимо от количества хранящихся в ней элементов.

Что же там еще есть такого вкусного?
Всего голосов 193: ↑191 и ↓2+189
Комментарии39

Байесовская нейронная сеть — потому что а почему бы и нет, черт возьми (часть 1)

Время на прочтение16 мин
Количество просмотров92K
То, о чем я попытаюсь сейчас рассказать, выглядит как настоящая магия.

Если вы что-то знали о нейронных сетях до этого — забудьте это и не вспоминайте, как страшный сон.
Если вы не знали ничего — вам же легче, полпути уже пройдено.
Если вы на «ты» с байесовской статистикой, читали вот эту и вот эту статьи из Deepmind — не обращайте внимания на предыдущие две строчки и разрешите потом записаться к вам на консультацию по одному богословскому вопросу.

Итак, магия:


Слева — обычная и всем знакомая нейронная сеть, у которой каждая связь между парой нейронов задана каким-то числом (весом). Справа — нейронная сеть, веса которой представлены не числами, а демоническими облаками вероятности, колеблющимися всякий раз, когда дьявол играет в кости со вселенной. Именно ее мы в итоге и хотим получить. И если вы, как и я, озадаченно трясете головой и спрашиваете «а нафига все это нужно» — добро пожаловать под кат.

Читать дальше →
Всего голосов 83: ↑82 и ↓1+81
Комментарии64

Список ресурсов по машинному обучению. Часть 2

Время на прочтение11 мин
Количество просмотров48K


Продолжим (1, 2) рассматривать тему машинного обучения. Вашему вниманию вторая часть (первая тут) адаптированной подборки полезных материалов.
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии0

Android VIPER на реактивной тяге

Время на прочтение6 мин
Количество просмотров59K


Чем больше строк кода написано, тем реже хочется дублировать код, а чем больше проектов реализовано, тем чаще обходишь старые, хоть и зачастую любимые, грабли, и начинаешь все больше интересоваться архитектурными решениями.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии35

GPU vs CPU: Почему для анализа финансовых данных применяют графические процессоры

Время на прочтение5 мин
Количество просмотров40K


В «Европейском физическом журнале» опубликована интересная и очень обширная статья немецкого исследователя об использовании вычислений GPU в эконофизике и статистической физике, в том числе для осуществления анализа информации на фондовом рынке. Мы представляем вашему вниманию основные тезисы этого материала.
Читать дальше →
Всего голосов 18: ↑15 и ↓3+12
Комментарии27

Тест-тренировка зрительного внимания

Время на прочтение3 мин
Количество просмотров35K
Если я напишу 2, потом 4, потом 6, тогда мы почувствуем себя хорошо, потому что мы знаем, что дальше идет 8. Мы можем это предвидеть, мы не в руках судьбы. Однако, к сожалению, это не имеет ничего общего с истиной...
х/ф «Оксфордские убийства»


Задача: обнаружить центральную фигуру среди сереньких фигур вокруг.

Данный проект — PsyMatchArea — задумывался в качестве альтернативы знаменитым таблицам Шульте. С теми же целями (тренировка зрительного периферического внимания), но с другими, более «отмороженными» исходными предпосылками. Во-первых, нужно было уйти от цифр и букв — символов, знакомых каждому практически с яслей и потому распознаваемых на автомате без активного вовлечения сознания в процесс. Во-вторых, чтобы внимание как можно меньше подменялось памятью (и вообще не расслаблялось), надо было обеспечить соответствующие «помехи» — смена позиций, мерцания, наложения и т.п.
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии25

Подборка: Более 70 источников по машинному обучению для начинающих

Время на прочтение5 мин
Количество просмотров103K


Индикатор кулачкового аналогового компьютера / Wiki

В нашем блоге мы уже рассказывали о разработке системы квантовой связи и о том, как из простых студентов готовят продвинутых программистов. Сегодня мы решили вернуться к теме машинного обучения и привести адаптированную (источник) подборку полезных материалов.
Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Комментарии16

Фальшивомонетчики против банкиров: стравливаем adversarial networks в Theano

Время на прочтение13 мин
Количество просмотров35K
image
Вы бы никогда не подумали, но это прогулка по пространству нейросети-фальшивомонетчика. Сделано крутейшими людьми Anders Boesen Lindbo Larsen и Søren Kaae Sønderby

Допустим, у нас есть задача — понять окружающий мир.
Давайте для простоты представим, что мир — это деньги.

Метафора, может быть, с некоторой моральной двусмысленностью, но в целом пример не хуже прочих — деньгам (банкнотам) определенно свойственна какая-то сложная структура, тут у них цифра, тут буква, а там хитрые водяные знаки. Предположим, нам нужно понять, как они сделаны, и узнать правило, по которым их печатают. Какой план?

Напрашивающийся шаг — это пойти в офис центрального банка и попросить их выдать спецификацию, но во-первых, вам ее не дадут, а во-вторых, если выдерживать метафору, то у вселенной нет центрального банка (хотя на этот счет есть религиозные разногласия).

Ну, раз так, давайте попробуем их подделать.
Осторожно, тяжелые гифки
Всего голосов 34: ↑34 и ↓0+34
Комментарии22

Использование android.os.Binder для организации асинхронного взаимодействия в Андроиде

Время на прочтение7 мин
Количество просмотров20K
Одна из естественных и первых задач при разработке под Андроид – организация асинхронного взаимодействия. Например, обращение к серверу из некоторой активности и отображение на ней результата. Трудность состоит в том, что за время обращения к серверу поверх может быть открыта другая активность или другое приложение, исходная активность может быть безвозвратно завершена (пользователь нажал Back) и т. д. Вот получили мы результат от сервера, но активность «неактивна». Под «активна», в зависимости от обстоятельств, можно понимать, например, что находится между onStart и onStop, onResume и onPause (или, как у нас в проекте, между onPostResume и первым из onSaveInstanceState и onStop). Как понять, завершена активность окончательно (и результат нужно отдать сборщику мусора) или лишь временно неактивна (результат нужно хранить, и отобразить, как только активность станет активной)?

Удивительно, но в документации, интернетах, при личном общении я ни разу не встречал корректного и приемлемо универсального способа. Хочу безвозмездно поделиться решением, которое мы применяем два с половиной года в мобильном интернет-банкинге. Приложение установлено (как часть более крупной системы) у нескольких сотен банков, на данный момент имеет около миллиона пользователей.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии31

Шпаргалка Java программиста 2: Триста пятьдесят самых популярных не мобильных Java opensource проектов на github

Время на прочтение39 мин
Количество просмотров169K
Что это и зачем оно надо: Как известно, главное преимущество Java мира в том в нем существует огромное количество open-source проектов на на все случаи жизни, однако найти нужный на github'e не так просто, так как описание проекта часто мало информативно, зачастую сложно даже понять этот проект для Android'a или нет. В этой статье я автоматически и полуавтоматически собрал Java проекты, убрал старые и проекты только для Android'a, выбрал 350 набравших больше всего звезд, разделил по категориям и перевел описания.

Если вы хотите убедиться что базы данных пишут не только на C, найти проекты для работы с большими данными или нейронными сетями, пишите свой язык программирования для JVM и хотите посмотреть как это уже сделано или же просто хотите узнать какие новые возможности можно найти в Java мире open-source то это статья вам, думаю, может пригодится.

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.


Другие статьи серии: часть 1. JPA и Hibernate в вопросах и ответах

Update: Внимание, актуальная версия со много большим количеством ссылок, находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.


Читать дальше →
Всего голосов 51: ↑43 и ↓8+35
Комментарии49

Диздок, или написание проектной документации

Время на прочтение8 мин
Количество просмотров95K
Диздок упоминают в разговорах, о нём шепчутся на форумах, примеры его ищут и зелёные новички, и бывалые разработчики. Случается, что под тусклым светом уличного фонаря происходит сделка. Фигура в тёмном капюшоне украдкой передаёт ссылку на «Месть курочки Рябы». Конечно, таинственный гонец не имеет злого умысла, но деяние совершено…


Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии5

JSR 133 (Java Memory Model) FAQ (перевод)

Время на прочтение25 мин
Количество просмотров149K
Добрый день.
В рамках набора на курс «Multicore programming in Java» я делаю серию переводов классических статей по многопоточности в Java. Всякое изучение многопоточности должно начинаться с введения в модель памяти Java (New JMM), основным источником от авторов модели является «The Java Memory Model» home page, где для старта предлагается ознакомится с JSR 133 (Java Memory Model) FAQ. Вот с перевода этой статьи я и решил начать серию.
Я позволил себе несколько вставок «от себя», которые, по моему мнению, проясняют ситуацию.
Я являюсь специалистом по Java и многопоточности, а не филологом или переводчиком, посему допускаю определенные вольности или переформулировки при переводе. В случае, если Вы предложите лучший вариант — с удовольствием сделаю правку.
Этот статья также подходит в качестве учебного материала к лекции «Лекция #5.2: JMM (volatile, final, synchronized)».

Также я веду курс «Scala for Java Developers» на платформе для онлайн-образования udemy.com (аналог Coursera/EdX).

Ну и да, приходите учиться ко мне!


JSR 133 (Java Memory Model) FAQ


Jeremy Manson и Brian Goetz, февраль 2004

Содержание:
Что такое модель памяти, в конце концов?
Другие языки, такие как C++, имеют модель памяти?
Что такое JSR 133?
Что подразумевается под «переупорядочением» (reordering)?
Что было не так со старой моделью памяти?
Что вы подразумеваете под «некорректно синхронизированы»?
Что делает синхронизация?
Как может случиться, что финальная поля меняют значения?
How do final fields work under the new JMM?
Что делает volatile?
Решила ли новая модель памяти «double-checked locking» проблему?
Что если я пишу виртуальную машину?
Почему я должен беспокоиться?
Читать дальше →
Всего голосов 56: ↑51 и ↓5+46
Комментарии32

N+4 полезных книг

Время на прочтение5 мин
Количество просмотров81K


Привет! В посте блиц-обзор книг, которые будут полезны IT-специалистам, бизнесменам и тем, кто просто любит читать интересные технические вещи. Рядом с каждой – пояснения, чем оно может быть нужно. Этот обзор, в отличие от других ежегодных, более технически-прикладной.

Начнём со «Справочника по инженерной психологии» Вудсона и Коновера.

«Справочник по инженерной психологии» — Вудсон, Коновер


Книга о том, какие бывают кнопки и рычаги, как на них нажимают люди. И как проектировать так, чтобы люди работали с системой эффективно. Радует тем, что рассматривает пользователя как базовую систему ввода-вывода, замеряя его среднюю скорость передачи информации (около 20 бит в секунду на кнопочные интерфейсы), скорости ввода и вывода.
Читать дальше →
Всего голосов 58: ↑55 и ↓3+52
Комментарии8

Ресурсы, о которых должен знать каждый Android-разработчик

Время на прочтение6 мин
Количество просмотров189K
Сегодня я хочу поделиться с вами моим вольным переводом статьи, написанной Сергеем Повзнером (Sergey Povzner). Сергей ведёт блог bongizmo.com и занимается разработкой туристических гидов под общим названием Citybot.

В то время как Android продолжает свой невероятный рост, всё больше и больше программистов начинают разрабатывать приложения на этой платформе. Если ты начинаешь свой путь сегодня, то ты определенно — счастливчик. За последние годы Android значительно повзрослел и избавился от множества детских болезней. Информации по платформе более чем достаточно. Я же расскажу о самых важных ресурсах.

Статья будет полезна как новичкам, так и опытным разработчикам. Это гид по миру Android-разработки.
Читать дальше →
Всего голосов 133: ↑128 и ↓5+123
Комментарии33

Фотографии NASA, которые должен увидеть каждый

Время на прочтение3 мин
Количество просмотров122K
Привет, читатель Geektimes. Я знаю, все мы тут собрались из-за интересных новостей из мира технологий и науки. Но сегодня, в пятницу, я предлагаю тебе, читатель, расслаблено сесть в своем кресле и притронуться к прекрасному, потому что лично я получил огромное удовольствие в процессе подготовки этого материала.

Под катом много фото и изображений взятых из аккаунта NASA Goddard Space Flight Center на Фликере, все кликабельны, а так же даны ссылки на скачивание в максимально возможных разрешениях. Некоторые из оригиналов огромны и годятся для фотообоев, серьезно, так что будьте аккуратны с трафиком.

А теперь наслаждайтесь.

image

Large (2048 x 2048) Original (4096 x 4096)
100-миллионный кадр, сделанный в SDO (Solar Dynamics Observatory) NASA. Для создания кадра использовалось параллельно четыре телескопа, которые по очереди фотографировали солнце в десяти различных волновых диапазонах каждые 12 секунд.
Посмотреть все фото
Всего голосов 76: ↑74 и ↓2+72
Комментарии29

Книги, которые должен прочитать Java программист: от новичка до профессионала

Время на прочтение4 мин
Количество просмотров649K

Книги, которые должен прочитать Java программист: от новичка до профессионала


[Примечание переводчика: термины градации «профессионализма» оставлены англоязычные в связи с трудностью их адекватного перевода на русский и несовпадением с привычными Junior-Middle-Senior-Lead. Перевод достаточно вольный — если знаний языка хватает, то лучше читать оригинал, как и советует автор. Оба языка для меня не родные, так что про ошибки сообщайте в личку — исправим. Здесь и далее в квадратных скобках примечания переводчика]

Я заметил, что в последние месяцы я рекомендую одни и те же книги как новичкам, так и опытным разработчикам. Поэтому я решил составить список этих книг. Они составили мне неплохую компанию в процессе моего роста от новичка до сегодняшнего уровня (какой-бы он не был :) )
Читать дальше →
Всего голосов 90: ↑77 и ↓13+64
Комментарии77
1

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирована
Активность