Обновить
58
0
Руслан Еникеев@irriss

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

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

Базовые принципы машинного обучения на примере линейной регрессии

Время на прочтение20 мин
Охват и читатели208K
Здравствуйте, коллеги! Это блог открытой русскоговорящей дата саентологической ложи. Нас уже легион, точнее 2500+ человек в слаке. За полтора года мы нагенерили 800к+ сообщений (ради этого слак выделил нам корпоративный аккаунт). Наши люди есть везде и, может, даже в вашей организации. Если вы интересуетесь машинным обучением, но по каким-то причинам не знаете про Open Data Science, то возможно вы в курсе мероприятий, которые организовывает сообщество. Самым масштабным из них является DataFest, который проходил недавно в офисе Mail.Ru Group, за два дня его посетило 1700 человек. Мы растем, наши ложи открываются в городах России, а также в Нью-Йорке, Дубае и даже во Львове, да, мы не воюем, а иногда даже и употребляем горячительные напитки вместе. И да, мы некоммерческая организация, наша цель — просвещение. Мы делаем все ради искусства. (пс: на фотографии вы можете наблюдать заседание ложи в одном из тайных храмов в Москве).

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

Что я хотел бы знать об акциях и долях, прежде чем стать частью стартапа-единорога

Время на прочтение7 мин
Охват и читатели16K
Ограничение ответственности: настоящая статья написана анонимно. Упомянуто несколько конкретных компаний, но лишь в качестве общего примера.

Данный пост коротко рассказывает о том, что я хотел бы знать и продумать до поступления на работу в какую-либо закрытую акционерную (частную) компанию (она же стартап, она же «единорог» в некоторых случаях — при оценке стоимости выше $1 млрд).

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

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

Bitcoin in a nutshell — Transaction

Время на прочтение9 мин
Охват и читатели81K

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


Когда мы имеем дело с финансовой системой на основе блокчейна, то процесс денежного перевода выглядит совершенно иначе. В Bitcoin не существует никакой общей таблицы вида <адрес, баланс>, ровно как и не существует регулятора, который бы эту таблицу редактировал. В этой статье я покажу, что из себя представляет транзакция в Bitcoin, как она строится, и объясню, зачем же внутри Bitcoin добавлен свой язык программирования, про который все слышали, но никто не видел.


meme

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

Рекурентная нейронная сеть в 10 строчек кода оценила отзывы зрителей нового эпизода “Звездных войн”

Время на прочтение11 мин
Охват и читатели161K
Hello, Habr! Недавно мы получили от “Известий” заказ на проведение исследования общественного мнения по поводу фильма «Звёздные войны: Пробуждение Силы», премьера которого состоялась 17 декабря. Для этого мы решили провести анализ тональности российского сегмента Twitter по нескольким релевантным хэштегам. Результата от нас ждали всего через 3 дня (и это в самом конце года!), поэтому нам нужен был очень быстрый способ. В интернете мы нашли несколько подобных онлайн-сервисов (среди которых sentiment140 и tweet_viz), но оказалось, что они не работают с русским языком и по каким-то причинам анализируют только маленький процент твитов. Нам помог бы сервис AlchemyAPI, но ограничение в 1000 запросов в сутки нас также не устраивало. Тогда мы решили сделать свой анализатор тональности с блэк-джеком и всем остальным, создав простенькую рекурентную нейронную сеть с памятью. Результаты нашего исследования были использованы в статье “Известий”, опубликованной 3 января.



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

Бесконечная история: гены, которые работают после смерти

