불확실한 클래스 레이블 분류기


11

클래스 레이블이 연결된 인스턴스 집합이 있다고 가정 해 봅시다. 이러한 인스턴스가 어떻게 표시 되었는지 는 중요하지 않지만 클래스 멤버쉽은 얼마나 확실 합니다. 각 인스턴스는 정확히 하나의 클래스에 속합니다 . 각 클래스 멤버쉽의 확실성을 1에서 3까지의 명목 속성으로 정량화 할 수 있다고 가정합니다 (각각 불확실 함).

그러한 확실성 측정을 고려하는 분류 기가 있습니까? 그렇다면 WEKA 툴킷에서 사용할 수 있습니까?

예를 들어 인스턴스가 항상 완전히 확실하지 않은 인간으로 분류되는 경우와 같이 이러한 상황이 자주 발생한다고 생각합니다. 필자의 경우 이미지를 분류해야하며 때로는 이미지가 둘 이상의 클래스에 속할 수 있습니다. 이 경우 클래스에 높은 불확실성을 주지만 여전히 하나의 클래스로 분류하십시오.

또는 특수 분류자가없는이 문제에 대한 다른 접근법이 있습니까? 예를 들어, 훈련을 위해 "확실한"분류 만 취하는가? 이 경우 "테두리"사례는 다루지 않기 때문에 더 많은 오 분류가 있을까 걱정됩니다.


1
각 항목이 정확히 하나의 클래스에 속합니까? 또는 일부 항목이 확실성이 1 인 클래스 12와 확실성이 2 인 클래스 34에 속할 수 있습니까?
user31264

이 경우 각 항목은 정확히 하나의 클래스에 속합니다.
wnstnsmth

답변:


8

먼저 @Marc Claesen이 이미 설명했듯이, 반 감독 분류는 클래스가 실제로 다르다는 것을 알고있는 상황을 처리하는 기술 중 하나이지만 실제로 어떤 클래스가 속하는지 확실하지 않습니다.

그러나 "현실"이 그다지 명확하지 않고 관련이있는 상황이 있으며, 실제로 구별되는 수업이 있다는 가정은 충족되지 않습니다. 우리가 그러한 조건을 만난 곳).

반 감독 분류 자 에 대해 결정해야 할 중요한 가정 이 하나 있습니다 . 피처 공간에서 클래스 경계는 샘플 밀도가 낮다 는 가정입니다 . 이것을 클러스터 가정이라고합니다.
데이터에 기반한 현실에 고유 한 클래스가 있더라도 데이터 세트에 불균형 적으로 더 많은 경계선 사례가있을 수 있습니다. 예를 들어, 분류 기술이 어려운 사례를 분류하는 데 목표를 두는 반면 명확하고 쉬운 사례는 관심이없고 이미 훈련 데이터가이를 반영하는 경우 상태.

훈련을 위해 "확실한"분류 만 취하는가? 이 경우 "테두리"사례는 다루지 않기 때문에 더 많은 오 분류가 있을까 걱정됩니다.

경계선 사례를 제외하는 것은 종종 나쁜 생각이라는 데 전적으로 동의합니다. 어려운 모든 사례를 제거하면 인위적으로 쉬운 문제가 발생합니다. IMHO 경계선 사례를 제외하는 것이 일반적으로 모델 교육으로 중단되지는 않지만 경계선 케이스도 테스트에서 제외되므로 모델을 쉽게 테스트 할 수 있습니다. 그것으로 당신은 모델이 경계선 사례에서 잘 수행되지 않는다는 것을 깨닫지 못할 것입니다.

다음은 응용 프로그램에서 현실이 "혼합 된"클래스를 가질 수 있다는 점에서 문제와 다른 문제에 대해 작성한 두 가지 논문입니다.

링크는 성능 계산을 위해 개발 한 R 패키지의 프로젝트 페이지로 이동합니다. 공식 웹 페이지와 논문 원고 모두에 대한 추가 링크가 있습니다. 지금까지 Weka를 사용하지 않았지만 R에 대한 인터페이스를 사용할 수 있음을 이해합니다 .


실용적인 고려 사항 :

  • 복사 및 레이블에 따라 다른 접근 방식은 간단하지만 실제로 모든 분류 자 ​​및 구현에서 제대로 작동하지는 않습니다. 예를 들어, AFAIK libSVM는 각 데이터 포인트의 모든 복사본이 동일한 교차 유효성 검사 폴더에 유지되어야한다는 교차 유효성 검사를 통해 튜닝에 알릴 방법이 없습니다 . 따라서 libSVM튜닝은 아마도 과적 합 모델을 만들어 낼 것입니다.
  • 또한 로지스틱 회귀 분석의 경우 많은 구현에서 필요한 부분 멤버쉽 레이블을 허용하지 않는 것으로 나타났습니다.
  • 위의 논문에 사용한 구현은 실제로 로지스틱을 시그 모이 드 연결 함수 ( nnet::multinom) 로 사용하여 숨겨진 레이어가없는 ANN 입니다.

