Data Mining 工具介紹 (Weka+JDBC) Supplement 2 Data Mining 工具介紹 (Weka+JDBC) 楊立偉教授 台灣大學工管系 2017 1
Data Mining 工具 The R Project for Statistical Computing http://www.r-project.org/ Weka : Data Mining Software in Java http://www.cs.waikato.ac.nz/ml/weka/ scikit-learn: machine learning in Python http://scikit-learn.org/stable/ SAS Enterprise Miner (EM) Business Analytics and Business Intelligence Software IBM SPSS Predictive analytics software and solutions and others
使用WEKA及JDBC連接至MySQL 3
Installing Java 至Oracle下載JDK (Java Development Kit) 並安裝 http://www.oracle.com/technetwork/java/javase/downloads/index.html
Installing WEKA 下載跨平台版本 (weka-3-9-2.zip) 並解壓縮至特定目錄,例如/weka https://www.cs.waikato.ac.nz/ml/weka/downloading.html V
Installing MySQL JDBC Driver 下載MySQL JDBC Driver (mysql-connector-java-5.1.45.zip) 並解壓縮至同一目錄,例如/weka https://dev.mysql.com/downloads/connector/j/5.1.html V
Testing WEKA (1) 下載老師的設定檔DatabaseUtils.props至/weka 目錄結構如下圖
Testing WEKA (2) 以Windows為例,搜尋cmd後執行,開啟命令提示字元 (Mac請開啟工具程式下的終端機) 執行java,若有出現版本訊息,代表java環境已備妥 執行 cd /weka/weka-3-9-2/weka-3-9-2 執行 java -cp weka.jar;../../mysql-connector-java-5.1.45/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar -Xmx500m weka.gui.GUIChooser
Testing WEKA (3) 選KnowledgeFlow,在DataSources選DatabaseLoader,在右邊工作畫布上放置一個,選取後按右鍵選Configure…
Testing WEKA (4) Database URL輸入 輸入帳號密碼,輸入載資料的SQL指令, 選擇DB config file jdbc:mysql://sqldb.demo.tornado.com.tw:3306/sample 輸入帳號密碼,輸入載資料的SQL指令, 例如 SELECT outlook, temperature, humidity, windy, play FROM tennis 選擇DB config file C:\weka\DatabaseUtils.props
Testing WEKA (5) 在Visualization選TextViewer,在右邊工作畫布上放置一個,選取DatabaseLoader後按右鍵選dataSet,產生一條線連至TextViewer
Testing WEKA (6) 在左上角按下執行按鈕,下方訊息若出現Finished表示完成 (若有錯誤訊息請檢查設定) 選取TextViewer後按右鍵選Show results,若出現查詢結果表示成功
使用WEKA進行Data Mining 13
Using Weka (1) - Tree 放置Evaluation→ClassAssigner,以及TrainingSetMaker 放置Classifiers→trees→J48 (即C4.5演算法之實作) 放置Visualization→TextViewer
Using Weka (2) - Tree 在DatabaseLoader按右鍵選dataSet到ClassAssigner 在ClassAssigner按右鍵選dataSet到TrainingSetMaker 在TrainingSetMaker按右鍵選trainingSet到J48 在J48按右鍵選text到TextViewer
Using Weka (3) - Tree 在ClassAssigner按右鍵選configure確認目標欄位是play 在左上角按下執行 在TextViewer按右鍵選Show results看結果
Using Weka (4) Clustering 使用Simple Kmeans演算法,用TextViewer看結果 以k=3為例
Using Weka (5) Association 使用Apriori演算法,用TextViewer看結果 只能處理nominal value
Using Weka (6) Association 使用Apriori演算法結果如下 * 決策樹的每條path可能就是一條rule;可能會找到更多的rules