- 把你所有的文本,並建立一個單詞列表。簡單的方法:採取所有的話。困難的方法:只採取相關的措施(即:用英語表示,「這個詞從來就不是一個經常使用的相關詞)。假設你的詞彙量中有V字。
- 對於每個文本,建立一個大小爲V * V的鄰接矩陣A.行A(i)表示你的詞彙中的單詞與第i個單詞V(i)有多接近。例如,如果V(i)=「滑雪」,則A(i,j)是單詞V(j)與單詞「滑雪」的接近程度。你更喜歡一個小詞彙!
技術細節: 對於詞彙,你有幾種可能性來獲得一個良好的詞彙。不幸的是,我不記得名字。其中之一是刪除經常出現的字詞。相反,你應該保留少數文本中出現的罕見詞彙。但是,保存完全在一個文本中的文字是沒有用的。
對於鄰接矩陣來說,通過計算你正在考慮的單詞有多遠來計算鄰接關係(指出分隔它們的單詞的數量)。例如,讓我們用你的文字很=)
一個方法相比風格的是尋找類似的短語。如果我在一本書「釣魚,滑雪和徒步旅行」中找到幾本書,並在另一本書「釣魚,徒步旅行和滑雪」中找到風格的相似性指向一位作者。不過,我也需要找到「釣魚,甚至是滑雪或徒步旅行」。理想情況下,我還會發現「釣魚,徒步旅行和滑雪」,但因爲它們是非英文文本(Koine 希臘文),所以同義詞很難容許,而且這方面並不重要。
這些完全由值:
A(方法,比較)+ = 1.0
A(方法,相似性)+ = 0.5
A(方法,希臘語)+ = 0。0
您主要需要「典型距離」。你可以舉例說,在20個分詞之後,這些詞不能再被認爲是相鄰的。
經過一些歸一化之後,只需在兩個文本的鄰接矩陣之間建立一個L2距離即可看到它們有多接近。事後你可以做更有趣的事情,但這應該會產生可接受的結果。現在,如果你有同義詞,你可以更好地更新鄰接關係。例如,如果你有在輸入 「美麗的少女」,然後
A(美觀,少女)+ = 1.0
A(宏偉,少女)+ = 0.9
A(公平,少女)+ = 0.8
甲(高妙,處女)+ = 0.8
...