ДонНТУ   Портал магистров

Реферат по теме выпускной работы

Содержание

Введение

Предварительная обработка данных является важнейшим этапом, от качества выполнения которого, зависит возможность получения качественных результатов всего процесса анализа данных. Если возникает необходимость использовать нейросетевые методы для решения конкретных задач, то первое с чем приходится сталкиваться – это подготовка данных. Как правило, при описании различных нейроархитектур, по умолчанию предполагают что данные для обучения уже имеются и представлены в виде, доступном для нейросети. На практике же именно этап предобработки может стать наиболее трудоемким элементом нейросетевого анализа[5]. По некоторым оценкам этап предварительной обработки данных может занять до 80%[2] всего времени, отведенного на проект. Успех обучения нейросети также может решающим образом зависеть от того, в каком виде представлена информация для ее обучения. Собственно, предварительная обработка данных позволяет как повысить качество интеллектуального анализа данных, так и повысить качество самих данных.

1. Актуальность темы

Один из прогнозов необходимости, а соответственно и актуальности, увеличения качества данных, сделанный Даффи Брансоном [4] (Duffie Brunson) звучит следующим образом:
«Прогноз. Многие компании стали обращать больше внимания на качество данных, поскольку низкое качество данных стоит денег в том смысле, что ведет к снижению производительности, принятию неправильных бизнес-решений и невозможности получить желаемый результат, а также затрудняет выполнение требований законодательства. Поэтому компании действительно намерены предпринимать конкретные действия для решения проблем качества данных.
Реальность. Данная тенденция сохраняется, особенно в индустрии финансовых услуг. В первую очередь это относится к фирмам, старающимся выполнять соглашение Basel II. Некачественные данные не могут использоваться в системах оценки рисков, которые применяются для установки цен на кредиты и вычисления потребностей организации в капитале. Интересно отметить, что существенно изменились взгляды на способы решения проблемы качества данных. Вначале менеджеры обращали основное внимание на инструменты оценки качества, считая, что «собственник» данных должен решать проблему на уровне источника, например, очищая данные и переобучая сотрудников. Но сейчас их взгляды существенно изменились. Понятие качества данных гораздо шире, чем просто их аккуратное введение в систему на первом этапе. Сегодня уже многие понимают, что качество данных должно обеспечиваться процессами извлечения, преобразования и загрузки (extraction, transformation, loading - ETL), а также получения данных из источников, которые подготавливают данные для анализа».

2. Цель и задачи исследования

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

Основные задачи:

  1. Исследовать методы обработки данных.
  2. Выбрать комбинацию методов для реализации алгоритма подготовки данных.
  3. Изучить литературу по предварительной подготовке данных.
  4. Реализовать изученные методы подготовки данных в программном проекте.

3. Обзор исследований и разработки

3.1 Максимизация энтропии

Информативность каждого поля/параметра данных, в условиях решаемой задачи, должна быть максимальной[8]. Следовательно, можно утверждать о необходимости максимизации энтропии, для увеличения вероятности правильного прогнозирования и классификации.

Энтропия

где xi – состояние некоторого поля/параметра данных, Pi – вероятность этого состояния, n – количество таких состояний.

Такая предобработка данных предназначена для кодирования входов-выходов в нейронных сетях, так как они воспринимают только числовую информацию[1].

3.2 Нормировка данных

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

Нормировка

где xi – выбранное состояние поля/параметра данных, xi max – максимальное состояние поля/параметра данных, xi min – минимальное состояние поля/параметра данных.

3.3 Понижение размерности входов

Существует два типа алгоритмов:

  1. отбор наиболее информативных признаков и использование их в процессе обучения нейронной сети (в этом случае наиболее правильным будет использование генетического алгоритма отбирающего наиболее информативные признаки, однако возможен вариант с оценкой, по векторов признаков, стохастического расстояния между распределениями вероятностей);
  2. кодирование исходных данных меньшим числом переменных, но при этом содержащих по возможности всю информацию, заложенную в исходных данных (анализ главных компонент[7] с использованием нейронной сети). Был выбран метод анализа главных компонент, с использованием нейронной сети, в общем виде выглядящей так:

Понижение размерности

где yi – выход с i–того нейрона внутреннего слоя, wij – веса сети между входным и выходным слоями, xj – компонента входного вектора.

3.4 Алгоритм построения классификатора на основе нейронных сетей[3]

  1. Работа с данными
    1. Составить базу данных из примеров, характерных для данной задачи.
    2. Разбить всю совокупность данных на два множества: обучающее и тестовое (возможно разбиение на 3 множества: обучающее, тестовое и подтверждающее).
  2. Предварительная обработка
    1. Выбрать систему признаков, характерных для данной задачи, и преобразовать данные соответствующим образом для подачи на вход сети (нормировка, стандартизация и т.д.). В результате желательно получить линейно отделяемое пространство множества образцов.
    2. Выбрать систему кодирования выходных значений (классическое кодирование, 2 на 2 кодирование и т.д.).
  3. Конструирование, обучение и оценка качества сети.
    1. Выбрать топологию сети: количество слоев, число нейронов в слоях и т.д.
    2. Выбрать функцию активации нейронов (например «сигмоида»).
    3. Выбрать алгоритм обучения сети.
    4. Оценить качество работы сети на основе подтверждающего множества или другому критерию, оптимизировать архитектуру (уменьшение весов, прореживание пространства признаков).
    5. Остановится на варианте сети, который обеспечивает наилучшую способность к обобщению и оценить качество работы по тестовому множеству.
  4. Использование и диагностика
    1. Выяснить степень влияния различных факторов на принимаемое решение (эвристический подход).
    2. Убедится, что сеть дает требуемую точность классификации (число неправильно распознанных примеров мало).
    3. При необходимости вернутся на этап 2, изменив способ представления образцов или изменив базу данных.
    4. Практически использовать сеть для решения задачи.
Модель прогнозирования/классификации в общем виде

Рисунок 1 – Модель прогнозирования/классификации в общем виде[6]
(анимация: 7 кадров, 5 циклов повторения, 137 килобайт)

4. Выводы

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

Список источников

  1. Ежов А.А., Шумский С.А. Нейрокомпьютинг и его применение в экономике и бизнесе – М. 1998г., c. 126-145
  2. Курс лекций по Data Mining, Чубукова И. А., Соискатель ученой степени кандидата экономических наук в Киевском национальном экономическом университете имени Вадима Гетьмана, кафедра информационных систем в экономике, ведущий инженер-программист в Национальном банке Украины, c. 206-214
  3. Применение нейронных сетей для задач классификации / Интернет ресурс – Режим доступа: http://www.basegroup.ru
  4. Десять основных тенденций 2005 года в области Business Intelligence и Хранилищ данных Интернет ресурс – Режим доступа: http://citforum.ru
  5. Великие раскопки и великие вызовы / Интернет ресурс – Режим доступа: http://www.kdnuggets.com
  6. Барсегян А.А., Куприянов М.С., Степаненко В.В., Холод И.И. - Технологии анализа данных. Data Mining, Visual Mining, Text Mining, OLAP (2-е издание) с. 90-94
  7. Прикладная статистика: Классификация и снижение размерности: Справ. Изд. / С. А. Айвазян, В. М. Бухштабер, И. С. Енюков, Л. Д. Мешалкин; Под ред. С. А. Айвазяна. – М.: Финансы и статистика, 1989. – 607с.: ил. с. 339
  8. Технология Data Mining: Интеллектуальный Анализ Данных, Степанов Р. Г. – Казань, 2008. – c. 14