30 лет Data Science обзор от практикующего специалиста по Data Science

30 лет Data Science обзор от практикующего специалиста

 

30 лет VoAGI и 30 лет науки о данных. Приблизительно 30 лет моей профессиональной жизни. Одно из привилегий работы в одной области в течение долгого времени – опыт – это возможность писать о ее эволюции как прямой свидетель. 

 

Алгоритмы

 

Я начал работать в начале 90-х годов над тем, что тогда называлось искусственным интеллектом, относясь к новой парадигме, которая самообучается, подражает организации нервных клеток и не требует проверки каких-либо статистических гипотез: да, нейронные сети! Эффективное применение алгоритма обратного распространения ошибки было опубликовано всего несколько лет назад [1], решив проблему обучения скрытых слоев в многослойных нейронных сетях, позволяя армиям энтузиастов столкнуться с новыми решениями для ряда старых примеров использования. Нас ничто не могло остановить… кроме мощности машины. 

Обучение многослойной нейронной сети требует достаточно большой вычислительной мощности, особенно если число параметров сети высоко и набор данных большой. У машин того времени не было такой вычислительной мощности. Были разработаны теоретические рамки, такие как Back-Propagation Through Time (BPTT) в 1988 году [2] для временных рядов или Long Short Term Memories (LSTM) [3] в 1997 году для обучения выборочной памяти. Однако, вычислительная мощность оставалась проблемой, и нейронные сети были приостановлены большинством практикующих в области аналитики данных, ожидая лучших времен.

Тем временем появились более легкие, но часто такие же эффективные алгоритмы. Деревья решений в форме C4.5 [4] стали популярными в 1993 году, хотя в форме CART [5] они существовали уже с 1984 года. Деревья решений были проще обучать, более интуитивно понятны и часто давали достаточно хорошие результаты на наборах данных того времени. Вскоре мы также научились объединять множество деревьев решений вместе в виде леса [6], в алгоритме случайного леса, или в виде каскада [7] [8], в алгоритме градиентного усиления деревьев. Несмотря на то, что эти модели достаточно большие, то есть с большим количеством параметров для обучения, их все же можно управлять за разумное время. Особенно градиентное усиление деревьев, с его последовательно обучаемыми деревьями в каскаде, размывало требующуюся вычислительную мощность со временем, делая его очень доступным и успешным алгоритмом для науки о данных.

До конца 90-х годов все наборы данных были классическими наборами данных разумного размера: данные клиентов, данные пациентов, транзакции, химические данные и так далее. В основном, классические данные предприятий. С расширением социальных медиа, электронной коммерции и потоковых платформ данные начали расти гораздо быстрее, ставя перед нами совершенно новые задачи. Прежде всего, это была задача хранения и быстрого доступа к таким большим объемам структурированных и неструктурированных данных. Во-вторых, потребность в более быстрых алгоритмах для их анализа. Платформы больших данных позаботились о хранении и быстром доступе. Традиционные реляционные базы данных, хранящие структурированные данные, уступили место новым озерам данных, где хранятся все виды данных. Кроме того, расширение бизнеса электронной коммерции способствовало популярности рекомендательных систем. Используя их для анализа рыночной корзины или для рекомендаций по потоковому видео, стали широко использоваться два таких алгоритма: алгоритм априори [9] и алгоритм коллаборативной фильтрации [10].

Тем временем производительность компьютерного оборудования улучшилась, достигнув невообразимой скорости, и мы вернулись к нейронным сетям. Графические процессоры начали использоваться в качестве ускорителей для выполнения конкретных операций в обучении нейронных сетей, позволяя создавать, обучать и развертывать все более сложные нейронные алгоритмы и нейронные архитектуры. Это вторая молодость нейронных сетей получила название глубокого обучения [11] [12]. Термин искусственный интеллект (AI) начал снова появляться.

Побочное направление глубокого обучения, генеративный искусственный интеллект [13], сосредоточился на генерации новых данных: чисел, текстов, изображений и даже музыки. Модели и наборы данных продолжали расти по размеру и сложности, чтобы достичь генерации более реалистичных изображений, текстов и взаимодействий человека с машиной. 

Новые модели и новые данные быстро заменялись новыми моделями и новыми данными в непрерывном цикле. Это стало все больше проблемой инженерии, а не проблемой науки о данных. Недавно, благодаря похвальным усилиям в области инженерии данных и машинного обучения, были разработаны автоматические фреймворки для непрерывного сбора данных, обучения моделей, тестирования, действий человека в петле обратной связи и, наконец, развертывания очень больших моделей машинного обучения. Вся эта инженерная инфраструктура лежит в основе текущих больших языковых моделей (LLM), обученных для решения разнообразных проблем, взаимодействуя с человеком как с человеком.

 

Жизненный цикл

 

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

Жизненный цикл модели машинного обучения изменился с одного цикла чистого создания, обучения, тестирования и развертывания, как в CRISP-DM [14] и других подобных парадигмах, на двойной цикл, который включает создание с одной стороны и производство – развертывание, проверку, использование и обслуживание – с другой стороны [15].

 

 

Инструменты

 

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

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

