kNN расшифровывается как k Nearest Neighbor или k Ближайших Соседей — это один из самых простых алгоритмов классификации, также иногда используемый в задачах регрессии. Благодаря своей простоте, он является хорошим примером, с которого можно начать знакомство с областью Machine Learning. В данной статье рассмотрен пример написания кода такого классификатора на python, а также визуализация полученных результатов.
Читать полностью »
Рубрика «data mining» - 101
Классификатор kNN
2012-08-16 в 9:23, admin, рубрики: data mining, machine learning, python, Алгоритмы, метки: data mining, machine learning, pythonПредсказание ухода лояльных игроков в ММО
2012-08-13 в 4:57, admin, рубрики: data mining, game development, онлайн игры, предсказание будущего, метки: data mining, mmorpg, онлайн игры, предсказание будущего В прошлой статье я описал, как мы в Иннове используем data mining для предсказания ухода новичков, только начинающих свой путь в ММОРПГ Aion, на основе логов их действий за пару часов или дней, проведенных в игре. Но у нас также есть и ветераны, посвятившие игре месяцы и годы, и они тоже иногда уходят. Мы уже научились с высокой точностью предсказывать угасание их интереса теми же методами data mining.
Читать полностью »
Программу «научили» определять город по архитектуре
2012-08-09 в 19:35, admin, рубрики: data mining, архитектура, будущее здесь, города, ненормальное программирование, метки: data mining, архитектура, города
Поколения архитекторов и дизайнеров (раньше, понятно, такого термина, как дизайнер, не было) работали сотни лет, создавая неповторимые очертания разных городов и отдельных зданий. Само собой, у каждого города с течением времени проявились индивидуальные черты (имеются в виду крупные города, вроде Парижа и Нью-Йорка, у мелких промышленных населенных пунктов индивидуальности практически нет). Понятно, что многие из нас, взглянув на фотографию пары зданий какого-либо города, способны сказать, Париж это, Нью-Йорк или Пекин. Теперь на это способно и программное обеспечение.
Yet another classifier
2012-08-09 в 7:25, admin, рубрики: data mining, machine learning, python, sentiment analysis, Алгоритмы, метки: machine learning, python, sentiment analysisВместо вступления
Лень — двигатель прогресса. Не хочешь сам молоть зерно — сделай мельницу, не хочешь сам кидать во врагов камни — сооруди катапульту, надоело гореть на кострах инквизиции и гнуть спину под феодалом — замути с ребятами ренессанс… впрочем, о чем это я.
Автоматизация, господа. Берешь какой-нибудь полезный процесс, в котором участвует человек, заменяешь человека на сложный механизм, получаешь профит. Относительно недавно также стало модно заменять человека куском кода. О, сколько благородных профессий может пасть под натиском информатизации. Особенно если учесть, что кусок кода в наше время способен не только на заранее определенное поведение, но и на «обучение» какому-то поведению.
Читать полностью »
Алгоритм предсказывает преступления, отслеживая мобильные телефоны
2012-08-07 в 9:01, admin, рубрики: data mining, Алгоритмы, анализ данных, будущее здесь, прогнозирование, сотовая связь, статистика, метки: data mining, анализ данных, прогнозирование, сотовая связь, статистикаУже много лет учёные экспериментируют с алгоритмами, способными предсказывать преступность. Предполагается, что преступники склонны повторять успешные действия — по крайней мере, они не используют ГСЧ для выбора места и времени преступлений, так что их действия предсказуемы по определению.
Например, год назад калифорнийский город Санта-Крус первым в мире внедрил математическую модель расчёта вероятности преступлений, которая каждый день составляет новый маршрут для патрульных машин, основываясь на статистике преступлений по улицам. Учитываются день недели, время суток, наличие/отсутствие футбольных матчей по ТВ и другие факторы.
Исследователь из Бирмингемского университета Мирко Мусолези (Mirco Musolesi) применил совершенно другой подход. Его метод основан не на статистике, а на оперативных данных из сетей сотовой связи. Мусолези начал с того, что научил алгоритм с высокой степень вероятности прогнозировать перемещения каждого абонента: он даже выиграл конкурс Nokia Mobile Data, наиболее точно предсказав перемещения 25-ти добровольцев по сигналам их телефонов, истории звонков и текстовым сообщениям. Иногда алгоритм прогнозирует координаты пользователя с точностью до 20 м2.
Читать полностью »
Как написать парсер страниц за 5 минут
2012-08-01 в 17:17, admin, рубрики: .net, data mining, html, парсинг контента, метки: .net, c++, html, парсинг контентаЗачем?
У меня возникла необходимость построить графики статистики игроков c iccup.com
Когда разбирался с библиотекой искал на хабре, но ничего подходящего мне не нашел.
Поэтому попутно написал эту статью.
Технические детали
Никакого API так нету, и не будет в ближайшие время. Поэтому выбор способов получения данных не велик, придется парсить страницы.
Я решил делать это с помощью библиотекой htmlagilitypack. Она довольно проста и удобна. XPath поиск занимает около 100мс.
Читать полностью »
Как я покупал квартиру
2012-07-31 в 2:31, admin, рубрики: data mining, linear regression, метки: data mining, linear regression Я хотел написать статью про линейную регрессию, но потом подумал, да ну её, лучше куплю квартиру. И пошёл искать, что предлагают. А предлагают, как оказалось, много чего. В подходящий мне ценовой диапозон попало больше 500 квартир. И что, мне теперь все это просматривать? Ну нееет, программист я в конце концов или не программист. Надо это дело как-то автоматизировать.
Читать полностью »
Карта Интернета
2012-07-24 в 8:21, admin, рубрики: data mining, Google Maps, Maps API, Алгоритмы, высокопроизводительные вычисления, Карта Интернета, кластеризация, метки: Google Maps, высокопроизводительные вычисления, Карта Интернета, кластеризацияПривет всем!
Хочу представить вам Карту Интернета или результат кластеризации более чем 350 тысяч сайтов в соответствии с переходами пользователей между ними. Размер круга определяется посещаемостью сайта, цвет – национальной принадлежностью, а положение на карте – его связями с другими сайтами. Если два сайта имеют стабильный поток пользователей между ними, то они будут «стараться» расположиться ближе друг к другу. После завершения работы алгоритма, на карте можно наблюдать скопления сайтов (кластеры) объединенные общими пользователями.
Например, если ввести в поиск habrahabr.ru, то можно увидеть, что dirty.ru и leprosorium.ru в том же «созвездии», а еще подальше livejournal.ru. Это говорит о том, что тот, кто сейчас читает этот текст, также с высокой вероятностью посещает эти сайты (относительно усредненного пользователя Рунета конечно).
Еще более интересный пример кластеризации можно увидеть внизу карты, между фиолетовой Японией и желтоватой Бразилией: там расположилась целая порнострана по размерам сопоставимая со всем Евронетом. Интересно, что будучи достаточно компетентным в рассматриваемом вопросе, внутри большого порнокластера можно различить тематические подкластеры меньшего размера.
Тем, кого интересует краткое техническое описание – добро пожаловать под кат
Читать полностью »
Маленькие секреты больших графов
2012-07-20 в 12:35, admin, рубрики: data mining, Алгоритмы, графы, Программирование, социальные сети, метки: data mining, графы, социальные сети
Если вам интересно, какие знания можно извлечь из большого массива данных, насколько большими бывают графы и какие задачи по анализу социальных графов предлагают Facebook, Twitter и др., то эта статья именно для вас.
Читать полностью »
Кластеризация k-means с расстоянием Евклида и Махаланобиса
2012-07-17 в 13:44, admin, рубрики: clustering, clusterization, data mining, k-means, Алгоритмы, искусственный интеллект, метки: clustering, clusterization, data mining, k-meansВ предыдущей статье я рассказывал, как можно реализовать алгоритм k-means на c# с обобщенной метрикой. В комментах можно почитать обсуждение того, насколько целесообразно использовать разные метрики, о математической природе использования разных метрик и тому прочее. Мне тогда хотелось привести красивый пример, но не было под рукой подходящих данных. И вот сегодня я столкнулся с задачей, которая хорошо иллюстрирует преимущества использования расстояния Махаланобиса в k-means кластеризации. Подробности под катом.