Время на прочтение6 мин
Охват и читатели23K
Накануне светлого праздника, свободного от идеологии, религии и культа личностей, принято вспоминать о чудесах и рассказывать невероятные истории. Новогодние истории — не обязательно про торжество справедливости, не про битву добра и зла. Они очень светлые и рассказывают о чудесах, которые случаются в повседневной жизни с самыми обычными существами. Вот и мы для вас подготовили новогоднюю сказку о… генах. Самые обычные существа в лаборатории — мыши и рыбки данио-рерио. Первым даже был поставлен памятник за их честную службу людям, а вторые, хоть и без памятника, безмолвно жертвуют своих крупных прозрачных эмбрионов ученым, чтобы те могли исследовать общие законы развития позвоночных. Ученые из Европы и Соединенных Штатов Америки попытались выяснить, что происходит с мышками и рыбками после смерти. Как-то раз в лаборатории калибровали метод измерения активности генов в трупиках животных, и вот что из этого получилось.

image

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

Расширенная регуляризация нейронных сетей в интернет-магазинах — с помощью… напалма

Время на прочтение9 мин
Охват и читатели10K
Подмигнув дедушке Энштейну, поправив ранец с напалмом и пригладив стильную черную маечку с изображением формулы закона нормального распределения, ведущий аналитик распахнул двери PR-отдела, блистательно улыбнулся и спросил: «Ребят, продолжаете собирать e-mail клиентов в эксельках и креативите методом блуждания левой руки с закрытыми глазами?». Получив радостное «ага :-)», боец мысленно поблагодарил Джона Непера за проделанную работу на благо просвещения человечества и сокращение рутинного труда и… бодро нажал на гашетку.

Альберт Энштейн всегда вдохновлял аналитиков на внедрение передовых алгоритмов

Спустя 5 минут топливо в ранце уже закончилось, было довольно тепло, если не сказать — жарко, но коллеги (?) ничего не замечали и продолжали считать лайки под своими постами в соцсетях.
Читать дальше →

Как проверить причинную связь без эксперимента?

Время на прочтение9 мин
Охват и читатели16K


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

Действительно ли пациентам, тестирующим новое лекарство, становится лучше из-за лекарства, или они все все равно бы выздоровели? Ваши продавцы действительно эффективны или же они говорят с теми клиентами, которые и так готовы совершить покупку? Действительно ли Сойлент (или рекламная кампания, которая обойдётся фирме в миллион долларов) стоит вашего времени?
Читать дальше →

Особенности Jupyter Notebook, о которых вы (может быть) не слышали

Время на прочтение10 мин
Охват и читатели387K
Jupyter Notebook – это крайне удобный инструмент для создания красивых аналитических отчетов, так как он позволяет хранить вместе код, изображения, комментарии, формулы и графики:



Ниже мы расскажем о некоторых фишках, которые делают Jupyter очень крутым. О них можно прочитать и в других местах, но если специально не задаваться этим вопросом, то никогда и не прочитаешь.
Читать дальше →

Погружение в технологию блокчейн: Инфраструктура публичных ключей всемирного масштаба

Время на прочтение9 мин
Охват и читатели10K
Продолжаем цикл статей про технологию Emer. Данная статья расскажет об инфраструктуре для управления терминальным доступом к узлам сети по протоколу ssh, emcSSH.


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

VaR как способ оценки риска. Исторический метод

Время на прочтение7 мин
Охват и читатели49K


В этой статье я хочу познакомить вас с популярным инструментом для оценки финансового риска VaR (ValueAtRisk). При этом я постараюсь использовать минимум экономических, математических и статистических терминов.

Главные идеи VaR были разработаны и применены в банке JP Morgan в 80-х. Широкое применение VaR получил в 1993 когда был одобрен Группой тридцати(G-30) как часть “лучших практик” для работы с деривативами(производными финансовыми инструментами). А позже стала одним из показателей риска банка по системе Базель II (набор международных рекомендации по банковскому регулированию). Идею используемую в VaR можно отследить до ранних работ лауреата нобелевской премии по экономике Гарии Марковица в 1952.
Читать дальше →

[ В закладки ] Зоопарк архитектур нейронных сетей. Часть 1

Время на прочтение10 мин
Охват и читатели102K


