올바른 언어 ID langid.py 옆에 특정 값이 반환됩니다. "반환되는 값은 언어 점수입니다. 분류에 필요하지 않으므로 문서 확률로 정규화되지 않으므로 확률 에니메이트가 아닙니다." 값은 무엇을 의미합니까 ??langid.py의 "반환 값"은 정확히 무엇을 의미합니까?
답변
엔진이 문서의 올바른 언어를 추측 한 엔진임을 알 수있는 값처럼 보입니다. 일반적으로 0에 가까운 숫자 일수록 더 확실하다고 생각합니다.하지만 언어를 함께 혼합하고 전달하여 값을 확인하는 방법을 테스트 할 수 있어야합니다. 그것은 당신이 일치로 간주하도록 '충분히 가깝다'고 생각하는 것에 따라 langid를 사용할 때 프로그램을 미세 조정할 수있게합니다.
나는이 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
은 이전 확률과 유사하므로 log-posteriors가 pd
이됩니다. 정규화 라인 인 pd /= pd.sum()
은 대개 확률과 비슷한 값 (로그 확률 값이 아닌)을 정규화하기 때문에 혼란 스럽습니다. 또한 문서의 예제 (('en', -55.106250761034801)
)는 정규화 된 것처럼 보이지 않습니다. 정규화 선을 추가하기 전에 생성 된 것일 수도 있습니다.
어쨌든,이 값인 pd[cl]
은 신뢰 점수입니다. 현재 코드를 기반으로하는 나의 이해는 작은 값이 높은 신뢰를 나타내는 0에서 1/97 사이의 값이어야한다는 것입니다 (97 개 언어가 있기 때문에).
저는 실제로 langid.py
의 저자입니다. 불행히도, 나는 질문을 한 지 거의 1 년 만에이 질문을 발견했습니다. 나는이 질문이 제기 된 이후 정상화 처리를 정돈했다. 그래서 모든 README 예제는 실제 확률을 보여주기 위해 업데이트되었다.
정규화를 해제하여 얻을 수있는 값은 정규화되지 않은 로그 확률입니다. log/exp는 단조 적이기 때문에 가장 가능성이 높은 클래스를 결정할 확률을 실제로 계산할 필요는 없습니다. 이 log-prob의 실제 값은 실제로 사용자에게 유용하지 않습니다. 나는 그것을 결코 포함하지 않아야하고, 나는 미래에 그것의 산출물을 제거 할 수있다.
- 1. 이것은 정확히 무엇을 의미합니까?
- 2. UrlReferrer는 정확히 무엇을 의미합니까?
- 3. SchemaAutoAction 값은 무엇을 의미합니까?
- 4. Hibernate에서 정확히 mappedby는 무엇을 의미합니까?
- 5. 합성 가능이란 정확히 무엇을 의미합니까?
- 6. 컴파일러에서 전처리가 정확히 무엇을 의미합니까?
- 7. 정확히 런타임 다형성은 무엇을 의미합니까?
- 8. 모델링 변환은 정확히 무엇을 의미합니까?
- 9. CssClass 속성의 값은 무엇을 의미합니까?
- 10. android : backgroundDimAmount의 값은 무엇을 의미합니까?
- 11. @override는 무엇을 의미합니까? 정확히 무엇을 무시하고 있습니까?
- 12. HTML5 위치 정보에서 정확도는 정확히 무엇을 의미합니까?
- 13. Perl에서 -x 옵션이 정확히 무엇을 의미합니까?
- 14. "클라이언트"라는 단어가 정확히 무엇을 의미합니까?
- 15. 이 코드 스 니펫은 정확히 무엇을 의미합니까?
- 16. 정확히 '페이지 소비'Facebook 통계는 무엇을 의미합니까?
- 17. "IB"와 "UB"는 정확히 무엇을 의미합니까?
- 18. File 's Owner는 정확히 무엇을 의미합니까?
- 19. 정확히 var x : *는 actionscript에서 무엇을 의미합니까?
- 20. ACL은 정확히 무엇을 의미합니까? (셰어 포인트)
- 21. 적용 Active Directory 지원, 정확히 무엇을 의미합니까?
- 22. "클라우드 컴퓨팅"이란 정확히 무엇을 의미합니까?
- 23. C++에서 정확히 참조하는 것이 무엇을 의미합니까?,
- 24. "Rails 개발 환경"은 정확히 무엇을 의미합니까?
- 25. "영구 연결"은 정확히 무엇을 의미합니까?
- 26. 이 값은 1.845E-07에서 무엇을 의미합니까?
- 27. PHP 코드에서 임계 값은 무엇을 의미합니까
- 28. GLMmodel 정점의 -431602080.000000 값은 무엇을 의미합니까?
- 29. 무엇을 의미합니까? 필터는 무엇을 의미합니까?
- 30. 정확히 무엇이 ERROR_INVALID_ORDINAL을 의미합니까?