weka數據挖掘工具3.8中文版是一款非常好用的數據庫類軟件,集合了大量數據挖掘任務的機器學習算法,用戶可以通過軟件來進行一係列的數據管理或者是處理。軟件的功能很好用,是進行數據分析或者是挖掘必備的一款軟件,歡迎需要的用戶前來下載。
原理與實現
聚類分析中的“類”(cluster)和前麵分類的“類”(class)是不同的,對cluster更加準確的翻譯應該是“簇”。聚類的任務是把 所有的實例分配到若幹的簇,使得同一個簇的實例聚集在一個簇中心的周圍,它們之間距離的比較近;而不同簇實例之間的距離比較遠。對於由數值型屬性刻畫的實 例來說,這個距離通常指歐氏距離。
模型應用
現在我們要用生成的模型對那些待預測的數據集進行預測了。注意待預測數據集和訓練用數據集各個屬性的設置必須是一致的。即使你沒有待預測數據集的Class屬性的值,你也要添加這個屬性,可以將該屬性在各實例上的值均設成缺失值。
在“Test Opion”中選擇“Supplied test set”,並且“Set”成你要應用模型的數據集,這裏是“bank-new.arff”文件。
現在,右鍵點擊“Result list”中剛產生的那一項,選擇“Re-evaluate model on current test set”。右邊顯示結果的區域中會增加一些內容,告訴你該模型應用在這個數據集上表現將如何。如果你的Class屬性都是些缺失值,那這些內容是無意義 的,我們關注的是模型在新數據集上的預測值。
現在點擊右鍵菜單中的“Visualize classifier errors”,將彈出一個新窗口顯示一些有關預測誤差的散點圖。點擊這個新窗口中的“Save”按鈕,保存一個Arff文件。打開這個文件可以看到在倒 數第二個位置多了一個屬性(predictedpep),這個屬性上的值就是模型對每個實例的預測值。
建模結果
OK,選上“Cross-validation”並在“Folds”框填上“10”。點“Start”按鈕開始讓算法生成決策樹模型。很快,用文 本表示的一棵決策樹,以及對這個決策樹的誤差分析等等結果出現在右邊的“Classifier output”中。同時左下的“Results list”出現了一個項目顯示剛才的時間和算法名稱。如果換一個模型或者換個參數,重新“Start”一次,則“Results list”又會多出一項。
WEKA文件相關術語
表格裏的一個橫行稱作一個實例(Instance),相當於統計學中的一個樣本,或者數據庫中的一條記錄。豎行稱作一個屬性(Attribute),相當於統計學中的一個變量,或者數據庫中的一個字段。這樣一個表格,或者叫數據集,在WEKA看來,呈現了屬性之間的一種關係(Relation)。上圖中一共有14個實例,5個屬性,關係名稱為“weather”。
WEKA存儲數據的格式是ARFF(Attribute-Relation File Format)文件,這是一種ASCII文本文件。上圖所示的二維表格存儲在如下的ARFF文件中。這也就是WEKA自帶的“weather.arff”文件,在WEKA安裝目錄的“data”子目錄下可以找到。
文件內容說明
識別ARFF文件的重要依據是分行,因此不能在這種文件裏隨意的斷行。空行(或全是空格的行)將被忽略。以“%”開始的行是注釋,WEKA將忽略這些行。如果你看到的“weather.arff”文件多了或少了些“%”開始的行,是沒有影響的。
除去注釋後,整個ARFF文件可以分為兩個部分。
第一部分給出了頭信息(Head information),包括了對關係的聲明和對屬性的聲明。
第二部分給出了數據信息(Data information),即數據集中給出的數據。從“@data”標記開始,後麵的就是數據信息了。
關係聲明
關係名稱在ARFF文件的第一個有效行來定義,格式為@relation
是一個字符串。如果這個字符串包含空格,它必須加上引號(指英文標點的單引號或雙引號)。
屬性聲明
屬性聲明用一列以“@attribute”開頭的語句表示。數據集中的每一個屬性都有它對應的“@attribute”語句,來定義它的屬性名稱和數據類型。
這些聲明語句的順序很重要。首先它表明了該項屬性在數據部分的位置。例如,“humidity”是第三個被聲明的屬性,這說明數據部分那些被逗號分開的列中,第三列數據85 90 86 96 ... 是相應的“humidity”值。其次,最後一個聲明的屬性被稱作class屬性,在分類或回歸任務中,它是默認的目標變量。屬性聲明的格式為
@attribute
其中是必須以字母開頭的字符串。和關係名稱一樣,如果這個字符串包含空格,它必須加上引號。
數值屬性
數值型屬性可以是整數或者實數,但WEKA把它們都當作實數看待。
標稱屬性
標稱屬性由列出一係列可能的類別名稱並放在花括號中:{, ,
, ...} 。數據集中該屬性的值隻能是其中一種類別。
例如如下的屬性聲明說明“outlook”屬性有三種類別:“sunny”,“overcast”和“rainy”。而數據集中每個實例對應的“outlook”值必是這三者之一。
@attribute outlook {sunny, overcast, rainy}
如果類別名稱帶有空格,仍需要將之放入引號中。
140.5M / 09-05
76.4M / 03-25
55M / 06-05
237.9M / 04-13
900.9M / 03-02
96.2M / 07-06
311.2M / 07-06
335M / 07-06
200M / 07-06
413.8M / 07-06
484.7M / 09-27
165.4M / 09-05
353.9M / 06-05
131.8M / 04-13
195.6M / 03-03
45.6M / 09-08
665.2M / 07-06
2.84G / 07-06
93M / 07-06
338.3M / 07-06
1.38G / 07-26
488.3M / 07-16
109.8M / 06-03
142M / 01-08
1.2M / 11-23
548.8M / 04-13
1.6M / 04-13
1.48G / 03-18
646.6M / 03-03
133.7M / 03-03
110.5M / 09-05
33.4M / 09-05
325.8M / 08-12
60M / 04-29
254M / 04-25
659M / 04-23
1M / 12-26
253.4M / 12-08
253M / 12-08
1.19G / 11-16
369M / 09-22
181.5M / 09-22
201.2M / 09-05
488.3M / 07-16
248.9M / 12-08
248.9M / 12-08
100.6M / 03-06
148.9M / 03-06
1.12G / 07-06
1.25G / 07-06
126.7M / 02-04
1.76G / 09-22
1.92G / 04-17
201.5M / 04-13
7.31G / 07-01
94.3M / 07-06
2.48G / 07-06
7.63G / 07-06
1M / 07-06
778.1M / 07-06
561.8M / 07-11
72M / 07-06
548.7M / 07-06
1.00G / 07-06
9.13G / 07-06
126.2M / 07-06
72M / 07-06
105.1M / 07-06
132M / 07-06
132M / 07-06