除了正確的語言ID langid.py返回一個特定的值 - 「返回的值是語言的分數,它不是一個概率的特徵,因爲它沒有被文檔概率規範化,因爲這對於分類是不必要的。 但是,價值是什麼意思?langid.py中的「返回值」究竟意味着什麼?
1
A
回答
0
看起來像一個值,告訴你引擎是如何確定它猜對了文檔的正確語言。我認爲一般來說數字越接近0,它就越確定,但是你應該能夠通過混合語言並將它們傳入來看看你得到什麼值來測試它。它允許您在使用langid時根據您認爲「足夠接近」來計算匹配情況來微調您的程序。
4
我認爲這是langid.py代碼的重要大塊:
def nb_classify(fv):
# compute the log-factorial of each element of the vector
logfv = logfac(fv).astype(float)
# compute the probability of the document given each class
pdc = np.dot(fv,nb_ptc) - logfv.sum()
# compute the probability of the document in each class
pd = pdc + nb_pc
# select the most likely class
cl = np.argmax(pd)
# turn the pd into a probability distribution
pd /= pd.sum()
return cl, pd[cl]
在我看來,作者的計算類似數據的multinomial數後爲每個可能的語言。 logfv
計算PMF分母的對數(x_1!...x_k!
)。 np.dot(fv,nb_ptc)
計算p_1^x_1...p_k^x_k
術語的 對數。因此,pdc
看起來像語言條件對數似然的列表(除了它缺少n!
的術語)。 nb_pc
看起來像先前的概率,所以pd
將是後記。歸一化線pd /= pd.sum()
讓我感到困惑,因爲人們通常會將類似概率的值(不是對數概率值)歸一化;此外,文檔中的示例(('en', -55.106250761034801)
)看起來並不像它們已經正常化 - 也許它們是在添加標準化行之前生成的?
無論如何,簡短的回答是,這個值,pd[cl]
是一個信心分數。基於當前代碼的我的理解是,它們應該是0到1/97之間的值(因爲有97種語言),較小的值表示較高的置信度。
3
我其實是langid.py
的作者。不幸的是,我剛剛發現這個問題,差不多一年後才被問到。自從問這個問題以來,我已經整理了正常化的處理過程,因此所有README示例都已更新,以顯示實際可能性。
您在那裏看到的值(並且您仍然可以通過關閉歸一化來獲得)是文檔的非歸一化對數概率。因爲log/exp是單調的,所以我們實際上並不需要計算決定最可能類的概率。這個log-prob的實際值實際上對用戶沒有任何用處。我應該從未包含它,我可能會在未來刪除它的輸出。
相關問題
- 1. 在這個reducer中返回{... state,}究竟意味着什麼?
- 2. 「雲計算」究竟意味着什麼?
- 3. AspNetCompatibilityRequirements究竟意味着什麼?
- 4. Cocoapods平臺,究竟意味着什麼?
- 5. 「帶外庫」究竟意味着什麼?
- 6. xmlns =「」究竟意味着什麼
- 7. flex標籤究竟意味着什麼?
- 8. TE和NT究竟意味着什麼
- 9. Composable究竟意味着什麼?
- 10. jquery:「$(this)」究竟意味着什麼?
- 11. struct.calcsize('P')究竟意味着什麼?
- 12. UrlReferrer究竟意味着什麼?
- 13. 「有效」究竟意味着什麼
- 14. @Secured({「ROLE_USER」,「ROLE_ADMIN」})究竟意味着什麼
- 15. 這究竟意味着什麼?
- 16. 響應者究竟意味着什麼?
- 17. max_connections究竟意味着什麼?
- 18. 異步NSUrlConnection究竟意味着什麼?
- 19. curlopt_binarytranfer究竟意味着什麼?
- 20. 「就地」究竟意味着什麼?
- 21. 什麼是printf定義中的__format究竟意味着什麼?
- 22. 什麼不透明的內容究竟意味着什麼?
- 23. 'site-packages'中的'site'究竟意味着什麼?
- 24. .Net中的自描述類型究竟意味着什麼?
- 25. Android開發中的Target究竟意味着什麼?
- 26. DBMS中的耐久性究竟意味着什麼?
- 27. 模板引擎在計算中究竟意味着什麼?
- 28. 在DWARF信息中,DW_OP寄存器究竟意味着什麼?
- 29. 在Ruby中,tLABEL究竟意味着什麼?
- 30. 預編譯在編譯器中究竟意味着什麼