첫 번째 실제 고려 사항은 사실이지만 libsvm특히 적용되지는 않습니다 . libsvm저자들은 모두이 문제를 피하기 위해, 예를 가중 구분이 가능한의 모든 방출의 다른 버전을 제공한다. Weka / scipy / ...와 같은 래퍼 대신 알고리즘 라이브러리를 직접 사용하도록하는 것은 이런 종류의 것들입니다. csie.ntu.edu.tw/~cjlin/libsvmtools/#weights_for_data_instances
Marc Claesen

@MarcClaesen : 감사합니다-나는 그것을 보지 못했습니다. 그러나 하나의 가중치가 1/3 클래스 A이고 다른 하나가 2/3 클래스 B 인 동일한 사례의 인스턴스 를 제공 할 필요가 없습니까? 어쨌든 명확한 사례를 많이 제공하지 않아도 튜닝의 문제가 줄어 듭니다 (내 데이터의 경우 실제 사례를 여러 번 측정하는 "계층 적"데이터 구조가 있으므로 외부에서 튜닝 분할을 수행해야합니다. )
SX

@cbeiteles 인스턴스가 여러 클래스에 속할 때이 인스턴스 가중치를 적용하더라도 실제로 여러 번 제공해야합니다. 나는 그 가능성을 고려하지 않았다.
Marc Claesen

6

이것은 반 감독 학습에서 다루어지는 분류의 일반화 중 하나입니다. 확실성 측정이있는 경우 훈련 인스턴스에 가중치를 부여 할 수있는 방법을 사용할 수 있습니다. 확실성이 높을수록 해당 인스턴스 가중치가 커집니다. 이러한 접근 방식의 예로는 인스턴스 가중치 SVM 및 로지스틱 회귀가 있습니다.

weka에 이러한 알고리즘이 구현되어 있다고 확신합니다. 다른 모든 방법이 실패하면 확실성이 높은 인스턴스에서 여러 인스턴스를 샘플링하십시오. 기존 SVM 또는 LR에이 방법을 사용할 수 있습니다.

예 : SVM

내가 실수하지 않으면 weka는 LIBSVM에 대한 인터페이스를 가지고 있습니다 . LIBSVM을 사용하면 모든 릴리스에서 클래스 가중치 SVM을, 각 릴리스의 특수 버전에서 인스턴스 가중치 SVM을 해결할 수 있습니다. weka가 후자를 지원하지 않는다고 가정합니다 (필요한 것입니다).

,ξ2+영형에스나는ξ나는+이자형나는ξ나는,
ξ영형에스이자형

×


(+1) 이것입니다! 레이블과 인스턴스 가중치 (일명 레이블 확실성)가 다른 인스턴스를 복제함으로써 Random Forests, Naive Bayes 등과 같은 알고리즘을 적용 할 수도 있습니다. 인스턴스 가중치는 매우 일반적이므로 Weka는이를 지원하는 학습자를 보유해야합니다. Rapidminer (weka의 경쟁자)가합니다. 확실성을 1로 설정하면 "선명한"다중 레이블 문제를 모델링 할 수도 있습니다.
steffen

WEKA는 LIBSVM을 지원하지만 인스턴스 가중치는 지원하지 않습니다. 인스턴스 복제라는 아이디어는 아주 좋은 아이디어입니다. 특히 모든 "전통적인"학습자가이를 처리 할 수 ​​있기 때문입니다.
wnstnsmth

2

문제의 어려움은 불확실한 레이블이 얼마나 잘못되어 있는지에 크게 의존합니다. 불확실한 레이블이 시간의 90 %와 같은 올바른 경우에는 로지스틱 회귀 만 사용하여 벗어날 수 있습니다. 반면에, 라벨이 거의 절반에 해당하는 시간이면, 특별한 기술을 사용해야 할 수도 있습니다. 여기에 비슷한 문제가 생겼습니다. (라벨 당 여러 개의 관측 값이 있었지만 설정이 비슷합니다.)


-5

이미지 인식 및 분류에 대해 간략히 설명했습니다.

랜덤 포레스트는 사용하기 쉬운 기술입니다. R에서 구현했으며 Weka에서도 사용할 수 있습니다. 사용 편의성은 예측 정확도보다 우선합니다. 충분히 큰 트레이닝 세트가 있으면 여러 레이블을 분류 할 수 있습니다.

손으로 쓴 숫자를 잘 인식했지만 이미지가 더 복잡하면 시험판만으로도 잘 작동하는지 알 수 있습니다.


4
불확실한 클래스 레이블과 어떤 관련이 있습니까?
wnstnsmth
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.