강화하면서 왜 학습자가“약한”가?


28

stats.SE에서 비슷한 질문을 참조하십시오 .

에서 증폭 과 같은 알고리즘 에이다 부스트LPBoost를 "약한"학습자가 위키 백과에서 유용 할 더 나은 기회가보다 더 수행에만 결합하는 것으로 알려져있다 :

사용하는 분류기는 약할 수 있지만 (실질적인 오류율을 표시) 성능이 임의적이지 않은 한 (이진 분류의 경우 오류율이 0.5 인 경우) 최종 모델이 향상됩니다. 랜덤 분류기에서 예상되는 것보다 오류율이 높은 분류기조차도 분류기의 최종 선형 조합에서 음의 계수를 가지므로 역함수처럼 행동하기 때문에 유용합니다.

  • 강한 학습자와 반대로 약한 것을 사용하면 어떤 이점이 있습니까? (예 : "강력한"학습 방법으로 부스트하지 않는 이유-우리는 과적 합이 더 쉬운가?

  • 약한 학습자에게 일종의 "최적의"힘이 있습니까? 그리고 이것은 앙상블의 학습자 수와 관련이 있습니까?

이 질문에 대한 답을 뒷받침하는 이론이 있습니까?


약한 학습자는 오버 피팅 피하기 훈련 데이터
아만 딥 가우 탐에게

답변:


15

따라서 부스팅은 학습 알고리즘으로, 다른 알고리즘을 서브 루틴으로 사용하여 고 정확도 예측을 생성 할 수 있으며,이 알고리즘은 랜덤 추측보다 약간 더 나은 가설을 (역 다항식으로) 효과적으로 생성 할 수 있습니다.

주요 이점은 속도입니다.

Schapire가 1990 년에 그것을 제시했을 때, 1/2보다 약간 작은 오차를 가진 다항식 시간 학습자가 가설을 생성하는 다항식 시간 학습자가 임의로 작은 오류를 갖는 가설을 생성하는 다항식 시간 학습자로 변환 될 수 있다는 것이 획기적인 것이었다.

따라서, 귀하의 질문을 뒷받침하는 이론은 "약한 학습 성의 강점" ( pdf )에 있으며 기본적으로 "강한"학습과 "약한"학습은 동등한 것으로 나타났습니다.

아마도 원래의 질문에 대한 답은 "약한 학습자를 더 저렴하게 구성 할 수있을 때 강한 학습자를 구성하는 것은 의미가 없습니다"입니다.


비교적 최근의 논문들에서, "약한 학습 성과 선형 분리 성의 동등성에 대해 : 새로운 이완과 효율적인 부스팅 알고리즘" ( pdf )이 있습니다. 이해하지 못하지만 관련성이 있고 더 교육을받은 사람들에게 관심이있을 수 있습니다 :)


1
멋진 추천 +1 아마도 대답은 "약한 학습자를 더 싸게 만들 수있을 때 강한 학습자를 구성하는 것이 의미가 없는가?"입니다.
tdc

예, 그런 것 같습니다-답변을 업데이트했습니다! 또한, 내가 올바르게 이해한다면, 이것은 약한 학습자의 힘에 달려 있지 않습니다. 그들은 무작위보다 "약간"향상되어야합니다.
andreister

1
나는 당신이 정말로 의미하는 바는 : 많은 값싼 약한 학습자를 결합하여 유사하거나 더 나은 기술에 도달 할 수있을 때 값 비싼 학습자를 구성 할 필요가 없다는 것 입니다. 실제로, 강한 학습자가 습득 한 기술이 약한 학습자가 습득 한 기술보다 훨씬 높으면, 나는 강력한 학습자를 구성하는 요점을 완전히 볼 수 있습니다 ...
Antoine

9

더 직관적 인 설명으로 아직 언급되지 않은 오버 피팅을 다룰 것입니다. 첫 번째 질문은

강한 학습자와 반대로 약한 것을 사용하면 어떤 이점이 있습니까? (예 : "강력한"학습 방법으로 부스트하지 않는 이유-우리는 과적 합이 더 쉬운가?

내가 이해하는 주된 이유는 다음과 같습니다.

  • 다른 답변에서 꽤 잘 설명 된 속도 ;
  • 정확도 향상 : 이미 학습자가 많으면 강화의 이점은 관련성이 적습니다.
  • 짐작 했듯이 과적 합을 피하십시오 . 이런 식으로 생각해보십시오.

부스팅은 가설 공간 과 다양한 가설 을 결합 하여 더 나은 최종 가설을 도출하는 것입니다. 따라서 부스팅의 큰 힘은 가설 의 다양성 에서 비롯됩니다 .

강력한 학습자를 사용하면이 다양성은 감소하는 경향이 있습니다. 각 반복 후에는 모델이 복잡하기 때문에 많은 오류가 발생하지 않으므로 새로운 가설을 크게 바꾸지 않습니다. 매우 유사한 가설을 사용하면 앙상블은 단일 복합 모델과 매우 유사하여 결과적으로 과적 합하는 경향이 있습니다!


4
이것이 실제 답변입니다.
Matthew Drury

6

강화에서 우리는 약한 학습자들이 강한 학습자들에 비해 더 빨리 훈련되기 때문에 주로 사용합니다. 생각 해봐 Multi-Layer Neural Network를 학습자로 사용하는 경우 많은 교육을 받아야합니다. 반면에 의사 결정 트리는 훨씬 빠르면 많은 것을 훈련시킬 수 있습니다.

100 명의 학습자를 사용한다고 가정 해 보겠습니다. 100 초 안에 NN을 훈련시키고 10 초 안에 의사 결정 트리를 훈련시킵니다. NN을 사용한 첫 번째 부스팅은 100 * 100 초가 걸리고 의사 결정 트리를 사용한 두 번째 부스팅은 100 * 10 초가 걸립니다.

그것은 강력한 학습자들을 활용하여 글을 올리는 기사를 보았습니다. 그러나 그 문제에있어서 강한 학습자들은 저의 견해로는 빠릅니다.

Weka를 사용하여 KDD99 Intrusion Detection Dataset (4 백만 이상)에서 MLP를 훈련하려고했습니다. 내 컴퓨터에서 72 시간 이상이 걸렸습니다. 그러나 부스팅 (Decision Tree-Decision Stump를 사용한 AdaBoostM1)은 단 3 시간이 걸렸습니다. 이 문제에서 나는 강한 학습자, 즉 너무 많은 시간이 걸리는 학습자에게는 부스팅을 사용할 수 없다는 것이 분명합니다.


1
"강력한 학습자를 향상시키는 기사를 보았습니다"-어떤 언급이 있습니까?
tdc
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.