Как определить размер нейросети

0
20

Эпоха, батч, итерация — в чем различия

Вход

При этом отношение объекта к классу определяется установкой в 1 соответствующего элемента выходного вектора ( i -го элемента для j -го класса), в то время, как остальные элементы устанавливаются в 0. Тогда, например, второму классу будет соответствовать единица на 2-м выходе сети и 0 на остальных (рис. 2).

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

Очевидно, что при таком способе кодирования, чем сильнее максимальное значение отличается от остальных, тем выше уверенность в том, что сеть отнесла объект именно к данному классу. Формально эту уверенность можно ввести в виде показателя, равного разности между максимальным значением на входе сети (которое, собственно, и определяет принадлежность к классу) и ближайшим к нему значением на другом выходе.

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

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

Примечание: при работе следует учитывать, что фактически оба ограничения могут быть незначительно превышены при использовании подвыборки для автоподбора, так как последним этапом, который не учитывается ограничениями, будет осуществлено обучение лучшей Нейросети на полном наборе.

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

Для контроля обобщающей способности сети, на основе которой строится классификатор, полезно использовать тестовое множество, формируемое из случайно отбираемых примеров обучающего набора данных. Примеры тестового множества не участвуют в процессе обучения сети (т.е. не влияют на подстройку её весов), а просто подаются на её вход вместе с обучающими примерами.

Общие параметры

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

У градиентного спуска есть параметр, называемый скоростью обучения. На левой верхней картинке видно, что в самом начале шаги больше, то есть скорость обучения выше, а по мере приближения точек к краю кривой скорость обучения становится меньше благодаря уменьшению размера шагов. Кроме того, значение функции потерь (Cost function) уменьшается, или просто говорят, что потери уменьшаются. Часто люди называют функцию потерь Loss-функцией или просто «Лосс». Важно, что если Cost/Loss функция уменьшается, то это хорошо.

Технически обучение заключается в нахождении весов — коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными и выходными параметрами, а также выполнять обобщение. Это значит, что в случае успешного обучения сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумленных», частично искажённых данных. Для обучения используется квазиньютоновский метод Бройдена-Флетчера-Гольдфарба-Шанно с ограниченным использованием памяти L-BFGS.

Исследователи работают с гиганскими объемами данных, которые требуют соответствующих затрат ресурсов и времени. Чтобы эффективно работать с большими объемами данных, требуется использовать параметры (epoch, batch size, итерации), так как зачастую нет возможности загрузить сразу все данные в обработку.

ЧИТАТЬ ТАКЖЕ:  Искусственный интеллект в каких сферах используется

Random seed — начальное число (целое, положительное), которое используется для инициализации генератора псевдослучайных чисел. Последовательность чисел генератора полностью определяется начальным числом. Если генератор повторно инициализируется с тем же начальным числом, он выдаст ту же последовательность чисел.

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

Первым шагом в этом направлении является отбор признаков, значимых с точки зрения различия классов. Действительно, объекты предметной области могут описываться большим числом признаков. Но не все они позволяют надёжно различать объекты различных классов. Например, если объекты разных классов имеют примерно одинаковый размер, то использование «габаритных» признаков не имеет смысла. Не желательно также использовать признаки, значения которых являются случайными и не отражают закономерностей распределения объектов по классам.

Очевидным способом улучшения обобщающей способности сети является увеличение числа обучающих примеров или сокращение числа связей. Первое не всегда возможно из-за ограниченного объема набора данных и возрастания вычислительных затрат. Сокращение же числа связей приводит к ухудшению точности сети. Поэтому выбор размера модели часто оказывается достаточно сложной задачей, требующей многократных экспериментов.

Epochs

На этот вопрос нет единственного точного ответа. Для различных датасетов оптимальное количество эпох будет отличаться. Но ясно, что количество эпох связано с разнообразием в данных. Например, в вашем датасете присутствуют только черные котики? Или это более разнообразный датасет?

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

Принципиальным отличием задачи классификации от задачи численного предсказания является то, что выходная переменная дискретная (метка класса или её числовой код). Поскольку НС являются моделями, использующими обучение с учителем, переменная класса должна быть задана для каждого обучающего примера.

Например, в другом способе представления, номер класса кодируется в двоичной форме в выходном векторе сети. Тогда если число классов равно 5, то для их представления будет достаточно трёх выходных нейронов, а код, соответствующий, скажем, 3-му классу будет 011. Недостатком подхода является отсутствие возможности использования показателя уверенности, поскольку разность между любыми элементами выходного вектора всегда равна 0 или 1. Следовательно изменение любого элемента выходного вектора неминуемо приведёт к ошибке. Поэтому для увеличения «расстояния» между классами удобно использовать код Хэммминга, который позволит точность классификации.

Если сеть показывает высокую точность как на обучающем, так и на тестовом множестве (примеры которого, по сути, играют роль новых данных), то можно говорить о том, что сеть приобрела обобщающую способность. Если сеть выдаёт хорошие результаты только на обучающих данных и плохие на тестовых, то обобщающая способность ею не приобретена.

Классификаторы, основанные на машинном обучении не требуют оценки параметров распределения исходных данных, а мера сходства в них формализуется с помощью функции расстояния (обычно, евклидова). Такие классификаторы называются метрическими. Как правило, они проще в реализации и использовании, чем параметрические, а их результаты удобнее для интерпретации и понимания. Но при этом метрические классификаторы являются эвристическими моделями — обеспечивают решение только в ограниченном числе практически значимых случаев, могут дать неточное или не единственное решение. Поэтому использовать их результаты нужно с известной долей осторожности.

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь