Машинное обучение ( МО ) — это область исследований в области искусственного интеллекта , связанная с разработкой и изучением статистических алгоритмов , которые могут учиться на данных и обобщать их на невидимые данные и, таким образом, выполнять задачи без явных инструкций. [1] В последнее время генеративные искусственные нейронные сети смогли превзойти по производительности многие предыдущие подходы. [2] [3]
Подходы машинного обучения применяются во многих областях, включая большие языковые модели , компьютерное зрение , распознавание речи , фильтрацию электронной почты , сельское хозяйство и медицину, где разработка алгоритмов для выполнения необходимых задач обходится слишком дорого. [4] [5] Машинное обучение известно в своем применении для решения бизнес-задач под названием прогнозная аналитика . Хотя не все машинное обучение основано на статистике, вычислительная статистика является важным источником методов в этой области.
Математические основы ML обеспечивают методы математической оптимизации (математического программирования). Интеллектуальный анализ данных — это смежная (параллельная) область исследований, в которой основное внимание уделяется исследовательскому анализу данных посредством обучения без учителя . [7] [8] С теоретической точки зрения Вероятно, приблизительно правильное обучение обеспечивает основу для описания машинного обучения.
Термин «машинное обучение» был придуман в 1959 году Артуром Сэмюэлем , сотрудником IBM и пионером в области компьютерных игр и искусственного интеллекта . [9] [10] В этот период также использовался синоним «самообучающиеся компьютеры» . [11] [12]
Хотя самая ранняя модель машинного обучения была представлена в 1950-х годах, когда Артур Сэмюэл изобрел программу, которая рассчитывала шансы на победу в шашках для каждой стороны, история машинного обучения уходит корнями в десятилетия человеческого желания и усилий по изучению человеческих когнитивных процессов. [13] В 1949 году канадский психолог Дональд Хебб опубликовал книгу «Организация поведения» , в которой представил теоретическую нервную структуру , образующуюся в результате определенных взаимодействий между нервными клетками . [14] Модель Хебба нейронов, взаимодействующих друг с другом, заложила основу для того, как ИИ и алгоритмы машинного обучения работают в узлах или искусственных нейронах, используемых компьютерами для передачи данных. [13] Другие исследователи, изучавшие когнитивные системы человека, также внесли свой вклад в современные технологии машинного обучения, в том числе логик Уолтер Питтс и Уоррен Маккалок , которые предложили ранние математические модели нейронных сетей для создания алгоритмов, отражающих мыслительные процессы человека. [13]
К началу 1960-х годов компания Raytheon разработала экспериментальную «обучающуюся машину» с перфолентной памятью под названием «Кибертрон» для анализа сигналов сонара , электрокардиограмм и моделей речи с использованием элементарного обучения с подкреплением . Человек-оператор/учитель неоднократно «обучал» его распознавать шаблоны и оснащал кнопкой « лох », заставляющей его переоценивать неправильные решения. [15] Характерной книгой по исследованиям в области машинного обучения в 1960-х годах была книга Нильссона «Обучающиеся машины», посвященная в основном машинному обучению для классификации образов. [16] Интерес, связанный с распознаванием образов, продолжался и в 1970-е годы, как описано Дуда и Хартом в 1973 году. [17] В 1981 году был представлен отчет об использовании стратегий обучения, позволяющих искусственной нейронной сети научиться распознавать 40 символов (26 букв, 10 цифр и 4 специальных символа) с компьютерного терминала. [18]
Том М. Митчелл дал широко цитируемое, более формальное определение алгоритмов, изучаемых в области машинного обучения: «Говорят, что компьютерная программа учится на основе опыта E в отношении некоторого класса задач T и показателя производительности P , если ее производительность при выполнении задач уровень T , измеряемый P , улучшается с опытом E ». [19] Такое определение задач, связанных с машинным обучением, предлагает фундаментально практическое определение , а не определение области в когнитивных терминах. Это следует за предложением Алана Тьюринга в его статье « Вычислительная техника и интеллект », в котором вопрос «Могут ли машины думать?» заменяется вопросом «Могут ли машины делать то, что можем мы (как мыслящие существа)?». [20]
Современное машинное обучение преследует две цели: одна — классифицировать данные на основе разработанных моделей, другая — прогнозировать будущие результаты на основе этих моделей. Гипотетический алгоритм, предназначенный для классификации данных, может использовать компьютерное зрение родинок в сочетании с контролируемым обучением, чтобы научить его классифицировать раковые родинки. Алгоритм машинного обучения для торговли акциями может информировать трейдера о будущих потенциальных прогнозах. [21]
Как научная деятельность, машинное обучение возникло в результате поисков искусственного интеллекта (ИИ). На заре ИИ как академической дисциплины некоторые исследователи были заинтересованы в том, чтобы машины учились на данных. Они пытались подойти к проблеме с помощью различных символических методов, а также того, что тогда называлось « нейронными сетями »; в основном это были перцептроны и другие модели , которые позже оказались переосмыслением обобщенных линейных моделей статистики. [23] Вероятностные рассуждения также использовались, особенно в автоматизированной медицинской диагностике . [24] : 488
Однако растущее внимание к логическому, основанному на знаниях подходу привело к расколу между ИИ и машинным обучением. Вероятностные системы столкнулись с теоретическими и практическими проблемами сбора и представления данных. [24] : 488 К 1980 году экспертные системы стали доминировать в области ИИ, а статистика вышла из моды. [25] Работа над символическим/основанным на знаниях обучением продолжалась в рамках ИИ, что привело к индуктивному логическому программированию , но более статистическое направление исследований теперь вышло за рамки собственно ИИ, в распознавании образов и поиске информации . [24] : 708–710, 755 Исследования нейронных сетей были прекращены искусственным интеллектом и информатикой примерно в одно и то же время. Эта линия также была продолжена за пределами области AI/CS, как « коннекционизм », исследователями других дисциплин, включая Хопфилда , Румельхарта и Хинтона . Их главный успех пришелся на середину 1980-х годов, когда они заново изобрели метод обратного распространения ошибки . [24] : 25
Машинное обучение (МО), реорганизованное и признанное отдельной областью, начало процветать в 1990-х годах. Эта область изменила свою цель с достижения искусственного интеллекта на решение решаемых проблем практического характера. Он сместил акцент с символических подходов , унаследованных от ИИ, на методы и модели, заимствованные из статистики, нечеткой логики и теории вероятностей . [25]
Машинное обучение и интеллектуальный анализ данных часто используют одни и те же методы и значительно пересекаются, но в то время как машинное обучение фокусируется на прогнозировании на основе известных свойств, полученных из обучающих данных, интеллектуальный анализ данных фокусируется на обнаружении (ранее) неизвестных свойств в данных (это этап анализа обнаружения знаний в базах данных). В интеллектуальном анализе данных используется множество методов машинного обучения, но с разными целями; с другой стороны, машинное обучение также использует методы интеллектуального анализа данных в качестве « обучения без учителя » или в качестве этапа предварительной обработки для повышения точности обучаемого. Большая часть путаницы между этими двумя исследовательскими сообществами (которые часто проводят отдельные конференции и отдельные журналы, главным исключением является ECML PKDD ) связана с базовыми предположениями, с которыми они работают: в машинном обучении производительность обычно оценивается по способности воспроизводить известные знания, тогда как в обнаружении знаний и интеллектуальном анализе данных (KDD) ключевой задачей является обнаружение ранее неизвестных знаний. При оценке по известным знаниям неинформированный (неконтролируемый) метод легко превосходит другие контролируемые методы, в то время как в типичной задаче KDD контролируемые методы не могут быть использованы из-за отсутствия обучающих данных.
Машинное обучение также тесно связано с оптимизацией : многие задачи обучения формулируются как минимизация некоторой функции потерь на обучающем наборе примеров. Функции потерь выражают несоответствие между предсказаниями обучаемой модели и реальными экземплярами проблемы (например, при классификации требуется присвоить экземплярам метку, а модели обучаются правильно прогнозировать заранее присвоенные метки набора Примеры). [26]
Разница между оптимизацией и машинным обучением возникает из-за цели обобщения : хотя алгоритмы оптимизации могут минимизировать потери в обучающем наборе, машинное обучение направлено на минимизацию потерь на невидимых выборках. Характеристика обобщения различных алгоритмов обучения является активной темой текущих исследований, особенно алгоритмов глубокого обучения .
Машинное обучение и статистика — это тесно связанные области с точки зрения методов, но различающиеся по своей основной цели: статистика делает выводы о численности населения на основе выборки , а машинное обучение находит обобщаемые прогнозные закономерности. [27] По словам Майкла И. Джордана , идеи машинного обучения, от методологических принципов до теоретических инструментов, имеют долгую предысторию в статистике. [28] Он также предложил термин «наука о данных» в качестве заполнителя для обозначения всей области. [28]
Традиционный статистический анализ требует априорного выбора модели, наиболее подходящей для набора данных исследования. Кроме того, в анализ включаются только значимые или теоретически значимые переменные, основанные на предыдущем опыте. Напротив, машинное обучение не строится на заранее структурированной модели; скорее, данные формируют модель, обнаруживая основные закономерности. Чем больше переменных (входных данных) используется для обучения модели, тем точнее будет конечная модель. [29]
Лео Брейман выделил две парадигмы статистического моделирования: модель данных и алгоритмическую модель, [30] где «алгоритмическая модель» означает более или менее алгоритмы машинного обучения, такие как Random Forest .
Некоторые статистики переняли методы машинного обучения, что привело к созданию объединенной области, которую они называют статистическим обучением . [31]
Аналитические и вычислительные методы, основанные на глубоко укоренившейся физике неупорядоченных систем, могут быть распространены на крупномасштабные проблемы, включая машинное обучение, например, для анализа весового пространства глубоких нейронных сетей . [32] Таким образом, статистическая физика находит применение в области медицинской диагностики . [33]
Основная цель учащегося – обобщить свой опыт. [6] [34] Обобщением в этом контексте является способность обучающейся машины точно выполнять новые, невидимые примеры/задачи после изучения набора обучающих данных. Обучающие примеры взяты из некоторого, как правило, неизвестного распределения вероятностей (считающегося репрезентативным для пространства событий), и учащийся должен построить общую модель этого пространства, которая позволит ему давать достаточно точные прогнозы в новых случаях.
Вычислительный анализ алгоритмов машинного обучения и их производительности — это раздел теоретической информатики, известный как теория вычислительного обучения, с использованием модели «вероятно приблизительно правильного обучения» (PAC). Поскольку обучающие наборы конечны, а будущее неопределенно, теория обучения обычно не дает гарантий производительности алгоритмов. Вместо этого довольно распространены вероятностные границы производительности. Разложение систематической ошибки на дисперсию является одним из способов количественной оценки ошибки обобщения .
Для наилучшей производительности в контексте обобщения сложность гипотезы должна соответствовать сложности функции, лежащей в основе данных. Если гипотеза менее сложна, чем функция, то модель недостаточно подогнала данные. Если в ответ увеличить сложность модели, то ошибка обучения уменьшится. Но если гипотеза слишком сложна, модель может быть переобучена, и обобщение будет хуже. [35]
Помимо границ производительности, теоретики обучения изучают временную сложность и осуществимость обучения. В теории вычислительного обучения вычисление считается возможным, если оно может быть выполнено за полиномиальное время . Существует два типа результатов по временной сложности : Положительные результаты показывают, что определенный класс функций можно изучить за полиномиальное время. Отрицательные результаты показывают, что некоторые классы невозможно изучить за полиномиальное время.
Подходы к машинному обучению традиционно делятся на три широкие категории, которые соответствуют парадигмам обучения, в зависимости от природы «сигнала» или «обратной связи», доступного системе обучения:
Хотя каждый алгоритм имеет свои преимущества и ограничения, ни один алгоритм не подходит для всех задач. [36] [37] [38]
Алгоритмы контролируемого обучения создают математическую модель набора данных, которая содержит как входные, так и желаемые выходные данные. [39] Данные называются обучающими данными и состоят из набора обучающих примеров. Каждый обучающий пример имеет один или несколько входных данных и желаемый выходной сигнал, также известный как управляющий сигнал. В математической модели каждый пример обучения представлен массивом или вектором, иногда называемым вектором признаков , а данные обучения представлены матрицей . Посредством итеративной оптимизации целевой функции алгоритмы обучения с учителем изучают функцию, которую можно использовать для прогнозирования выходных данных, связанных с новыми входными данными. [40] Оптимальная функция позволяет алгоритму правильно определять выходные данные для входных данных, которые не были частью обучающих данных. Говорят, что алгоритм, который со временем повышает точность своих результатов или прогнозов, научился выполнять эту задачу. [19]
Типы алгоритмов контролируемого обучения включают активное обучение , классификацию и регрессию . [41] Алгоритмы классификации используются, когда выходные данные ограничены ограниченным набором значений, а алгоритмы регрессии используются, когда выходные данные могут иметь любое числовое значение в пределах диапазона. Например, для алгоритма классификации, который фильтрует электронные письма, входными данными будет входящее электронное письмо, а выходными — имя папки, в которой будет храниться электронное письмо.
Обучение по подобию — это область контролируемого машинного обучения, тесно связанная с регрессией и классификацией, но цель состоит в том, чтобы учиться на примерах с использованием функции сходства, которая измеряет, насколько похожи или связаны два объекта. Он имеет приложения для ранжирования , систем рекомендаций , визуального отслеживания личности, проверки лица и проверки говорящего.
Алгоритмы обучения без учителя находят структуры в данных, которые не были помечены, классифицированы или категоризированы. Вместо того, чтобы реагировать на обратную связь, алгоритмы обучения без учителя выявляют общие черты в данных и реагируют в зависимости от наличия или отсутствия таких общих черт в каждом новом фрагменте данных. Основные приложения машинного обучения без учителя включают кластеризацию, уменьшение размерности [8] и оценку плотности . [42] Алгоритмы обучения без учителя также упростили процесс идентификации больших гаплотипов интересующего гена на основе инделирования из пангенома . [43]
Кластерный анализ — это распределение набора наблюдений на подмножества (называемые кластерами ), так что наблюдения внутри одного кластера схожи по одному или нескольким заранее заданным критериям, в то время как наблюдения, сделанные из разных кластеров, различны. Различные методы кластеризации делают разные предположения о структуре данных, часто определяемой некоторой метрикой сходства и оцениваемой, например, по внутренней компактности или сходству между членами одного и того же кластера, а также по разделению (разнице между кластерами). Другие методы основаны на расчетной плотности и связности графов .
Обучение с полуконтролем находится между обучением без учителя (без каких-либо маркированных данных обучения) и обучением с учителем (с полностью маркированными данными обучения). В некоторых обучающих примерах отсутствуют обучающие метки, однако многие исследователи машинного обучения обнаружили, что немаркированные данные при использовании в сочетании с небольшим количеством размеченных данных могут значительно повысить точность обучения.
При обучении со слабым учителем ярлыки обучения зашумлены, ограничены или неточны; однако эти метки часто дешевле получить, что приводит к увеличению эффективных обучающих наборов. [44]
Обучение с подкреплением — это область машинного обучения, связанная с тем, как программные агенты должны действовать в окружающей среде, чтобы максимизировать некоторое понятие совокупного вознаграждения. Из-за своей общности эта область изучается во многих других дисциплинах, таких как теория игр , теория управления , исследование операций , теория информации , оптимизация на основе моделирования , многоагентные системы , роевой интеллект , статистика и генетические алгоритмы . В обучении с подкреплением среда обычно представляется как марковский процесс принятия решений (MDP). Многие алгоритмы обучения с подкреплением используют методы динамического программирования . [45] Алгоритмы обучения с подкреплением не предполагают знание точной математической модели MDP и используются, когда точные модели невозможны. Алгоритмы обучения с подкреплением используются в автономных транспортных средствах или при обучении игре против человека-противника.
Снижение размерности — это процесс уменьшения количества рассматриваемых случайных величин за счет получения набора главных переменных. [46] Другими словами, это процесс уменьшения размерности набора функций , также называемый «количеством функций». Большинство методов уменьшения размерности можно рассматривать как исключение или извлечение признаков . Одним из популярных методов снижения размерности является анализ главных компонент (PCA). PCA предполагает изменение данных более высокой размерности (например, 3D) в меньшее пространство (например, 2D). Это приводит к меньшему размеру данных (2D вместо 3D), сохраняя при этом все исходные переменные в модели без изменения данных. [47] Гипотеза многообразия предполагает, что наборы данных большой размерности лежат вдоль многообразий низкой размерности , и многие методы уменьшения размерности делают это предположение, что приводит к области обучения многообразий и регуляризации многообразий .
Были разработаны и другие подходы, которые не вписываются в эту тройную категоризацию, и иногда в одной и той же системе машинного обучения используется более одного. Например, тематическое моделирование , метаобучение . [48]
Самообучение как парадигма машинного обучения было представлено в 1982 году вместе с нейронной сетью, способной к самообучению, названной перекрестной адаптивной матрицей (CAA). [49] Это обучение без внешних наград и советов внешнего учителя. Алгоритм самообучения CAA перекрестно вычисляет как решения о действиях, так и эмоции (чувства) в отношении последствий ситуаций. Система управляется взаимодействием познания и эмоций. [50] Алгоритм самообучения обновляет матрицу памяти W =||w(a,s)|| так, что на каждой итерации выполняется следующая процедура машинного обучения:
Это система только с одним входом (ситуацией) и только одним выходом (действием (или поведением) а). Не существует ни отдельного подкрепления, ни рекомендаций со стороны окружающей среды. Значение обратного распространения (вторичное подкрепление) — это эмоция по отношению к последствиям ситуации. ВГА существует в двух средах: одна — это поведенческая среда, в которой он ведет себя, а другая — генетическая среда, откуда он изначально и только один раз получает первоначальные эмоции по поводу ситуаций, с которыми придется столкнуться в поведенческой среде. Получив вектор генома (вида) из генетической среды, CAA обучается целенаправленному поведению в среде, которая содержит как желательные, так и нежелательные ситуации. [51]
Некоторые алгоритмы обучения направлены на обнаружение лучшего представления входных данных, предоставляемых во время обучения. [52] Классические примеры включают анализ главных компонент и кластерный анализ. Алгоритмы обучения признакам, также называемые алгоритмами обучения представлению, часто пытаются сохранить информацию на входе, но также преобразовывают ее таким образом, чтобы сделать ее полезной, часто в качестве этапа предварительной обработки перед выполнением классификации или прогнозирования. Этот метод позволяет реконструировать входные данные, поступающие из неизвестного распределения, генерирующего данные, но при этом не обязательно быть верным конфигурациям, которые неправдоподобны при этом распределении. Это заменяет ручную разработку функций и позволяет машине как изучать функции, так и использовать их для выполнения конкретной задачи.
Обучение функциям может быть контролируемым или неконтролируемым. При контролируемом обучении функции изучаются с использованием помеченных входных данных. Примеры включают искусственные нейронные сети , многослойные перцептроны и контролируемое обучение словарям . При неконтролируемом обучении функции изучаются с использованием немаркированных входных данных. Примеры включают изучение словаря, анализ независимых компонентов , автокодировщики , матричную факторизацию [53] и различные формы кластеризации . [54] [55] [56]
Алгоритмы многообразного обучения пытаются сделать это при условии, что изученное представление является маломерным. Алгоритмы разреженного кодирования пытаются сделать это при условии, что изученное представление является разреженным, а это означает, что математическая модель имеет много нулей. Алгоритмы обучения многолинейного подпространства направлены на изучение низкоразмерных представлений непосредственно из тензорных представлений многомерных данных, без преобразования их в многомерные векторы. [57] Алгоритмы глубокого обучения обнаруживают несколько уровней представления или иерархию функций, при этом более абстрактные функции более высокого уровня определяются в терминах (или генерируются) функций более низкого уровня. Утверждалось, что интеллектуальная машина — это машина, которая изучает представление, которое распутывает основные факторы вариаций, объясняющие наблюдаемые данные. [58]
Изучение признаков мотивировано тем фактом, что задачи машинного обучения, такие как классификация, часто требуют входных данных, которые математически и вычислительно удобны для обработки. Однако данные реального мира, такие как изображения, видео и сенсорные данные, не привели к попыткам алгоритмического определения конкретных функций. Альтернативой является обнаружение таких функций или представлений путем исследования, не полагаясь на явные алгоритмы.
Обучение по разреженному словарю — это метод обучения функциям, в котором обучающий пример представлен как линейная комбинация базисных функций и предполагается, что это разреженная матрица . Метод сильно NP-труден и его трудно решить приближенно. [59] Популярным эвристическим методом обучения разреженным словарям является алгоритм K-SVD . Разреженное изучение словаря применялось в нескольких контекстах. При классификации проблема состоит в том, чтобы определить класс, к которому принадлежит ранее не встречавшийся обучающий пример. Для словаря, в котором каждый класс уже создан, новый обучающий пример связан с классом, который лучше всего представлен соответствующим словарем. Разреженное словарное обучение также применялось при шумоподавлении изображений . Основная идея заключается в том, что чистый участок изображения может быть разреженно представлен словарем изображений, а шум — нет. [60]
В интеллектуальном анализе данных обнаружение аномалий, также известное как обнаружение выбросов, представляет собой выявление редких элементов, событий или наблюдений, которые вызывают подозрения, поскольку значительно отличаются от большинства данных. [61] Как правило, аномальные элементы представляют собой такие проблемы, как банковское мошенничество , структурный дефект, проблемы со здоровьем или ошибки в тексте. Аномалии называются выбросами , новинками, шумом, отклонениями и исключениями. [62]
В частности, в контексте злоупотреблений и обнаружения вторжений в сеть интересными объектами часто являются не редкие объекты, а неожиданные всплески бездействия. Эта закономерность не соответствует общепринятому статистическому определению выброса как редкого объекта. Многие методы обнаружения выбросов (в частности, неконтролируемые алгоритмы) не будут работать с такими данными, если они не будут соответствующим образом агрегированы. Вместо этого алгоритм кластерного анализа может обнаружить микрокластеры, образованные этими шаблонами. [63]
Существуют три широкие категории методов обнаружения аномалий. [64] Методы неконтролируемого обнаружения аномалий обнаруживают аномалии в немаркированном наборе тестовых данных при предположении, что большинство экземпляров в наборе данных являются нормальными, путем поиска экземпляров, которые кажутся наименее подходящими для остальной части набора данных. Методы контролируемого обнаружения аномалий требуют набора данных, помеченных как «нормальный» и «ненормальный», и включают обучение классификатора (ключевое отличие от многих других задач статистической классификации заключается в несбалансированном характере обнаружения выбросов). Методы полуконтролируемого обнаружения аномалий создают модель, представляющую нормальное поведение, на основе заданного нормального набора обучающих данных, а затем проверяют вероятность того, что моделью будет сгенерирован тестовый экземпляр.
Обучение роботов основано на множестве методов машинного обучения, начиная с обучения с учителем, обучения с подкреплением [65] [66] и, наконец, метаобучения (например, MAML).
Обучение правилам ассоциации — это основанный на правилах метод машинного обучения для обнаружения связей между переменными в больших базах данных. Он предназначен для выявления сильных правил, обнаруженных в базах данных, с использованием некоторой меры «интересности». [67]
Машинное обучение на основе правил — это общий термин для любого метода машинного обучения, который идентифицирует, изучает или развивает «правила» для хранения, манипулирования или применения знаний. Определяющей характеристикой алгоритма машинного обучения, основанного на правилах, является идентификация и использование набора реляционных правил, которые в совокупности представляют знания, полученные системой. В этом отличие от других алгоритмов машинного обучения, которые обычно определяют единственную модель, которую можно универсально применить к любому случаю для получения прогноза. [68] Подходы к машинному обучению, основанные на правилах, включают в себя обучение систем классификаторов , обучение ассоциативным правилам и искусственные иммунные системы .
Основываясь на концепции строгих правил, Ракеш Агравал , Томаш Имелински и Арун Свами представили правила ассоциации для обнаружения закономерностей между продуктами в крупномасштабных данных транзакций, записываемых системами точек продаж (POS) в супермаркетах. [69] Например, правило , обнаруженное в данных о продажах супермаркета, указывает на то, что если покупатель покупает лук и картофель вместе, он, скорее всего, также купит мясо для гамбургера. Такая информация может использоваться в качестве основы для принятия решений о маркетинговой деятельности, такой как рекламное ценообразование или размещение продукта . Помимо анализа потребительской корзины , правила ассоциации сегодня используются в таких прикладных областях, как анализ использования Интернета , обнаружение вторжений , непрерывное производство и биоинформатика . В отличие от интеллектуального анализа последовательностей , изучение правил ассоциации обычно не учитывает порядок элементов ни внутри транзакции, ни между транзакциями.
Системы классификаторов обучения (LCS) — это семейство алгоритмов машинного обучения на основе правил, которые сочетают в себе компонент обнаружения, обычно генетический алгоритм , с компонентом обучения, выполняя обучение с учителем , обучение с подкреплением или обучение без учителя . Они стремятся определить набор контекстно-зависимых правил, которые коллективно хранят и фрагментарно применяют знания для того, чтобы делать прогнозы. [70]
Индуктивное логическое программирование (ILP) — это подход к изучению правил с использованием логического программирования в качестве единообразного представления входных примеров, базовых знаний и гипотез. Учитывая кодирование известных базовых знаний и набора примеров, представленных в виде логической базы данных фактов, система ПДОДИ выводит гипотетическую логическую программу, которая влечет за собой все положительные примеры и отсутствие отрицательных. Индуктивное программирование — это смежная область, которая рассматривает любой язык программирования для представления гипотез (и не только логическое программирование), например функциональные программы .
Индуктивное логическое программирование особенно полезно в биоинформатике и обработке естественного языка . Гордон Плоткин и Эхуд Шапиро заложили первоначальную теоретическую основу индуктивного машинного обучения в логической постановке. [71] [72] [73] Шапиро построил свою первую реализацию (систему вывода моделей) в 1981 году: программу на Прологе, которая индуктивно выводит логические программы из положительных и отрицательных примеров. [74] Термин «индукция» здесь относится к философской индукции, предлагающей теорию для объяснения наблюдаемых фактов, а не к математической индукции , доказывающей свойство для всех членов хорошо упорядоченного множества.
Выполнение машинного обучения может включать создание модели , которая обучается на некоторых обучающих данных, а затем может обрабатывать дополнительные данные для составления прогнозов. Для систем машинного обучения использовались и исследовались различные типы моделей.
Искусственные нейронные сети (ИНС), или коннекционистские системы, представляют собой вычислительные системы, отчасти основанные на биологических нейронных сетях , составляющих мозг животных . Такие системы «учатся» выполнять задачи, рассматривая примеры, как правило, без программирования каких-либо правил, специфичных для конкретной задачи.
ИНС — это модель, основанная на наборе связанных единиц или узлов, называемых « искусственными нейронами », которые в общих чертах моделируют нейроны биологического мозга . Каждое соединение, подобно синапсам в биологическом мозге , может передавать информацию, «сигнал», от одного искусственного нейрона к другому. Искусственный нейрон, получивший сигнал, может его обработать и затем передать сигнал подключенным к нему дополнительным искусственным нейронам. В обычных реализациях ИНС сигнал при соединении между искусственными нейронами представляет собой действительное число , а выход каждого искусственного нейрона вычисляется с помощью некоторой нелинейной функции суммы его входов. Связи между искусственными нейронами называются «ребрами». Искусственные нейроны и ребра обычно имеют вес , который корректируется по мере обучения. Вес увеличивает или уменьшает силу сигнала при соединении. Искусственные нейроны могут иметь такой порог, что сигнал отправляется только в том случае, если совокупный сигнал пересекает этот порог. Обычно искусственные нейроны объединяются в слои. Разные слои могут выполнять разные виды преобразований на своих входах. Сигналы передаются от первого слоя (входного слоя) к последнему слою (выходному слою), возможно, после многократного прохождения слоев.
Первоначальная цель подхода ИНС заключалась в том, чтобы решать проблемы так же, как это делает человеческий мозг . Однако со временем внимание переместилось на выполнение конкретных задач, что привело к отклонениям от биологии . Искусственные нейронные сети использовались для решения множества задач, включая компьютерное зрение , распознавание речи , машинный перевод , фильтрацию социальных сетей , настольные и видеоигры , а также медицинскую диагностику .
Глубокое обучение состоит из нескольких скрытых слоев в искусственной нейронной сети. Этот подход пытается смоделировать то, как человеческий мозг преобразует свет и звук в зрение и слух. Некоторые успешные применения глубокого обучения — это компьютерное зрение и распознавание речи . [75]
При обучении по дереву решений дерево решений используется в качестве прогностической модели для перехода от наблюдений за элементом (представленных в ветвях) к выводам о целевом значении элемента (представленном в листьях). Это один из подходов прогнозного моделирования, используемых в статистике, интеллектуальном анализе данных и машинном обучении. Древовидные модели, в которых целевая переменная может принимать дискретный набор значений, называются деревьями классификации; в этих древовидных структурах листья представляют метки классов, а ветви представляют собой соединения объектов, которые приводят к этим меткам классов. Деревья решений, в которых целевая переменная может принимать непрерывные значения (обычно действительные числа ), называются деревьями регрессии. При анализе решений дерево решений можно использовать для визуального и явного представления решений и процесса их принятия . При интеллектуальном анализе данных дерево решений описывает данные, но полученное дерево классификации может быть входными данными для принятия решений.
Машины опорных векторов (SVM), также известные как сети опорных векторов, представляют собой набор связанных методов обучения с учителем , используемых для классификации и регрессии. Учитывая набор обучающих примеров, каждый из которых помечен как принадлежащий к одной из двух категорий, алгоритм обучения SVM строит модель, которая предсказывает, попадает ли новый пример в одну категорию. [76] Алгоритм обучения SVM представляет собой невероятностный бинарный линейный классификатор , хотя существуют такие методы, как масштабирование Платта, для использования SVM в условиях вероятностной классификации. Помимо выполнения линейной классификации, SVM могут эффективно выполнять нелинейную классификацию, используя так называемый трюк ядра , неявно отображая свои входные данные в многомерные пространства признаков.
Регрессионный анализ включает в себя большое количество статистических методов для оценки взаимосвязи между входными переменными и связанными с ними функциями. Его наиболее распространенной формой является линейная регрессия , когда одна линия рисуется так, чтобы наилучшим образом соответствовать заданным данным в соответствии с математическим критерием, таким как обычный метод наименьших квадратов . Последнее часто расширяется с помощью методов регуляризации , чтобы уменьшить переобучение и систематическую ошибку, как в случае с гребневой регрессией . При решении нелинейных задач модели перехода включают полиномиальную регрессию (например, используемую для аппроксимации линии тренда в Microsoft Excel [77] ), логистическую регрессию (часто используемую в статистической классификации ) или даже ядерную регрессию , которая вводит нелинейность. воспользовавшись трюком ядра для неявного сопоставления входных переменных с многомерным пространством.
Байесовская сеть, сеть убеждений или направленная ациклическая графическая модель — это вероятностная графическая модель , которая представляет набор случайных величин и их условную независимость с помощью ориентированного ациклического графа (DAG). Например, байесовская сеть может представлять вероятностные связи между заболеваниями и симптомами. Учитывая симптомы, сеть можно использовать для расчета вероятности наличия различных заболеваний. Существуют эффективные алгоритмы, которые выполняют логический вывод и обучение. Байесовские сети, которые моделируют последовательности переменных, таких как речевые сигналы или последовательности белков , называются динамическими байесовскими сетями . Обобщения байесовских сетей, которые могут представлять и решать проблемы принятия решений в условиях неопределенности, называются диаграммами влияния .
Гауссовский процесс — это случайный процесс , в котором каждый конечный набор случайных величин в процессе имеет многомерное нормальное распределение и опирается на заранее определенную ковариационную функцию или ядро, которое моделирует, как пары точек связаны друг с другом в зависимости на своих местах.
Учитывая набор наблюдаемых точек или примеров ввода-вывода, распределение (ненаблюдаемых) выходных данных новой точки в зависимости от ее входных данных может быть напрямую вычислено путем просмотра наблюдаемых точек и ковариаций между этими точками и новыми , ненаблюдаемая точка.
Гауссовские процессы являются популярными суррогатными моделями в байесовской оптимизации , используемыми для оптимизации гиперпараметров .
Генетический алгоритм (ГА) — это алгоритм поиска и эвристический метод, который имитирует процесс естественного отбора , используя такие методы, как мутация и скрещивание , для создания новых генотипов в надежде найти хорошие решения данной проблемы. В машинном обучении генетические алгоритмы использовались в 1980-х и 1990-х годах. [79] [80] И наоборот, методы машинного обучения использовались для повышения производительности генетических и эволюционных алгоритмов . [81]
Теория функций убеждения, также называемая теорией доказательств или теорией Демпстера-Шейфера, представляет собой общую основу для рассуждений с неопределенностью, с понятными связями с другими теориями, такими как теории вероятности , возможности и неточные теории вероятностей . Эти теоретические рамки можно рассматривать как своего рода обучающие устройства, и они обладают некоторыми свойствами, аналогичными тому, как объединяются доказательства (например, правило комбинации Демпстера), точно так же, как в байесовском подходе на основе PMF [ необходимы пояснения ] комбинируются вероятности. Однако есть много предостережений относительно этих функций убеждений по сравнению с байесовскими подходами, чтобы включить количественную оценку незнания и неопределенности . Эти подходы с функцией доверия, которые реализованы в области машинного обучения, обычно используют подход объединения различных ансамблевых методов , чтобы лучше справляться с границей принятия решения учащимся , небольшими выборками и неоднозначными проблемами класса, которые стандартный подход машинного обучения обычно с трудом решает. [3] [5] [10] Однако вычислительная сложность этих алгоритмов зависит от количества предложений (классов) и может привести к гораздо большему времени вычислений по сравнению с другими подходами машинного обучения.
Обычно модели машинного обучения требуют большого количества надежных данных, чтобы модели могли выполнять точные прогнозы. При обучении модели машинного обучения инженерам машинного обучения необходимо собрать большую и репрезентативную выборку данных. Данные из обучающего набора могут быть такими же разнообразными, как корпус текста , набор изображений, данные датчиков и данные, собранные от отдельных пользователей службы. Переоснащение — это то, на что следует обратить внимание при обучении модели машинного обучения. Обученные модели, полученные на основе предвзятых или неоцененных данных, могут привести к искаженным или нежелательным прогнозам. Модели предвзятости могут привести к пагубным результатам, тем самым усиливая негативное воздействие на общество или цели. Алгоритмическая ошибка — это потенциальный результат того, что данные не полностью подготовлены к обучению. Этика машинного обучения становится областью исследований и, в частности, интегрируется в команды разработчиков машинного обучения.
Федеративное обучение — это адаптированная форма распределенного искусственного интеллекта для обучения моделей машинного обучения, которая децентрализует процесс обучения, позволяя сохранять конфиденциальность пользователей без необходимости отправлять их данные на централизованный сервер. Это также повышает эффективность за счет децентрализации процесса обучения на множество устройств. Например, Gboard использует интегрированное машинное обучение для обучения моделей прогнозирования поисковых запросов на мобильных телефонах пользователей без необходимости отправлять отдельные поисковые запросы обратно в Google . [82]
Существует множество приложений для машинного обучения, в том числе:
В 2006 году поставщик медиа-услуг Netflix провел первый конкурс « Netflix Prize », чтобы найти программу, которая лучше прогнозирует предпочтения пользователей и повышает точность существующего алгоритма рекомендации фильмов Cinematch как минимум на 10%. Совместная команда, состоящая из исследователей из AT&T Labs -Research в сотрудничестве с командами Big Chaos и Pragmatic Theory, создала ансамблевую модель , чтобы выиграть главный приз в 2009 году за 1 миллион долларов. [85] Вскоре после присуждения премии в Netflix поняли, что рейтинги зрителей не являются лучшим показателем их моделей просмотра («все является рекомендацией»), и соответствующим образом изменили свою систему рекомендаций. [86] В 2010 году The Wall Street Journal написала о фирме Rebellion Research и использовании ими машинного обучения для прогнозирования финансового кризиса. [87] В 2012 году соучредитель Sun Microsystems Винод Хосла предсказал, что 80% рабочих мест врачей будут потеряны в ближайшие два десятилетия из-за автоматизированного медицинского диагностического программного обеспечения машинного обучения. [88] В 2014 году сообщалось, что алгоритм машинного обучения был применен в области истории искусства для изучения картин изобразительного искусства и что он, возможно, выявил ранее непризнанные влияния среди художников. [89] В 2019 году Springer Nature опубликовала первую исследовательскую книгу, созданную с использованием машинного обучения. [90] В 2020 году технология машинного обучения была использована для постановки диагноза и помощи исследователям в разработке лекарства от COVID-19. [91] Недавно машинное обучение было применено для прогнозирования экологически чистого поведения путешественников. [92] Недавно технология машинного обучения была также применена для оптимизации производительности и температурного режима смартфона на основе взаимодействия пользователя с телефоном. [93] [94] [95] При правильном применении алгоритмы машинного обучения (MLA) могут использовать широкий спектр характеристик компании для прогнозирования доходности акций без переобучения . Используя эффективную разработку признаков и комбинирование прогнозов, MLA могут генерировать результаты, которые намного превосходят результаты, полученные с помощью базовых линейных методов, таких как OLS . [96]
Хотя машинное обучение произвело трансформацию в некоторых областях, программы машинного обучения часто не дают ожидаемых результатов. [97] [98] [99] Причин для этого множество: отсутствие (подходящих) данных, отсутствие доступа к данным, предвзятость данных, проблемы конфиденциальности, неправильно выбранные задачи и алгоритмы, неправильные инструменты и люди, нехватка ресурсов, и проблемы оценки. [100]
« Теория черного ящика » представляет собой еще одну, но важную проблему. Черный ящик относится к ситуации, когда алгоритм или процесс получения результатов полностью непрозрачен, а это означает, что даже программисты алгоритма не могут проверить шаблон, который машина извлекла из данных. [101] Специальный комитет Палаты лордов заявил, что такая «разведывательная система», которая могла бы оказать «существенное влияние на жизнь человека», не будет считаться приемлемой, если она не предоставит «полное и удовлетворительное объяснение решений», которые она принимает. делает. [101]
В 2018 году беспилотный автомобиль Uber не смог обнаружить пешехода, погибшего в результате столкновения. [102] Попытки использовать машинное обучение в здравоохранении с помощью системы IBM Watson не увенчались успехом даже после многих лет времени и миллиардов долларов инвестиций. [103] [104] Сообщается, что чат-бот Microsoft вызывает враждебную и оскорбительную реакцию в отношении своих пользователей. [105]
Машинное обучение использовалось в качестве стратегии для обновления данных, связанных с систематическим обзором, и увеличения нагрузки на рецензентов, связанной с ростом биомедицинской литературы. Несмотря на то, что благодаря обучающим наборам он улучшился, он еще не развился в достаточной степени, чтобы снизить рабочую нагрузку без ограничения необходимой чувствительности для самих результатов исследования. [106]
В частности, подходы к машинному обучению могут страдать от различных искажений данных. Система машинного обучения, специально обученная на текущих клиентах, может быть не в состоянии предсказать потребности новых групп клиентов, которые не представлены в данных обучения. При обучении на данных, созданных человеком, машинное обучение, скорее всего, уловит конституционные и бессознательные предубеждения, уже присутствующие в обществе. [107]
Было показано, что языковые модели, полученные на основе данных, содержат предвзятости, подобные человеческим. [108] [109] В эксперименте, проведенном ProPublica , организацией, занимающейся журналистскими расследованиями , анализ алгоритма машинного обучения в отношении уровня рецидивов среди заключенных ошибочно отметил, что «черные обвиняемые подвергаются высокому риску в два раза чаще, чем белые обвиняемые». [110] В 2015 году на фотографиях Google часто помечались чернокожие люди как гориллы, [110] и в 2018 году эта проблема все еще не была решена должным образом, но, как сообщается, Google все еще использовал обходной путь для удаления всех горилл из обучающих данных, и поэтому не был вообще способен распознать настоящих горилл. [111] Подобные проблемы с признанием небелых людей были обнаружены во многих других системах. [112] В 2016 году Microsoft протестировала чат-бота , который учился на Twitter, и быстро усвоил расистские и сексистские высказывания. [113]
Из-за таких проблем эффективное использование машинного обучения может занять больше времени, прежде чем оно будет внедрено в других областях. [114] Заботу о справедливости в машинном обучении, то есть об уменьшении предвзятости в машинном обучении и стимулировании его использования на благо человечества, все чаще выражают ученые в области искусственного интеллекта, в том числе Фей-Фей Ли , который напоминает инженерам, что «в ИИ нет ничего искусственного. ...Он вдохновлен людьми, создан людьми и, что наиболее важно, влияет на людей. Это мощный инструмент, который мы только начинаем понимать, и это глубокая ответственность». [115]
Объяснимый ИИ (XAI), или Интерпретируемый ИИ, или Объясняемое машинное обучение (XML), — это искусственный интеллект (ИИ), с помощью которого люди могут понимать решения или прогнозы, сделанные ИИ. [116] Это контрастирует с концепцией «черного ящика» в машинном обучении, где даже разработчики не могут объяснить, почему ИИ принял конкретное решение. [117] Совершенствуя ментальные модели пользователей систем на базе искусственного интеллекта и разрушая их заблуждения, XAI обещает помочь пользователям работать более эффективно. XAI может быть реализацией социального права на объяснение.
Выбор плохой, слишком сложной теории, подстроенной так, чтобы соответствовать всем прошлым обучающим данным, известен как переобучение. Многие системы пытаются уменьшить переобучение, вознаграждая теорию в зависимости от того, насколько хорошо она соответствует данным, и наказывая теорию в соответствии с ее сложностью. [118]
Учащиеся также могут разочароваться, «усвоив неправильный урок». Игрушечный пример: классификатор изображений, обученный только на изображениях коричневых лошадей и черных кошек, может прийти к выводу, что все коричневые пятна, скорее всего, являются лошадьми. [119] Реальным примером является то, что, в отличие от людей, современные классификаторы изображений зачастую не делают суждения на основе пространственных отношений между компонентами изображения, а изучают отношения между пикселями, о которых люди не обращают внимания, но которые все еще коррелируют с изображения определенных типов реальных объектов. Изменение этих шаблонов на законном изображении может привести к появлению «конкурентных» изображений, которые система неправильно классифицирует. [120] [121]
Состязательные уязвимости также могут привести к нелинейным системам или к нешаблоновым возмущениям. В некоторых системах можно изменить выходные данные, изменив только один выбранный состязательно пиксель. [122] Модели машинного обучения часто уязвимы для манипуляций и/или обхода посредством состязательного машинного обучения . [123]
Исследователи продемонстрировали, как бэкдоры могут быть незаметно помещены в классифицирующие (например, по категориям «спам» и хорошо видимые «не спам» сообщений) модели машинного обучения, которые часто разрабатываются и/или обучаются третьими лицами. Стороны могут изменить классификацию любых входных данных, в том числе в случаях, когда предусмотрен тип прозрачности данных/программного обеспечения , возможно, включая доступ к «белому ящику» . [124] [125] [126]
Классификация моделей машинного обучения может быть проверена с помощью методов оценки точности, таких как метод удержания , который разделяет данные на обучающий и тестовый наборы (обычно 2/3 обучающего набора и 1/3 обозначения тестового набора) и оценивает производительность обучающей модели. на тестовом наборе. Для сравнения, метод K-кратной перекрестной проверки случайным образом разделяет данные на K подмножества, а затем проводится K экспериментов, каждый из которых соответственно рассматривает 1 подмножество для оценки и оставшиеся K-1 подмножества для обучения модели. В дополнение к методам удержания и перекрестной проверки для оценки точности модели можно использовать бутстрап , который выбирает n экземпляров с заменой из набора данных. [127]
Помимо общей точности, исследователи часто сообщают о чувствительности и специфичности, что означает долю истинно положительных результатов (TPR) и частоту истинного отрицательных результатов (TNR) соответственно. Точно так же исследователи иногда сообщают о частоте ложноположительных результатов (FPR), а также о частоте ложноотрицательных результатов (FNR). Однако эти ставки представляют собой отношения, в которых не раскрываются их числители и знаменатели. Общая рабочая характеристика (ТОС) является эффективным методом выражения диагностических возможностей модели. TOC показывает числители и знаменатели ранее упомянутых скоростей, таким образом TOC предоставляет больше информации, чем обычно используемая рабочая характеристика приемника (ROC) и связанная с ROC площадь под кривой (AUC). [128]
Машинное обучение ставит множество этических вопросов . Системы, обученные на наборах данных, собранных с предвзятостью, могут проявлять эти предвзятости при использовании ( алгоритмическая предвзятость ), тем самым оцифровывая культурные предрассудки. [129] Например, в 1988 году Комиссия по расовому равенству Великобритании обнаружила, что Медицинская школа Св. Георгия использовала компьютерную программу, созданную на основе данных предыдущих сотрудников приемной комиссии, и эта программа отклонила почти 60 кандидатов, которые были признаны либо женщинами, либо женщинами. или имели имена, звучащие не по-европейски. [107] Использование данных о найме на работу от фирмы с расистской политикой найма может привести к тому, что система машинного обучения будет дублировать предвзятость, оценивая кандидатов на работу по сходству с предыдущими успешными кандидатами. [130] [131] Другой пример включает в себя алгоритм прогнозирования полицейской компании Geolitica , который привел к «непропорционально высокому уровню чрезмерной полицейской деятельности в сообществах с низкими доходами и меньшинствами» после обучения на исторических данных о преступлениях. [110]
Хотя ответственный сбор данных и документирование алгоритмических правил, используемых системой, считаются важной частью машинного обучения, некоторые исследователи обвиняют отсутствие участия и представительства меньшинств в области ИИ в уязвимости машинного обучения к предвзятости. [132] Фактически, согласно исследованию, проведенному Ассоциацией компьютерных исследований (CRA) в 2021 году, «женщины-преподаватели составляют лишь 16,1%» от всех преподавателей, специализирующихся на искусственном интеллекте, в нескольких университетах по всему миру. [133] Кроме того, среди группы «новых выпускников аспирантов в области искусственного интеллекта в США» 45% идентифицированы как белые, 22,4% как азиаты, 3,2% как латиноамериканцы и 2,4% как афроамериканцы, что еще раз демонстрирует отсутствие разнообразия в область ИИ. [133]
ИИ может быть хорошо оснащен для принятия решений в технических областях, которые в значительной степени полагаются на данные и историческую информацию. Эти решения основаны на объективности и логическом обосновании. [134] Поскольку человеческие языки содержат предубеждения, машины, обученные на языковых корпусах , обязательно также изучат эти предубеждения. [135] [136]
Другие формы этических проблем, не связанные с личными предубеждениями, наблюдаются в здравоохранении. Среди специалистов здравоохранения существуют опасения, что эти системы могут быть разработаны не в интересах общества, а как машины, приносящие доход. [137] Это особенно верно в Соединенных Штатах, где существует давняя этическая дилемма улучшения здравоохранения, но также и увеличения прибыли. Например, алгоритмы могут быть разработаны так, чтобы предоставлять пациентам ненужные тесты или лекарства, в которых заинтересованы владельцы алгоритма. Машинное обучение в здравоохранении потенциально может предоставить специалистам дополнительный инструмент для диагностики, лечения и планирования путей выздоровления пациентов, но для этого необходимо смягчить эти предубеждения. [138]
С 2010-х годов достижения как в алгоритмах машинного обучения, так и в компьютерном оборудовании привели к появлению более эффективных методов обучения глубоких нейронных сетей (особой узкой подобласти машинного обучения), которые содержат множество слоев нелинейных скрытых модулей. [139] К 2019 году графические процессоры ( GPU ), часто с улучшениями, специфичными для искусственного интеллекта, вытеснили центральные процессоры в качестве доминирующего метода обучения крупномасштабного коммерческого облачного искусственного интеллекта. [140] OpenAI оценила аппаратные вычисления, используемые в крупнейших проектах глубокого обучения, от AlexNet (2012) до AlphaZero (2017), и обнаружила 300 000-кратное увеличение объема необходимых вычислений с линией тренда удвоения, равной 3,4 месяца. [141] [142]
Физическая нейронная сеть или нейроморфный компьютер — это тип искусственной нейронной сети , в которой электрически регулируемый материал используется для имитации функции нейронного синапса . «Физическая» нейронная сеть используется, чтобы подчеркнуть зависимость от физического оборудования, используемого для эмуляции нейронов , в отличие от программных подходов. В более общем смысле этот термин применим к другим искусственным нейронным сетям, в которых для эмуляции нейронного синапса используется мемристор или другой материал с электрически регулируемым сопротивлением. [143] [144]
Встроенное машинное обучение — это подобласть машинного обучения, в которой модель машинного обучения запускается во встроенных системах с ограниченными вычислительными ресурсами, таких как носимые компьютеры , периферийные устройства и микроконтроллеры . [145] [146] [147] Запуск модели машинного обучения во встроенных устройствах устраняет необходимость передачи и хранения данных на облачных серверах для дальнейшей обработки, что в дальнейшем снижает утечку данных и утечку конфиденциальности, происходящую из-за передачи данных, а также сводит к минимуму кражу интеллектуальная собственность, персональные данные и коммерческая тайна. Встроенное машинное обучение может применяться с помощью нескольких методов, включая аппаратное ускорение , [148] [149] использование приближенных вычислений , [150] оптимизацию моделей машинного обучения и многое другое. [151] [152]
Пакеты программного обеспечения , содержащие различные алгоритмы машинного обучения, включают следующее: