Как стать автором
Поиск
Написать публикацию
Обновить
768.67

Машинное обучение *

Основа искусственного интеллекта

Сначала показывать
Порог рейтинга
Уровень сложности

Вероятностное программирование

Время на прочтение19 мин
Количество просмотров42K
Вероятностное моделирование является одним из мощнейших инструментов для специалиста по анализу данных. К сожалению, для его использования необходимо не только уверенно владеть аппаратом теории вероятностей и математической статистики, но и знать детали работы алгоритмов приближенного байесовского вывода, что делает порог вхождения очень высоким. Из этой лекции вы узнаете о сравнительно молодой парадигме в машинном обучении — вероятностном программировании. Его задача — сделать всю мощь вероятностного моделирования доступной любому человеку, имеющему опыт программирования и минимальный опыт анализа данных.



Лекция была прочитана Борисом hr0nix Янгелем на факультете компьютерных наук, открытом в Высшей школе экономики при поддержке Яндекса. Сам Борис окончил ВМиК МГУ и Школу анализа данных Яндекса. Работал в Microsoft Research Cambridge в группе Кристофера Бишопа над фреймворком Infer.NET. Сейчас Борис — ведущий разработчик поиска Яндекса.

Под катом — расшифровка рассказа.
Читать дальше →

Формирование музыкальных предпочтений у нейронной сети — эксперимент по созданию умного плеера

Время на прочтение7 мин
Количество просмотров37K
Данная статья посвящена работе по исследованию возможности обучить простейшую (относительно) нейронную сеть «слушать» музыку и отличать «хорошую» по мнению слушателя от «плохой».

Цель


Научить нейронную сеть отличать «плохую» музыку от «хорошей» или показать, что нейронная сеть на это неспособна (данная конкретная ее реализация).

image
Читать дальше →

Типы личности по MBTI: влияние на восприятие рекламы

Время на прочтение5 мин
Количество просмотров43K
Привет Хабр! Анализируя пользовательские данные для нужд маркетинга и рекламы, мы решили исследовать влияние типа личности пользователя на то, как он реагирует на рекламное объявление. За основу решили взять, пожалуй, самую популярную типологию линостей MBTI (Myers-Briggs Type Indicator), известную еще с середины 20-го века. Многие крупные западные компании используют тесты MBTI при найме или при формировании команды для работы над проектами.

Но нас интересует, конечно, не готовность пользователя к командной работе, а влияние его типа личности на желание кликнуть по баннеру. Поэтому вопрос, который мы исследовали звучит так: «Могут ли типы личности влиять на CTR в рекламных кампаниях?»

В этой статье я расскажу о том как мы это делали.


Читать дальше →

Первый опыт участия в kaggle-конкурсе и работа над ошибками

Время на прочтение5 мин
Количество просмотров15K
Хочу поделиться опытом своего первого участия в kaggle конкурсе (учебный Bag of Words). И хотя мне не удалось достичь поражающих воображение результатов, я расскажу о том, как искала и находила способы улучшить примеры “учебника” (для этого сами примеры тоже кратко опишу), а также остановлю внимание на разборе своих просчетов. Должна предупредить, что статья будет интересна прежде всего новичкам в области text mining. Тем не менее, большинство методов я описываю кратко и упрощенно, давая при этом ссылки на более точные определения, поскольку цель моя — обзор практики, а не теории. К сожалению, конкурс уже завершился, но прочитать материалы к нему все равно может быть полезно. Ссылка на код к статье тут.
Читать дальше →

Алгоритмы разума

Время на прочтение5 мин
Количество просмотров22K
Наука всегда сопровождает технологию, изобретения дают нам новую пищу для размышлений и создают новые явления, которые еще предстоит объяснить.

Так говорит Арам Харроу (Aram Harrow), профессор физики Массачуссетского технологического в своей статье «Почему сейчас самое подходящее время для изучения квантовых вычислений».

Он считает, что с научной точки зрения энтропия не могла быть полностью изученной, пока технология парового двигателя не дала толчок к развитию термодинамики. Квантовые вычисления появились из-за потребности имитировать квантовую механику на компьютере. Так и алгоритмы человеческого разума могут быть изучены с появлением нейронных сетей. Энтропия используется во многих областях: например, при смарт кропе, в кодировании видео и изображений; в статистике.

image
Читать дальше →

Автоматическое определение тональности текста (Sentiment Analysis)

Время на прочтение7 мин
Количество просмотров58K
За недолгое время моего процесса обучения я понял одну вещь – знаниями нужно делиться. Осознал я это давно, но лень перебороть и найти время не всегда получается.

