:::

自動決定最佳化分群數量:層疊K平均分群法 / Determin the Optimal Number of Clusters: Cascade K-means

自動決定最佳化分群數量:層疊K平均分群法 / Determin the Optimal Number of Clusters: Cascade K-means

image

在資料探勘課程常教的K平均法雖然好用,但它最大的問題在於,到底該如何決定分群數量K呢?幸好我們還有其他的分群演算法可以選擇。Weka中另一個分群演算法層疊K平均分群法(Cascade K-means)採用建立大量不同分群數量的做法,評估每一次分群結果的Calinski-Harabasz指標(CH指標),找出組內距離最短、組間距離最長的最佳分群數量。我在資料聚類:分群分群與分類的整合應用:無監督分類器都有使用層疊K平均分群法來自動決定分群數量,這篇就讓我們在Weka中使用層疊K平均分群法來進行分群,並使用Weka分群結果分析器來試著解釋分群結果吧。

(more...)

行為分析之對數線性模式 / Log-Linear Sequential Analysis

行為分析之對數線性模式 / Log-Linear Sequential Analysis

image

這是繼行為分析之時間序列分析之後,對於分析超過二序列之上更長序列的分析方法對數線性模式(Log-linear model)的介紹。一開始是基於Bakeman與Quera在書中介紹的對數線性模式序列分析(log-linear sequential analysis),為了分析方便,我後面介紹的是使用SPSS實作的對數線性模式分析。但是我對於這個分析方法抱有高度疑惑,各書本對於對數線性模式分析方法不盡相同,而報表解讀也有許多漏洞。這一份對數線性模式分析的方法僅供記錄,並不建議真的這樣使用。

(more...)

時間序列分析與預測 / Time Series Analysis and Prediction

布丁布丁吃布丁

時間序列分析與預測 / Time Series Analysis and Prediction

image

這是伴隨在行為分析之時間序列分析的報告中,延伸細談時間序列分析的部分。投影片的內容是參考了林惠玲、陳正倉老師所著的「應用統計學」以及其他時間序列分析的相關書籍綜合而成。大部分時間序列分析的介紹仍是環繞著ARIMA技術的模型,後來我用Weka實作的多變項時間序列預測則採用了機器學習的另類做法。

(more...)

行為分析之時間序列分析 / Time Sequential Behavior Analysis

行為分析之時間序列分析 / Time Sequential Behavior Analysis

image

這是閱讀Bakeman兩本書中行為序列分析與時間相關的兩個章節「9. Analyzing time sequences」跟「11. Time-window and log-linear sequential analysis」的簡報內容。Bakeman將事件編碼的類別資料轉換成比率數字的連續變項,再結合了時間序列分析(Time-series analysis)技術進行處理。在另外一本書則是介紹高階列聯表分析技術線性對數模型(Log-Linear Analysis),可以分析超越雙事件到N事件的序列檢定。

(more...)

揭露文字資料的量化數值!文字探勘分析器 / A Text Analyzer for Text Mining

布丁布丁吃布丁

揭露文字資料的量化數值!文字探勘分析器 / A Text Analyzer for Text Mining

image

