Pull to refresh
131
0
Yury Kashnitsky @yorko

Principal Machine Learning Scientist

Send message
Писал похожий материал, только обзор конкретных курсов — habrahabr.ru/post/248069
Могу добавить, что не стоит браться за курс, если потом не собираешься использовать полученные знания. Звучит банально, но я прошел 4 курса из специализации Data Science, когда-то разбирался в языке R, но все равно предпочитаю Python, и по сути многие часы про ggplot и прочие детали визуализации в R прошли для меня почти впустую.
Я пока c реально большими данными не работал, но кажется, серьезная сложность при переходе от подготовленных Kaggle датасетов к реальным данным с пропусками, ошибками, несоответствием форматов и прочим безобразием — это парсинг данных. На курсере в специализации «Data Science» говорится о некоторых приемах data munging, и что на это дело в работе исследователя данных уходит 90% времени.
Есть какие-то рекомендации, где научиться экономить время на подготовку данных, или это уже только с опытом приходит?
по-моему, неплохо вариант — «исследователь данных».
А вот оригинальная статья, в которой, отмечается, что пока обычные американцы и американки толстели с 1950-х годов по 2000-ые, модели Playboy, наоборот, худели. Но и, к сожалению, заодно и худели грудью. Или это результат борьбы с некачественными имплантантами…
По сути преобразование из дюймов в сантиметры — линейное, и ничего не должно было кардинально поменяться. Где было 25 дюймов, стало 64 см, если правильно округлять (так то 63.5, и если над данными работают разные люди, то кто-то мог взять и «округлить» до 63).
Причина «провалов» таится, во-первых, в округлении, а во-вторых, в слишком подробных гистограммах.
Если посмотреть на изначальные данные в дюймах, то получится вот что:

table(height$V1)

 59   60 60.5   61   62 62.5   63 63.5   64 64.5   65 65.5   66 66.5   67 67.5   68 68.5   69 69.5   70 
   2    4    1    5   29    4   38    1   54   13   85   20   86    5   99   10   78   19   31    5   18 
70.5   71   72   73   74 
   1    9    1    1    1 

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

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

hist(height$V1, breaks= 20, col="Green", xlab = "Height in inches", main = "Height")
> hist(height$V1, breaks= 100, col="Red", xlab = "Height in inches", main = "Height")

кстати, судя по ответу одного из разработчиков Яндекса, их асессоры отчасти этим и занимаются.
Ниче так предложение было бы для Amazon Mechanical Turk! сразу желающие нашлись бы, и не только домохозяйки
1. Добавить — в смысле породить из имеющихся? Тут можно тогда feature importance считать, например, с помощью прироста информации.
2. Вручную перебирать или автоматически генерить такие комбинации признаков — вряд ли перспективно, хотя точно не знаю. Просто SVM и нейронные сети как раз это и делают — строят очень сложную нелинейную функцию от входных признаков. А нужная комбинация найдется в процессе оптимизации.
Все верно, только тут стоит отметить, что мы живем уже в мире таких объемов данных, пометить которые бывает нереально или очень дорого. Поэтому современные алгоритмы Semi-supervised learning и deep learning адаптируются для работы с частично или слабо помеченными данными.
Предлагаю размять мозг и подумать, что еще интересного можно вытащить из этого сета. До меня «первопроходец» BubaVV строил регрессию вида lm(Weight ~ Bust + Waist + Hips + Height), но так же можно предсказывать и рост от других параметров и не только линейной регрессией.
Можно добавлять признаки (см. введение в Feature Engineering на Хабре), например индекс массы тела MI = 10^4 * Weight / Height^2. Поможет ли, подскажет кросс-валидация моделей.
По картинке видно, что кластеры не выделяются, а жаль.
Можно еще ассоциативные правила строить вида «Bust > 90 and Height > 170 => Weight > 62». У деревьев решений на выходе примерно то же.
Что-нибудь еще?
Для желающих отвлечься от проганья и раскрыть для себя тему сисек в статье приведены ссылки на моделей на playboy.com.
Такого человека можно просто назвать исследователем данных. А самый простой способ и наверно часто применяющийся — предположить, что распределение данных нормальное и поставить порог на отклонение от среднего — обозвать выбросом, например, все что лежит вне шара радиуса 2.5 std от центра. Также можно поставить порог на вероятность появление такого редкого объекта — про это Andrew Ng рассказывает в его известном курсе машинного обучения на Coursera. Примерно то же делает метод covariance estimator, который на Scikit-learn сравнивается с One-class SVM. Разновидности covariance estimator рассматриваются в еще одном примере Scikit-learn. И как всегда Википедия подскажет еще немало методов — адапатации нейронных сетей, ансамблей, kNN, ассоциативных правил и алгоритмов кластеризации под эту задачу.
Точно, спасибо! Слышал, но давно хотел проверить.
То что выборка ограничена — не поспоришь. Описал те курсы, которые сам прошел. Да, добавил в название «некоторых». А насчет первоисточников: если бы у них были подобные обзорные статьи курсов по темам, то может, и можно было бы удовлетвориться одними только первоисточниками, и то не факт.
Спасибо! Полезные поисковики.
Да, специализацию Data Science я упомянул в описании курса Data Analysis. «Computing for Data Analysis» почти идентичен курсу «R Programming» специализации, а «Data Analysis» в принципе еще можно в watchlist добавить, так что не факт, что он больше не будет проводиться. Мне он понравился намного больше, чем курсы специализации. «Data Analysis» намного интенсивней, и задания интересные. Правда, в «Practical Machine Learning» проект очень похож. Но в целом видно, что Coursera хочет больше денег зарабатывать. Первый курс серии — «Data Analysist's Toolbox» ну совсем ни о чем — про Github и markdown можно за пару дней рассказать, а они на месяц растянули.
Не спорю. Но до описания курса как-то надо дойти, и этого описания может быть слишком много (опустим, что на английском) для начинающего, для того, кто выбирает среди кучи курсов.
Проведу простую аналогию: я сам неоднократно слышал про Kaggle, хотел бы поучаствовать, но пока еще руки не дошли. И вроде сами соревнования хорошо описаны на сайте, но все же чтобы выбрать, я почитаю про реальный опыт команд, истории побед, какие-то подсказки. В-общем, считаю истории реальных людей важным дополнением к описанию соревнований на самом Kaggle. Так же и с MOOC-ами.
Не включаю, потому что не проходил. Хотя я учился в летней школе по криптографии и хотел пройти этот курс. Но не сказал бы, что это must-know для исследователя данных.
Да, я начинал курс Седжвика. Он очень крутой, согласен. Для программиста (особенно Java) очень полезен. Но я его не закончил, поэтому и не включил. Я потом добавлю список курсов, которые начинал и хотел бы пройти. Там он обязательно будет. Как и Algorithms: Design and Analysis, part 2
Я знаю, что все знают про Coursera — я просто делюсь своим опытом. Это как с автомобилями. Все знают про Мазду 3. Но при этом почитать про ее тест-драйв, понять, какова она деле — полезно. Может простимулировать самому записаться на тест-драйв.
12 ...
16

Information

Rating
Does not participate
Location
Den Haag, Zuid-Holland, Нидерланды
Works in
Date of birth
Registered
Activity