1. Abstract
- processors快速構建histogram,把數據壓縮到固定的大小
- master processor找到近似最優的split點
- 分析了算法的準確性
2. Intro
- 決策樹的一大優點是提供了human-readable的分類rules
- 缺點是需要對屬性排序以確定如何split節點
- 排序過于耗時的兩種解決辦法:對數據進行預排序;用sampling或者直方圖來代替排序
- Horizontal parallelism: 切分數據到processors
- Vertical parallelism: 切分屬性到processors
- focus on 近似算法
- 每個processor將自己數據的近似描述發送給master processor,master匯總信息,決定如何split
3. Algorithm description
- 數據切分的必要性:單機無法存儲;無法到達單機;無法在一定時間內處理所有數據
3.1. Histogram building
- 四個procedures:update、merge、sum、uniform
- merge:第一步,兩個histogram合并為一個histogram;第二步,合并最近的兩個bins,保證最多只有B個bins
- uniform:將直方圖均一化,也就是每個bin里的數據數量是一樣的
3.2. Tree growing
- 停止條件:node上sample的數量;node的impurity
- 最常見的impurity函數:Gini criterion和entropy function
- 每個processor處理他們能看到的數據,建立直方圖,然后發送給master processor
- 決策樹在訓練中或者訓練后被剪枝,為了減小樹的大小,為了增強模型的泛化性;對完整的樹叢bottom到up檢測,一些子樹被剪枝,根據剪枝前后誤差的變化
3.3. 復雜度分析
- 直方圖bin的數量是固定的,直方圖的操作的時間是固定的
- 一輪迭代需要:At most N/W operations by each processor in the updating phase(N是數據大小,W是processors數量);固定的space和communication復雜度;merge phase需要固定的時間
4. Related work
- 第一類算法有被證明的近似保證,但是需要很大的內存,需要的空間與數據大小成正比
- 第二類是啟發式的方法,在實際中很有用,需要較少的空間開銷,但是缺少嚴格的準確性分析
- 固定內存算法會帶來準確率的代價。當數據分布是傾斜的,在線直方圖的準確率會下降
- SPDT與SPIES和pCLOUDS的區別:第一個不同是,SPIES和pClOUDS采樣數據,SPDT不采樣;第二個不同是需不需要對數據的第二輪掃描;第三個不同是,本文分析了并行樹與順序樹的error