|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Дальневосточный федеральный университет
Содержание Введение.......................................................................................................... 3 1. Поиск текстовой информации в поисковой системе Google...................... 4 1.1 Описание специальных символов и операторов................................... 4 1.2 Примеры самостоятельного использования специальных символов и операторов....................................................................................................................... 5 2. Поиск изображений в Яндекс..................................................................... 7 Заключение...................................................................................................... 9
Введение В настоящее время можно заметить рост популярности технологий искусственного интеллекта или, иначе говоря, нейронных сетей. Много различных областей – медицина, добывающая промышленность, бизнес и другие – успешно внедряют нейронные сети, чтобы оптимизировать и усовершенствовать процесс своей работы. Нейронные сети вошли в практику везде, где нужно решать задачи прогнозирования, классификации или управления. Такое большой интерес к нейронным сетям обусловлен мощностью и большими перспективами их применения. Ведь нейронные сети являются крайне мощным методом моделирования, который позволяет воспроизводить чрезвычайно сложные зависимости. Важная особенность нейронных сетей заключается в их способности к обучению. Мы, как люди, обучаемся через наблюдения и повторения, пока некоторые задачи не будут хорошо выполнены. С физиологической точки зрения, процесс обучения в человеческом мозгу – это реконфигурации нейронных соединений между узлами, которые результируются в новую думательную структуру. Пока соединительная натура нейросетей распространяет процесс обучения по всей структуре, эта особенность делает эту структуру гибкой достаточно, чтобы изучать широкий спектр знаний. В отличие от современных компьютеров, которые могут выполнять только те задачи, на которые они запрограммированы, нейронные системы могут улучшить и выполнять новые действия согласно некоторым удовлетворительным критериям. Другими словами, нейросети не нуждаются в программировании; они обучаются программировать себя. На данный момент существует 2 типа обучения нейронных сетей: с учителем и без учителя. Обучение в человеческом понимании, например, также работает в этом направлении. Мы можем обучаться из наблюдений без иных паттернов (без учителя), или мы можем иметь учителя, который показывает верный паттерн для слежения (с учителем). Различие между этими методами полагается в основном на актуальности паттерна и меняется от проблемы к проблеме. Целью данной работы будет изучение метода обучения нейронных сетей с учителем, поскольку они представляют высокий интерес и имеют широкий спектр применения в различных сферах человеческой жизни, например распознавание лиц посредством камер и классификация изображений поисковыми системами по распознанным образам, чат-боты для обработки обращений клиентов, виртуальные ассистенты и т. д. 1. Общие сведения о методе обучения с учителем Обучение с учителем (supervised learning) предполагает наличие полного набора размеченных данных для тренировки модели на всех этапах ее построения. Наличие полностью размеченного набора данных означает, что каждому примеру в обучающем наборе соответствует ответ, который алгоритм и должен получить. Таким образом, размеченный набор данных из фотографий цветов обучит нейронную сеть, где изображены розы, ромашки или нарциссы. Когда сеть получит новое фото, она сравнит его с примерами из обучающего набора данных, чтобы предсказать ответ. Рисунок 1 – Пример обучения с учителем: классификация (слева), и дальнейшее ее использование для сегментации и распознавания объектов В основном обучение с учителем применяется для решения двух типов задач: классификации и регрессии. В задачах классификации алгоритм предсказывает дискретные значения, соответствующие номерам классов, к которым принадлежат объекты. В обучающем наборе данных с фотографиями животных каждое изображение будет иметь соответствующую метку — «кошка», «коала» или «черепаха». Качество алгоритма оценивается тем, насколько точно он может правильно классифицировать новые фото с коалами и черепахами. А вот задачи регрессии связаны с непрерывными данными. Один из примеров, линейная регрессия, вычисляет ожидаемое значение переменной y, учитывая конкретные значения x. Более утилитарные задачи машинного обучения задействуют большое число переменных. Например, нейронная сеть, предсказывающая цену квартиры в Сан-Франциско на основе ее площади, местоположения и доступности общественного транспорта. Алгоритм выполняет работу эксперта, который рассчитывает цену квартиры исходя из тех же данных. Таким образом, обучение с учителем больше всего подходит для задач, когда имеется внушительный набор достоверных данных для обучения алгоритма.
2. Описание особенностей обучения с учителем 2.1. Сбор данных для обучения Первым делом для обучения нейронной сети с учителем необходимо собрать данные для обучения. Обучающий набор данных представляет собой набор наблюдений, для которых указаны значения входных и выходных переменных. Первый вопрос, который нужно решить, – какие переменные использовать и сколько наблюдений собрать. В реальной жизни обучающие выборки состоят из данных измерений в сочетании с «решениями», которые помогут нейронной сети обобщить всю эту информацию в соответствующую связь вход-выход. Например, предположим, что вы хотите, чтобы ваша нейронная сеть предсказывала вкусовые качества помидора на основе цвета, формы и плотности. Вы не представляете, как именно цвет, форма и плотность связаны с вкусностью, но вы можете измерить цвет, форму и плотность, и у вас есть вкусовые рецепторы. Таким образом, всё, что вам нужно сделать, это собрать тысячи и тысячи помидоров, записать их физические характеристики, попробовать каждый (лучшая часть), а затем поместить всю эту информацию в таблицу. Каждая строка – это то, что называют одной обучающей выборкой, и в ней четыре столбца: три из них (цвет, форма и плотность) являются столбцами входных данных, а четвертый – целевым выходным значением. Рисунок 2 – Пример структуры набора данных и его связь с параметрами нейросети 2.2. Предобработка набора данных и постобработка полученных результатов Любая нейронная сеть принимает на входе только числовые значения и выдает на выходе также числовые значения. Но на практике крайне часто приходится работать не с числовыми данными, такими как изображения, звуки, текстовая информация, поэтому в таких случая создают передаточную функцию (pipeline) – последовательные стадии работы с данными, включающие как извлечение данных, скраббинг (очистку), разведочный анализ данных (EDA), моделирование, интерпретацию и пересмотр. Цель использования передаточных функций заключается в том, чтобы на вход нейронной сети можно было передать данные любого вида, а уже функция обработает их таким образом, что получатся числовые значения, с которыми в дальнейшем будет работать нейронная сеть. Хоть входные значения могут быть любыми, возникает эффект насыщения, когда элемент оказывается чувствительным лишь к входным значениям, лежащим в некоторой ограниченной области. Рисунок 3 – Логистическая функция (сигмоида) В этом случае выходное значение всегда будет лежать в интервале (0,1), а область чувствительности для входов чуть шире интервала (-1,+1). Данная функция является гладкой, а ее производная легко вычисляется – это обстоятельство весьма существенно для работы алгоритма обучения сети (в этом также кроется причина того, что ступенчатая функция для этой цели практически не используется). Но помимо предобработки данных, подаваемых на вход, после работы нейронной сети мы получаем набор числовых значений, которые также затем следует интерпретировать в формат, подобный входным данным, будь то изображение, звук или текстовая информация. Для этого также создают специальные функции и называют данный процесс постобработкой. 2.3. Описание процесса обучения нейронной сети с учителем Как было сказано ранее, процесс обучения с учителем представляет собой предъявление сети выборки, обучающих примеров. Каждый образец подается на входы сети, затем проходит обработку внутри структуры нейронной сети, вычисляется выходной сигнал сети, который сравнивается с соответствующим значением целевого вектора, представляющего собой требуемый выход сети. Затем по определенному правилу вычисляется ошибка, и происходит изменение весовых коэффициентов связей внутри сети в зависимости от выбранного алгоритма. Векторы обучающего множества предъявляются последовательно, вычисляются ошибки и веса подстраиваются для каждого вектора до тех пор, пока ошибка по всему обучающему массиву не достигнет приемлемо низкого уровня. Рисунок 4 – Процесс обучения нейронной сети Рассмотрим более подробно процесс подбора весов для векторов во время обучения. Прежде всего определим функцию ошибки E. Обычно это средняя квадратичная ошибка (mean squared error — MSE).
Заключение Рассмотрев возможности поиска текстовой информации с помощью поисковой системы Google становится ясно, что использование специальных символов и операторов может значительно увеличить эффективность поиска нужной информации и сделать результат поиска довольно точным. Поэтому в случаях, когда стандартные запросы не дают желаемого результата имеет смысл пользоваться специальными возможностями формирования запроса. А после использования Яндекса для поиска изображений видно, что при правильном использовании всех возможностей данной поисковой системы, нахождение необходимого изображения не является трудоемкой задачей. Поскольку мы с легкостью можем найти похожие фотографии или полностью идентичные, но с большим разрешением, а также составить текстовый запрос для поиска нужного изображения и откорректировать желаемый результат поиска с помощью фильтров. Подводя итог вышесказанному, можно отметить, что на данный момент поисковые системы являются крайне продвинутыми и позволяют пользователю находить нужную информацию легко при условии, что он умеет правильно использовать все возможности поисковой системы.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|