МИНИСТЕРСТВО НАУКИ И ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ
ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
КАФЕДРА МОЭВМ
ОТЧЕТ
ПО ЛАБОРАТОРНОЙ РАБОТЕ №1
по дисциплине
«Базы знаний и экспертные системы»
ПРЕПОДАВАТЕЛЬ: ЖУКОВА Н. А.
ВЫПОЛНИЛ СТ. ГР. 3341 ФКТИ: МИТЯГИН С.А.
САНКТ-ПЕТЕРБУРГ
2006
Цель работы:
Ознакомиться с основами применения алгоритмов Data mining с использованием прикладной программы WEKA.
Рассматриваем базу Погода.
В базе используются номинальные атрибуты: OUTLOOK {SUNNY, OVERCAST, RAINY},
WINDY {true, false}, PLAY {yes, no}.
И атрибуты, принимающие числовые значения: TEMPERATURE, HUMIDITY.
Эти атрибуты принимали следующие значения:
OUTLOOK:
TEMPERATURE:
HUMIDITY:
WINDY:
PLAY:
Применим к имеющимся данным алгоритмы обработки:
-
Алгоритмы ассоциации:
Так как такие алгоритмы не работают с числовыми атрибутами, то удалим из списка атрибуты TEMPERATURE и HUMIDITY, и попробуем построить результат с помощью оставшихся атрибутов.
APRIORI:
Scheme: weka.associations.Apriori -N 10 -T 0 -C 0.9 -D 0.05 -U 1.0 -M 0.1 -S -1.0
Relation: weather-weka.filters.unsupervised.attribute.Remove-R2-3
Instances: 14
Attributes: 3
outlook
windy
play
=== Associator model (full training set) ===
Apriori
=======
Minimum support: 0.1
Minimum metric <confidence>: 0.9
Number of cycles performed: 18
Generated sets of large itemsets:
Size of set of large itemsets L(1): 7
Size of set of large itemsets L(2): 15
Size of set of large itemsets L(3): 8
Best rules found:
1. outlook=overcast 4 ==> play=yes 4 conf:(1)
2. outlook=rainy windy=FALSE 3 ==> play=yes 3 conf:(1)
3. outlook=rainy play=yes 3 ==> windy=FALSE 3 conf:(1)
4. outlook=rainy windy=TRUE 2 ==> play=no 2 conf:(1)
5. outlook=rainy play=no 2 ==> windy=TRUE 2 conf:(1)
6. outlook=overcast windy=FALSE 2 ==> play=yes 2 conf:(1)
7. outlook=overcast windy=TRUE 2 ==> play=yes 2 conf:(1)
8. windy=FALSE play=no 2 ==> outlook=sunny 2 conf:(1)
PredictiveApriori:
Scheme: weka.associations.PredictiveApriori -N 100
Relation: weather-weka.filters.unsupervised.attribute.Remove-R2-3
Instances: 14
Attributes: 3
outlook
windy
play
=== Associator model (full training set) ===
PredictiveApriori
===================
Best rules found:
1. outlook=overcast 4 ==> play=yes 4 acc:(0.89255)
2. outlook=rainy windy=FALSE 3 ==> play=yes 3 acc:(0.83487)
3. outlook=rainy play=yes 3 ==> windy=FALSE 3 acc:(0.83487)
4. outlook=rainy windy=TRUE 2 ==> play=no 2 acc:(0.75023)
5. outlook=rainy play=no 2 ==> windy=TRUE 2 acc:(0.75023)
6. windy=FALSE play=no 2 ==> outlook=sunny 2 acc:(0.75023)
7. windy=FALSE 8 ==> play=yes 6 acc:(0.58605)
8. play=yes 9 ==> windy=FALSE 6 acc:(0.55876)
9. outlook=sunny 5 ==> windy=FALSE 3 acc:(0.49768)
10. outlook=sunny 5 ==> play=no 3 acc:(0.49768)
11. outlook=sunny 5 ==> windy=TRUE 2 acc:(0.41025)
12. outlook=sunny 5 ==> play=yes 2 acc:(0.41025)
13. outlook=sunny 5 ==> windy=FALSE play=no 2 acc:(0.41025)
Как видно, алгоритмы дали несколько разные результаты.
-
Алгоритмы классификации:
NAIVEBAYES дал следующие результаты:
Scheme: weka.classifiers.bayes.NaiveBayes
Relation: weather
Instances: 14
Attributes: 5
outlook
temperature
humidity
windy
play
Test mode: 10-fold cross-validation
=== Classifier model (full training set) ===
Naive Bayes Classifier
Class yes: Prior probability = 0.63
outlook: Discrete Estimator. Counts = 3 5 4 (Total = 12)
temperature: Normal Distribution. Mean = 72.9697 StandardDev = 5.2304 WeightSum = 9 Precision = 1.9090909090909092
humidity: Normal Distribution. Mean = 78.8395 StandardDev = 9.8023 WeightSum = 9 Precision = 3.4444444444444446
windy: Discrete Estimator. Counts = 4 7 (Total = 11)
Class no: Prior probability = 0.38
outlook: Discrete Estimator. Counts = 4 1 3 (Total = 8)
temperature: Normal Distribution. Mean = 74.8364 StandardDev = 7.384 WeightSum = 5 Precision = 1.9090909090909092
humidity: Normal Distribution. Mean = 86.1111 StandardDev = 9.2424 WeightSum = 5 Precision = 3.4444444444444446
windy: Discrete Estimator. Counts = 4 3 (Total = 7)
Time taken to build model: 0.03 seconds
=== Stratified cross-validation ===
=== Summary ===
Correctly Classified Instances 9 64.2857 %
Incorrectly Classified Instances 5 35.7143 %
Kappa statistic 0.1026
Mean absolute error 0.4649
Root mean squared error 0.543
Relative absolute error 97.6254 %
Root relative squared error 110.051 %
Total Number of Instances 14
=== Detailed Accuracy By Class ===
TP Rate FP Rate Precision Recall F-Measure Class
0.889 0.8 0.667 0.889 0.762 yes
0.2 0.111 0.5 0.2 0.286 no
=== Confusion Matrix ===
a b <-- classified as
8 1 | a = yes
4 1 | b = no
Итак, алгоритм дал результат 65% «за» и 35 «против».
LOGISTIC
Ставим значение Folds=3
Scheme: weka.classifiers.functions.Logistic -R 1.0E-8 -M -1
Relation: weather