나는이의 데프 때문에 가능하다 가정 fit
기능 은 말합니다 :
X : 배열 형, 모양 = [n_samples, n_features]
지금 나 한테있어,
확실히 의사 결정 트리의 문자열 표현을 생성 한 다음 X[]
실제 기능 이름으로 바꿀 수 있습니다. 하지만 fit
함수가 입력의 일부로 기능 이름을 직접 사용할 수 있는지 궁금합니다 . 각 샘플에 대해 다음 형식을 시도했습니다.
[1, 2, "feature_1", "feature_2"]
[[1, 2], [ "feature_1", "feature_2"]]
그러나 둘 다 작동하지 않았습니다. 그게 무슨 shape
뜻입니까? 예를 들어 주시겠습니까?
fit
기능 자체가 그런 것을 지원하지 않습니다. 그러나 export_graphviz
멤버 함수를 사용하여 기능 레이블을 포함한 의사 결정 트리를 그릴 수 있습니다 . (위의 트리를 생성 한 방법이 아닌가요?). 기본적으로 다음과 같은 작업을 수행합니다.
iris = load_iris()
t = tree.DecisionTreeClassifier()
fitted_tree = t.fit(iris.data, iris.targets)
outfile = tree.export_graphviz(fitted_tree, out_file='filename.dot', feature_names=iris.feature_names)
outfile.close()
이렇게하면 graphviz (별도로 설치되어야 함)가 기존 이미지 형식 (포스트 스크립트, png 등)으로 "렌더링"할 수있는 '점'파일이 생성됩니다. 예를 들어 png 파일을 만들려면 다음을 실행합니다.
dot -Tpng filename.dot > filename.png
도트 파일 자체는 일반 텍스트 형식이며 매우 자명합니다. 텍스트를 조정하려는 경우 선택한 텍스트 편집기에서 간단한 찾기-바꾸기가 작동합니다. graphviz 및 해당 파일과 직접 상호 작용하기위한 파이썬 모듈도 있습니다. PyDot 는 꽤 인기가있는 것 같지만 다른 것도 있습니다.
shape
참조 fit
의 설명서는 레이아웃을 말한다 X
, 훈련 데이터 행렬. 특히 첫 번째 인덱스는 학습 예제에 따라 다를 것으로 예상하고 두 번째 인덱스는 기능을 나타냅니다. 예를 들어 데이터 shape
가 (150, 4) 라고 가정 해 보겠습니다 iris.data
. 이 fit
함수는 각각 4 개의 값으로 구성된 150 개의 학습 예제를 포함하는 것으로 해석합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다