Machine Learning again

Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Machine Learning again

Post by Физик-Лирик »

Снежная Королева wrote:Даже такую простую вещь, как подбор гиперпараметров, невозможно решить исключительно тупым прогоном по списку и cross validation, даже на средней величины дата сет. Не говоря уже про биг дата. Приходится включать голову и ограничивать список параметров. А также для выбора переменных надо знать предметную часть, хотя бы для feature engineering.

Самое интересное, однако, начинается, когда надо интерпретировать output. также, когда алгоритм перестает работать, а начальство хочет знать "почему", и как можно быстро его починить.

Однако, высший пилотаж, это когда данных мало или нет вообще, что в большинстве новых задач имеет место быть. Тут как бы ни фреймворки, ни алгоритмы не помогут.
Если данных вообще нет, тогда надо посылать бизнес-аналиста и как можно дальше. А то они взяли моду, данных нет, а результаты вынь да полож. :D
Безусловно, сейчас аналитика - уже не просто прогон алгоритмов.
Deckel
Ник закрыт за хамство.
Posts: 357
Joined: 16 Feb 2014 18:34

Re: Machine Learning again

Post by Deckel »

Снежная Королева wrote:Даже такую простую вещь, как подбор гиперпараметров, невозможно решить исключительно тупым прогоном по списку и cross validation, даже на средней величины дата сет. ... Приходится включать голову и ограничивать список параметров.
Вот посмотрите куда движется наука http://auto-sklearn.readthedocs.org/en/master/" onclick="window.open(this.href);return false; а чтобы не тормозило вот для параллелизации
https://databricks.com/blog/2016/02/08/ ... spark.html" onclick="window.open(this.href);return false;
Снежная Королева wrote: А также для выбора переменных надо знать предметную часть, хотя бы для feature engineering.
C этим спора нет. GIGO
Снежная Королева wrote: Не говоря уже про биг дата.
Как завещал нам великий DevOps Borat
Is no such thing as Big Data. Is only data you not sampled sufficient yet so it fit in RAM and it process with SQLite.
https://twitter.com/DEVOPS_BORAT" onclick="window.open(this.href);return false;
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Machine Learning again

Post by Komissar »

Снежная Королева wrote:Спасибо, я почитаю auto sklearn paper.

Это не отменяет невозможность оптимизации всех гиперпараметров. По той простой причине, что это NP-hard problem. Голову все ж таки надо иногда включать.
NP - это ПН наоборот? У ПН головы нет. Зато есть другие части тела :umnik1: :food:
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Machine Learning again

Post by Физик-Лирик »

Deckel wrote: Вот посмотрите куда движется наука
Это скорее не наука движется, а имплементация. Большинство алгоритмов маш. обучения - оптимизационные (по целевой функции) задачи. Многие из них - параметризационные. Соответственно для них нет оптимальных оценок, т.к. результат зависит от конкретных данных. Вот и приходится "угадывать" оптимальное решение. Например, в Р есть методы, позволяющие находить оптимальные области (как и в приведенном случае Питона). На мой субъективный взгляд, большое количество параметров - скорее недостаток чем достоинство. Байес можно хорошо убрать, а вот вариация наверняка вырастить. Опять-таки выборка может происходить по разным критериям. Например, она может быть завязана и на информационные критерии, оценки значимости коэффициентов, индекса Джини и т.п. Короче моно чего там наворотили. Проблема в том, что зачастую, подборка - это тупой (в хорошем смысле) перебор (типа вложенных циклов). Собственно и вся наука. Другое дело, предварительный анализ данных. Он, конечно, не отменяет выборки, но может её упростить.
Komissar wrote:
Снежная Королева wrote:Спасибо, я почитаю auto sklearn paper.

Это не отменяет невозможность оптимизации всех гиперпараметров. По той простой причине, что это NP-hard problem. Голову все ж таки надо иногда включать.
NP - это ПН наоборот? У ПН головы нет. Зато есть другие части тела :umnik1: :food:
У NP вообще ничего нет. Просто красивые слова. :sadcry:
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Machine Learning again

Post by flip_flop »

Физик-Лирик wrote:
Komissar wrote:
Снежная Королева wrote:Спасибо, я почитаю auto sklearn paper.

Это не отменяет невозможность оптимизации всех гиперпараметров. По той простой причине, что это NP-hard problem. Голову все ж таки надо иногда включать.
NP - это ПН наоборот? У ПН головы нет. Зато есть другие части тела :umnik1: :food:
У NP вообще ничего нет. Просто красивые слова. :sadcry:
На самом деле и NP и ПН имеют много общего. Неопределённое поведение и полиномиальная (как функция размера) трата времени.
Deckel
Ник закрыт за хамство.
Posts: 357
Joined: 16 Feb 2014 18:34

Re: Machine Learning again

Post by Deckel »

