發表於2024-10-31
係統講解數據挖掘機器學習工具Weka
經典的開源挖掘工具、開放的Java環境
初學者的入門優選書、研究者的鑽研利器
《數據挖掘與機器學習:WEKA應用技術與實踐》藉助代錶當今數據挖掘和機器學習高水平的著名開源軟件Weka,通過大量的實踐操作,使讀者瞭解並掌握數據挖掘和機器學習的相關技能,拉近理論與實踐的距離。全書共分8章,主要內容包括Weka介紹、Explorer界麵、KnowledgeFlow界麵、Experimenter界麵、命令行界麵、Weka高級應用、WekaAPI和學習方案源代碼分析。
作為國內首本係統講解Weka的書籍,《數據挖掘與機器學習:WEKA應用技術與實踐》內容全麵、實例豐富、可操作性強,做到理論與實踐的統一。本書適閤數據挖掘和機器學習相關人員作為技術參考書,也適閤作為計算機專業高年級本科生和研究生教材或教學參考用書。
袁梅宇,男,工學博士,碩士導師,現在昆明理工大學計算機係任教。為本科生和研究生主講Java程序設計、JavaEE技術、數據庫原理、人工智能、DotNet技術等核心課程,參加過863CIMSNet建設、中歐閤作項目DRAGON和多項國傢基金和省基金項目,第一作者公開發錶論文十餘篇,軟件著作權(頒證)六項。
第1章 Weka介紹
1.1 Weka簡介
1.1.1 Weka曆史
1.1.2 Weka功能簡介
1.2 基本概念
1.2.1 數據挖掘和機器學習
1.2.2 數據和數據集
1.2.3 ARFF格式
1.2.4 預處理
1.2.5 分類與迴歸
1.2.6 聚類分析
1.2.7 關聯分析
1.3 Weka係統安裝
1.3.1 係統要求
1.3.2 安裝過程
1.3.3 Weka使用初步
1.3.4 係統運行注意事項
1.4 訪問數據庫
1.4.1 配置文件
1.4.2 訪問數據庫
1.4.3 常見問題及解決辦法
1.5 示例數據集
1.5.1 天氣問題
1.5.2 鳶尾花
1.5.3 CPU
1.5.4 玻璃數據集
1.5.5 美國國會投票記錄
1.5.6 乳腺癌數據集
課後強化訓練
第2章 Explorer界麵
2.1 圖形用戶界麵
2.1.1 標簽頁簡介
2.1.2 狀態欄
2.1.3 圖像輸齣
2.1.4 手把手教你用
2.2 預處理
2.2.1 加載數據
2.2.2 屬性處理
2.2.3 過濾器
2.2.4 過濾器算法介紹
2.2.5 手把手教你用
2.3 分類
2.3.1 分類器選擇
2.3.2 分類器訓練
2.3.3 分類器輸齣
2.3.4 分類算法介紹
2.3.5 分類模型評估
2.3.6 手把手教你用
2.4 聚類
2.4.1 聚類麵闆操作
2.4.2 聚類算法介紹
2.4.3 手把手教你用
2.5 關聯
2.5.1 關聯麵闆操作
2.5.2 關聯算法介紹
2.5.3 手把手教你用
2.6 選擇屬性
2.6.1 選擇屬性麵闆操作
2.6.2 選擇屬性算法介紹
2.6.3 手把手教你用
2.7 可視化
2.7.1 選擇單獨的2D散點圖
2.7.2 選擇實例
2.7.3 手把手教你用
課後強化訓練
第3章 Knowledge Flow界麵
3.1 知識流介紹
3.1.1 知識流特性
3.1.2 知識流界麵布局
3.2 知識流組件
3.2.1 數據源
3.2.2 數據接收器
3.2.3 評估器
3.2.4 可視化器
3.2.5 其他工具
3.3 使用知識流組件
3.4 手把手教你用
課後強化訓練
第4章 Experimenter界麵
4.1 簡介
4.2 標準實驗
4.2.1 簡單實驗
4.2.2 高級實驗
4.2.3 手把手教你用
4.3 遠程實驗
4.3.1 遠程實驗設置
4.3.2 手把手教你用
4.4 分析結果
4.4.1 獲取實驗結果
4.4.2 配置測試
4.4.3 保存結果
4.4.4 手把手教你用
課後強化訓練
第5章 命令行界麵
5.1 命令行界麵介紹
5.1.1 命令調用
5.1.2 命令自動完成
5.2 Weka結構
5.2.1 類實例和包
5.2.2 weka.core包
5.2.3 weka.classifiers包
5.2.4 其他包
5.3 命令行選項
5.3.1 常規選項
5.3.2 特定選項
5.4 過濾器和分類器選項
5.4.1 過濾器選項
5.4.2 分類器選項
5.4.3 手把手教你用
5.5 包管理器
5.5.1 命令行包管理器
5.5.2 運行安裝的算法
課後強化訓練
第6章 Weka高級應用
6.1 貝葉斯網絡
6.1.1 簡介
6.1.2 貝葉斯網絡編輯器
6.1.3 在探索者中使用貝葉斯網絡
6.1.4 學習算法
6.1.5 查看貝葉斯網絡
6.1.6 手把手教你用
6.2 神經網絡
6.2.1 GUI使用
6.2.2 手把手教你用
6.3 文本分類
6.3.1文本分類示例
6.3.2 分類真實文本
6.3.3 手把手教你用
6.4 時間序列分析及預測
6.4.1 使用時間序列環境
6.4.2 手把手教你用
課後強化訓練
第7章 Weka API
7.1 加載數據
7.1.1 從文件加載數據
7.1.2 從數據庫加載數據
7.1.3 手把手教你用
7.2 保存數據
7.2.1 保存數據至文件
7.2.2 保存數據至數據庫
7.2.3 手把手教你用
7.3 處理選項
7.3.1 處理選項方法
7.3.2 手把手教你用
7.4 內存數據集處理
7.4.1 在內存中創建數據集
7.4.2 打亂數據順序
7.4.3 手把手教你用
7.5 過濾
7.5.1 批量過濾
7.5.2 即時過濾
7.5.3 手把手教你用
7.6 分類
7.6.1 分類器構建
7.6.2 分類器評估
7.6.3 實例分類
7.6.4 手把手教你用
7.7 聚類
7.7.1 聚類器構建
7.7.2 聚類器評估
7.7.3 實例聚類
7.7.4 手把手教你用
7.8 屬性選擇
7.8.1 使用元分類器
7.8.2 使用過濾器
7.8.3 使用底層API
7.8.4 手把手教你用
7.9 可視化
7.9.1 ROC麯綫
7.9.2 圖
7.9.3 手把手教你用
7.10 序列化
7.10.1 序列化基本方法
7.10.2 手把手教你用
7.11 文本分類綜閤示例
7.11.1 程序運行準備
7.11.2 源程序分析
7.11.3 運行說明
課後強化訓練
第8章 學習方案源代碼分析
8.1 NaiveBayes源代碼分析
8.2 實現分類器的約定
課後強化訓練
附錄A 中英文術語對照
附錄B Weka算法介紹
參考文獻
第1章
Weka介紹
Weka是新西蘭懷卡托大學用Java開發的數據挖掘著名開源軟件,該係統自1993年開始由新西蘭政府資助,至今已經曆瞭20年的發展,其功能已經十分強大和成熟。Weka集閤瞭大量的機器學習和相關技術,受領域發展和用戶需求所推動,代錶瞭當今數據挖掘和機器學習領域的最高水平。
1.1 Weka簡介Weka是懷卡托智能分析環境(Waikato Environment for Knowledge Analysis)的英文字首縮寫,在該網站可以免費下載可運行軟件和源代碼,還可以獲得說明文檔、常見問題解答、數據集和其他文獻等資源。Weka的發音類似新西蘭本土一種不會飛的鳥,如圖1.1所示,因此Weka係統使用該鳥作為其徽標。
圖1.1 Weka(或woodhen)鳥
Weka是一種使用Java語言編寫的數據挖掘機器學習軟件,是GNU協議下分發的開源軟件。Weka主要用於科研、教育和應用領域,還作為Ian H. Witten、FrankEibe和Mark A. Hall三人閤著的著名書籍 ——《Data Mining — Practical Machine Learning Tools and Techniques, Third Edition》(數據挖掘:實用機器學習工具與技術,第3版)的實踐方麵的重要補充,該書於2011年由Elsevier齣版。
Weka是一套完整的數據處理工具、學習算法和評價方法,包含數據可視化的圖形用戶界麵,同時該環境還可以比較和評估不同的學習算法的性能。
國內外很多著名大學都采用Weka作為數據挖掘和機器學習課程的實踐工具。Weka還有另外一個名字叫作Pentaho Data Mining Community Edition(Pentaho數據挖掘社區版),此外,Pentaho的網站還維護一個稱為Pentaho Data Mining Enterprise Edition(Pentaho數據挖掘企業版)的版本,它主要提供技術支持和管理升級。另一個用Java編寫的著名數據挖掘工具RapidMiner通過Weka Extension(Weka擴展)支持Weka,以充分利用Weka的“約100個額外的建模方案,其中包括額外的決策樹、規則學習器和迴歸估計器”。
1.1.1 Weka曆史
懷卡托機器學習團隊宣稱:我們團隊的總體目標是要建立最先進的軟件開發機器學習技術,並將其應用於解決現實世界的數據挖掘問題。團隊具體目標是:使機器學習技術容易獲得,並將其應用到解決新西蘭工業的重大實際問題,開發新的機器學習算法並推嚮世界,為該領域的理論框架作齣貢獻。
1992年末,新西蘭懷卡托大學計算機科學係Ian Witten博士申請基金,1993年獲新西蘭政府資助,並於同年開發齣接口和基礎架構。次年發布瞭第一個Weka的內部版本,兩年後,在1996年10月,第一個公開版本(Weka 2.1)發布。Weka早期版本主要采用C語言編寫,1997年初,團隊決定使用Java重新改寫,並在1999年中期發布純Java的Weka 3版本。選定Java來實現Ian Witten著作《Data Mining》的配套機器學習技術是有充分理由的,作為一個著名的麵嚮對象的編程語言,Java允許用一個統一的接口來進行學習方案和方法的預處理和後處理。決定使用Java來替代C++或其他麵嚮對象的語言,是因為Java編寫的程序可以運行在絕大部分計算機上,而無須重新編譯,更不需要修改源代碼。已經測試過的平颱包括Linux、Windows和Macintosh操作係統,甚至包括PDA。最後的可執行程序復製過來即可運行,完全綠色,不要求復雜安裝。當然,Java也有其缺點,最大的問題是它在速度上有缺陷,執行一個Java程序比對應的C語言程序要慢上好幾倍。綜閤來看,對於Weka來說,Java“一次編譯,到處運行”的吸引力遠遠超齣對性能的渴望。
截止到2013年2月,Weka最新的版本是3.7.8,這是2013年1月24日發布的穩定版,本書基於該版本。
1.1.2 Weka功能簡介Weka係統匯集瞭最前沿的機器學習算法和數據預處理工具,以便用戶能夠快速靈活地將已有的處理方法應用於新的數據集。它為數據挖掘的整個過程提供全麵的支持,包括準備輸入數據、統計評估學習方案、輸入數據和學習效果的可視化。Weka除瞭提供大量學習算法之外,還提供瞭適應範圍很廣的預處理工具,用戶通過一個統一界麵操作各種組件,比較不同的學習算法,找齣能夠解決問題的最有效的方法。
Weka係統包括處理標準數據挖掘問題的所有方法:迴歸、分類、聚類、關聯規則以及屬性選擇。分析要進行處理的數據是重要的一個環節,Weka提供瞭很多用於數據可視化和預處理的工具。輸入數據可以有兩種形式,第一種是以ARFF格式為代錶的文件;另一種是直接讀取數據庫錶。
使用Weka的方式主要有三種:第一種是將學習方案應用於某個數據集,然後分析其輸齣,從而更多地瞭解這些數據;第二種是使用已經學習到的模型對新實例進行預測;第三種是使用多種學習器,然後根據其性能錶現選擇其中的一種來進行預測。用戶使用交互式界麵菜單中選擇一種學習方法,大部分學習方案都帶有可調節的參數,用戶可通過屬性列錶或對象編輯器修改參數,然後通過同一個評估模塊對學習方案的性能進行評估。
Weka主界麵稱為Weka GUI選擇器,它通過右邊的四個按鈕提供四種主要的應用程序供用戶選擇,如圖1.2所示,用鼠標單擊按鈕進入到相應的圖形用戶界麵。其中,Weka係統提供的最容易使用的圖形用戶接口稱為探索者(Explorer)。通過選擇菜單和填寫錶單,可以調用Weka的所有功能。例如,用戶用鼠標僅僅單擊幾個按鈕,就可以完成從ARFF文件中讀取數據集,然後建立決策樹的工作。Weka界麵十分友好,能適時地將不宜用的功能選項設置為不可選;將用戶選項設計為錶格方式以方便填寫;當鼠標移動到界麵工具上短暫停留時,會給齣用法提示;對算法都給齣較為閤理的默認值,這樣,幫助用戶盡量少花精力進行配置就可取得較好的效果等。
圖1.2 Weka主界麵
雖然探索者界麵使用很方便,但它也存在一個缺陷,要求它將所需數據全部一次讀進內存,一旦用戶打開某個數據集,就會讀取全部數據。因此,這種批量方式僅適閤處理中小規模的問題。知識流剛好能夠彌補這一缺陷。
知識流(KnowledgeFlow)界麵可以使用增量方式的算法來處理大型數據集,用戶可以定製處理數據流的方式和順序。知識流界麵允許用戶在屏幕上任意拖曳代錶學習算法和數據源的圖形構件,並以一定的方式和順序組閤在一起。也就是,按照一定順序將代錶數據源、預處理工具、學習算法、評估手段和可視化模塊的各構件組閤在一起,形成數據流。如果用戶選取的過濾器和學習算法具有增量學習功能,那就可以實現大型數據集的增量分批讀取和處理。
實驗者(Experimenter)界麵用於幫助用戶解答實際應用分類和迴歸技術中遇到的一個基本問題——對於一個已知問題,哪種方法及參數值能夠取得最佳效果?通過Weka提供的實驗者工作環境,用戶可以比較不同的學習方案。盡管探索者界麵也能通過交互完成這樣的功能,但通過實驗者界麵,用戶可以讓處理過程實現自動化。實驗者界麵更加容易使用不同參數去設置分類器和過濾器,使之運行在一組數據集中,收集性能統計數據,實現重要的測試實驗。
簡單命令行(Simple CLI)界麵是為不提供自己的命令行界麵的操作係統提供的,該簡單命令行界麵用於和用戶進行交互,可以直接執行Weka命令。
1.2 基 本 概 念
上節簡要介紹瞭Weka,讀者也許迫不及待地想進一步深入瞭解並使用Weka來完成數據挖掘工作。但是,在此之前,有必要先瞭解數據挖掘和機器學習的一些基本概念,為進一步地學習打下基礎。
1.2.1 數據挖掘和機器學習
數據挖掘和機器學習這兩項技術的關係非常密切。機器學習方法構成數據挖掘的核心,絕大多數數據挖掘技術都來自機器學習領域,數據挖掘又嚮機器學習提齣新的要求和任務。
數據挖掘就是在數據中尋找模式的過程。這個尋找過程必須是自動的或半自動的,並且數據總量應該是具有相當大的規模,從中發現的模式必須有意義並能産生一定的效益。通常,數據挖掘需要分析數據庫中的數據來解決問題,如客戶忠誠度分析、市場購物籃分析,等等。當今已進入海量數據時代。例如,全世界已經有約1 000 000 000 000個網頁;沃爾瑪僅一個小時就有一百萬的交易量,其數據庫裏數據已有2.5拍(即2.5×1015)字節的信息,等等。
這些海量數據不可能采用手工方式進行處理,因此,迫切要求能進行數據分析的自動化方法,這些都由機器學習提供。
機器學習定義為能夠自動尋找數據中的模式的一套方法,然後,使用所發現的模式來預測將來的數據,或者在各種不確定的條件下進行決策。
機器學習分為兩種主要類型。第一種稱為有監督學習,或稱為預測學習,其目標是在給定一係列輸入輸齣實例所構成的數據集的條件下,學習輸入x到輸齣y的映射關係。這裏的數據集稱為訓練集,實例的個數稱為訓練樣本數。第二種機器學習類型稱為無監督學習,或稱為描述學習,在給定一係列僅由輸入實例構成的數據集的條件下,其目標是發現數據中的有趣模式。無監督學習有時候也稱為知識發現,這類問題並沒有明確定義,因為我們不知道需要尋找什麼樣的模式,也沒有明顯的誤差度量可供使用。而對於給定的x,有監督學習可以對所觀察到的值與預測的值進行比較。
……
當代中國掀起瞭一股學習數據挖掘和機器學習的熱潮,從斯坦福大學公開課“機器學習課程”,到龍星計劃的“機器學習Machine Learning”課程,再到加州理工學院公開課“機器學習與數據挖掘”課程,參加這些網絡課程學習的人群日益壯大,數據挖掘和機器學習炙手可熱。
數據挖掘是數據庫知識發現中的一個步驟,它從大量數據中自動提取齣隱含的、過去未知的、有價值的潛在信息。機器學習主要設計和分析一些讓計算機可以自動“學習”的算法,其算法是一類從數據中自動分析獲得規律,並利用規律對未知數據進行預測。機器學習和數據挖掘這兩個領域聯係密切,數據挖掘利用機器學習提供的技術來分析海量數據,以發掘數據中隱含的有用信息。
數據挖掘和機器學習這兩個密切相關的領域存在一個特點:理論很強而實踐很弱。眾所周知,理論和實踐是研究者的左腿和右腿,缺瞭一條腿的研究者肯定難以前行,有的技術人員花瞭若乾年時間進行研究,雖然瞭解甚至熟悉瞭很多公式和算法,但仍然難以真正去麵對一個實際挖掘問題並很好地解決手上的技術難題,其根本原因就是——缺乏實踐。
本書就是為瞭試圖解決數據挖掘和機器學習的實踐問題而編寫的,依托新西蘭懷卡托大學采用Java語言開發的著名開源軟件Weka,該係統自1993年開始由新西蘭政府資助,至今已經曆瞭20年的發展,它的功能已經十分強大和成熟。Weka集閤瞭大量的機器學習和相關技術,受領域發展和用戶需求所推動,代錶瞭當今數據挖掘和機器學習領域的最高水平。因此,研究Weka能幫助研究者從實踐去驗證所學的理論,顯然有很好的理論意義或實際意義。
本書共分8章。第1章介紹Weka的曆史和功能、數據挖掘和機器學習的基本概念、Weka係統安裝,以及示例數據集;第2章介紹Explorer界麵的使用,主要內容包括:圖形用戶界麵、預處理、分類、聚類、關聯、選擇屬性,以及可視化;第3章介紹Knowledge Flow界麵,主要內容有知識流介紹、知識流組件、使用知識流組件,以及實踐教程;第4章介紹Experimenter界麵,主要內容有Experimenter界麵介紹、標準實驗、遠程實驗,以及分析實驗結果;第5章介紹命令行界麵,主要內容 數據挖掘與機器學習:WEKA應用技術與實踐 下載 mobi epub pdf txt 電子書 格式
數據挖掘與機器學習:WEKA應用技術與實踐 下載 mobi pdf epub txt 電子書 格式 2024
數據挖掘與機器學習:WEKA應用技術與實踐 下載 mobi epub pdf 電子書可以的,可以的,可以的,可以的,可以的
評分彆人買的不知道怎麼樣。
評分書是最便宜的投資,書是最便宜的投資,好書要收藏。
評分非常好的一本書哦哈哈哈
評分給朋友買的,沒有看,不過送貨速度非常快,隔天到
評分好書,好似國語唯一教材瞭
評分包裝精美,正版,推薦購買
評分東西不錯,快遞很好,推薦
評分還行,工具參考書,這個還是要自己多學習多研究
數據挖掘與機器學習:WEKA應用技術與實踐 mobi epub pdf txt 電子書 格式下載 2024