1

나는 페이지를 분류하기 위해 노력하고 있는데, 특히 단어의 모음, 페이지 레이아웃을 기반으로하는 문서에서 페이지를 검색하거나, 테이블을 포함하는지 여부, 대담한 제목 등이 있습니다.이 전제로 나는 pandas.DataFrame을 이렇게 만들었습니다. 각 문서 :이 변수를 사용하여 문서 분류에 어떤 분류 알고리즘을 사용해야합니까?

 
    page totalCharCount matchesOfWordX matchesOfWordY   hasFeaturesX  hasFeaturesY hasTable  score 
0 0.0   608.0    0.0    2.0     0.0    0.0  0.0  0.0 
1 1.0   3292.0    1.0   24.0     7.0    0.0  0.0  0.0 
2 2.0   3302.0    0.0   15.0     1.0    0.0  1.0  0.0 
3 3.0   26.0    0.0    0.0     0.0    1.0  1.0  1.0 
4 4.0   1851.0    3.0   25.0     20.0    7.0  0.0  0.0 
5 5.0   2159.0    0.0   27.0     6.0    0.0  0.0  0.0 
6 6.0   1906.0    0.0    9.0     15.0    3.0  0.0  0.0 
7 7.0   1825.0    0.0   24.0     9.0    0.0  0.0  0.0 
8 8.0   2053.0    0.0   20.0     10.0    2.0  0.0  0.0 
9 9.0   2082.0    2.0   16.0     3.0    2.0  0.0  0.0 
10 10.0   2206.0    0.0   30.0     1.0    0.0  0.0  0.0 
11 11.0   1746.0    3.0   31.0     3.0    0.0  0.0  0.0 
12 12.0   1759.0    0.0   38.0     3.0    1.0  0.0  0.0 
13 13.0   1790.0    0.0   21.0     0.0    0.0  0.0  0.0 
14 14.0   1759.0    0.0   11.0     6.0    0.0  0.0  0.0 
15 15.0   1539.0    0.0   20.0     3.0    0.0  0.0  0.0 
16 16.0   1891.0    0.0   13.0     6.0    1.0  0.0  0.0 
17 17.0   1101.0    0.0    4.0     0.0    1.0  0.0  0.0 
18 18.0   2247.0    0.0   16.0     5.0    5.0  0.0  0.0 
19 19.0   598.0    2.0    3.0     1.0    1.0  0.0  0.0 
20 20.0   1014.0    2.0    1.0     16.0    3.0  0.0  0.0 
21 21.0   337.0    1.0    2.0     1.0    1.0  0.0  0.0 
22 22.0   258.0    0.0    0.0     0.0    0.0  0.0  0.0 

나는 나이브 베이 즈 및 SVM 알고리즘을 살펴 본다거야하지만 난 하나가 문제를 더 잘 맞는 확실하지 않다. 변수는 독립적입니다. 그 중 일부는 점수를 높이기 위해 존재해야하며, 그 중 일부는 totalCharCount과 같이 반대 문서 빈도와 일치합니다.

어떤 도움이 필요합니까?

고맙습니다.

답변

0

레이블이 연속 점수라고 가정하기 때문에 회귀 문제입니다. SVM은 분류 문제에 더 일반적입니다. 거기에 가능한 알고리즘이 많이 있습니다. 로지스틱 회귀 (logistic regression)는 이와 같은 것을 해결하는 데 매우 일반적 일 것입니다.

편집은 문제가

분류 :-) 분류 문제가되었다 게시물을 편집 이제

= 일부 클래스는 당신은 당신의 데이터가 (참 거짓) 또는 다항 부울 등으로 분류 할

회귀 (아주 작은 큰, 중간, 작은) = 연속 값 이제

(0과 1 사이의 모든 실수) 당신이 당신의 SVM을 시도하고 작동하는지 볼 수 있습니다 귀하의 데이터에 충분히 적합합니다. 난 당신이 더 많은 데이터가 가정 문제는 데이터를 많이 따라 달라집니다

는 일반적으로

+0

열 점수는 내가 예측하려고하는 것입니다. 값은 0 또는 1 일 수 있으며, 찾으려고하는 페이지와 일치 할 수 있습니다. 나는 그 지위를 편집했다.로지스틱 회귀 알고리즘에 대해 살펴 보겠습니다. 플로리안에게 감사의 말을 전합니다! – rePack

0

(스케일링, 균형) 그는 좋은 점을 가지고 Maxim의 답변을 @ 참조하십시오, 그것은 가장 적합한 어떤 방법 말하기 어렵다 . 그러나 여전히 몇 가지 아이디어를 바로 여기에 :

  • 이 기능은 독립적이라고 말하고 있지만, 그것은 totalCharCountmatchesOfWordY가 의존하는 것 같다. 문서의 문자가 많을수록 일치 할 가능성이 높다고 가정하는 것이 합리적이라고 생각합니다. 그것은 강한 기호 에 대해 Naive Bayes입니다.

  • 이진 로지스틱 회귀가 훨씬 좋아 보이며 첫 번째 후보가됩니다. 그러나 한 가지 제안은 totalCharCount 기능을 표준화하는 것입니다. 그 크기가 다른 기능보다 훨씬 크기 때문입니다.

  • 클래스 1의 학습 예제가 더 이상 없으면 데이터의 압축이 풀립니다. 이 경우 constant prediction problem에 들어갈 가능성이 큽니다. 가능한 해결책은 weighted cross entropy 손실 기능을 사용하는 것입니다.

  • SVM classifier 외에도 xgboost.XGBClassifier도 고려하십시오. 둘 다 아주 좋은 정확도를 줄 수 있습니다.

관련 문제