DeepWriterID:不依赖书写内容的书写人识别
點擊上方“AI搞事情”關注我們
paper: ?《DeepWriterID: An End-to-end Online Text-independent Writer Identification System》
地址: https://arxiv.org/abs/1508.04945v2
相關文章:《Character-level Chinese writer identification using path signature feature, dropstroke and deep CNN》 arXiv:1505.04922
前言
本篇文章針對的是書寫者識別(Writer identification)任務的一個工作:DeepWriterID,且是文本無關,不依賴書寫內容的在線手寫書寫人身份識別。主要通過數據預處理對字符進行分段、提取,隨機刪除筆畫分段(DropSegment)進行數據增強, 路徑簽名特征圖(path-signature feature maps)作為輸入,CNN進行特征提取和優化分類損失。
算法流程DeepWriterI
分割預處理
分段生成
通過角點檢測算法進行分段生成,通過非角點的前向向量和反向向量相互抵消的概念來計算彎曲度,具體公式:
其中彎曲度的局部最大值被視為角點,然后每一個筆畫就可以通過角點拆分為若干個分段,如下圖:
偽字符分割
因為對于書寫人識別任務,不需要精確地將每個字符分割出來,因此可以在保留不同簽字人判別信息的情況下進行偽字符分割處理,具體地,當一個分段加進去時,字符的寬度超過了平均高度,這個分段便是另一個新字符的開始。即,為了CNN的固定大小輸入,同時針對書寫人筆跡識別 ,并不關心字符的具體內容和意義(即使是非字符或者英文包含了多個字母),本文將字符的高寬強行設置了一個相同的比例,[1,13]都會得到不錯的效果,為了簡單,文章將這個高寬比設置為了1。
Dropsegment
通過上述數據預處理,得到了帶有分段的每個字符;對每個訓練batch里面的字符,假設一個字符含有個分段,其中有個分段會被隨機刪除掉,。對于剩下的分段會非常零碎,會破壞寫作者的風格,因此需要進行重新拼接組合,每個分段便成了一個新的筆畫。
路徑簽名特征圖
路徑簽名特征(path-signature feature),是粗糙路徑理論(Rough Path Theory)的計算結果,在機器學習和時間序列分析領域中應用廣泛。路徑簽名是一個路徑的特征,往往可以代替路徑數據作為模型的輸入。下面進行簡單的介紹:
路徑:一個將連續取值區間[a,b]轉換到多維空間的映射。最簡單的二維歐式空間的路徑:即物體在二維平面上從時刻持續運動到 時刻的軌跡,在其中每一時刻的位置都可以用一個二維向量表示,表明了物體在對應方向上隨時間變化的規律。如以下路徑:
是個逆時針繪制的圓心為,起始點為 的圓形路徑。那么,對于維空間的路徑,可以被定義為:
可簡記為 ,路徑 需要滿足分段可導和處處連續。
但是在實際應用場景中,我們能夠獲取到的路徑往往不是連續的,而是在取值區間內的不均勻采樣,類似于在線簽名筆跡,其點位數據是在起止時間內的離散采樣點,因此往往需要進行插值操作獲取時間上分布均勻且密集的路徑。
路徑積分:路徑簽名(path sigature)其實就是對不同階路徑積分(path integral)的集合, 對于維空間的路徑,一階路徑簽名項(路徑積分)有個,對應著個維度。其定義為:
那么對于二維路徑,則我們定義方向路徑積分為:
其意義就是在參變量由變換至時對的積分, 相當于路徑在維度上的投影距離。
接下來,二階路徑簽名項, 其他定義同上。但是簽名項有項, 簽名編號也變成了有序對 . 我們定義第 項為:
對于二階項有以下定理:
證明:
二維舉例:
一般的n階路徑簽名項,通項公式為:
路徑簽名:路徑的路徑簽名,是一個無限長的序列,由1(即0階簽名項)和各個階次的簽名項構成:
路徑簽名具備的一些性質:
平移不變性,即路徑的開始位置對于特征的求取沒有影響。
重參數不變性,對時間進行重參數化后,路徑的簽名保持不變。這里的重參數化值得是 對時間t 做一個 函數映射 :
低階項乘積可以通過高階項的線性組合得到,意味著只使用高階特征的線性組合來獲取低層次的大尺寸特征。
時間反轉路徑簽名乘積為1。其中,
Chen’s Identity:兩條路徑連接的路徑積分等于兩個路徑簽名的乘積。
截斷路徑簽名: 由于路徑簽名是無限長的序列,不適合直接用于機器學習算法。于是只取序列中的 階和階以前的簽名項,這個新的序列叫做 階截斷路徑簽名。
因此,在字符分段的每一個點位都會產生階截斷的路徑簽名特征,, 簽名路徑為1,表示原始數據,時,表示路徑位移,表示路徑曲率,越大,提取越高階的特征,但是維度也會指數級增長,因而同上述所說,會進行截斷。
故而,輸入的特征圖個數有。通過對筆跡點位按特征值分配像素值,背景像素為0,再對相應的特征圖像進行直方圖均衡化,進而進行直觀地展示,如下圖:
每行表示每個書寫人、列表示不同階的路徑積分特征。可以發現,不同作者同樣的字特征相似度非常高,但是高階特征的差異性很明顯,印證了假設:高級別的路徑簽名可能包含有助于手寫識別的信息。
為了做數據增強提升網絡泛化能力,作者在提取path-signature feature maps之前還將字符數據進行了多種仿射變換:翻轉、旋轉、縮放。CNN訓練的相關超參數:mini-batch 100,Dropout設置在最后四層,分別0.3, 0.4, 0.5, 和 0.5, 在一個GTX 980訓練了一周( ̄︶ ̄)。最后網絡softmax基于單個字可以輸出所有ID類別的概率分布,通過綜合一頁所有字符級別的概率便能能得到基于頁層面的書寫人。作者實驗發現,通過加入額外的路徑簽名特征,更能提取精細的筆跡特征,DCNN融入了這些先驗知識,能夠顯著提高性能。
Performance of Path‐signature Feature(page level)其中,Bitmap表示根據在線數據還原繪制的離線圖片, Sign.n表示路徑簽名特征的截斷階數為n
網絡結構
M×96×96Input-80C3-MP2-160C2-MP2-240C2-MP2-320C2-MP2-400C2-MP2-480FC-512FC-Output
M表示輸入通道數,特征圖個數。
數據集
NLPR handwriting database:中科院自動化研究所(CASIA)生物識別與安全技術研究中心發布的在線手寫數據集,采用Wacom Intuos2簽字板采集,包含豐富在線序列信息,包括筆觸位置、筆觸狀態、方位角、高度、壓力、時間戳等。
數據集包含三個子集:每個人4頁中文,共187人(Dataset1);每個人4頁英文,共134人(Dataset2),兩個子集交集有133人(Dataset3),本文在Dataset1和Dataset2進行了實驗
中文數據集英文數據集算法效果
中文:95.72%
英文:98.51%
參考
Path Signature筆記
https://zhuanlan.zhihu.com/p/335494125
路徑簽名Path Signature的一些總結
https://blog.csdn.net/Yana_Zeng/article/details/119141453
Path signature介紹
https://blog.csdn.net/Dr_maker/article/details/122958988
path_signatures_introduction
https://github.com/pafoster/path_signatures_introduction
A Primer on the Signature Method in Machine Learning
https://arxiv.org/pdf/1603.03788.pdf
總結
以上是生活随笔為你收集整理的DeepWriterID:不依赖书写内容的书写人识别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用python快速搭建一个ftp文件服
- 下一篇: 变态一把,从internet获取所有手机