Физик-Лирик wrote:
Deckel wrote: Вот посмотрите куда движется наука
Это скорее не наука движется, а имплементация.
Наука в контексте data science. А так конечно не наука - больше искусство. Искуство перебора :-)
https://medium.com/@xamat/10-more-lesso ... .uymcfsu0i" onclick="window.open(this.href);return false;
Сабина
Уже с Приветом
Posts: 19041
Joined: 11 Jan 2012 09:25
Location: CA

Re: Machine Learning again

Post by Сабина »

У нас в компании обнаружился целый отдел machine learning :)! Сидят себе в Нью Йорке тихонечко. Здесь я остановлюсь и не буду продолжать ибо с моей точки зрения machine learning experts при наличии "ху..вой" data pipeline тоже соотвествующие, в общем backend & data warehouse engineers rock :)
https://www.youtube.com/watch?v=wOwblaKmyVw
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Machine Learning again

Post by Физик-Лирик »

Deckel wrote: Наука в контексте data science. А так конечно не наука - больше искусство. Искуство перебора :-)
На самом деле, любая наука это искусство перебора. Я когда начинал заниматься наукой, наивно полагал, что методики, приведённые в статьях, будут моментально работать для любой проблемы. Ага, конечно. Статьи дают лишь идеи, а потом начинается "перебор" других возможностей, идей и подходов. В дейта сайнсе все тоже самое. Есть "доказанные" идеи, а решение конкретной задачи лишь перебор возможностей. Даже если алгоритм и построен на выборке параметров - тоже стандарт. В прикладной математике -это норма. Но это я скорее о маш. обучении и предикатов моделинг.
Сабина wrote:У нас в компании обнаружился целый отдел machine learning :)! Сидят себе в Нью Йорке тихонечко. Здесь я остановлюсь и не буду продолжать ибо с моей точки зрения machine learning experts при наличии "ху..вой" data pipeline тоже соотвествующие, в общем backend & data warehouse engineers rock :)
Ну да, все правильно, теперь кто раньше были веархаузниками и сиквельщиками стали новомодными дейта сайнтистами. Хорошая смена вывески.
Сабина
Уже с Приветом
Posts: 19041
Joined: 11 Jan 2012 09:25
Location: CA

Re: Machine Learning again

Post by Сабина »

Физик-Лирик wrote:
Deckel wrote: Наука в контексте data science. А так конечно не наука - больше искусство. Искуство перебора :-)
На самом деле, любая наука это искусство перебора. Я когда начинал заниматься наукой, наивно полагал, что методики, приведённые в статьях, будут моментально работать для любой проблемы. Ага, конечно. Статьи дают лишь идеи, а потом начинается "перебор" других возможностей, идей и подходов. В дейта сайнсе все тоже самое. Есть "доказанные" идеи, а решение конкретной задачи лишь перебор возможностей. Даже если алгоритм и построен на выборке параметров - тоже стандарт. В прикладной математике -это норма. Но это я скорее о маш. обучении и предикатов моделинг.
Сабина wrote:У нас в компании обнаружился целый отдел machine learning :)! Сидят себе в Нью Йорке тихонечко. Здесь я остановлюсь и не буду продолжать ибо с моей точки зрения machine learning experts при наличии "ху..вой" data pipeline тоже соотвествующие, в общем backend & data warehouse engineers rock :)
Ну да, все правильно, теперь кто раньше были веархаузниками и сиквельщиками стали новомодными дейта сайнтистами. Хорошая смена вывески.

Вы меня не так поняли :). Я пыталась объяснить что никакие глубокие знания R и Matlib не помогут если в тот warehouse данные изначально криво собираются. Ну да ладно, тут все читают что хотят :)
https://www.youtube.com/watch?v=wOwblaKmyVw
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Machine Learning again

Post by Физик-Лирик »

Сабина wrote:Ну да, все правильно, теперь кто раньше были веархаузниками и сиквельщиками стали новомодными дейта сайнтистами. Хорошая смена вывески.

Вы меня не так поняли :). Я пыталась объяснить что никакие глубокие знания R и Matlib не помогут если в тот warehouse данные изначально криво собираются. Ну да ладно, тут все читают что хотят :)[/quote]

Ну так я о том и говорю. Сиквелщики теперь "ученые", собиратели данных и построители моделей. Просто я так хорошо выражаться не умею.
Другая беда - вся наука сводится к "знанию" Р. Вот и вся предиктив аналитикс. Помноженное на непонимание менеджментом, нафига это все нужно, когда и так работает.
Deckel
Ник закрыт за хамство.
Posts: 357
Joined: 16 Feb 2014 18:34

Re: Machine Learning again

Post by Deckel »

