석사 때 공부하며 정리했던 부분, Labeled Data를 얻기 힘든 현실에서 어떻게든 응용할 수 있는 방법이겠거니 생각할 수도 있지만, 일단 독립적인 두 개의 feature Set을 만들기도 어렵거니와, 그 두 개의 Classifier가 각각 제 몫을 해준다는 보장을 얻기도 힘들다.
하지만 어떻게든 웹 데이터 쪽에 응용해볼 수 있지 않을까? 사이트 개편 플젝 끝나면 필터링 쪽에 붙어서 실험하고 응용해보고 싶다.
--------------------------------------------------------------------
0) What is the Semi-Supervised Learning?
- Supervised Learning : Labeled Data를 이용해서 학습.
- Unsupervised Learning : Unlabeled Data를 이용해서 학습.
- Semi-Supervised Learning : Labeled Data와 Unlabeled Data를 이용해서 학습
: Labeled Data를 얻기 위한 비용이 높고, 어려운 경우가 많음.
: 적은 양의 labeled Data와, 많은 양의 Unlabeled Data를 이용하여 학습.
: 방안 - S3VM, Co-Training 등
1) Co-training Method
- "Combining Labeled and Unlabeled Data with Co-Training" ,
A. Blum and T. Mitchell, Carnegie Mellon University(1998)
- 2개의 독립적인 속성 그룹(Two distinct views)으로 각각 Classifier를 학습하고
비용이 저렴한 Unlabeled Data를 이용하여 적은 양의 Labeled Data를
늘려 더 많은 Training Set을 확보하는 방법.
- Web Page 분류 문제에 적용 실험.
: 대상 데이터
- 1051 web pages collected from Computer Science Department weg sites
at 4 Universitieds : Cornell, UniV. of Washington, UniV. of Wisconsin, UniV. of Texas.
(http://www.cs.cmu.edu/afs/cs/project/theo-11/www/wwkb/)
- "course home page" 이면 positive(22%), 아니면 negative(78%).
- X1 : Web page contents.
- X2 : 다른 web page에서 대상 page를 가리키는 hyperlink.
- L : labeled examples 로 구성된 Set.
- U : unlabeled examples 로 구성된 Set.
(1) Naïve Bayes algorithm(text-catagorization 작업에 유용)
L 의 X1 을 이용하여 Classifer h1 학습.
L 의 X2 을 이용하여 Classifer h2 학습.
(2) U 에서 u개의 unlabeled examples 을 랜덤 추출하여 샘플 U' 생성. ( u=75)
U' 에 Classifer h1 , h1 를 적용하여 Label값 추정.
(3) 추정한 U' 에서 가장 신뢰성 높은 p개의 positive examples 과
n개의 negative examples 를 선택해 L 로 포함.
(p=1 , n=3 , 원본 데이터의 분포 고려;Data Distribution)
(4) p+n개의 데이터를 L 로 옮기고 난 뒤, U' 에 2p+2n 개의 데이터를 U 에서 랜덤 추가.
(5) (1)~(4) 까지의 과정을 k번 만큼 반복 (k=30)
- Test Set error는 초기 데이터 셋 분할을 랜덤하게 5회 실시하여 실험한 것의 평균치.
Random 예측시의 Error Rate 는 22%
- Co-Training이 Supervised Learning 보다 약 2배 정도 성능이 우수함.
Hyperlink-based Classifier에서 성능이 비슷한 이유는, Hyperlink 특성상, 포함된 문장이
짧고, 사용되는 문법도 단순하기 때문에 분류 문제에 크게 효과를 발휘하지 못한
것으로 추측.
: 결론 및 요약.
- 서로 상관관계가 전혀 없는(Completely independent) 두 속성 집합(two views)을
이용하여 Unlabled Data를 Labeled Data 로 포함시켜, 구하는 데 비용이 드는
Labled Data를 늘림으로써, 모델의 효용성을 제고하는 방법론.
- 단 이 방법은 현실문제를 지나치게 단순화 시킨 면이 있으며, 상관관계가 전혀 없는
두 속성 집합이 구성 가능한 문제가 많지 않다는 단점이 있음.
- 그 외 적용가능한 분야로는 television broadcasts 에서, X1 은 possible video images 로,
X2 는 possible audio signals로 하는 티비 방송 분류 문제 등이 있겠다.
< 적용 시 중요한 점 >
(1) X 는 X1 , X2 로 나누어질 수 있어야 한다.
(2) X1 과 X2 는 서로에게 완전히 독립이어야 한다.
(3) X1 과 X2 는 각자 스스로 classifier의 생성이 가능해야 한다.
'일 > Data Mining' 카테고리의 다른 글
[SAS tip] sas datetime value를 yyyymmddhhmmss 형식으로 변형하기. (0) | 2008.01.22 |
---|---|
좋은 모델을 만드는 법. (0) | 2007.12.16 |
'Data Mining' Talk을 듣고. (0) | 2007.05.11 |
역전파 알고리즘(Backpropagation) (0) | 2007.04.05 |
[퍼옴] 벡터의 내적과 외적 (0) | 2007.04.05 |