2016-11-01 6 views
2

제 과제물로 다음을 수행하는 기계 학습 프로그램을 만들어야합니다 :텍스트 분류/기계 학습 : '기본'범주도 필요합니까?

입력으로 프로그램은 프로젝트 (주로 교량 및 수문)를위한 건물 계획 (PDF로 작성)을 가져옵니다. 기계 학습 프로그램은 해당 PDF의 모든 문장을 샘플로 취하고 (해당 문장의 단어는 기능 임), 다음 카테고리 중 하나에서 모든 샘플/문장을 분류해야합니다. 하드웨어 관련 및 소프트웨어 관련. (나는 Naive Bayes 알고리즘을 TF-DIF와 함께 사용합니다.)

그러나 상상할 수있는 것처럼, 하드웨어 나 소프트웨어와 관련없는 무의미한 문장이 많이 있습니다. 'Default/Irrelevant'라는 별개의 범주를 만들어야 만 총 3 가지 카테고리가 생길 수 있습니까? 또는 두 범주 만 유지하고 확률에 따라 분류하는 것이 더 낫습니다. 예를 들어; 문장을 0.6으로 하드웨어로 분류하면 무시합니다. 그러나 결과가 0.8 이상이면 하드웨어로 분류됩니다.

답변

1

당신은, 내가 하나의 예와 그 이유를 설명 할 것 트레이닝 세트에 관련이없는 문장을 사용할 필요가 소프트웨어 1 %

Harware가 될 가능성은 소프트웨어의 가능성 4 배입니다. 그러나 당신은 분명히 부적절한 것을 선택할 것입니다. 당신이 두 개의 클래스 데이터 집합을 사용하는 경우

이 출력을 얻을 것이다 : 하드웨어 80 % 소프트웨어 20 %

되는 하드웨어의있는 posibility 다시되는 소프트웨어의 4 배에있는 posibility이지만, 두 비율이 100을 요약한다 왜냐하면 분류 자 ​​(classifier)는 두 가지 자세 모두가 전체적인 보편이라고 생각하기 때문이다.

당신은 두 가지 옵션이 있습니다

1 - (무관 한 하드웨어, 소프트웨어,) 3 개 클래스 분류 문제

2-2 클래스 분류 문제와 두 분류 :

분류 1 -> 긍정적 인 등급 하드웨어, 부정적 등급 : 소프트웨어 + 부적절한 등급

분류 자 ​​2 -> 긍정적 인 등급 소프트웨어, 부정적인 등급 : 하드웨어 + 부적절한 등급

+0

설명 주셔서 감사합니다! 나는 무의미한 문장을 다루는 여분의 범주를 만들 것이다. 질문이 하나 더 있습니다. 문장을 분류 할 때 가끔 하드웨어 또는 부적절한 것으로 분류해야하는지에 대해서는 의심 스럽지만 일반적으로는 무의미한쪽에 약간 기울어 져 있습니다. 트레이닝 세트에서 이런 종류의 문장을 다루어야합니까? 또는 훈련 세트에서 이러한 의심스러운 문장을 사용해서는 안됩니까? – user3656099

+0

당신은 잘합니다.기본 아이디어는 데이터 세트가 미래에 좋은 확률을 얻기 위해 갖게 될 HW, SW 및 관련없는 문장의 비율을 포함해야한다는 것입니다. 범주에 대해 잘 모르는 문장에 대해서는 불확실성을 처리 할 수있는 알고리즘이 있지만 작업하기가 더 복잡합니다. 제 생각에는, 그런 종류의 문장의 미래 분류에 신경 쓰지 않는다면, 훈련 세트에서 그것을 제외시키고, 무관하다고 분류한다면, 무관계 레이블을 사용하여 훈련 세트에 포함 시키십시오. – Rob

+0

감사! 나는 그러한 종류의 문장을 훈련 세트에 넣지 않을 것이라고 생각한다. 다른 사람들이 모든 카테고리에 대해 동일한 양의 교육 샘플을 얻을 필요가 없다고 말한 것을 보았습니다. 그들은 확산이 실제 데이터와 동일하다면 괜찮다고 말합니다. SW 카테고리가 극히 소수 (약 70 %는 관련성이없고, 25 %는 하드웨어, 5 %는 소프트웨어)라는 사실에 대해 기뻤습니다. 그렇다면 모든 범주에 대해 동일한 양의 샘플을 얻으려고 정말로해야합니까? http://stackoverflow.com/questions/39444786/how-to-create-training-data-for-text-classification-on-4-categories – user3656099

0

각 방법은 사용할 학습 데이터의 양에 따라 작동합니다. 현재 필자는 7 개의 카테고리를 사용하고 있지만 본질적으로 텍스트로 비슷한 작업을하는 대형 프로젝트를 진행하고 있습니다. 나는 7 개의 라벨을 사용 했으므로 '관련이없는'버킷 '이 없습니다. 결과를 제시 할 때 나는 thresh hold를 사용합니다. 0.75 확실성 등급 이상이면 아무 것도 없습니다. '관련성이없는'버킷을 사용할 때의 문제점은 '관련성이없는'것이 무엇인지를 교육해야한다는 것입니다. 이는 엄청난 양의 다양한 데이터 세트가 될 수 있습니다. 따라서 확률 옵션을 선택하십시오. 관련이없는 95 % 하드웨어 4 % : 당신은 세 가지 클래스 분류 문제가있는 경우

는이 출력을 얻을 수 있습니다