Также популярность приобрели платформы на основе low code, поскольку low code позволяет программистам и даже непрограммистам создавать и быстро обновлять различные приложения науки о данных.

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

С другой стороны, для производства требуется платформа, которая обеспечивает надежную ИТ-инфраструктуру для развертывания, выполнения и мониторинга готового к использованию приложения науки о данных.

 

Заключение

 

Суммировать 30 лет эволюции науки о данных в менее чем 2000 слов невозможно, конечно. Кроме того, я процитировал самые популярные публикации на тот момент, хотя они могли не быть абсолютно первыми по этой теме. Заранее извиняюсь за множество алгоритмов, которые сыграли важную роль в этом процессе и которые я не упомянул здесь. Тем не менее, надеюсь, что этот краткий обзор дает вам глубокое понимание того, где и почему мы сейчас находимся в области науки о данных через 30 лет!

 

Библиография

 

[1] Рюмельхарт, Д.Э .; Хинтон, Г.Е .; Уильямс, Р.Дж. (1986). «Обучение представлений с помощью обратного распространения ошибок». Природа, 323, с. 533-536.

[2] Вербос, П.Дж. (1988). “Обобщение обратного распространения ошибок с применением регулярного моделирования газового рынка”. Нейронные сети. 1 (4): 339–356. doi:10.1016/0893-6080(88)90007

[3] Хохрайтер, С .; Шмидхубер, Й. (1997). «Долгая краткосрочная память». Нейронные вычисления. 9 (8): 1735-1780.

[4] Квинлан, Дж.Р. (1993). “C4.5: Программы для машинного обучения” Издательство Morgan Kaufmann.

[5] Брайман, Л .; Фридман, Дж .; Стоун, С.Дж .; Олшен, Р.А. (1984) “Классификация и регрессионные деревья”, Routledge. https://doi.org/10.1201/9781315139470

[6] Хо, Т.К. (1995). Случайные леса решений. Материалы 3-й Международной конференции по анализу и распознаванию документов, Монреаль, Квебек, 14-16 августа 1995 года. С. 278-282

[7] Фридман, Дж. Х. (1999). “Жадное приближение функции: машина градиентного усиления, лекция Рейтца”

[8] Мейсон, Л.; Бэкстер, Дж.; Бартлетт, П. Л.; Фреан, Маркус (1999). “Алгоритмы усиления как градиентный спуск”. В С.А. Солла, Т.К. Лин и К. Мюллер (ред.). Прогресс в нейроинформатике. Том 12. Издательство MIT. С. 512-518

[9] Агравал, Р.; Шрикант, Р. (1994) Быстрые алгоритмы для обнаружения ассоциативных правил. Материалы 20-й Международной конференции по очень большим базам данных, VLDB, стр. 487-499, Сантьяго, Чили, сентябрь 1994 года.

[10] Брис, Дж.С.; Хекерман, Д.; Кади, К. (1998) “Эмпирический анализ прогностических алгоритмов для коллаборативной фильтрации”, Материалы Четырнадцатой конференции по неопределенности в искусственном интеллекте (UAI1998)

[11] Чиришан, Д.; Мейер, У.; Шмидхубер, Й. (2012). “Многостолбчатые глубокие нейронные сети для классификации изображений”. 2012 IEEE Конференция по компьютерному зрению и распознаванию образов. С. 3642-3649. arXiv:1202.2745. doi: 10.1109/cvpr.2012.6248110. ISBN 978-1-4673-1228-8. S2CID 2161592.

[12] Крижевский, А.; Сутскевер, И.; Хинтон, Дж. (2012). “Классификация ImageNet с помощью глубоких сверточных нейронных сетей”. NIPS 2012: Нейроинформатика 2012, озеро Тахо, Невада.

[13] Хинтон, Дж.Э.; Осиндеро, С.; Те, Й.У. (2006) “Быстрый алгоритм обучения для глубоких сетей веры”. Нейронные вычисления 2006; 18 (7): 1527-1554. doi: https://doi.org/10.1162/neco.2006.18.7.1527

[14] Вирт, Р.; Йохен, Х.. (2000) “CRISP-DM: к стандартной модели процесса для добычи данных”. Материалы 4-й международной конференции по практическим применениям открытия знаний и добычи данных (4), с. 29-39.

[15] Бертхолд, Р.М. (2021) “Как внедрить Data Science в производство”, блог KNIME     Розария Силипо не только является экспертом в области добычи данных, машинного обучения, отчетности и хранения данных, она также стала признанным экспертом по добывающему движку KNIME, о котором она опубликовала три книги: KNIME Beginner’s Luck, The KNIME Cookbook и The KNIME Booklet for SAS Users. Ранее Розария работала независимым аналитиком данных для многих компаний по всей Европе. Она также руководила группой разработки SAS в компании Viseca (Цюрих), реализовала интерфейсы преобразования речи в текст и текста в речь на C# в Spoken Translation (Беркли, Калифорния) и разработала несколько движков распознавания речи на разных языках в Nuance Communications (Менло-Парк, Калифорния). Розария получила докторскую степень в области биомедицинской инженерии в 1996 году из Университета Флоренции, Италия.