1. 程式人生 > >資料探勘中的模式發現(八)軌跡模式挖掘、空間模式挖掘

資料探勘中的模式發現(八)軌跡模式挖掘、空間模式挖掘

這是模式挖掘、資料探勘的一部分應用。

空間模式挖掘(Mining Spatiotemporal Patterns)

兩個空間實體之間存在若干拓撲關係,這些關係基於兩個實體的位置:

  • 分離
  • 相交
  • 包含

圖1

如圖所示地表示位置資訊,可以提取類似下面的規則:

is_a(x,large_town)intersect(x,highway)adjacent_to(x,water)[7%,85%]

逐步求精(Progressive Refinement)

我們可以知道語言中有很對二義性的詞語,並且可以用不同的詞彙表達相同或者相近的意思。

比如,我們表示“靠近”,可以用“臨近”、“接近”、“比鄰”等等。那麼我們就可以用Progressive Refinement來解決,因此空間關係可以應用在一個更加粗糙或者更精細的層次上。

Step 1

粗略計算,用於篩選

使用MBR(Minimum Bounding Rectangle)或者R-tree粗略估計。

Step2

更加細節的處理演算法,用於精細處理

只處理那些通過粗略計算的資料(不小於最小支援度),從而節約時間與空間。

共置模式(Colocation pattern)

圖5

現有如圖所示地拓撲結構,用數字表示每一個樣本點,其符號是表示樣本點的種類。

共置模式指的是一組空間事件或者物體經常發生在相同的區域,在拓撲圖中這樣的事件用線連在一起。

其中{3, 6, 17}, {4, 7, 10, 16}, {2, 8, 11, 14, 15}, {2, 9}就是一個Colocation pattern。

rowset集合

而rowset(SET)則表示SET集合中每一個元素都出現在的Colocation pattern。

rowset({A,B,C,D})={{4,7,10,16},{2,11,14,15},{8,11,14,15}} rowset({A,B})={{5,13},{7,10},{2,14},{8,14}}

條件概率

Condition Probability

定義如下

圖2

計算條件概率必須按照定義來。

圖3不是恆等於的。

例如,求cp(AB)

其中Rowset(A)={1,5,6,7,14}Rowset({A,B})如上文的例子。

Ro

wset({A,B})中包含14的有兩個元素,但是根據定義也只能計算一次。

所以cp(AB)=35

Participation Ratio

定義如下

圖4

Participation ratio pr(C,f): probability that C is observed in a neighbor-set wherever feature f is observed。

表示在f發生的情況下,有多少情況是在C情況下發現的。(注意,我這不是原原本本地翻譯,但是應該是等價的翻譯。)

例如,

pr({A,B,C,D},A)=25

我們可以看到總共有5A,但是隻有2A發生在{A,B,C,D}的情況下。

pr({A,B,C,D},D)=2÷2=1

類Apriori演算法

演算法思想和Apriori演算法是一致的。

產生候選集的理論依據是Participation Ratio的單調性:

現有兩個Co-location pattern:CC,且CC,那麼對於任意f,我們都可以得到pr(C,f)pr(C,f)

軌道模式挖掘(Mining and Aggregating Patterns over Multiple Trajectories)

軌跡的挖掘任務

軌跡聚類:基於空間/時空的幾何估計進行分組

軌跡聯合:給定兩個軌跡資料庫,檢索所有的相似對

圖6

這裡寫圖片描述

通過挖掘能夠處理多種問題,包括,路線規劃、城市規劃、識別物體、模式分類。

基本定義

基本運動模式

描述移動事件,不考慮絕對位置

  • Constance:連續時間序列的相等運動屬性,即保持運動方向不變
  • Concurrence:有相等運動屬性的多個物件,在某個時刻運動方向相同的多個物體
  • Trendsetter:—組的共享目標的運動圖形(constance + concurrence)

圖8

上圖中箭頭表示運動方向,橫座標表示時間,縱座標表示物體。

空間運動模式

基本運動模式+空間約束

  • Track:單個物件,保持相同運動(constance + 空間約束)
  • Flock:一組物件,同時保持相同運動(concurrence + 空間約束)
  • Leadership:—個領導,踉著一組具有相同的運動物體(trendsetter + 空間約束)

圖9

  • Flock(m,k,r):在半徑r內,m個物件,k個連續點
  • Meet(m,k):至少m個物件,在半徑r內,至少K個連續點

圖10

聚合/分離運動模式

描述聚合和分離物件的運動

  • Encounter(m,r) : 至少m個物件同時到達半徑為r的範圍內
  • Convergence (m,r) : 至少m個物件經過達半徑為r的範圍內(不需要同時)
  • Divergence : 與Convergence相反
  • Breakup : 與Encounter相反

圖11

基於密度的軌跡模式

  • TRACLUS
    • 密度相連軌跡段的聚類
    • 不考慮時間

圖12

  • Moving Cluster

    • 在一個時間段內,一組物件相互靠近
  • Convoy

    • 基於密度連結的 “Flock (m,k,r).”

圖14

  • Swarm
    • Time-relaxed convoy. 物件在時間上的倒數

圖15

挖掘語義豐富的運動模式(Mining Semantics-Rich Movement Patterns)

  • 頻繁移動模式:頻繁出現在輸入軌跡資料庫中的移動序列
  • 頻繁移動模式與頻繁連續模式:
    • 兩者都旨在從輸入序列資料庫找到頻繁的子序列
    • 對於挖掘頻繁運動模式,類似地方(例如下圖右圖以功能分類)可能需要分組以共同形成頻繁子序列

圖16

  • 語義豐富的運動模式:
    • 除了知道人們如何移動,從一個地區到另一個地區,我們也想了解地區的功能
    • 例如,office和home可能是在相同的地方,有著相同的功能;也可能在不同的地方,有著不同的功能。如上圖左圖所示。

Step1

找到一組反映人們粗糙的語義級轉換的模式。例如,辦公室→餐館,家庭→健身房。

粗糙的語義在之前講的progressive refinement中說過,是一些粗糙的語義定義,比如,辦公室、辦公場所,甚至是一些更加具體的名詞,如政府辦等。

Step2

通過分組,將每個粗糙分類的相似圖案分成幾個細粒度圖案運動片段。

論文:C. Zhang et al., Splitter: Mining Fine-Grained Sequential Patterns in Semantic Trajectories, VLDB 2014