Речь в этой статье пойдет про использование различных методов машинного обучения для решения проблем, связанных с обработкой естественного языка (NLP). Одной из таких проблем является автоматическое определение эмоциональной окраски (позитивный, негативный, нейтральный) текстовых данных, то есть анализа тональности (sentiment analysis). Цель этой задачи состоит в определении, является ли данный текст (допустим обзор фильма или комментарии) положительным, отрицательным или нейтральным по своему влиянию на репутацию конкретного объекта. Трудность анализа тональности заключается в присутствии эмоционально обогащенного языка — сленг, многозначность, неопределенность, сарказм, все эти факторы вводят в заблуждение не только людей, но и компьютеров.



На хабре уже не раз появлялись статьи связанные с определением тональности 1, 2, 3. Да и вообще, эта тема является одной из самых обсуждаемых во всем мире в последнее время [1, 2, 3, 4].

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

Итак, в чем же состоит проблема и как ее решить?
Читать дальше →

Моделирование и анализ вычислительных процессов

Время на прочтение1 мин
Количество просмотров8.8K
Машины Тьюринга, Поста, Минского, алгоритмы Маркова, рекурсивные функции Клини были придуманы в первой половине двадцатого века в результате попыток формализовать понятие алгоритма. Эти математические модели до сих пор успешно применяются для решения задач разрешимости и алгоритмической сложности, но бесполезны для моделирования поведения сетевых протоколов или компонентов операционной системы. В докладе представлены некоторые современные подходы к моделированию вычислений, которые используются в индустрии при разработке сложных информационных систем.



Лекцию в марте прошлого года прочитал на факультете компьютерных наук Ростислав Яворский, доцент департамента анализа данных и искусственного интеллекта. На факультете Ростислав Эдуардович ведет курсы «Введение в программирование», «Компьютерная алгебра», «Неклассические логики и представление знаний».
Читать дальше →

Простой метод для извлечения соотношений и фактов из текста

Время на прочтение4 мин
Количество просмотров16K
Ранее мы писали об анализе отзывов о ресторанах, с целью извлечения упоминаний разных аспектов (еды, обстановки, и подобного). Недавно в комментариях возник вопрос о извлечении из текста фактической информации, т.е. можно ли, например, из отзывов об автомобилях извлечь факты, например «быстро ломается коробка передач» => ломается(коробка передач, быстро), чтобы с этими фактами можно было потом работать. В этой статье мы опишем один из подходов к решению такой проблемы.



Метод, о котором мы расскажем, опирается на ряд упрощений, он не самый точный, но зато легок в реализации и позволяет быстро создать прототип приложения, в котором он должен использоваться. В ряде случаев его будет и вполне достаточно, а для других можно ввести усовершенствования, не отступая от основного принципа.
Читать дальше →

Иерархическая классификация сайтов на Python

Время на прочтение8 мин
Количество просмотров27K
Привет, Хабр! Как упоминалось в прошлой статье, немаловажной частью нашей работы является сегментация пользователей. Как же мы это делаем? Наша система видит пользователей как уникальные идентификаторы cookies, которые им присваиваем мы или наши поставщики данных. Выглядит этот id, например, так:

42bcfae8-2ecc-438f-9e0b-841575de7479

Эти номера выступают ключами в различных таблицах, но первоначальным value является, в первую очередь, URL страниц, на которых данная кука была загружена, поисковые запросы, а также иногда некоторая дополнительная информация, которую даёт поставщик – IP-адрес, timestamp, информация о клиенте и прочее. Эти данные довольно неоднородные, поэтому наибольшую ценность для сегментации представляет именно URL. Создавая новый сегмент, аналитик указывает некоторый список адресов, и если какая-то кука засветится на одной из этих страничек, то она попадает в соответствующий сегмент. Получается, что чуть ли не 90% рабочего времени таких аналитиков уходит на то, чтобы подобрать подходящий набор урлов – в результате кропотливой работы с поисковиками, Yandex.Wordstat и другими инструментами.
logo
Получив таким образом более тысячи сегментов, мы поняли, что этот процесс нужно максимально автоматизировать и упростить, при этом иметь возможность мониторинга качества алгоритмов и предоставить аналитикам удобный интерфейс для работы с новым инструментом. Под катом я расскажу, как мы решаем эти задачи.
Читать дальше →

Детекция кожи в Wolfram Language (Mathematica)

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

Перевод поста Matthias Odisio "Seeing Skin with Mathematica".
Скачать файл, содержащий текст статьи, интерактивные модели и весь код, приведенный в статье, можно здесь.
Выражаю огромную благодарность Кириллу Гузенко за помощь в переводе.

