Sequence-Analysis
兩個不同有序序列之間的相似性度量
我知道我們可以通過排序相關性來量化具有相同長度和相同元素的兩個序列之間的相似性。但是如何衡量兩個不同長度的序列之間的相似性,並且只有一些共同的元素呢?
例如,如果我有三個這樣的排序數字序列:
序列A:1、2、3、4、5、6、7、8、9;
序列 B:2,3,4,5,6,7,8,9,10,11,12,13
序列 C:4,2,9,7,11,13,14,16,18
直觀地說,我猜序列 A 和 B 更相似,因為它們有更多的公共數字,並且公共數字在兩個序列中具有相同的順序。序列 A 和 C 不太相似,因為它們的公共數量較少,並且公共數字在每個序列中具有不同的順序。是否有任何定量測量來捕捉共同元素的順序相似性和兩個序列中共同元素的百分比?
正如@ttnphns 的評論中提到的,存在很多不同的措施。看看Studer & Ritchard (2015)的評論,他們檢查了度量對排序、位置(時間)和持續時間(一個狀態重複多少次)的敏感性。該論文中提到的措施都是由TraMineR R 包
seqdist
的功能提供的。如果您主要對兩個序列之間的不常見部分感興趣,那麼最佳匹配等編輯距離可能是解決方案。最佳匹配測量通過插入缺失(插入或刪除)和替換將一個序列轉換為另一個序列的最小成本,並且可以考慮插入缺失和替換成本。如果等級 1 和 3 之間的差異是等級 1 和 2 之間差異的兩倍,您可以將替代成本設置為等級差異。這種度量適用於不同長度的序列。它只考慮使序列長度相等所需的插入缺失的成本。
如果您希望更多地關注序列中元素排序的相似性,那麼其他一些措施(例如轉換的最佳匹配)可能是更好的選擇。
希望這可以幫助。