Педро Домингос - Верховный алгоритм
Спасибо, что взяли меня своим проводником. На прощание у меня есть для вас подарок. Ньютон говорил, что чувствует себя мальчишкой, играющим на берегу: он берет то камушек, то ракушку, а перед ним лежит огромный, неизведанный океан истины. Прошло три столетия, и мы собрали удивительную коллекцию гальки и раковин, но великий неизведанный океан все так же простирается перед нами и играет лучиками надежды. Мой подарок — это лодка машинного обучения, и пришло время поднять паруса.
БЛАГОДАРНОСТИ
Прежде всего я благодарю моих попутчиков в научном приключении: студентов, сотрудников, коллег и всех членов сообщества специалистов по машинному обучению. Эта книга — ваша в той же степени, что и моя. Надеюсь, вы простите мне излишние упрощения и недомолвки, а также немного вычурный стиль некоторых фрагментов.
Я благодарен всем, кто читал и комментировал черновики этой книги на разных этапах ее создания. Это в том числе Майк Бельфьоре, Томас Диттерих, Тьяго Домингос, Орен Эциони, Эйб Фризен, Роб Дженс, Алон Халеви, Дэвид Израэль, Генри Кауц, Хлоя Киддон, Гэри Маркус, Рэй Муни, Кевин Мерфи, Франциска Резнер и Бен Таскар. Спасибо всем тем, кто давал мне подсказки, информацию и помощь любого рода: Тому Гриффитсу, Дэвиду Хекерману, Ханне Хики, Альберту-Ласло Барабаши, Яну Лекуну, Барбаре Моунз, Майку Моргану, Питеру Норвигу, Джуде Перлу, Грегори Пятецкому-Шапиро и Себастьяну Сеунгу.
Я счастлив, что работаю в особом месте — на кафедре информатики и инженерии Вашингтонского университета. Я признателен Джошу Тененбауму и всем его сотрудникам за стажировку в Массачусетском технологическом институте, во время которой я начал работать над этой книгой. Спасибо неутомимому литературному агенту Джиму Левину за твердую веру в мои силы, а также всем сотрудникам Levine Greenberg Rostan. Спасибо Ти-Джею Келлехеру, моему удивительному редактору, который главу за главой, строчку за строчкой делал эту книгу лучше. Спасибо всем сотрудникам Basic Books.
Я признателен организациям, которые на протяжении многих лет финансировали мои исследования: это Научно-исследовательское управление Армии США, Агентство по перспективным оборонным научно-исследовательским разработкам, Фонд науки и технологии, Национальный научный фонд, Управление военно-морских исследований, Ford, Google, IBM, Kodak, Yahoo, а также Фонд Альфреда Слоуна.
Последнее, но не менее важное: спасибо моей семье за любовь и поддержку.
РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА
Если моя книга пробудила у вас интерес к машинному обучению и связанным с ним вопросам, в этом разделе вы найдете много советов. Это не исчерпывающий список, но он должен стать, перефразируя Борхеса, калиткой в Сад расходящихся тропок этой дисциплины. Я старался выбирать книги и статьи, подходящие для неспециалиста. Технические публикации, которые требуют хотя бы некоторых познаний в области информатики, статистики или математики, я отметил знаком *. Даже в них, однако, часто есть большие разделы, доступные обычному читателю. Я не указываю номер тома, издания и страниц, потому что в сети и справочниках они не всегда указаны точно.
Если вы хотите узнать больше о машинном обучении в целом, неплохо будет начать с онлайн-курсов. Неудивительно, что ближе всего к содержанию этой книги курс, который веду я сам (www.coursera.org/course/machlearning). Еще два варианта — курсы Эндрю Ына (www.coursera.org/course/ml) и Ясера Абу-Мостафы (work.caltech.edu/telecourse.html). Следующий шаг — взяться за учебники. Один из самых доступных и близких к моей книге — Machine Learning* Тома Митчелла (McGraw-Hill, 1997). Более современные, но более математические — Machine Learning: A Probabilistic Perspective* Кевина Мерфи (MIT Press, 2012), Pattern Recognition and Machine Learning* Криса Бишопа (Springer, 2006) и An Introduction to Statistical Learning with Applications in R* Гарета Джеймса, Даниэлы Виттен, Тревора Хасти и Роба Тибширани (Springer, 2013). Моя статья A few useful things to know about machine learning (Communications of the ACM, 2012) частично суммирует «общеизвестные» истины машинного обучения, которые учебники часто обходят стороной как банальные. Она стала одной из отправных точек этой книги. Если вы умеете программировать и вам не терпится взяться за дело, можете начать с многочисленных открытых пакетов, например Weka (www.cs.waikato.ac.nz/ml/weka). Важнейшие журналы по машинному обучению — Machine Learning и Journal of Machine Learning Research. Ведущие конференции, ежегодно публикующие свои материалы, — International Conference on Machine Learning, Conference on Neural Information Processing Systems и International Conference on Knowledge Discovery and Data Mining. Множество лекций по машинному обучению вы найдете на сайте videolectures.net. На сайте www.KDnuggets.com также представлено много ресурсов по машинному обучению. Там можно подписаться на рассылку и быть в курсе последних разработок.
Пролог
Примеры влияния машинного обучения на повседневную жизнь приведены в статье Джорджа Джона Behind-the-scenes data mining (SIGKDD Explorations, 1999): она вдохновила меня описать «один день из жизни» в прологе. Много применений машинного обучения рассмотрено в книге Эрика Зигеля Predictive Analytics (Wiley, 2013)120. Термин «большие данные» стал популярным после вышедшего в 2011 году отчета McKinsey Global Institute Big Data: The Next Frontier for Innovation, Competition, and Productivity. Много вопросов, которые поднимают большие данные, обсуждается в книге Виктора Майер-Шенбергера и Кеннет Кукьера Big Data: A Revolution That Will Change How We Live, Work, and Think, by Viktor Mayer-Schönberger and Kenneth Cukier (Houghton Mifflin Harcourt, 2013)121. Учебник, по которому я сам учился искусственному интеллекту, — это Artificial Intelligence Элен Рич (McGraw-Hill, 1983)*. Более современный вариант — Artificial Intelligence: A Modern Approach Стюарта Расселла и Питера Норвига (третье издание, Prentice Hall, 2010)122. В книге Нильса Нильссона The Quest for Artificial Intelligence (Cambridge University Press, 2010) рассказана история создания искусственного интеллекта начиная с самого начала.
Глава 1
В книге Nine Algorithms That Changed the Future Джона Маккормика (Princeton University Press, 2012)123 описан ряд важнейших алгоритмов, применяемых в информатике. В ней есть и глава о машинном обучении. Algorithms Санджоя Дасгупты, Христоса Пападимитриу и Умеша Вазирани (McGraw-Hill, 2008)124 — сжатый вводный учебник по предмету. Джинни Хиллис в книге The Pattern on the Stone (Basic Books, 1998) объясняет, как работают компьютеры. Уолтер Айзексон рассказывает живую историю информатики в книге The Innovators (Simon & Schuster, 2014)125.
В статье Spreadsheet data manipulation using examples* Сумита Гульвани, Уильяма Харриса и Ришабха Сингха (Communications of the ACM, 2012) показано, как компьютеры могут программировать сами себя, наблюдая за пользователями. Книга Competing on Analytics Тома Дэвенпорта и Джоанн Харрис (HBS Press, 2007)126 — хорошее введение в применение прогнозной аналитики в бизнесе. Работа In the Plex Стивена Леви (Simon & Schuster, 2011) дает представление о технологиях Google. Карл Шапиро и Хэл Вариан объясняют сетевой эффект в книге Information Rules: A Strategic Guide to the Network Economy (HBS Press, 1999). Феномен длинного хвоста анализирует Крис Андерсон в книге The Long Tail (Hyperion, 2006)127.
Теме перемен в науке под влиянием вычислений с большими объемами данных посвящена книга The Fourth Paradigm под редакцией Тони Хея, Стюарта Тансли и Кристин Толле (Microsoft Research, 2009). В статье Machine science Джеймса Эванса и Андрея Ржецкого (Science, 2010) обсуждаются некоторые способы научных открытий с помощью компьютеров. В Scientific Discovery: Computational Explorations of the Creative Processes* Пэта Лэнгли и соавторов (MIT Press, 1987) приведен ряд подходов к автоматизации открытия научных законов. Проект SKICAT описан в статье From digitized images to online catalogs Усамы Файяда, Джорджа Джорговского и Николаса Уира (AI Magazine, 1996). Статья Machine learning in drug discovery and development* Ники Уэйла (Drug Development Research, 2001) предлагает обзор по теме открытия и разработки лекарств. Об Адаме, роботе-ученом, можно почитать в статье The automation of science Росса Кинга и соавторов (Science, 2009).
О применении анализа данных в политике подробно рассказывается в книге Саши Иссенберга The Victory Lab (Broadway Books, 2012). Книга How President Obama’s campaign used big data to rally individual votes того же автора (MIT Technology Review, 2013) дает представление о самом большом на сегодняшний день успехе больших данных — избирательной кампании Барака Обамы.
В книге Нейта Сильвера The Signal and the Noise* (Penguin Press, 2012)128 есть глава о его методе агрегирования опросов избирателей.
Роботизированное вооружение — тема книги Питера Сингера Wired for War (Penguin, 2009). В книге Cyber War (Ecco, 2012)129 Ричард Кларк и Роберт Нейк трубят тревогу по поводу кибервойны. Моя собственная работа по соединению машинного обучения и теории игр для победы над противником, начавшаяся как учебный проект, описана в Adversarial classification* Нилеша Далви и соавторов (Proceedings of the Tenth International Conference on Knowledge Discovery and Data Mining, 2004). Книга Predictive Policing Уолтера Перри и соавторов (Rand, 2013) познакомит вас с использованием аналитики в работе полиции.
Глава 2
Эксперименты по перепрограммированию мозга хорька описаны в статье Visual behaviour mediated by retinal projections directed to the auditory pathway Лори фон Мельхнер, Сары Паллас и Мриганки Сура (Nature, 2000). История Бена Андервуда рассказана в статье Seeing with sound Джоанны Мурхед (Guardian, 2007) и на сайте www.benunderwood.com. В статье Generality of the functional structure of the neocortex (Naturwissenschaften, 1977) Отто Кройцфельдт утверждает, что кора головного мозга — единый алгоритм. С ним согласен Вернон Маунткасл в главе An organizing principle for cerebral function: The unit model and the distributed system книги The Mindful Brain под редакцией Джералда Эделмена и Вернона Маунткасла (MIT Press, 1978)130. Гэри Маркус, Адам Марблстоун и Том Дин возражают против этой теории в статье The atoms of neural computation (Science, 2014).