Pull to refresh
57
0
Send message

Ускоряем распределенную обработку больших графов с помощью вероятностных структур данных и не только

Reading time8 min
Views3.7K


Одним из самых ценных ресурсов любой социальной сети является "граф дружб" — именно по связям в этом графе распространяется информация, к пользователям поступает интересный контент, а к авторам контента конструктивный фидбэк. При этом граф является еще и важным источником информации, позволяющим лучше понять пользователя и непрерывно совершенствовать сервис. Однако в тех случаях когда граф разрастается, технически извлекать из него информацию становится все сложнее и сложнее. В данной статье мы поговорим о некоторых трюках, используемых для обработки больших графов в OK.ru.

Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments0

SNA Hackathon 2019 — итоги

Reading time8 min
Views2.5K


1-го апреля завершился финал SNA Hackathon 2019, участники которого соревновались в сортировке ленты социальной сети с использованием современных технологий машинного обучения, компьютерного зрения, обработки тестов и рекомендательных систем. Жесткий онлайн отбор и двое суток напряженной работы над 160 гигабайтами данных не прошли даром :). Рассказываем о том, что помогло участникам прийти к успеху и о других интересных наблюдениях.

Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments0

Python vs. Scala для Apache Spark — ожидаемый benchmark с неожиданным результатом

Reading time6 min
Views29K


Apache Spark на сегодняшний день является, пожалуй, наиболее популярной платформой для анализа данных большого объема. Немалый вклад в её популярность вносит и возможность использования из-под Python. При этом все сходятся на том, что в рамках стандартного API производительность кода на Python и Scala/Java сопоставима, но касательно пользовательских функций (User Defined Function, UDF) единой точки зрения нет. Попробуем разобраться в том, насколько увеличиваются накладные расходы в этом случае, на примере задачи проверки решения SNA Hackathon 2019.

Читать дальше →
Total votes 42: ↑38 and ↓4+34
Comments62

Анализ данных на Scala — суровая необходимость или приятная возможность?

Reading time18 min
Views14K


Традиционными инструментами в сфере Data Science являются такие языки, как R и Python — расслабленный синтаксис и большое количество библиотек для машинного обучения и обработки данных позволяет достаточно быстро получить некоторые работающие решения. Однако бывают ситуации, когда ограничения этих инструментов становятся существенной помехой — в первую очередь, если необходимо добиться высоких показателей по скорости обработки и/или работать с действительно крупными массивами данных. В этом случае специалисту приходится, скрепя сердце, обращаться к помощи "темной стороны" и подключать инструменты на "промышленных" языках программирования: Scala, Java и C++.


Но так ли уж темна эта сторона? За годы развития инструменты "промышленного" Data Science прошли большой путь и сегодня достаточно сильно отличаются от своих же версий 2-3 летней давности. Давайте попробуем на примере задачи SNA Hackathon 2019 разобраться, насколько экосистема Scala+Spark может соответствовать Python Data Science.

Читать дальше →
Total votes 36: ↑35 and ↓1+34
Comments17

Как программист датасаентистам кернелы писал

Reading time5 min
Views7.2K

Мало кто верит, что современный data science-стек может быть построен не на Python, но такие прецеденты есть :). Стек Одноклассников формировался долгие годы, в первую очередь программистами, перешедшими в data science, но всё ещё остались близкими к проду, поэтому в его основе лежат открытые технологии JVM-стека: Hadoop, Spark, Kafka, Cassandra и т.д. Это помогает нам сокращать время и затраты на ввод моделей в эксплуатацию, но иногда создаёт и сложности. Например, при подготовке базовых решений для участников SNA Hackathon 2019 пришлось сжать волю в кулак и погрузиться в мир динамической типизации. Подробности (и лёгкий троллинг) под катом :)

Читать дальше →
Total votes 25: ↑20 and ↓5+15
Comments4

Краткая история одной «умной ленты»

Reading time4 min
Views6.6K


Социальные сети — это один из наиболее востребованных на сегодняшний день интернет-продуктов и один из основных источников данных для анализа. Внутри же самих социальных сетей самой сложной и интересной задачей в сфере data science по праву считается формирование ленты новостей. Ведь для удовлетворения всё возрастающих требований пользователя к качеству и релевантности контента необходимо научиться собирать информацию из многих источников, вычислять прогноз реакции пользователя и балансировать между десятками конкурирующих метрик в А/Б-тесте. А большие объемы данных, высокие нагрузки и жесткие требования к скорости ответа делают задачу ещё интереснее.
Читать дальше →
Total votes 65: ↑64 and ↓1+63
Comments12

