의사 결정 트리 최적화를위한 알고리즘


17

배경

이진 결정 트리 는 각 내부 노드 (및 루트)에 인덱스 j { 1 ,으로 레이블이 지정된 루트 트리 입니다. . . , n } 은 루트에서 리프까지의 경로가 색인을 반복하지 않도록하고, 리프는 { A , B }의 출력으로 레이블이 지정되며 각 모서리는 왼쪽 자식의 경우 0 , 오른쪽 자식의 경우 1 로 레이블이 지정됩니다 . 입력 x에 트리를 적용하려면 :Tj{1,...,n}{A,B}01x

  1. 루트에서 시작
  2. 리프에있는 경우 리프 레이블 또는 B 를 출력 하고 종료합니다.AB
  3. x j = 0 이면 현재 노드 의 레이블 를 읽고 왼쪽 자식으로 이동하고 x j = 1 이면 오른쪽 자식으로 이동하십시오.jxj=0xj=1
  4. 2 단계로 이동

트리는 함수를 평가하는 방법으로 사용됩니다. 특히 각 x { 0 , 1 } n에 대해 T ( x ) = f ( x ) 가있는 경우 트리 는 총 함수 f를 나타냅니다 . 트리의 쿼리 복잡도는 그 깊이이며 함수의 쿼리 복잡성은 트리를 나타내는 가장 작은 트리의 깊이입니다.Tfx{0,1}nT(x)=f(x)


문제

이진 결정 트리 (T)가 출력되면 T 및 T '가 동일한 기능을 나타내도록 최소 깊이의 이진 결정 트리 (T')를 출력한다.

질문

가장 잘 알려진 알고리즘은 무엇입니까? 하한이 알려져 있습니까? 것을 알고 있다면 어떨까요? T ' 만 대략적으로 최소 깊이를 요구한다면 어떨까요?depth(T)=O(logdepth(T))T


순진한 접근

순진한 접근 방식은 로 주어지며 깊이 d - 1 의 모든 이진 결정 트리를 재귀 적으로 열거 하고 T 와 동일한 것으로 평가되는지 테스트합니다 . 이것은 O ( d 2 n n !d=depth(T)d1T단계 (T(x)가 임의의x에 대해 평가하는것을 확인하기 위해d단계가필요하다고 가정). 더 나은 접근 방법이 있습니까?O(d2nn!(nd)!)dT(x)x

자극

이 질문은 쿼리 복잡성과 시간 복잡성 간의 균형 에 관한 이전 질문에 의해 동기가 부여됩니다 . 특히, 목표는 전체 기능에 대한 시간 분리를 제한하는 것입니다. 런타임 t 로 시간 최적 알고리즘에서 트리 를 만든 다음 쿼리 최적 알고리즘을 위해 트리 T ' 로 변환하고 싶습니다 . 불행히도, t O ( n ! / ( n d ) ! ) (그리고 종종 d Θ ( n )TtTtO(n!/(nd)!)dΘ(n)) 병목 현상이 전환입니다. 우리가 대체 할 수 있다면 좋을 것입니다 ! / ( n - d ) ! 2 d 와 같은 것으로 .n!/(nd)!2d


최적의 의사 결정 트리를 찾는 것은 NP 완료입니다. 나는 의사 결정 이론과 데이터 마이닝 수업에서 노트를 기반으로했으며 결과를 소개 한 원본 논문을 알지 못한다고 배웠습니다.
chazisop

1
@chazisop 감사합니다. 최적의 의사 결정 트리를 찾는 것이 NP에 있다는 것은 분명하지 않지만, 더 자세히 생각 / 검색 할 것입니다. 때로는 정리 진술을 아는 것이 반증을 입증하는 데 반감됩니다.
Artem Kaznatcheev

나는 이것에 대한 가장 빠른 참고 문헌은 학습 결정 목록과 나무에 대한 하위 경계라고 생각합니다. (Hancock et al. 1994) cs.uwaterloo.ca/~mli/dl.ps
Lev Reyzin

1
최적의 의사 결정 트리를 찾는 것이 NP- 완전 문제라는 증거는 Laurent Hyafil과 Ronald L. Rivest가 최적의 이진 의사 결정 트리를 작성하는 데있어 NP-complete (1976) 라는 증거가되었습니다 . 참조 : here
antoine

답변:


16

3 가지 답변이 있는데 모두 경도가 약간 다릅니다.

f:{0,1}n{0,1}

답변 1

TfTf

답변 2

Tff

답변 3

sfTfNPDTIME(2nϵ)ϵ<1Tskk0

다음과 같은 주장을 통해 의사 결정 트리에 대한 Occam 알고리즘 학습 이론의 알려진 결과 에서이 더 강력한 대답 (약한 가정에 의존)을 만들 수 있다고 생각합니다 .

  1. nnlogss
  2. NPDTIME(2nϵ)ϵ<1sskk0

sks


(1 시간 이내에 게시 된 이 답변 에서 귀하의 답변을 찾았습니다 .)ϵ<1ϵϵ 또한,이 논문의 어느 부분이 2입니까?

초록의 글 머리 기호 # 2를 참조하십시오. researcher.watson.ibm.com/researcher/files/us-vitaly/…
Lev Reyzin

(Ricky Demer와 같은 답변에서 나온 것) 1과 2에서 "답 3"을 얻는 방법에 대해 좀 더 자세히 설명해 주시겠습니까? 나는 학습 이론에 익숙하지 않고 부품을 연결하는 데 어려움
Marc

이 일관성 문제와 학습 가능성은 Occam의 면도기를 통해 밀접하게 관련되어 있습니다. 작은 세트에서 일관된 기능을 찾을 수 있다면 PAC 학습에 성공할 수 있다는 것입니다. 따라서 학습 결과의 경도는 "일관성 경도"결과를 의미합니다. 댓글로 얼마나 더 설명 할 수
있을지 모르겠습니다

1
여기에 언급 된 모든 결과는 의사 결정 트리의 크기 (노드 수 또는 잎 수)를 최소화하는 것과 관련이 있지만 원래 질문은 깊이를 최소화하는 것과 관련이 있습니다. 깊이에 대한 결과가 있습니까?
EXPTIME- 완료
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.