Содержание статьи
Обучение нейронной сети
Особенности применения НС в качестве классификаторов
Следует отметить, что каких-либо специальных нейросетевых архитектур для классификации не существует. Наиболее часто используемой для классификации архитектурой НС являются сети прямого распространения, на входные нейроны которых подаются значения признаков классифицируемого объекта, а на выходе формируется метка или числовой код класса. Обычно используются многослойные персептроны. В таких сетях элементы вектора признаков поступают на входные нейроны и распределяются на все нейроны первого скрытого слоя НС, и в результате размерность задачи изменяется.
Здесь 1 на выходе говорит о наличии одной из компонент. Тогда определить номер класса по результату расчета сети можно следующим образом: определяем, какие комбинации получили единичное (точнее близкое к единице) значение выхода (т.е. какие подзадачи были активированы), и полагаем, что в качестве номера класса следует выбрать тот, который вошел в наибольшее количество активированных подзадач (см. таблицу).
Ещё один подход заключается в разбиении задачи с k классами на k∗(k−1)/2 подзадач с двумя классами каждая (кодирование «2 на 2»). Подзадача в данном случае заключается в том, что сеть определяет наличие одной из компонент вектора. Т.е. исходный вектор разбивается на группы по два компонента в каждой таким образом, чтобы в них вошли все возможные комбинации компонент выходного вектора. Из комбинаторики известно, что число этих групп можно определить как количество неупорядоченных выборок без повторений по два из исходных компонент, то есть:
Классификация является одной из важнейших задач интеллектуального анализа данных. Она решается с помощью аналитических моделей, называемых классификаторами. Востребованность классификации обусловлена сравнительной простотой алгоритмов и методов её реализации, и высокой интерпретируемостью результатов по сравнению с другими технологиями анализа данных.
-
Данные
Одним общим словом называют все, что требуется для обучения и дальнейшей работы. Необходимые типы данных зависят от будущих задач. Разработчики могут загрузить словари иностранных языков и примеры переводов, статистику и описание произошедших фактов, изображения и т.д. Информация накапливается годами и собирается в датасеты
Следует отметить, что задача классификации для НС, вообще говоря, не является основной (как, например, для деревьев решений или алгоритма k ближайших соседей). Изначально, основной задачей для НС является численное предсказание (когда на входе и выходе модели числовые значения, что иногда не совсем корректно называют регрессией).
Кодирование выходных значений
В простейшем случае, если классификация бинарная, задача может быть решена с помощью НС с единственным нейроном выходного слоя, на выходе которого формируется два возможных состояния (например, 0 и 1). Если классов несколько, то необходимо решать проблему их представления на выходе сети. На практике обычно используется выходной вектор, элементами которого являются метки или номера классов.
При деструктивном подходе вначале берется сеть завышенного размера, и затем из нее удаляются нейроны и связи, которые оказывают наименьшее влияние на точность классификатора. При этом полезно помнить следующее правило: число примеров в обучающем множестве должно быть больше числа настраиваемых весов сети. В противном случае сеть не приобретёт обобщающую способность и будет выдавать на новых данных произвольные значения.
Это позволяет сделать процесс более эффективным: правильно подобрав конфигурацию и параметры НС можно получить хорошие результаты классификации даже в тех случаях, когда классификаторы других типов, работающие только в размерности обучающих данных, не обеспечивают приемлемых результатов. Недостатком является то, что конфигурация сети, наилучшим образом аппроксимирующая функцию разделения классов в пространстве признаков, заранее неизвестна. Поэтому приходится подбирать её экспериментально, либо использовать опыт аналогичных решений.
Для контроля обобщающей способности сети, на основе которой строится классификатор, полезно использовать тестовое множество, формируемое из случайно отбираемых примеров обучающего набора данных. Примеры тестового множества не участвуют в процессе обучения сети (т.е. не влияют на подстройку её весов), а просто подаются на её вход вместе с обучающими примерами.
Обучение нейронной сети строится на угадывании и поиске корреляций. ИИ старается решить задачу и получает ответы от человека или отдельного алгоритма, контролирующего верность ответов. Со временем искусственный интеллект становится эффективнее, поскольку формирует связи внутри своей структуры.
Последующие слои, таким образом, разделяют объекты на классы в пространстве признаков более высокой размерности, чем исходное. Например, если размерность вектора признаков исходных данных равна 4, и скрытый слой содержит 6 нейронов, то выходной слой производит разбиение объектов на классы в 6-мерном пространстве.
У моделей искусственного интеллекта сложна архитектура, которая состоит из множества элементов, настраивающихся в автоматическом режиме. Есть разные подходы, как обучить ИИ выполнять определенную задачу. Один из вариантов — предоставить обработанные данные (например, чертежи с прописанными площадями), а затем дать нейросети задачу самому указать площади в «сырых» чертежах.
Определённым компромиссом между параметрическим и метрическими методами является использование для решении задач классификации нейронных сетей. Нейронные сети являются непараметрическими моделями, не требующими предположений о вероятностном распределении данных, но при этом и не используют меры расстояний. Это делает их универсальными классификаторами, позволяя получать результаты даже в случаях, когда параметрические и метрические классификаторы не обеспечиваю приемлемого решения.