분류를 위해 탐색기 기능을 사용하고 있습니다. 내 .arff 데이터 파일에는 숫자 및 이진 값의 10 가지 기능이 있습니다. (인스턴스의 ID 만 공칭입니다.) 16 인스턴스가 있습니다. 예측할 클래스는 예/아니오입니다. Naive Bayes를 사용했지만 결과를 해석 할 수 없으며, 순진한 Bayes 분류의 결과를 해석하는 방법을 알고 있습니까?Weka 기계 학습 : 어떻게 Naive Bayes 분류자를 해석합니까?
답변
Naive Bayes는 중요한 기능을 선택하지 않습니다. 앞서 언급했듯이 Naive Bayes 분류자를 교육 한 결과 모든 기능의 평균과 분산이 나타납니다. '예'또는 '아니요'로 새 샘플을 분류하는 것은 샘플의 특징 값이 '예'또는 '아니요'에 대한 학습 된 특징의 평균 및 분산과 가장 잘 일치하는지 여부를 기반으로합니다.
다른 알고리즘을 사용하여 가장 유익한 속성을 찾을 수 있습니다. 이 경우 의사 결정 트리 분류자를 사용하는 것이 좋습니다. WE40의 J48 (이는 C4.5 decision tree algorithm의 오픈 소스 구현 임). 결과 결정 트리의 첫 번째 노드는 어떤 기능이 가장 예측력이 좋은지를 알려줍니다.
(다른 게시물의 Rushdi Shams가 말한 것처럼) 더욱 좋습니다. Weka의 탐색기는 데이터 세트에서 가장 유용한 속성을 찾는 데 필요한 빌드 옵션을 제공합니다. 이 옵션은 Select attributes
탭 아래에 있습니다.
당신 말이 맞습니다. 방금 Weka에서 의사 결정 트리 분류자를 사용하고 중요한 기능을 선택했습니다. 도와 주셔서 정말 감사합니다. – Armand
Sicco는 NB가 당신에게 최고의 기능을 제공 할 수 없다고 말했습니다. 결정 트리는 좋은 선택입니다. 왜냐하면 분기가 때때로 중요한 기능을 말할 수 있기 때문입니다. 그러나 항상 존재하지는 않습니다. 간단하거나 복잡한 피쳐 세트를 처리하기 위해 WEKA의 SELECT ATTRIBUTE 탭을 사용할 수 있습니다. 여기서 검색 방법과 속성 평가기를 찾을 수 있습니다. 작업에 따라 가장 적합한 것을 선택할 수 있습니다. 그들은 (교육 데이터 또는 k 배 교차 유효성 검사에서) 기능의 순위를 제공합니다. 개인적으로, 나는 당신의 데이터 셋이 오버 피팅 (overfitting)되면 의사 결정 트리가 제대로 수행되지 않는다고 생각합니다. 이 경우 기능의 순위는 최상의 기능을 선택하는 표준 방법입니다. 대부분의 경우 정보 및 순위 알고리즘을 사용합니다. 속성이 1에서 k까지 랭킹 된 것을 확인하면 필요한 기능과 불필요한 기능을 파악하는 것이 좋습니다.
많은 해석이 가능합니다. 내 정밀도와 같은 결과물에서 얻고 자하는 것에 대해 구체적으로 설명해 주시겠습니까? –
실제로 의사 결정 (YEs/No)으로 이어지는 중요한 기능을보고 싶습니다. 그러나 NB가주는 모든 것은 확률, 평균, stddv 등입니다. 그리고 모든 기능에 대해서도 마찬가지입니다. 그게 내 문제 야. 나는 지금 나를 이해하기를 바란다. .. 그러나, 어떤 정보가 정밀도와 리콜을 통해 나에게 abt 분류를 주는가? – Armand