Потоковые алгоритмы в задачах обработки больших данных / Виктор Евстратов (Se...Ontico
Для того чтобы таргетировать рекламу по поведению интернет-пользователей, DMP ежедневно оценивает терабайты данных. В докладе расскажу, как при помощи алгоритмов потоковой обработки данных можно быстро оценить большой объем статистики и формы распределения различных характеристик.
+ Что будем оценивать?
Будем оценивать функции распределения различных случайных величин. На практике это может понадобиться, например, как инструмент первичного анализа трафика или как данные, необходимые для принятия решений в RTB.
+ Распределения параметров пользователей и их поведения.
+ Метод Манро-Патерсона, метод Канна-Гринвальда.
В этой части я расскажу о методе Манро-Патерсона — алгоритме оценки медианы, и о методе Канна-Гринвальда, который позволяет оценить функцию распределения.
+ Мотивирующий пример.
Расскажу о том, как применяю описанные методы на наших данных для составления портрета целевой аудитории наших клиентов.
Playtestix: Playtesting: cases and figures. ‘Before’ and ‘after’, ways of ach...DevGAMM Conference
Playtesting will be shown as an integral part of development process and backed up with cases, examples. Particular projects, real-life stories, metrics and ways of searching for solutions.
Tong is a data scientist in Supstat Inc and also a master students of Data Mining. He has been an active R programmer and developer for 5 years. He is the author of the R package of XGBoost, one of the most popular and contest-winning tools on kaggle.com nowadays.
Agenda:
Introduction of Xgboost
Real World Application
Model Specification
Parameter Introduction
Advanced Features
Kaggle Winning Solution
Потоковые алгоритмы в задачах обработки больших данных / Виктор Евстратов (Se...Ontico
Для того чтобы таргетировать рекламу по поведению интернет-пользователей, DMP ежедневно оценивает терабайты данных. В докладе расскажу, как при помощи алгоритмов потоковой обработки данных можно быстро оценить большой объем статистики и формы распределения различных характеристик.
+ Что будем оценивать?
Будем оценивать функции распределения различных случайных величин. На практике это может понадобиться, например, как инструмент первичного анализа трафика или как данные, необходимые для принятия решений в RTB.
+ Распределения параметров пользователей и их поведения.
+ Метод Манро-Патерсона, метод Канна-Гринвальда.
В этой части я расскажу о методе Манро-Патерсона — алгоритме оценки медианы, и о методе Канна-Гринвальда, который позволяет оценить функцию распределения.
+ Мотивирующий пример.
Расскажу о том, как применяю описанные методы на наших данных для составления портрета целевой аудитории наших клиентов.
Playtestix: Playtesting: cases and figures. ‘Before’ and ‘after’, ways of ach...DevGAMM Conference
Playtesting will be shown as an integral part of development process and backed up with cases, examples. Particular projects, real-life stories, metrics and ways of searching for solutions.
Tong is a data scientist in Supstat Inc and also a master students of Data Mining. He has been an active R programmer and developer for 5 years. He is the author of the R package of XGBoost, one of the most popular and contest-winning tools on kaggle.com nowadays.
Agenda:
Introduction of Xgboost
Real World Application
Model Specification
Parameter Introduction
Advanced Features
Kaggle Winning Solution
UX дневник как инструмент тестирования игры / Мария Амирханян, Екатерина Лисо...DevGAMM Conference
Чаще всего при тестировании игр мы сталкиваемся с UX плейтестами. Но что делать в ситуации, когда вам нужно посмотреть не первую сессию или первый час игры, а пронаблюдать за вовлечением и возможными проблемами в течение нескольких дней или на протяжении всей игры? В этом случае плейтесты одного дня не помогут решить эту задачу, в отличие от дневниковых UX-исследований. Мария Амирханян (Head of Games – UX Research) и Екатерина Лисовская (Senior UX Researcher) из Mail.ru Group рассказывают про то, как и где их применять, а также делятся несколькими кейсами.
Solit 2014, Опыт участия в конкурсе по спортивному программированию Russian A...solit
Иван Поляков, Минск. Программист, занимается разработкой компьютерных игр (Shareware / Indy) с 99 года. Закончил ФПМИ БГУ, где участвовал в чемпионатах ACM по программированию.
«Опыт участия в недавно прошедшем конкурсе по спортивному программированию Russian AI Cup 2013″. Development секция. Не упустите возможности узнать, как думают алгоритмически участники олимпиад.
(http://russianaicup.ru/profile/Cooler – 15-е место в финале, 11-е место в песочнице – это лучший результат среди участников из Беларуси). Об особенностях задачи, о принципах работы моего решения и особенностях решений некоторых других участников из топа, о вероятных ошибках и способах их избежать.
P.S. Рассказ победителя конкурса имеется тут – http://habrahabr.ru/post/206680/
Олександр Дзюба та Євгеній Тур "Майстер-клас “Вивчення гравців. DIY” Ми реаль...Lviv Startup Club
GameDev Conference 2018
Олександр Дзюба та Євгеній Тур "Майстер-клас “Вивчення гравців. DIY” Ми реально навчимо робити найкращі ігри в світі через аналіз гравців"
Александр Дзюба, СЕО компании Playtestix, 21 ноября в рамках конференции Game Factory рассказал о том, как правильно проводить плейтесты.
На лекции были рассмотрены следующие вопросы:
- возможности пользовательского тестирования, задачи, которые поможет решить плейтест, а также его возможные форматы;
- методы сбора данных, как их правильно выбирать, формировать и использовать;
- этапы подготовки тестирования.
Во время выступления совместно с аудиторией был составлен инструментарий, а также проведен открытый плейтест.
Cоциальный граф "Одноклассников" в myTargetOleg Tsarev
Задача выглядит обманчиво простой — рядом с баннером игры из Одноклассников показывать текстовый тизер «эту игру играет Кот Матроскин и ещё 5 твоих друзей» (имя и количество берутся из друзей пользователя на Одноклассниках).
Как обрабатывать граф друзей проекта Одноклассники для этой задачи?
На этот простой вопрос дают разные ответы:
- взять графовую базу данных
- использовать матрицу инцидентности
- использовать список смежных вершин.
Если уточнить, что сырые данные занимают полтора терабайта, в графе 200 миллионов вершин и 13 миллиардов связей, то ручные решения сразу отметаются.
«Графовая база данных!» Стоит озвучить нагрузку в десятки тысяч запросов секунду и требования отвечать за миллисекунды (тысячные доли секунды!) как графовые базы сразу оказываются за бортом — типичное время ответа на простые запросы — единицы секунд.
Экс-разработчик MySQL и SciDB, ныне ведущий разработчик myTarget Олег Царёв расскажет, как решалась эта непростая задача в рамках проекта.
Ксения Стернина | (Mail.Ru Group)Gamer Experience Research на различных этапа...RIF-Technology
На примерах реальных кейсов Mail.Ru Group я расскажу о том, как методы UX исследований помогают разрабатывать игры на различных этапах от идеи до проверки готовых решений. Обсудим, какие методики UXR можно оставить без изменения, а какие требуют адаптации.
What Users Want: Methods of Making Successful Apps and Games -- Alexander Dzyuba, Sales Director, Playtestix (White Nights: Mobile Games Conference http://www.wnconf.com/)
http://techtalks.nsu.ru
23 сентября 2013. Как сделать Dota-like игру (Семен Корзунов, Nival (Москва))
Лекция прочитана в рамках проекта Tech Talks @NSU – серии открытых лекций о разработке ПО и карьере в IT, проводимых в Новосибирском государственном университете.
Подробности: http://techtalks.nsu.ru
UX дневник как инструмент тестирования игры / Мария Амирханян, Екатерина Лисо...DevGAMM Conference
Чаще всего при тестировании игр мы сталкиваемся с UX плейтестами. Но что делать в ситуации, когда вам нужно посмотреть не первую сессию или первый час игры, а пронаблюдать за вовлечением и возможными проблемами в течение нескольких дней или на протяжении всей игры? В этом случае плейтесты одного дня не помогут решить эту задачу, в отличие от дневниковых UX-исследований. Мария Амирханян (Head of Games – UX Research) и Екатерина Лисовская (Senior UX Researcher) из Mail.ru Group рассказывают про то, как и где их применять, а также делятся несколькими кейсами.
Solit 2014, Опыт участия в конкурсе по спортивному программированию Russian A...solit
Иван Поляков, Минск. Программист, занимается разработкой компьютерных игр (Shareware / Indy) с 99 года. Закончил ФПМИ БГУ, где участвовал в чемпионатах ACM по программированию.
«Опыт участия в недавно прошедшем конкурсе по спортивному программированию Russian AI Cup 2013″. Development секция. Не упустите возможности узнать, как думают алгоритмически участники олимпиад.
(http://russianaicup.ru/profile/Cooler – 15-е место в финале, 11-е место в песочнице – это лучший результат среди участников из Беларуси). Об особенностях задачи, о принципах работы моего решения и особенностях решений некоторых других участников из топа, о вероятных ошибках и способах их избежать.
P.S. Рассказ победителя конкурса имеется тут – http://habrahabr.ru/post/206680/
Олександр Дзюба та Євгеній Тур "Майстер-клас “Вивчення гравців. DIY” Ми реаль...Lviv Startup Club
GameDev Conference 2018
Олександр Дзюба та Євгеній Тур "Майстер-клас “Вивчення гравців. DIY” Ми реально навчимо робити найкращі ігри в світі через аналіз гравців"
Александр Дзюба, СЕО компании Playtestix, 21 ноября в рамках конференции Game Factory рассказал о том, как правильно проводить плейтесты.
На лекции были рассмотрены следующие вопросы:
- возможности пользовательского тестирования, задачи, которые поможет решить плейтест, а также его возможные форматы;
- методы сбора данных, как их правильно выбирать, формировать и использовать;
- этапы подготовки тестирования.
Во время выступления совместно с аудиторией был составлен инструментарий, а также проведен открытый плейтест.
Cоциальный граф "Одноклассников" в myTargetOleg Tsarev
Задача выглядит обманчиво простой — рядом с баннером игры из Одноклассников показывать текстовый тизер «эту игру играет Кот Матроскин и ещё 5 твоих друзей» (имя и количество берутся из друзей пользователя на Одноклассниках).
Как обрабатывать граф друзей проекта Одноклассники для этой задачи?
На этот простой вопрос дают разные ответы:
- взять графовую базу данных
- использовать матрицу инцидентности
- использовать список смежных вершин.
Если уточнить, что сырые данные занимают полтора терабайта, в графе 200 миллионов вершин и 13 миллиардов связей, то ручные решения сразу отметаются.
«Графовая база данных!» Стоит озвучить нагрузку в десятки тысяч запросов секунду и требования отвечать за миллисекунды (тысячные доли секунды!) как графовые базы сразу оказываются за бортом — типичное время ответа на простые запросы — единицы секунд.
Экс-разработчик MySQL и SciDB, ныне ведущий разработчик myTarget Олег Царёв расскажет, как решалась эта непростая задача в рамках проекта.
Ксения Стернина | (Mail.Ru Group)Gamer Experience Research на различных этапа...RIF-Technology
На примерах реальных кейсов Mail.Ru Group я расскажу о том, как методы UX исследований помогают разрабатывать игры на различных этапах от идеи до проверки готовых решений. Обсудим, какие методики UXR можно оставить без изменения, а какие требуют адаптации.
What Users Want: Methods of Making Successful Apps and Games -- Alexander Dzyuba, Sales Director, Playtestix (White Nights: Mobile Games Conference http://www.wnconf.com/)
http://techtalks.nsu.ru
23 сентября 2013. Как сделать Dota-like игру (Семен Корзунов, Nival (Москва))
Лекция прочитана в рамках проекта Tech Talks @NSU – серии открытых лекций о разработке ПО и карьере в IT, проводимых в Новосибирском государственном университете.
Подробности: http://techtalks.nsu.ru
Факторизационные модели в рекомендательных системахromovpa
Факторизационные модели, модели разложения матриц для коллаборативной фильтрации в рекомендательных системах. В презентации рассматриваются теоретические аспекты и алгоритмы.
С доклада на спецсеминаре "Machine Learning & Information Retrieval" в Школе Анализа Данных Яндекса.
Глобальная дискретная оптимизация при помощи разрезов графов
Dota Science: Роль киберспорта в обучении анализу данных
1. Data Science of Dota 2:
Роль киберспорта в обучении
анализу данных
Петр Ромов
ФКН ВШЭ, Yandex Data Factory
Соавтор курса по машинному
обучению на Coursera
7. Steam API и доступные данные
• Информация про все матчи
– кто играл, с кем играл
– кто победил
– уровни игроков к концу игры, статистика по действиям
игроков
• Информация о матче в режиме реального времени
• Выгрузка информации из API почти не ограничена
• Можно парсить реплеи матчей, извлекая
траектории и все действия игроков во времени
8. Задачи анализа данных
• Прогноз победителя
– по составу игроков (до начала матча)
– после выбора героев (в начале матча)
– по ходу игры
• Рейтинг игроков, учитывающий специфику игры
• Рекомендация действий/стратегий для игроков
• Рекомендации по составлению команды
• Умное управление камерой для комментаторов
матчей
• …
9. heroes), “ O✏aner” or “ Hardlaner” (hero who
which is bottom lane for Dire and top lane for
lanes and in the jungle) and two “ Supports”
buying items for the team, like wards, centries,
Fig. 1: Heroes
s: All
Pick
order
Pick,
from
ell de-
s that
ehero
aft on
e per-
picks
secu-
gimes
es for
and playing it. For example in AP player tries
st which sometimes isn’t good for the balance in
s are overrepresented in All Pick while this stats
e Random Draft, where each player gets his hero
Dota 2 called MMR, which allows the algorithm
level into the same match for more balanced
get this skill points visible to others via partic-
d All Pick, Ranked Random Draft and Ranked
the members of the winning team some MMR
mount of points from the lost team. Currently
MMR ≥ 8,000, while everything below 4,000 is
Пул из 113 героев
Комбинации героев
Каждый из 10 игроков
выбирает себе героя
Возможных комбинаций выбора героев
Всего сыграно матчей c Июля 2013
(в том числе незаконченных, учебных и т.д.)
Чем отличаются матчи:
1. Игроками и их стратегиями
2. Выбранными героями
Задача:
• Научиться оценивать вероятность победы
команды по известным выбранным
героям
• Оценить, в какой степени влияет выбор
героев, а в какой — умения игроков?
10. Комбинации героев
• Популярные среди игроков веб-сервисы
– Dotabuff.com
– Datdota.com
• Попытки подойти к проблеме с научной точки зрения
Авторы Методы Выборка
Conley & Perry, 2013 Logistic regression, kNN 60 тыс.
Agarwala & Pearce, 2014 Logistic regression, PCA 40 тыс.
Kalyanaraman, 2014 Logistic regression,
Genetic Algorithm
30 тыс.
Song et al., 2015 Logistic regression 3 тыс.
Kinkade & Lim, 2015 Logistic regression,
Random Forest
62 тыс.
11. Наш набор данных
• Период в 20 дней, не было изменений правил игры
• Все рейтинговые матчи за период
• Матчи игроков всех навыков
• 5 млн. матчей
• Датасет будет опубликован после окончания
соревнования
12. Наши результаты
• Сравнили на фиксированном датасете
– Наивные методы (Logistic regression, Naïve bayes)
– XGBoost: Учет связей между героями и их
характеристик
– Моделирование вероятности при помощи
факторизационных машин
13. Наши результаты
• Факторизационные машины дают наилучшую оценку
вероятности победы команды
• Набор выбранных героев объясняет не менее
• 6% информации (по Шенону) для опытных игроков
• 10% информации для остальных
14. Финальное задание к курсу по
машинному обучению на Coursera
• «Реальные» данные из индустрии
– большие трудности с получением и публикацией
• Данные Dota 2:
– доступны
– никого не беспокоит их распространение
15. Финальное задание для Coursera
• Задача: Предсказать победившую команду
по первым 5 минутам игры
• Данные:
≈120 тыс. распаршенных матчей
– траектории движения игроков
– временные ряды изменения свойств игроков
Ссылка на описание задания: http://goo.gl/gwj4ZQ
19. Соревнование Kaggle InClass
• Множество идей
– применение различных методов обучения и уменьшения
размерности
– работа с сырыми данными и разработка собственных
признаков
– блендинг предсказаний разных моделей
• Отзывы
– «Мне очень нравится эта задача, и я получаю удовольствие
от ее решения»
– «…придумываешь признак, обсуждаешь его с людьми,
которые ничего не понимают в анализе данных, но не
смотря на это вы можете поспорить, это всегда классно»
– «Идеи по улучшению модели по-прежнему есть … буду
продолжать участвовать.»
20. Семинары на ВМК МГУ
• Студенты 3 курса
• Домашнее задание, первый опыт Kaggle
• 9 из 18 студентов прониклись и сейчас
самостоятельно решают «BNP Paribas» на
большом Kaggle
• 4 лучших решения презентованы на семинаре,
слайды выложены на Github
https://github.com/esokolov/ml-course-msu/tree/master/ML15-spring/contests/contest01-dota
21. Хакатон Dota Science Challenge
• Задача: построить и запустить систему, предсказывающую
результат матчей крупного соревнования Shanghai Major в
режиме реального времени
• Участвовало 37 команд
• 7 команд побили бейзлайн
• Статья на Хабре (от участников)
«Опыт участия в хакатоне Dota Science …»
23. Предсказание вероятности победы в
реальном времени
Описание задачи: https://github.com/romovpa/dotascience-hackathon
• Поощряется уверенное предсказание (с
большим значением вероятности)
• В случае уверенного, но в итоге неверного
предсказания, решение получает очень
большой штраф
25. Резюме
• Dota 2 и Киберспорт
• Машинное обучение для предсказания
победы
• Образовательный эксперимент
– Финальное задание для Coursera
– Соревнование на Kaggle InClass
– Семинары на ВМК МГУ
– Хакатон Dota Science Challenge