Это первая часть, вот вторая.
За всеми архитектурами нейронных сетей, которые то и дело возникают последнее время, уследить непросто. Даже понимание всех аббревиатур, которыми бросаются профессионалы, поначалу может показаться невыполнимой задачей.

Поэтому я решил составить шпаргалку по таким архитектурам. Большинство из них — нейронные сети, но некоторые — звери иной породы. Хотя все эти архитектуры подаются как новейшие и уникальные, когда я изобразил их структуру, внутренние связи стали намного понятнее.
Читать дальше →

Парадокс Симпсона и немного Pandas

Время на прочтение4 мин
Охват и читатели48K

О чем статья?


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

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

  • Less than 9th grade -3.7%
  • 9th-12th but didn’t finish -6.7%
  • High school graduate -3.3%
  • Some college but no degree -3.7%
  • Associate’s degree -10.0%
  • Bachelor’s degree or more -2.7%

По этим цифрам можно сделать вывод, что заработок женщин за 12 лет снизился. Однако, на самом деле, средний заработок женщин с полной занятостью вырос на 2.8% (подробнее про этот пример можно почитать тут).

Одним из наиболее известных примеров парадокса Симпсона является случай половой дискриминации при поступлении в Калифорнийский унивеситет Berkeley. Его и будем рассматривать далее.
Читать дальше →

Зачем нужен алгоритм Хо-Кашьяпа?

Время на прочтение4 мин
Охват и читатели19K
Недавно на Хабре появилась публикация про алгоритм Хо-Кашьяпа (Ho-Kashyap procedure, он же — алгоритм НСКО, наименьшей среднеквадратичной ошибки). Мне она показалась не очень понятной и я решил разобраться в теме сам. Выяснилось, что в русскоязычном интернете тема не очень хорошо разобрана, поэтому я решил оформить статью по итогам поисков.

Несмотря на бум нейросетей в машинном обучении, алгоритмы линейной классификации остаются гораздо более простыми в использовании и интерпретации. Но при этом иногда вовсе не хочется пользоваться сколько-нибудь продвинутыми методами, вроде метода опорных векторов или логистической регрессии и возникает искушение загнать все данные в одну большую линейную МНК-регрессию, тем более её прекрасно умеет строить даже MS Excel.

Проблема такого подхода в том, что даже если входные данные линейно разделимы, то получившийся классификатор может их не разделять. Например, для набора точек X = [(6, 9), (5, 7), (5, 9), (10, 1)], y = [1, 1, -1, -1] получим разделяющую прямую (0.15x_1 - 0.43x_2 + 3.21) = 0 (пример позаимствован из (1)):

Latex


Встаёт вопрос — можно ли как-то избавиться от этой особенности поведения?
Под катом немного теории и код на python

Как программист машину покупал. Часть II

Время на прочтение11 мин
Охват и читатели41K
В предыдущей статье на примере покупки Mercedes-Benz E-klasse не старше 2010 года выпуска стоимостью до 1.5 млн рублей в Москве была рассмотрена задача поиска выгодных автомобилей. Под выгодными следует понимать предложения, цена которых ниже рыночной в текущий момент среди объявлений, собранных со всех наиболее авторитетных сайтов по продаже б/у автомобилей в РФ.

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


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

Обзор топологий глубоких сверточных нейронных сетей

Время на прочтение18 мин
Охват и читатели113K
Это будет длиннопост. Я давно хотел написать этот обзор, но sim0nsays меня опередил, и я решил выждать момент, например как появятся результаты ImageNet’а. Вот момент настал, но имаджнет не преподнес никаких сюрпризов, кроме того, что на первом месте по классификации находятся китайские эфэсбэшники. Их модель в лучших традициях кэгла является ансамблем нескольких моделей (Inception, ResNet, Inception ResNet) и обгоняет победителей прошлого всего на полпроцента (кстати, публикации еще нет, и есть мизерный шанс, что там реально что-то новое). Кстати, как видите из результатов имаджнета, что-то пошло не так с добавлением слоев, о чем свидетельствует рост в ширину архитектуры итоговой модели. Может, из нейросетей уже выжали все что можно? Или NVidia слишком задрала цены на GPU и тем самым тормозит развитие ИИ? Зима близко? В общем, на эти вопросы я тут не отвечу. Зато под катом вас ждет много картинок, слоев и танцев с бубном. Подразумевается, что вы уже знакомы с алгоритмом обратного распространения ошибки и понимаете, как работают основные строительные блоки сверточных нейронных сетей: свертки и пулинг.

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