Пара мыслей об особенностях Российского Data Science

Reading time1 min
Views7.9K


Сегодня на Moscow Data Science Major рассказывал про приватность, этичный Data Science, и много интересных технических новинок. Люди внимательно слушали, задавали вопросы, благодарили. Но то что произошло потом было очень показательно. Об этом под катом.
Читать дальше →
Total votes 53: ↑38 and ↓15+23
Comments24

KDD 2018, день пятый, завершающий

Reading time9 min
Views2K


Вот и завершился пятый, последний день KDD. Удалось услышать несколько интересных докладов от Facebook и Google AI, помайнить футбольные тактики и погенерировать немного химикатов. Об этом и не только — под катом. До встречи через год в Анкоридже, столице Аляски!
Читать дальше →
Total votes 18: ↑16 and ↓2+14
Comments2

KDD 2018, день четвертый, выступает нобелевский лауреат

Reading time16 min
Views3.7K


Второй день основной программы KDD. Под катом снова много интересного: от машинного обучения в Pinterest до разных способов прокопаться к водопроводным трубам. В том числе было выступление нобелевского лауреата по экономике — рассказ о том, как NASA работает с телеметрией, и много графовых эмбедингов :)
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments0

KDD 2018, день третий, основная программа

Reading time16 min
Views3.3K


Сегодня, наконец, началась основная программа конференции. Acceptance rate в этом году составила всего 8 %, т.е. выступать должны лучшие из лучших из лучших. Явно разделены прикладные и исследовательские потоки, плюс идет несколько отдельных сопутствующих мероприятий. Прикладные потоки выглядят более интересно, там доклады, в основном, от мэйджоров (Google, Amazon, Alibaba и т.д.). Расскажу о тех выступлениях, на которых удалось побывать.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments2

KDD 2018, день второй, семинары

Reading time13 min
Views2.5K
image

Сегодня на KDD 2018 день семинаров — вместе с большой конференцией, которая начнется завтра, несколько групп собрали слушателей по некоторым специфичным темам. Побывал на двух таких тусовках.
Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments0

KDD 2018, день первый, туториалы

Reading time8 min
Views3.7K
image

Сегодня в Лондоне стартовала одна из главных Data Science-конференций года, постараюсь оперативно рассказывать о том, что интересного удалось услышать.
Читать дальше →
Total votes 29: ↑27 and ↓2+25
Comments0

Oh, My Code: Машинное обучение и аналитика в «Одноклассниках»

Reading time12 min
Views8.3K


В чём разница между Machine Learning и анализом данных, кто сидит в «Одноклассниках» и как начать свой путь в машинном обучении — об этом мы беседуем в двенадцатом выпуске ток-шоу для программистов.


Видео на канале Технострим

Ведущий программы — технический директор медиапроектов Павел Щербинин, гость — инженер-аналитик «Одноклассников» Дмитрий Бугайченко.
Total votes 36: ↑33 and ↓3+30
Comments8

Обработка текстов на естественных языках

Reading time30 min
Views31K


Сегодня мы затрагиваем такую интересную тему, как естественные языки. Сейчас в эту область вкладываются очень большие деньги и в ней решают немало разнообразных задач. Она привлекает внимание не только индустрии, но и научного сообщества.
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments31

О пользе технологий больших данных в повседневной жизни

Reading time4 min
Views17K


Среди многих исследователей и разработчиков бытует мнение, что инструменты обработки больших данных в области машинного обучения часто избыточны – всегда можно сделать сэмпл, загнать в память и использовать любимые R, Python и Matlab. Но на практике встречаются задачи, когда даже относительно небольшой объем данных, размером в пару гигабайт, обработать в таком стиле затруднительно – и тут-то и могут помочь те самые технологии «больших данных».

Хорошим наглядным примером такой задачи является задача нашего конкурса SNA Hakathon 2016: дан социальный граф одного миллиона пользователей и их демография. Задача — найти скрытые связи в этом графе. Размер предоставленного графа всего два гигабайта в GZip и, казалось бы, применение технологий больших данных здесь не оправданно, но это только на первый взгляд.

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

Казалось бы, для решение этой задачи впору поднимать небольшой кластер, но спешить не стоит: взяв на вооружение принципы обработки больших данных и соответствующие технологии, задачу можно решить и на обычном ноутбуке. Из принципов мы возьмем «разделяй и властвуй» и «руби хвосты сразу», а в качестве инструмента — Apache Spark.
Читать дальше →
Total votes 18: ↑16 and ↓2+14
Comments11

Information

Rating
Does not participate
Works in
Registered
Activity