這是我為了文字探勘所做的小工具。一般來說文字資料是一種非結構的質性資料,但其實還是可以透過一些簡單的計算來得知它的量化數值,這樣就能讓不同的文字資料之間的比較有了客觀的基準。這個文字探勘分析器提供了基本的敘述統計指標計算功能,包括文字長度、不同字詞的數量、文字變化程度的熵(entropy)跟辛普森指數(Simposon's Index),還有以句子、對話句為單位的分析,最後還能將N字詞的頻率分析結果繪製成文字雲

(more...)

行為順序預測:動態貝氏網路 / Behavior Prediction: Dynamic Bayesian Network

行為順序預測:動態貝氏網路 / Behavior Prediction: Dynamic Bayesian Network

image

這是巨量資料探勘與統計應用課程行為順序檢定:滯後序列分析分類與預測:貝氏網路的進階應用。滯後序列分析只能分析前後兩個行為之間的轉變,如果我們想要預測更多步之後的行為,那我們就需要藉助貝氏網路的預測和推理能力。我們可以決定要為幾步內的行為進行建模,如果是兩步之間的模型,稱之為「二時段貝氏網路」(Two-Timeslice Bayesian Network,2TBN)。而這篇文章將以「四時段貝氏網路」來為幼兒平行遊戲事件序列資料,建立能夠預測和解釋幼兒行為的貝氏網路模型。

(more...)

巨量資料探勘與統計應用課程目錄 / Applications of Big Data and Statistics: Table of Contents

巨量資料探勘與統計應用課程目錄 / Applications of Big Data and Statistics: Table of Contents

image

這是巨量資料探勘與統計應用課程的投影片「巨量資料探勘與統計應用課程目錄」,也包含了整個課程一開始的導論。本課程的主要核心技術是「資料分析」,而資料分析則含括了「資料探勘」與「統計」這兩種領域,並且適用於處理龐大的「巨量資料」,因此本課程就命名為「巨量資料探勘與統計應用」。為了整理到本blog,我將本系列課程調整為11個單元,由淺入深分成「課程導論與資料處理」、「資料敘述級」、「資料檢定級」、「資料預測級」四大階段,每個單元內都包含該單元要處理的問題與適用資料類型、核心技術。由於當初是以大學生為教學對象,因此本系列課程主要著重在訓練同學擁有實作的即戰力,每個單元都是以二到四個實作學習單組成,輔以少量的公式解說。

這份投影片是巨量資料探勘與統計應用課程的整體介紹,文章也會列出每一個單元的連結。最後我會談談我對這門課程的看法。

(more...)

超簡單!文本機器分類入門 / Text Classification with Weka

超簡單!文本機器分類入門 / Text Classification with Weka

image

這篇「超簡單!文本機器分類入門」是我在2017年3月於政大圖檔所資料探勘課程中的演講內容,之後演化成後來我在巨量資料探勘與統計應用課程中「非結構化資料分析:文本分類」單元的內容。如果想要看比較完整的文本分類介紹,請看「非結構化資料分析:文本分類」這篇。不過想要看獨立的文本分類課程的話,那也可以從這篇開始看起喔。

(more...)

非結構化資料分析:文本分類 / Unstructured Text Analytics: Text Classification

非結構化資料分析:文本分類 / Unstructured Text Analytics: Text Classification

image

這是巨量資料探勘與統計應用課程的投影片「非結構化資料分析:文本分類」。本單元是屬於系列課程中的「資料預測級」中最後一個單元。處理資料類型是為非結構化的資料進行分類,也就是使用類別資料。這邊使用了Jieba斷詞來作文本語義分析,然後使用樸素貝氏多項式文本分類器(NaiveBayesMultinomialText)來為文本進行分類,最後還用特徵篩選(Select attributes)找出關鍵字。到底圖書館員分類編目的核心技能會不會被這篇所講的自動化文本分類機器所取代呢?看完這個單元你就可以知道結果了。本單元使用了二個我自製的工具來搭配Weka實作文本分類,單元內包含了四份實作學習單跟一份測驗,供同學邊看邊練習。這個單元包含了四個實作學習單跟一份測驗,供同學邊看邊練習。

(more...)

貝氏網路的結果預測與原因推理:基於專家知識建構的網路結構 / Prediction and Inference with Bayesian Networks Model: Based on Expert Knowledge

貝氏網路的結果預測與原因推理:基於專家知識建構的網路結構 / Prediction and Inference with Bayesian Networks Model: Based on Expert Knowledge

image

前面我將貝氏網路的分類與預測投影片放到blog上,這一篇則是用圖文解說的方式來說明如何在Weka中使用貝氏網路。貝氏網路是一種機器學習預測的方法,其做法大概跟之前所介紹的用Weka分類模型來預測未知案例差不多。貝氏網路分類器本身的正確率通常不高,但是它能夠結合專家知識或領域知識(domain/prior knowledge)來建立預測模型,使得預測結果比較符合人類的思維。另一方面,貝氏網路也可以根據任何已知結果來推理發生的原因,讓我們更容易解釋最後結果。跟類神經網路、支持向量機難以解釋的黑箱演算法相比,貝氏網路這種白箱(white-box)演算法雖然正確率較差,但卻更容易用在任何研究中,協助我們推測研究結果、解釋造成原因。

(more...)