Министерство образования Российской Федерации МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ
ЭЛЕКТРОНИКИ И МАТЕМАТИКИ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)
ОТЧЕТ О ЛАБОТАРОРНОЙ РАБОТЕ
Методы и средства анализа данных
по теме:
«Система анализа данных WEKA» Руководитель темы ______________ И. Игнатьев
подпись, дата Исполнитель _________ Д. Алексашенков
подпись, дата Группа С-75
СОДЕРЖАНИЕ СОДЕРЖАНИЕ 2
РЕФЕРАТ 3
ВВЕДЕНИЕ 4
Задание 1: Подготовить исходный файл в формате *.arff. 5
Классификация методом Naïve Bayes. 8
Классификация методом ID3. 12
Классификация методом J4.8 (модификация С4.5). 22
Классификация методом 1R (в системе Weka называется OneRule). 27
Классификация методом SVM (в Weka называется SMO). 28
Задание 3: Построение ассоциативных правил. 31
Метод Априори. 31
РЕФЕРАТ Отчет 17 страниц
WEKA, МЕТОДЫ КЛАССИФИКАЦИИ, DATA MINING, МЕТОД БАЙЕСА, J4.8, ID3, 1R, SVM, АССОЦИАТИВНЫЕ ПРАВИЛА, МЕТОД АПРИОРИ
Объектом изучения являются система анализа данных WEKA.
Цель работы – практическое освоение методов классификации и методов составления ассоциативных правил.
В процессе работы проводились экспериментальные исследования работы алгоритмов.
В результате были изучены методы классификации и составления ассоциативных правил.
ВВЕДЕНИЕ Лабораторная работа посвящена анализу данных в системе анализа данных Weka. Эта система написана на Java и представляет собой систему библиотек функций обработки данных, плюс несколько графических интерфейсов к этим библиотекам. Основной интерфейс системы - Explorer. Он позволяет выполнять практически все действия, которые предусмотрены в системе. Именно в нем мы будем работать. Также в системе Weka предусмотрены другие интерфейсы - Knowledge Flow для работы с большими массивами данных (Explorer загружает все дынные в память сразу, и потому работа с большими массивами затруднена) и Experimenter для экспериментального подбора наилучшего метода анализа данных.
В данной лабораторной работе изучаются методы классификации и поиска ассоциативных правил. Для лучшего понимания различий между данными методами используется система анализа данных Weka, в которой все исследуемые методы применяются к одному и тому же набору исходных данных, а полученные результаты анализируются и сравниваются между собой.
ОСНОВНАЯ ЧАСТЬ
Задание 1: Подготовить исходный файл в формате *.arff.
Поэтому первая задача - перевести таблицу, содержащую данные, в формат csv и модифицировать ее.
Модификация состоит в добавлении полей метаданных: в начало файла на отдельных строчках названия зависимости @relation имя, описания атрибутов @attribute имя тип и @data перед началом самих данных. Типы данных следующие: численные (numeric, real, integer), перечислимые(nominal) (задаются перечислением вида {i1, ..., in}), строковые (string), дата (date [date format]).
Листинг 1
@RELATION laba51 @ATTRIBUTE 'age' NUMERIC
@ATTRIBUTE 'workclass' {Private, Self-emp-not-inc, Self-emp-inc, Federal-gov, Local-gov, State-gov, Without-pay, Never-worked}
@ATTRIBUTE 'fnlwgt' NUMERIC
@ATTRIBUTE 'education' {Bachelors, Some-college, 11th, HS-grad, Prof-school, Assoc-acdm, Assoc-voc, 9th, 7th-8th, 12th, Masters, 1st-4th, 10th, Doctorate, 5th-6th, Preschool}
@ATTRIBUTE 'education-num' NUMERIC
@ATTRIBUTE 'marital-status' {Married-civ-spouse, Divorced, Never-married, Separated, Widowed, Married-spouse-absent, Married-AF-spouse}
@ATTRIBUTE 'occupation' {Tech-support, Craft-repair, Other-service, Sales, Exec-managerial, Prof-specialty, Handlers-cleaners, Machine-op-inspct, Adm-clerical, Farming-fishing, Transport-moving, Priv-house-serv, Protective-serv, Armed-Forces}
@ATTRIBUTE 'relationship' {Wife, Own-child, Husband, Not-in-family, Other-relative, Unmarried}
@ATTRIBUTE 'race' {White, Asian-Pac-Islander, Amer-Indian-Eskimo, Other, Black}
@ATTRIBUTE 'sex' {Female, Male}
@ATTRIBUTE 'capital-gain' NUMERIC
@ATTRIBUTE 'capital-loss' NUMERIC
@ATTRIBUTE 'hours-per-week' NUMERIC
@ATTRIBUTE 'native-country' {United-States, Cambodia, England, Puerto-Rico, Canada, Germany, Outlying-US(Guam-USVI-etc), India, Japan, Greece, South, China, Cuba, Iran, Honduras, Philippines, Italy, Poland, Jamaica, Vietnam, Mexico, Portugal, Ireland, France, Dominican-Republic, Laos, Ecuador, Taiwan, Haiti, Columbia, Hungary, Guatemala, Nicaragua, Scotland, Thailand, Yugoslavia, El-Salvador, Trinadad&Tobago, Peru, Hong, Holand-Netherlands}
@ATTRIBUTE 'income' {>50K,<=50K} @DATA
статистические данные для анализа
В листинге 1 показан измененный исходный файл, сохраненный в формате *.arff. Отношение было названо age. Далее перечислены все атрибуты, их типы и возможные значения.
Например: атрибут age имеет тип numeric – это числовые данные, показывающие возраст. Атрибут workclass имеет тип nominal, в фигурных скобках перечисляются возмодные значения этого атрибута: Private, Self-emp-not-inc, Self-emp-inc, Federal-gov, Local-gov, State-gov, Without-pay, Never-worked.
Пере началом данных поставлено @data. Задание 2: Классификация исходных данных различными методами. Классифицировать исходные данные наивным байесовским методом, методом J4.8 (модификация С4.5), методом ID3, методом 1R, методом SVM (в среде Weka он называется SMO). В случае невозможности применить метод к данным воспользоваться фильтрами. Описать полученные результаты.
Файл *.arff необходимо загрузить в систему. Это делается при помощи кнопки Open File вкладки Preprocess. На данной вкладке можно загрузить файл в систему, а затем редактировать загруженные данные. Редактирование может осуществляться как вручную, так и наложением на данные фильтра для их очищения и/или трансформации. Фильтры необходимы для модификации данных таким образом чтобы стало возможно применение различных методов. Так, например, некоторые методы могут работать только с перечислимым типом данных. Для этого при помощи фильтра RemoveType можно убрать из набора данные неподходящих типов.
Рисунок 1
На рисунке 1 показано главное окно Weka Explorer с открытым набором данных. На графине в нижнем правом углу показано отношение между age и income.
Во складке Classify при помощи кнопки Choose выбирается метод классификации. После выбора метода классификации (классификатора, classifier) необходимо выбрать метод проверки. Основным методом является кросс-проверка (cross-validation), однако можно также проводить проверку результатов анализа на обучающем множестве(training set), на специальном тестовом множестве (supplied test set) и на тестовой части обучающего множества (Percentage Split).
После этого требуется выбрать зависимую переменную классификации.
После этого нажимается кнопка Start. По завершении анализа заполнится окно Output и добавится новая запись в окно Result.
С нашем случае методом проверки является кросс-проверка. Суть ее в том что исходный набор данных в какой-либо пропорции разбивается на обучающее и проверочное множества. Далее по обучающему множеству данные классифицируются, а по проверочному проверяются. Таким образом и вычисляется ошибка.
|