Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
Иногда обучающая выборка по тем или иным причинам содержит пробелы. Например, маленький ребёнок не знает вкуса многих объектов, встречающихся в окружающем мире, поэтому с особым интересом запихивает в рот те предметы, которые ему ранее не приходилось пробовать. В таком случае можно говорить о том, что мы имеем дело с активным обучением — ещё одной разновидностью обучения с учителем. При таком подходе модель сама выбирает необходимые для обучения эксперименты и пополняет их результатами обучающую выборку. Конечно, при этом следует заботиться о том, чтобы последствия экспериментов не обошлись нам слишком дорого.
Активное обучение является частным случаем парадигмы, получившей название «обучение с подкреплением» [reinforcement learning]. Термин «подкрепление» (положительное или отрицательное) был позаимствован у психологов, под ним понимается ответный сигнал внешней среды, который позволяет обучающемуся агенту делать выводы о желательности или нежелательности выполненных действий. Обучение с подкреплением не обязано быть активным в том смысле, что агент не обязательно должен руководствоваться определённой «исследовательской» стратегией при выборе действий, агент не обязан быть «любопытным», его действия вполне могут быть обусловлены стремлением увеличить подкрепление в моменте («пихаем в рот то, что предполагаем вкусным, а не то, что ещё не пробовали») или быть и вовсе случайными («едим что попало»). Даже в таком случае обучение иногда может вполне успешно достигать поставленной цели.
На другом полюсе машинного обучения находятся методы обучения без учителя [unsupervised learning]. Казалось бы, будучи лишённым образца для подражания или какого-либо ориентира, ничему научиться нельзя. Однако это не так. Например, изучая недешифрованную письменность, можно выделить наборы повторяющихся знаков и их последовательностей, составить алфавит, оценить частоту возникновения последовательностей знаков, чтобы затем попытаться соотнести её с данными, полученными для других, известных нам языков. Конечно, набор задач, которые можно решить подобными способами, гораздо скромнее, чем в случае обучения с учителем, но в некоторых случаях, как в примере с недешифрованной письменностью, у нас просто нет выбора.
В последние годы с лёгкой руки известного исследователя в области нейронных сетей Яна Лекуна часто используется термин self-supervised learning (самообучение, самоконтролируемое обучение, обучение в режиме «сам себе учитель»). В его основе лежит автоматическая генерация обратной связи на основе структуры данных, используемых при обучении [44] . Например, модель, которая предсказывает следующее слово в тексте по предшествующим, или модель, угадывающая скрытую часть картинки по её видимой части, вроде бы не требует размеченных людьми данных — достаточно лишь набора текстов или изображений, а разметку выполняет алгоритм. В случае задачи с текстом он создаёт из набора текстов множество прецедентов, в которых роль правильного ответа выполняет слово, продолжающее последовательность предшествующих ему слов, которые алгоритм включает в число факторов. В случае с картинкой факторами становятся видимые части изображения, а правильным ответом — скрытая его часть. Таким образом, самообучение можно рассматривать или как разновидность обучения без учителя, или как разновидность обучения с учителем, в которой роль суррогатного учителя выполняет алгоритм авторазметки.
44
Goled S. (2021). Self-Supervised Learning Vs Semi-Supervised Learning: How They Differ / Analytics India Magazine, May 7, 2021 // https://analyticsindiamag.com/self-supervised-learning-vs-semi-supervised-learning-how-they-differ/
В принципе, методы обучения с учителем и без учителя нередко могут комбинироваться в одной задаче. В таком случае принято говорить о методе обучения с частичным привлечением учителя [semi-supervised learning]. Например, создавая систему для распознавания речи, мы можем привлечь сравнительно небольшой набор размеченных вручную данных (аудиозаписей, снабжённых текстом выполненной людьми расшифровки) и огромный массив неразмеченных, «сырых» аудиозаписей. При помощи второго массива мы обучим модель различать регулярно повторяющиеся звуковые элементы речи — фонемы, — а затем при помощи первого массива научим её превращать последовательность фонем в текст.
1.3.2 Задачи, решаемые с помощью машинного обучения
Среди задач, решаемых при помощи методов машинного обучения, выделяют несколько крупных категорий.
1. Задачи классификации. Цель модели в них — отнесение объекта на основании его известных свойств к некоторым группам (классам). Иногда классы называют образами, в таком случае говорят о задачах распознавания образов [45] . Именно к этому типу относится задача различения кошек и собак на фото. В данном случае «кошка» и «собака» — это два разных класса, а известные свойства, или факторы, модели — это цвет каждой из точек на фотографии. Например, если мы имеем дело с чёрно-белыми фотографиями разрешением 1024 x 1024 точки, то всего у нас будет 1 048 576 входных факторов модели (цвет каждой точки будет представлен числом, характеризующим степень её яркости). При решении задачи классификации модель (в данном случае её называют классификатором), обучившись на некотором наборе объектов, должна будет уметь отнести к тому или иному классу в том числе и новые объекты, которых в обучающей выборке не было. Потому что классификаторы, просто запоминающие всё, что им предъявили, и неспособные сделать вывод в отношении чего-то отсутствующего в обучающей выборке, нам обычно не очень интересны.
45
Воронцов К. В. Математические методы обучения по прецедентам (теория обучения машин) // http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf
2. Задачи [восстановления] регрессии. Данные задачи в целом похожи на задачи классификации, но в них мы имеем дело не с множеством классов, к которым хотим отнести экзаменуемый объект, а с некоторой непрерывной величиной, которую желаем оценить на основании входных факторов. Простой пример — модель, пытающаяся определить возраст человека по фотографии. Любую задачу классификации можно свести к задаче регрессии, если взять в качестве прогнозируемой величины вероятность принадлежности объекта к каждому из классов.
Понятие регрессии ввёл в 1886 г. антрополог Фрэнсис Гальтон, изучавший статистические закономерности наследственности. В рамках разработанного им антропометрического подхода учёный измерял у своих соотечественников множество параметров: размеры головы, рост, возвышение над стулом при сидении, размах рук, объём вдыхаемого воздуха, массу тела, время реакции на зрительные и звуковые раздражители — и даже оценивал степень привлекательности девушек. На Международной выставке здоровья, открывшейся в 1884 г. в Лондоне, в антропометрической лаборатории Гальтона было проведено 150 000 отдельных измерений для 10 000 человек. Данные, собранные учёным, среди прочего содержали сведения о 928 потомках 205 матерей и отцов. Изобразив данные на графике, Гальтон обнаружил вполне ожидаемую положительную ассоциацию между ростом родителей и их детей, однако заметил, что дети наиболее высоких родителей имели тенденцию уступать своим родителям в росте, в то время как для наиболее низких родителей наблюдалась обратная зависимость: их дети обычно превосходили родителей ростом. Полученные данные повторяли результаты серии экспериментов 1876 г., в которых Гальтон изучал диаметр горошин; наиболее крупные горошины давали обычно более мелких, чем они сами, потомков, а наиболее мелкие — более крупных [46] . Гальтон назвал этот феномен «регрессией к среднему» и ввёл понятие «степень регрессии» (сегодня обычно её называют коэффициентом регрессии) [47] . Позже термин, возникший в частной прикладной задаче, закрепился за широким классом методов восстановления зависимостей [48] .
46
The measurement of man // http://www.galtoninstitute.org.uk/sir-francis-galton/psychology-statistics-criminology/
47
Galton F. (1886). Regression Towards Mediocrity in Hereditary Stature. The Journal of the Anthropological Institute of Great Britain and Ireland, Vol. 15, pp. 246—263 // http://www.jstor.org/stable/2841583
48
Воронцов К. В. Математические методы обучения по прецедентам (теория обучения машин) // http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf
3. Задачи преобразования последовательностей, или, как их принято называть, seq2seq-задачи (от sequence to sequence — «последовательность в последовательность») [49] . Модель получает на вход некоторую последовательность и должна выдать также некоторую последовательность, соответствующую входной. Простой пример — задача перевода текста с одного языка на другой. В данном случае входная последовательность — это текст, написанный на одном языке, выходная — перевод входного текста на другой язык. Другой пример — задача распознавания речи, при которой на вход модели подаётся последовательность звуковых амплитуд, а на выходе получается текстовая расшифровка речи. Задачи регрессии и классификации тоже можно представить в виде задачи преобразования последовательности в последовательность. В этом случае входная последовательность будет содержать значения входных факторов (или весь набор значений факторов в виде единственного элемента-вектора), а выходная будет состоять из одного элемента — метки класса или значения регрессии. Этот пример показывает некоторую условность выделения категорий задач машинного обучения. Когда мы относим ту или иную задачу к категории seq2seq, то обычно хотим тем самым подчеркнуть, что входные и выходные данные модели могут иметь переменную размерность. Если же, например, на входе нашей модели последовательность переменной длины, а на выходе — метка класса, то такая задача будет скорее отнесена к задачам классификации последовательностей (sequence classification) [50] . Примером такой задачи может быть выявление языка, на котором написан некоторый текст переменной длины. Аналогичным образом говорят о регрессии последовательностей (sequence regression) [51] , в случаях когда на входе модели — последовательность, а на выходе — некоторая величина, например на входе — текст комментария в Facebook, а на выходе — предполагаемый возраст его автора.
49
Luong M.-T., Brevdo E., Zhao R. (2017). Neural Machine Translation (seq2seq) Tutorial // https://web.archive.org/web/20171123080802/https://www.tensorflow.org/tutorials/seq2seq
50
См., напр.: Xing Z., Pei J., Keogh E. (2010). A Brief Survey on Sequence Classification / SIGKDD Explorations, Vol. 12, pp. 40—48 // https://doi.org/10.1145/1882471.1882478
51
См., напр.: Gsponer S., Smyth B., Ifrim G. (2017). Efficient sequence regression by learning linear models in all-subsequence space / Ceci M., Hollmen J., Todorovski L., Vens C., Dzeroski S. (2017). Machine Learning and Knowledge Discovery in Databases. Springer International Publishing.
4. Также важными разновидностями задач машинного обучения являются задачи сокращения размерности (dimensionality reduction) [52] и задачи генерации (порождения) данных [53] . Представим себе свидетеля преступления, который описывает внешность преступника словами: сообщает цвет глаз, рассказывает о причёске, форме носа и глаз, наличии или отсутствии усов, бороды, воспроизводит другие особенности внешности, называет пол преступника, его ориентировочные рост и возраст. Такой набор свойств обычно называют признаками или фичами (от англ. features) объекта. Весь этот набор значений признаков куда более компактен, чем фото преступника, составленное из миллионов пикселей [54] . В данном случае мозг свидетеля выполняет роль модели, решающей задачу сокращения размерности входных данных. Художник же, который рисует портрет преступника по словесному описанию внешности, в данном случае выполняет роль генеративной модели, то есть такой модели, которая порождает в ходе своей работы новые данные (в нашем случае путём домысливания всех мельчайших деталей портрета). Модели машинного обучения, сочиняющие музыку, пишущие тексты или создающие изображения по заданию, также являются генеративными моделями.
52
Roweis S. T., Saul L. K. (2000). Nonlinear Dimensionality Reduction by Locally Linear Embedding / Science, Vol. 290, Iss. 5500, pp. 2323—2326 // https://doi.org/10.1126/science.290.5500.2323
53
Bishop C. M., Lasserre J. (2007). Generative or discriminative? Getting the best of both worlds / Bayesian Statistics, Vol. 8, Iss. 3, p. 24.
54
* Пиксель (от англ. сокращения от pictures element) — наименьший элемент двумерного цифрового изображения.