2016-10-14 4 views
1

sklearn decisionTree, 등을 수정하고 싶습니다. 조건을 변경하거나 노드/리프 등을 자르십시오.편집 scikit-learn decisionTree

하지만 파일을 내보낼 수 있으면 가져 오기 위해 편집 할 수있는 기능이없는 것처럼 보입니다.

어떻게 decisionTree를 편집 할 수 있습니까?

환경 :

  • 윈도우 10는
  • python3.3
  • sklearn 0.17.1 워드 프로세서가 DecisionTreeClassifier에 대한 splitter kwarg가 문자열이라고하더라도

답변

3

, 당신이 줄 수 그것도 수업.

https://github.com/scikit-learn/scikit-learn/blob/0.17.X/sklearn/tree/_splitter.pyx

그리고 수행 : 증거 : 당신이 여기에있는 분배기 클래스 중 하나의 하위 클래스 수 있었던 것처럼

https://github.com/scikit-learn/scikit-learn/blob/412996f/sklearn/tree/tree.py#L353-L360

이 보이는

my_decision_tree = sklearn.tree.DecisionTreeClassifier(splitter=mySplitter) 
+0

감사합니다! 나 같은 파이썬 초보자가 어렵다는 걸 이해합니다. –

1

당신이 편집을 생각하는 경우 모델, 나는 이것을하는 쉬운 방법이 없다고 생각합니다. 규칙 세트 [1], [2]을 내보내는 (오히려 시각화하는) 방법에 대한 논의가 있었지만 규칙 세트를 가져 오는 것은 아닙니다. 그러나 가장 최적의 솔루션에 적합 할 때 수동으로 룰 세트를 편집하는 것이 요점은 무엇입니까? 그런 다음 다시 조건을 알고 있다면 scikit-learn을 전혀 사용하지 않고 단순히 중첩 된 if-else 조건 집합을 사용할 수 있습니다.

스플리터의 Impl을 변경해야하는 경우 @zemekeneng이 제안한대로 할 수 있습니다.

+0

링크가 환상적입니다. – zemekeneng

+0

고마워요! 나는 그것이 어렵다는 것을 이해한다. 자신의 결정 트리 프로그램을 만들 예정입니다. –

관련 문제