Детекция кожи может быть довольно полезной — это один из основных шагов к более совершенным системам, нацеленным на обнаружение людей, распознавание жестов, лиц, фильтрации на основе содержания и прочего. Несмотря на всё вышеперечисленное, моя мотивация при создании приложения заключалась в другом. Отдел разработки и исследований в Wolfram Research, в котором я работаю, подвергся небольшой реорганизации. С моими коллегами, которые занимаются вероятностями и статистикой, которые стали находиться ко мне значительно ближе, я решил разработать небольшое приложение, которое использовало бы как функционал по обработке изображений в Mathematica, так и статистические функции. Детекция кожи — первое, что пришло мне в голову.

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

Skin detection model
Читать дальше →

Лекция Дмитрия Ветрова о математике больших данных: тензоры, нейросети, байесовский вывод 

Время на прочтение2 мин
Количество просмотров49K
Сегодня лекция одного из самых известных в России специалистов по машинному обучению Дмитрия Ветрова, который руководит департаментом больших данных и информационного поиска на факультете компьютерных наук, работающим во ВШЭ при поддержке Яндекса.

Как можно хранить и обрабатывать многомерные массивы в линейных по памяти структурах? Что дает обучение нейронных сетей из триллионов триллионов нейронов и как можно осуществить его без переобучения? Можно ли обрабатывать информацию «на лету», не сохраняя поступающие последовательно данные? Как оптимизировать функцию за время меньшее чем уходит на ее вычисление в одной точке? Что дает обучение по слаборазмеченным данным? И почему для решения всех перечисленных выше задач надо хорошо знать математику? И другое дальше.



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

Майский Python Meetup: машинное обучение и куда класть исходники

Время на прочтение1 мин
Количество просмотров13K
Всем привет! Мы хотим поделиться с вами записями выступлений с предыдущего Python Meetup. В этот раз мы обсуждали полезность сохранения исходного кода с Григорием Петровым и особенности применения машинного обучения с Андрем Гриненко.



Читать дальше →

Коллоквиумы на факультете Яндекса в Вышке: молекулярная биология

Время на прочтение1 мин
Количество просмотров20K
20 июня начался прием документов на факультет компьютерных наук, который в прошлом году при участии Яндекса был открыт в Высшей школе экономики. Желающих учиться на нём оказалось так много, что количество бюджетных мест тогда увеличили в два раза. В итоге на первый курс поступило 320 человек.

На факультете помимо занятий для студентов есть специальные семинары, на которые могут приходить все желающие. Они проходят в рамках Коллоквиума факультета компьютерных наук ВШЭ. Семинары проводят учёные не только из Вышки, но из других вузов и научных центров — МГУ, МФТИ, Математического института и института системного анализа РАН, MIT, Microsoft Research, Школы анализа данных Яндекса. Прийти их послушать может не только студент или сотрудник ФКН, но и любой желающий. С сегодняшнего дня мы начинам публиковать записи избранных выступлений.



Первый семинар, который мы выбрали, проводил известный российский биоинформатик Михаил Гельфанд. Из него вы узнаете об основных информационные процессах, протекающих в клетке при реализации геномной программы. Как говорил сам Михаил Сергеевич, доклад задумывался как «crash course по молекулярной биологии для тех коллег, которые хотят понимать, чем занимаются биологи и про что разговаривают биоинформатики».
Читать дальше →

Ближайшие события

Умный интернет вещей — кто он и с чем его едят?

Время на прочтение7 мин
Количество просмотров131K
Тренд интернета вещей сейчас набирает всё большую популярность. Чаще всего понятие интернета вещей неразрывно связано с чем-то умным: умные дома, умный транспорт, умные предприятия… Но когда смотришь на эту интеллектуальность внимательнее, то часто разочаровываешься: удаленное управление лампочкой в доме — это в лучшем случае автоматизация, но никак не умный дом. Кажется, что и интернет получается не таким уж и умным… А что же такое умный интернет вещей?
Читать дальше →

Предсказание курса акций с использованием больших данных и машинного обучения

Время на прочтение9 мин
Количество просмотров37K
Примечание переводчика: В нашем блоге мы уже рассказывали об инструментах для создания торговых роботов и даже анализировали зависимости между названием биржевого тикера компании и успешностью ее акций. Сегодня мы представляем вашему вниманию перевод интересной статьи, авторой которой разрабатывал систему, которая анализирует изменения цен на акций в прошлом и с помощью машинного обучения пытается предсказать будущий курс акций.



Краткий обзор

Этот пост основан на статье, носящей название «Моделирование динамики высокочастотного портфеля лимитных ордеров методом опорных векторов». Грубо говоря, я ступенька за ступенькой реализую идеи, представленные в этой статье, используя Spark и Spark MLLib. Авторы используют сокращенные примеры, я же буду использовать полный журнал ордеров из Нью-Йоркской фондовой биржи (NYSE) (выборочные данные доступны на NYSE FTP), поскольку, работая со Spark, я могу легко это сделать. Вместо того, чтобы использовать метод опорных векторов, я воспользуюсь алгоритмом дерева решений для классификации, поскольку Spark MLLib изначально поддерживает мультиклассовую классификацию.