Python для математических вычислений. Опыт Марка Андреева

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели92K

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


Мы попытаемся найти в языке функции, которые обычно требуем от математических пакетов. Рассмотрим сильные и слабые стороны идеи использования python вместо MATLAB, Maple, Mathcad, Mathematica.

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

Обзор курсов по Deep Learning

Время на прочтение11 мин
Охват и читатели72K
Привет, Хабр! Последнее время все больше и больше достижений в области искусственного интеллекта связано с инструментами глубокого обучения или deep learning. Мы решили разобраться, где же можно научиться необходимым навыкам, чтобы стать специалистом в этой области.

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

О степенях свободы в статистике

Время на прочтение8 мин
Охват и читатели260K
В одном из предыдущих постов мы обсудили, пожалуй, центральное понятие в анализе данных и проверке гипотез — p-уровень значимости. Если мы не применяем байесовский подход, то именно значение p-value мы используем для принятия решения о том, достаточно ли у нас оснований отклонить нулевую гипотезу нашего исследования, т.е. гордо заявить миру, что у нас были получены статистически значимые различия.

Однако в большинстве статистических тестов, используемых для проверки гипотез, (например, t-тест, регрессионный анализ, дисперсионный анализ) рядом с p-value всегда соседствует такой показатель как число степеней свободы, он же degrees of freedom или просто сокращенно df, о нем мы сегодня и поговорим.


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

Что такое свёрточная нейронная сеть

Время на прочтение13 мин
Охват и читатели277K


Введение


Свёрточные нейронные сети (СНС). Звучит как странное сочетание биологии и математики с примесью информатики, но как бы оно не звучало, эти сети — одни из самых влиятельных инноваций в области компьютерного зрения. Впервые нейронные сети привлекли всеобщее внимание в 2012 году, когда Алекс Крижевски благодаря им выиграл конкурс ImageNet (грубо говоря, это ежегодная олимпиада по машинному зрению), снизив рекорд ошибок классификации с 26% до 15%, что тогда стало прорывом. Сегодня глубинное обучения лежит в основе услуг многих компаний: Facebook использует нейронные сети для алгоритмов автоматического проставления тегов, Google — для поиска среди фотографий пользователя, Amazon — для генерации рекомендаций товаров, Pinterest — для персонализации домашней страницы пользователя, а Instagram — для поисковой инфраструктуры.


Но классический, и, возможно, самый популярный вариант использования сетей это обработка изображений. Давайте посмотрим, как СНС используются для классификации изображений.


Задача


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


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

Рекомендательные системы в онлайн-образовании. Продолжение

Время на прочтение10 мин
Охват и читатели11K

Мы продолжаем рассказывать о системе адаптивного обучения на Stepic.org. Первую вводную часть этой серии можно почитать здесь.


В данной статье мы расскажем о построении рекомендательной системы (которая и лежит в основе адаптивности). Расскажем о сборе и обработке пользовательских данных, о графах переходов, хендлерах, оценке реакции пользователя, формировании выдачи.


Вспомним про линейную регрессию, регуляризацию и даже поймём, почему в нашем случае лучше использовать гребневую регрессию, а не какую-нибудь там ещё.



Ну, поехали

Информация

В рейтинге
Не участвует
Откуда
Сингапур
Зарегистрирован
Активность