Comments 36
Заинтересованный читатель найдет и множество других алгоритмов обнаружения аномалий...
Но я так и не нашёл ответа в статье — как по-научному называется заинтересованный человек, ищущий аномалии в выборке данных? Хотя статья — об этом.
Такого человека можно просто назвать исследователем данных. А самый простой способ и наверно часто применяющийся — предположить, что распределение данных нормальное и поставить порог на отклонение от среднего — обозвать выбросом, например, все что лежит вне шара радиуса 2.5 std от центра. Также можно поставить порог на вероятность появление такого редкого объекта — про это Andrew Ng рассказывает в его известном курсе машинного обучения на Coursera. Примерно то же делает метод covariance estimator, который на Scikit-learn сравнивается с One-class SVM. Разновидности covariance estimator рассматриваются в еще одном примере Scikit-learn. И как всегда Википедия подскажет еще немало методов — адапатации нейронных сетей, ансамблей, kNN, ассоциативных правил и алгоритмов кластеризации под эту задачу.
Предлагаю размять мозг и подумать, что еще интересного можно вытащить из этого сета. До меня «первопроходец» BubaVV строил регрессию вида lm(Weight ~ Bust + Waist + Hips + Height), но так же можно предсказывать и рост от других параметров и не только линейной регрессией.
Можно добавлять признаки (см. введение в Feature Engineering на Хабре), например индекс массы тела MI = 10^4 * Weight / Height^2. Поможет ли, подскажет кросс-валидация моделей.
По картинке видно, что кластеры не выделяются, а жаль.
Можно еще ассоциативные правила строить вида «Bust > 90 and Height > 170 => Weight > 62». У деревьев решений на выходе примерно то же.
Что-нибудь еще?
Вижу два направления развития.
1. Добавить много-много параметров моделей и выбрать из них самые информативные. Выбирать можно генетическим алгоритмом, он тут бодро справляется
2. Добавить немного параметров и пробовать строить зависимость очень нелинейного вида. Например, из зависимость вида W=Bust*Height, W=Bust+Height и W=Bust+(Height*Hips) выбрать самую правильную. Зависимости генерировать в виде «программы» для маленькой стек-машины
1. Добавить — в смысле породить из имеющихся? Тут можно тогда feature importance считать, например, с помощью прироста информации.
2. Вручную перебирать или автоматически генерить такие комбинации признаков — вряд ли перспективно, хотя точно не знаю. Просто SVM и нейронные сети как раз это и делают — строят очень сложную нелинейную функцию от входных признаков. А нужная комбинация найдется в процессе оптимизации.
1. Нет, именно найти новые. Длина волос например, или длина ног, или еще что-то в таком виде.
2. В науке местами штука очень востребованная. Нейросеть функцию сделает и реализует, но в ряде случаев нужно именно уравнение обычного вида.
UFO landed and left these words here
А вот оригинальная статья, в которой, отмечается, что пока обычные американцы и американки толстели с 1950-х годов по 2000-ые, модели Playboy, наоборот, худели. Но и, к сожалению, заодно и худели грудью. Или это результат борьбы с некачественными имплантантами…
Пользователям любой ОС можно не мучаться с установкой библиотек и воспользоваться anaconda
Для желающих отвлечься от проганья и раскрыть для себя тему сисек в статье приведены ссылки на моделей на playboy.com.
Теперь ждем статью-туториал про анализ видео и алгоритмы рекомендаций!
Самое гнусное в оном жанре — когда модель пырится смотрит прямо в камеру. Как учебная задача для распознавания лиц — самое оно, как мне кажется
Но сначала придется разметить тестовую базу. Самая неприятная часть в любой задаче машинного обучения!
Взаимное расположение овала лица и глаз. Я абсолютно не в теме, но думал что оно сразу заведется в хоть каком-то виде. А тестовую выборку придется спарсить с какого-нибудь сайта
Похоже на то, что вы действительно не в теме.

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

Но пока вы не измерили точность его работы, это — пффф — никому не интересный кода кусок, вроде сносно работающий на трех конкретных фоточках. А чтобы узнать точность, нужно каким-то более достоверным способом (часто — просто вручную), разметить достаточно большую и разнообразную тестовую базу распознаваемых объектов. А затем сравнивая достоверную разметку с ответом алгоритма судить о точности последнего.
Все верно, только тут стоит отметить, что мы живем уже в мире таких объемов данных, пометить которые бывает нереально или очень дорого. Поэтому современные алгоритмы Semi-supervised learning и deep learning адаптируются для работы с частично или слабо помеченными данными.
Все верно, только я вот пытался пошутить про разметку порно, но юмора что-то никто не оценил ;)
Ниче так предложение было бы для Amazon Mechanical Turk! сразу желающие нашлись бы, и не только домохозяйки
кстати, судя по ответу одного из разработчиков Яндекса, их асессоры отчасти этим и занимаются.
Если нет, пользователи Windows могут порадоваться и элементарно установить прекомпилированные библиотеки отсюда.
Ну а пользователям никсов и маков (как и автору) придется чуть-чуть помучаться, но статья не об этом.

Вы всё перепутали.
Всегда считал, что главное — не конкретные размеры, а их соотношения с другими чертами, наличие некоторой симметрии.

Другими словами, если в музыке, все строится вокруг резонансов, отсюда и идет в конечном счете размер октавы и понятие «тон, полутон», и уже существуют программные «композиторы»,
То было бы интересно увидеть программный алгоритм определения «симпатичный/не симпатичный», возможно даже генерация лиц.
Я вам про алгоритмы и духовность, а вы…

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

Блин, это же идея для стартапа в каком-нить фейсбуке/vk. И возможность отправить скриншот подруге.
Вы только при расчете идеального лица не забудьте про uncanny valley, а то очень забавный эффект может получиться.
Распределения странные. Например, рост. Видны провалы. на 160++ и на 170++. Почему? Дюймы перевели в см и уже потом сантиметры разбили на интервалы для гистограммы. Пожалуй, плохая идея была.
По сути преобразование из дюймов в сантиметры — линейное, и ничего не должно было кардинально поменяться. Где было 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")

Как и должно быть — три модели Playboy эквивалентны одной Инфузории Туфелька.
Очень заинтересовали тройняшки, глянул фото, оказались все силиконовые, облом :(
Only those users with full accounts are able to leave comments. Log in, please.