資料探勘中的模式發現(八)軌跡模式挖掘、空間模式挖掘
這是模式挖掘、資料探勘的一部分應用。
空間模式挖掘(Mining Spatiotemporal Patterns)
兩個空間實體之間存在若干拓撲關係,這些關係基於兩個實體的位置:
- 分離
- 相交
- 包含
如圖所示地表示位置資訊,可以提取類似下面的規則:
逐步求精(Progressive Refinement)
我們可以知道語言中有很對二義性的詞語,並且可以用不同的詞彙表達相同或者相近的意思。
比如,我們表示“靠近”,可以用“臨近”、“接近”、“比鄰”等等。那麼我們就可以用Progressive Refinement來解決,因此空間關係可以應用在一個更加粗糙或者更精細的層次上。
Step 1
粗略計算,用於篩選
使用MBR(Minimum Bounding Rectangle)或者R-tree粗略估計。
Step2
更加細節的處理演算法,用於精細處理
只處理那些通過粗略計算的資料(不小於最小支援度),從而節約時間與空間。
共置模式(Colocation pattern)
現有如圖所示地拓撲結構,用數字表示每一個樣本點,其符號是表示樣本點的種類。
共置模式指的是一組空間事件或者物體經常發生在相同的區域,在拓撲圖中這樣的事件用線連在一起。
其中{3, 6, 17}, {4, 7, 10, 16}, {2, 8, 11, 14, 15}, {2, 9}就是一個Colocation pattern。
rowset集合
而rowset(SET)則表示SET集合中每一個元素都出現在的Colocation pattern。
條件概率
Condition Probability
定義如下
計算條件概率必須按照定義來。
不是恆等於的。
例如,求
其中
在
所以
Participation Ratio
定義如下
Participation ratio
表示在
例如,
我們可以看到總共有
類Apriori演算法
演算法思想和Apriori演算法是一致的。
產生候選集的理論依據是Participation Ratio的單調性:
現有兩個Co-location pattern:
軌道模式挖掘(Mining and Aggregating Patterns over Multiple Trajectories)
軌跡的挖掘任務
軌跡聚類:基於空間/時空的幾何估計進行分組
軌跡聯合:給定兩個軌跡資料庫,檢索所有的相似對
通過挖掘能夠處理多種問題,包括,路線規劃、城市規劃、識別物體、模式分類。
基本定義
基本運動模式
描述移動事件,不考慮絕對位置
- Constance:連續時間序列的相等運動屬性,即保持運動方向不變
- Concurrence:有相等運動屬性的多個物件,在某個時刻運動方向相同的多個物體
- Trendsetter:—組的共享目標的運動圖形(constance + concurrence)
上圖中箭頭表示運動方向,橫座標表示時間,縱座標表示物體。
空間運動模式
基本運動模式+空間約束
- Track:單個物件,保持相同運動(constance + 空間約束)
- Flock:一組物件,同時保持相同運動(concurrence + 空間約束)
- Leadership:—個領導,踉著一組具有相同的運動物體(trendsetter + 空間約束)
- Flock(m,k,r):在半徑r內,m個物件,k個連續點
- Meet(m,k):至少m個物件,在半徑r內,至少K個連續點
聚合/分離運動模式
描述聚合和分離物件的運動
- Encounter(m,r) : 至少m個物件同時到達半徑為r的範圍內
- Convergence (m,r) : 至少m個物件經過達半徑為r的範圍內(不需要同時)
- Divergence : 與Convergence相反
- Breakup : 與Encounter相反
基於密度的軌跡模式
- TRACLUS
- 密度相連軌跡段的聚類
- 不考慮時間
Moving Cluster
- 在一個時間段內,一組物件相互靠近
Convoy
- 基於密度連結的 “Flock (m,k,r).”
- Swarm
- Time-relaxed convoy. 物件在時間上的倒數
挖掘語義豐富的運動模式(Mining Semantics-Rich Movement Patterns)
- 頻繁移動模式:頻繁出現在輸入軌跡資料庫中的移動序列
- 頻繁移動模式與頻繁連續模式:
- 兩者都旨在從輸入序列資料庫找到頻繁的子序列
- 對於挖掘頻繁運動模式,類似地方(例如下圖右圖以功能分類)可能需要分組以共同形成頻繁子序列
- 語義豐富的運動模式:
- 除了知道人們如何移動,從一個地區到另一個地區,我們也想了解地區的功能
- 例如,office和home可能是在相同的地方,有著相同的功能;也可能在不同的地方,有著不同的功能。如上圖左圖所示。
Step1
找到一組反映人們粗糙的語義級轉換的模式。例如,辦公室→餐館,家庭→健身房。
粗糙的語義在之前講的progressive refinement中說過,是一些粗糙的語義定義,比如,辦公室、辦公場所,甚至是一些更加具體的名詞,如政府辦等。
Step2
通過分組,將每個粗糙分類的相似圖案分成幾個細粒度圖案運動片段。
論文:C. Zhang et al., Splitter: Mining Fine-Grained Sequential Patterns in Semantic Trajectories, VLDB 2014