Целеполагание в машинном обучении и не только

9 ноября 2014, 19:46
Yury Reshetov
0
1 179

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

Зачастую необходимо достичь какой-то цели. Но, согласно поговорке: "Семь раз отмерь прежде, чем сделать обрезание".

Какое отношение это имеет к машинному обучению? На самом деле самое прямое. Большинство проблем искусственного интеллекта лежит в области интеллекта естественного. Прежде, чем приступить к обучению искусственного интеллекта, необходимо научиться адекватно формулировать постановку задачи - целеполагание. А иначе произойдёт то, что называют переобучением искусственного интеллекта, т.е. алгоритму машинного обучения дали задачу, а он нашёл её решение, но такое, что не устраивает того, кто задачу поставил. Кто виноват? Зачастую вовсе не искусственный интеллект, поскольку он действует по заданному алгоритму, а интеллект естественный, который не удосужился заведомо проанализировать цель и средства её достижения.

Например, на курсах машинного обучения зачастую приводят пример регрессионного анализа, где на графике есть какие-то точки и их нужно преобразовать в линию. После чего какой нибудь гуру машинного обучения на примере алгоритмов с разными степенями свободы показывает, что алгоритм с ограниченными степенями решает задачу более "правильно". На самом деле, задача была поставлена некорректно, т.е. её можно было бы решить и алгоритмом с большими степенями свободы. Отсутствует конкретика, т.е. как отличить правильное решение от неправильного и что для этого нужно. Ведь на графике точки разбросаны, а не расположены последовательно и соответственно решение задачи неоднозначно, т.е. требует уточнений в области ограничений на решение. А посему искусственному интеллекту необходимо обладать телепатическими способностями, чтобы ответить на вопрос: линию необходимо провести через большее количество точек или через центры точечных образований? Соответственно это условие либо необходимо уточнить в алгоритме, либо препарировать данные перед обучением алгоритма. Т.е. искусственному интеллекту не объяснили ограничения условий задачи, а вместо этого пытаются ограничить степени свободы самого алгоритма, что уже является заведомыми костылями. Поэтому ничего удивительного, что при наличии лишних степеней свободы алгоритм попытается провести линию через максимальное количество точек, т.к. в нём заложена минимизация эмпирического риска в качестве цели и он с этой самой целью успешно справляется. Но если мы предварительно объединим все точки графика слева направо (или справа налево) ломанной линией, сгладим её и аппроксимируем алгоритмом даже с завышенными степенями свободы, то получим нужный результат - провести линию через центры точечных образований.

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

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

По этой причине, адекватное умение в области целеполагания является основополагающим, как в интеллекте искусственном, так и в интеллекте естественном.

Итак, предположим, что мы имеем цель.

Адекватный (SMART) анализ цели:

  1. Конкретность. Т.е. как конкретно можно отличить, достигнутую цель от недостигнутой? В каких материалистических единицах измерений можно выразить отличия? Субъективно-эмоциональные единицы измерения говорят о том, что цель недостаточно конкретна.
  2. Актуальность. Если цель является подзадачей для актуальной задачи, то она по умолчанию актуальна. В остальных случаях выясняем, нужна ли нам эта цель, т.е. что случиться нехорошего, если цель не будет достигнута, а не наоборот. Если ничего не случиться, то неактуальна. Удовлетворение эмоционального состояния к целеполаганию не относится, а является разновидностью развлечений. А посему не актуально, если мы не на активном отдыхе, или если развлекательная цель не связана с  риском для финансового состояния, здоровья или жизни.
  3. Достижимость. В некоторых задачах заведомо неизвестно. Например, в научной деятельности, когда результаты неизвестны до проведения экспериментов или в машинном обучении, где сырые данные ни о чём не говорят. Т.е. в некоторых прикладных областях актуальность приоритетнее достижимости. Но в большинстве случаев данный пункт обязателен. Достижимость подразумевает наличие инструментов и средств для достижения цели, подразумевает материальные или физические затраты. Недостижимость, т.е. если цели невозможно достичь в приемлемые сроки и с приемлемыми затратами, вовсе не означает, что её необходимо отбросить, а всего лишь означает необходимость тщательной декомпозиции.
  4. Диверсификация. То бишь нужно предусмотреть, есть ли альтернативные варианты достижения цели. Если есть, то может быть ими и воспользоваться? Или передать ту или иную часть решения более компетентным специалистам? В некоторых случаях достижение цели происходит несколькими альтернативными путями одновременно, если имеется риск недостижения каким либо более простым путём при наличии потенциальных форсмажорных обстоятельств с ненулевой, хотя и низкой вероятностью.
  5. Сроки достижения. Планируются заранее, хотя частенько срываются. Поэтому в планирование целей необходимо добавить время с запасом, например, увеличить вдвое. Если достижение цели зависит от других людей или других внешних обстоятельств, на которые сложно повлиять, то запас может быть четверной.


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

  1. Что может помешать достижению цели? Какие имеются препятствия?
  2. Если есть препятствия, то как их можно обойти или преодолеть? В некоторых тривиальных случаях, необходимо и достаточно всего лишь не нарываться на препятствия. В некоторых, преодоление препятствий требует дополнительных материальных или физических затрат. В формулировках ТРИЗ ещё более крутые ограничения: нельзя что либо дополнительно предпринимать для устранения препятствий, но препятствие должно перестать быть таковым, причем, иногда кажущееся "препятствие" - это на самом деле, после тщательного анализа, может оказаться подспорьем.

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

  1. Как и где собирать данные?
  2. Какие вычислительные мощности необходимы для препарирования?
  3. Как добавить необходимые ограничения для задачи в алгоритмы машинного обучения?
  4. Какие вычислительные мощности необходимы для обучения?
  5. Какие вычислительные мощности необходимы для валидации?
  6. Что предпринять, если валидация окажется неудачной?
  7. Какие сроки необходимы для каждого из этапов?
  8. И т.д. и т.п.

Поделитесь с друзьями: