加入RUN!PC粉絲團
最近新增的精選文章
 
最多人點閱的精選文章
 
 
精選文章 - 商務應用
分享到Plurk
分享到FaceBook
 
來自學界的資料分析利器 - Weka 與 R
文‧圖/Iris.Liu 2019/3/25 下午 05:27:40

Data Mining、Big Data以及Machine Learning,隨著科技與應用的精鍊,與工具及環境複雜性的增加,提升了相關領域和其價值的關注,進而帶動了工業4.0、工廠自動化與IoT的發展。台灣的大型廠商如台積電、鴻海、廣達與欣興電子等,無不投注大量資金及人力致力於工廠自動化的應用,以提升自身的產業地位與競爭優勢;醫療產業亦積極採用IoT技術,如醫療聯網(Internet of Medical Things,IoMT)的發展正為醫療照護領域帶來轉型,除了為降低成本、提升照護品質之外,無非就為將照護產業轉型為價值導向。

依據 《2018年中小企業白皮書》的資料顯示,台灣於2017年的中小企業家數約有143萬7,616家,占全體企業97.7%。其中的大數企業主及主管們都清楚資料分析與預測的價值與重要性。尤其大廠應用成功的範例常成為其他廠商仿效的參考與方向。然而有許多的中小型組織並沒有足夠的資金或預算購買相闗的解決方案及工具。因此,開源工具/軟體就可以為這樣的困境提供了解決之道。

KNIME、NLTK、Tanagra、Python、Orange、NIME、Rapid Miner (前版本為Yale)、Weka 以及 R,是目前最受學界與業界青睞的開源工具/軟體。本文針對Weka與R 這兩種源自學界發展,且同樣來自紐西蘭的工具/軟體說明,讓讀者們對開源資料科學工具/軟體能有初步的認識。

為machine learning 演算法開發 Weka

Weka是在紐西蘭發現的一種不會飛的鳥類,圖1則是 Weka軟體的logo。故Weka 是由紐西蘭的懷卡托大學(University of Waikato) 利用 Java 程式語言開發的,具有跨平台優勢,其預設的檔案格式是ARFF (Attribute-Relation File Format),如圖2所示。Weka亦支援.CSV、.JSON、.M、.XRFF等檔案格式。另外,也可以透過 JDBC 讀取網路上的資料,或是關聯式資料庫中的資料。Weka擅長於data mining的machine learning演算法的集合,包含資料預處理、分類、回歸、分群、關聯性規則以及可視化應用等,亦適合開發machine learning與塑模方案,也能用來處理 big data 及執行 deep learning。即其支援多種data mining 任務。也因此,Weka 支援的屬性有:Nominal、Numeric、String、Date以及Relational。


▲ 圖1 Weka 的 logo




▲ 圖2 Weka 內建的 weather.numeric.arff 檔案內容



此外,Weka 屬於GNU GPL(General Public License) 的授權程式,也就是讓使用者在最大的範圍內可無償使用及修改,但仍受到「授權拘束性」對原創者的著作權保護。Weka 在1997釋出第一個版本,隨著時間的推移在相關的網路社群中也有廣大的技術愛好者針對延伸的應用提供了許多貢獻。

下載Weka網址及下載網頁(如圖3、圖4及圖5 所示):
網址:https://www.cs.waikato.ac.nz/ml/weka/downloading.html


▲ 圖3 Weka 下載頁面




▲ 圖4 Weka安裝首頁




▲ 圖 5 Weka 的介面



為統計開發R軟體

R 語言 (如圖6 所示), 最初是由紐西蘭奧克蘭大學(University of Auckland) 的George Ross Ihaka 和Robert Clifford Gentleman 透過模擬S 語言與Scheme 語言的結構,也就是,S 語言的語法加上Scheme 的基本語義,發展而成的。並於1993 年首次公開發佈;1995 使用GNU GPL (GNU General Public License),讓R 語言得以被廣泛使用,讓終端使用者享有執行、學習、分享、複製及編輯R 語言的自由;1997 年成立R 的核心開發團隊,並將R 移植到不同的作業系統,包括UNIX(FreeBSD 和Linux)、Windows、以及MacOS 等,同時加入自由軟體基金會(Free Software Foundation,FSF) 的GNU 計畫。


▲ 圖6 R 的 logo



R,主要應用於統計分析、繪圖、與data mining。它提供了整合良好的數學計算環境,為一直譯式語言(Interpreted Language),因此,執行速度快、可立即得到輸出結果。其語義主要為函數設計,因此,直接輸入函數即可完成數學運算,這種方式有助於統計分析計算與圖表繪製。在 data mining 應用的程式集 (package) 有:Clustering、Classification、Association Rules、Sequential patterns、Time Series、Statistics、Graphics 及 Data manipulation。

下載R網址及下載網頁(如圖7、圖8及圖9所示):
網址:https://www.r-project.org/


▲ 圖7 R 的下載頁面




▲ 圖8 安裝 R 的頁首




▲ 圖9 R 的指令輸入介面



Weka 與 R 的異同之處

Weka和R都是頗受關注的開放軟體,兩者都源自學界發展,且同樣來自紐西蘭,當然兩者也有著不同的開發起點及解決目標。
(1)Weka擅長machine learning及data mining;R擅長統計分析。
(2)Weka的開發基礎是100% 的純Java;R則是透過多種程式語言(C、Fortran 及 R)開發的。
(3)Weka擁有圖形使用者介面;R是函數式的指令操作介面。
(4)Weka 的弱勢是統計分析;R 的弱勢則是 data mining。
(5)Weka與R都支援 .CSV 等資料型別,但仍有不同的地方。表1 是 Weka 與 R 支援/匯入的資料格式比較。


▲ 表1 Weka 與 R 支援的資料格式比較



理論與實作必須整合才有加乘效果

資料科學是從資料中發現知識/價值。而探勘知識/價值的途徑往往不止是技術、或演算法,還必須結合不同的學門知識及技能才能實作。就像最懂實務的產業專家,也需要有理論引導新應用的誕生,甚至需要在理論與實作間架上橋樑才能產生行動。無論是運用哪種工具,都需要產學合作的推動,才能強化學術研究與產業創新的整合,以激撞出令人驚喜的結果。