Физик-Лирик wrote:
Deckel wrote:Вообще-то кроме ватсона есть еще много полуавтоматизированых хреней. В sklearn это примерно так делается: непрерывные данные скалировать на [-1,1] если нет intrinsic scale, а все остальные кодировать one hot encoder. Потом на это напустить случайный лес GBM или спуск по градиенту SGD либо classifier либо regressor, если зависимая переменная непрерывная. Гиперпараметры алгоритмов подбираются методом монте-карло или прогоном по списку и cross validation, для этого тоже есть готовый фреймворк. Какие из зависимых переменных приносят пользу можно посмотреть по score который им выдает алгоритм, а потом убрать ненужные. Но с современным объемом памяти это наверное уже и не обязательно.
Остается проблема мультиколлинеарности - ну можно еще методом главных компонент PCA понизить размерность после причесывания данных.
Может я какие-то особенные случаи не учел, пусть старшие товарищи меня поправят.
Оно как бы в теории все так, но на практике все будет иначе. Я уже говорил выше, что все начинается с постановки бизнес задачи. Отсюда надо и плясать. Алгоритмов много, но надо знать какой и где применять не только с точки зрения самой задачи, но и времени вычислений, устойчивости к оферфиттингу, точности и т.п. Выборка основных переменных производится автоматически, но вопрос в том, насколько все это точно. Вы уже упоминали мультиколинеарность. Об этом сейчас много дискутируют. Т.к. оценки важности переменных будут неточными, алгоритмы, основанные на выборке по данному критерию, могут полететь. В случае линейной регрессии все кулинарные переменные могут оказаться незначимыми (их же вычисляют как маргинальные переменные), так что степ вайз селекция может не сработать. Принципиальные компоненты, да, но как их интерпретировать? А как метрику выбирать, например, для кластеров или аутлаеров. А про байес в исходных данных я вообще молчу. Так что заменить все фреймверками не получится. А ещё проблема распараллелить алгоритмы.
Короче, наблюдаем некий бум, сходный (масштаб, конечно, не тот) с концом 90-х. Только в отличие от программирования здесь математику знать надо. А вот здесь будут явные проблемы.
Это хорошие страшилки, я со всем согласен. Но это в случае, если cross-validation & testing показывает, что ваша модель не работает и надо искать почему или как улучшить. А если прямо из коробки заработало и потом в продакшн продолжает работать то :gen1: :fr: и можно браться за следующую задачу.
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Machine Learning again

Post by Физик-Лирик »

Снежная Королева wrote:Не будет оно работать прямо из коробки. Сабина правильно сказала, если данные в базе кривые, работать не будет, а вы и не поймете, почему. Да и меняется оно все. Сегодня маркет ситуация поменялась, и привет, все переделывать надо.
В общем, все так и будет. Хотя, по большому счету, практически все данные кривые, если их только с самого начала не собирать "правильно". Но на практике, это редкость. Имеем, что имеем. Собственно задача учёного это понять, разобраться и предложить решение, зная как особенности данных так и особенности алгоритмов. Чисто ручной процесс, но он как раз и служит водоразделом между учеными и сиквельщиками с наклейкой учёного.
Deckel
Ник закрыт за хамство.
Posts: 357
Joined: 16 Feb 2014 18:34

Re: Machine Learning again

Post by Deckel »

Image
User avatar
x.angie
Уже с Приветом
Posts: 191
Joined: 13 Mar 2006 19:01
Location: Earth -> Moon -> Mars

Re: Machine Learning again

Post by x.angie »

Физик-Лирик wrote:Ну так я о том и говорю. Сиквелщики теперь "ученые", собиратели данных и построители моделей. Просто я так хорошо выражаться не умею.
Другая беда - вся наука сводится к "знанию" Р. Вот и вся предиктив аналитикс. Помноженное на непонимание менеджментом, нафига это все нужно, когда и так работает.
Да нуууу... Как-то однобого и слишком узко смотрите. Сейчас к людям нужно помягше, а на вопросы смотреть ширше :umnik1:

Вон народ на БАКе, когда частицы гоняет, за одну секунду собирает столько инфы (raw data), что её не в один кластер оракл не засунешь и не обработаешь потом. Да и данные о нужных столкновениях не сиквельными запросами "вытягиваются", там ML алгоритмы в полный рост. Туда даже Яндекс пытался влезть с их фермой по обработке данных, но я не знаю чем это кончилось. У меня даже где-то видео было с коротенечким рассказом чё там и как... Сейчас попробую найти... [минут через 10ть] Не, не могу найти. Но там чувак такой сидит и рассказывает об инфраструктуре БАКа, и как они там считают.

А вы говорите сиквельщики, собиратели данных, постротели моделей... Главное хвост! Big Data :D
User avatar
x.angie
Уже с Приветом
Posts: 191
Joined: 13 Mar 2006 19:01
Location: Earth -> Moon -> Mars

Re: Machine Learning again

Post by x.angie »

Есть вот такая ссылка, но там очень всё поверхностно

https://yandex.ru/blog/company/89612" onclick="window.open(this.href);return false;

Return to “Работа и Карьера в IT”