Что такое глубокое обучение?
В нашем видео «Как обучаются машины? » мы объясняем основы машинного обучения и рассказываем, как машины приобретают интеллект благодаря нейронным сетям. В этой статье нам хотелось бы более подробно рассказать об иерархии этих понятий и раскрыть значение различных технических терминов, которые часто используются в этом контексте: глубокое обучение представляет собой подраздел машинного обучения, которое, в свою очередь, рассматривается как подраздел так называемого искусственного интеллекта.
1. Искусственный интеллект (ИИ)
Под ИИ обычно подразумевается имитация или репликация поведенческих черт человека машинами, как правило, компьютерными программами. Общее понятие ИИ включает в себя несколько направлений, таких как экспертные системы, системы для характеристического анализа и робототехника. В системах на основе ИИ применяются различные методы имитации или моделирования поведения человека и способов принятия решений, в том числе статистические алгоритмы, эвристические процедуры, искусственные нейронные сети (ИНС) и другие продукты машинного обучения.
2. Машинное обучение
Машинное обучение представляет собой подраздел искусственного интеллекта и включает в себя автоматизированные процедуры для выведения общих правил из набора примеров данных, т. е. правила «изучаются» машиной на примерах данных. Это выполняется путем применения предопределенных и понятных алгоритмов и правил, или — как в случае с глубоким обучением — с помощью искусственных нейронных сетей. В машинном обучении проводится различие между контролируемым и неконтролируемым обучением (так называемое обучение с учителем и без учителя). Обучение с учителем означает, что примеры данных для обучения содержат как входные данные, так и соответствующие ожидаемые результаты (например, результаты классификации), в то время как обучение без учителя предполагает, что система будет определять возможные результаты исходя из входных данных.
3. Глубокое обучение
Глубокое обучение – это метод машинного обучения, который предполагает самостоятельное выстраивание (тренировку) общих правил в виде искусственной нейронной сети на примере данных во время процесса обучения. Обучение нейронной сети, особенно для систем машинного зрения, обычно проводится с учителем, т. е. на конкретных примерах данных с предварительно определенными для них результатами.
Как осуществляется глубокое обучение?
1. Искусственная нейронная сеть
Глубокое обучение как метод предполагает определенную форму искусственных нейронных сетей (ИНС), которые сначала необходимо обучить на примерах данных. Обученную ИНС можно применять для выполнения соответствующих задач. Применение обученной ИНС называется «выполнением логических выводов». Во время выполнения логических выводов ИНС выдает результаты анализа данных в соответствии с заученными правилами. Например, это может быть оценка того, содержит введенное изображение неисправный или нормальный объект.
2. Нейроны, слои и связи
ИНС состоит из слоев «нейронов», которые связаны между собой. В самом простом случае это входной слой и выходной слой. Нейроны и связи можно рассматривать как матрицы. Матрица связей содержит связи между каждым значением матрицы ввода и значениями матрицы результата. Значения матрицы связей содержат весовые коэффициенты каждой соответствующей связи. В результате взвешивания входного значения на основе значения в матрице логики заносится соответствующее значение в матрицу результата.
3. Глубокая искусственная нейронная сеть
Понятие «глубокое обучение» описывает обучение так называемых «глубоких» ИНС. Помимо входного и выходного слоя, они состоят из сотен дополнительных «скрытых» слоев между видимыми слоями для ввода и вывода. Полученная матрица скрытого слоя служит матрицей входных данных для следующего слоя. В этом случае только матрица выходных данных последнего слоя содержит результат.
4. Обучение
При обучении ИНС фокус изначально устанавливается случайным образом. Затем постепенно добавляются примеры данных. Для корректировки весовых коэффициентов связей с учетом входных данных и ожидаемого результата применяется алгоритм обучения. Эффективность работы ИНС, то есть точность логических выводов, а значит, результата, в значительной степени зависит от примеров данных, используемых в обучении. Большой объем примеров данных с высокой степенью вариабельности содержания является залогом более точных логических выводов. Если обучение осуществляется на основе большого количества очень похожих или повторяющихся данных, ИНС не сможет анализировать реальные данные, если они отличаются от примеров данных. В этом случае считают, что ИНС «переобучилась».
Какие задачи можно решать с помощью глубокого обучения?
Все любят печенье – и большие, и маленькие. На примере печенья рассмотрим, как работает глубокое обучение. Глубокое обучение применяется в самых различных областях. В сфере машинного зрения глубокое обучение представляет собой особенно часто используемый метод решения широкого круга задач. К наиболее распространенным задачам для глубокого обучения в технологиях визуализации относятся анализ изображений в целях классификации и сегментации содержащейся на них информации.
1. Классификация изображений
Классификация изображений предполагает определение классов объектов на изображениях, например, для отделения дефектных компонентов от бездефектных и их сортировки их по разным типам дефектов или распределения отпускных изображений по различным категориям. Так, в производстве печенья эта задача будет заключаться в проверке каждого печенья на предмет того, целое оно или раскрошилось.
2. Сегментация изображений и распознавание объектов
Сегментация изображений предполагает определение класса каждого из пикселей изображения. Такой подход позволяет идентифицировать несколько различных объектов на изображении, например, определять различные виды фруктов в корзине или распознавать указатели, дорожные знаки и людей в транспортном потоке. Сегментация изображений поможет определить, печенье какой формы перемещается на конвейере – круглой, квадратной и шестиугольной.
3. Обработка изображений
Глубокое обучение также используется на этапе обработки и оптимизации изображений, например, для удаления шума или компенсации искажений, характерных для различных объективов.