Если вы хотите глубже понять проблему и предложенное решение, вам нужно прочитать ту статью. Я же проведу полный обзор проблемы в одном или двух разделах, но менее научным языком.

Предсказательное моделирование – это процесс выбора или создания модели, целью которой является наиболее точное предсказание возможного исхода.
Читать дальше →

Как я повышал конверсию машинным обучением

Время на прочтение8 мин
Количество просмотров21K
В этой статье я попробую ответить на такие вопросы:
  • может ли один доклад умного человека сделать другого человека одержимым?
  • как окунуться в машинное обучение (почти) с нуля?
  • почему не стоит недооценивать многоруких бандитов?
  • существует ли серебряная пуля для a/b тестов?

Ответ на первый вопрос будет самым лаконичным — «да». Услышав это выступление bobuk на YaC/M, я восхитился элегантностью подхода и задумался о том, как бы внедрить похожее решение. Я тогда работал продуктовым менеджером в компании Wargaming и как раз занимался т.н. user acquisition services – технологическими решениями для привлечения пользователей, в число которых входила и система для A/B тестирования лендингов. Так что зерна легли на благодатную почву.

К сожалению, по всяким причинам я не мог плотно заняться этим проектом в обычном рабочем режиме. Зато когда я слегка перегорел на работе и решил устроить себе длинный творческий отпуск, одержимость превратилась в желание сделать такой сервис умной ротации лендингов самостоятельно.
Читать дальше →

AI, BigData & HPC Digest #1 (7 мая — 3 июня)

Время на прочтение3 мин
Количество просмотров9.1K
Команда FlyElephant подготовила свежий выпуск дайджеста, который включает в себя подборку со ссылками на новости и материалы по направлениям: искусственный интеллект, большие данные и высокопроизводительные вычисления. Приятного чтения!


Читать дальше →

Автоматическая генерация осмысленных уникальных текстов

Время на прочтение6 мин
Количество просмотров96K
Каждый веб-оптимизатор знает, что для того чтобы сайт любили поисковики, он должен содержать уникальные тексты. Причем не абы какие наборы слов, а осмысленные предложения, желательно по теме сайта. Особо это проблема для агрегаторов, которые берут информацию с других сайтов, и интернет-магазинов, где параметры и данные о товарах в целом одинаковые. Поэтому стандартная практика в этой ситуации — заказывать уникальные тексты копирайтерам. Стоимость такого удовольствия от 50 до 300 руб. за 1000 знаков. Если на вашем сайте 10000 страниц, то уникальные тексты быстро становятся значительной статьей расхода.

В этой статье поговорим методах алгоритмической генерации текстов и расскажем о нашем опыте работы с ними.
Читать дальше →

Внезапный диван леопардовой расцветки

Время на прочтение8 мин
Количество просмотров83K
Если вы интересуетесь искусственным интеллектом и прочим распознаванием, то наверняка уже видели эту картинку:


А если не видели, то это результаты Хинтона и Крижевского по классификации ImageNet-2010 глубокой сверточной сетью

Давайте взглянем на ее правый угол, где алгоритм опознал леопарда с достаточной уверенностью, разместив с большим отрывом на втором и третьем месте ягуара и гепарда.

Это вообще довольно любопытный результат, если задуматься. Потому что… скажем, вы знаете, как отличить одного большого пятнистого котика от другого большого пятнистого котика? Я, например, нет. Наверняка есть какие-то зоологические, достаточно тонкие различия, типа общей стройности/массивности и пропорций тела, но мы же все-таки говорим о компьютерном алгоритме, которые до сих пор допускают какие-то вот такие достаточно глупые с человеческой точки зрения ошибки. Как он это делает, черт возьми? Может, тут что-то связанное с контекстом и фоном (леопарда вероятнее обнаружить на дереве или в кустах, а гепарда в саванне)? В общем, когда я впервые задумался над конкретно этим результатом, мне показалось, что это очень круто и мощно, разумные машины где-то за углом и поджидают нас, да здравствует deep learning и все такое.

Так вот, на самом деле все совершенно не так.
под катом пятна

Глубокое обучение на R, тренируем word2vec

Время на прочтение10 мин
Количество просмотров24K
Word2vec является практически единственным алгоритмом deep learning, который сравнительно легко можно запустить на обычном ПК (а не на видеокартах) и который строит распределенное представление слов за приемлемое время, по крайней мере так считают на Kaggle. Прочитав здесь про то, какие фокусы можно делать с тренированной моделью, я понял, что такую штуку просто обязан попробовать. Проблема только одна, я преимущественно работаю на языке R, а вот официальную реализацию word2vec под R мне найти не удалось, думаю её просто нет.
Читать дальше →

Вклад авторов