Я пытался понять важность функций, используемых в дереве решений, которые я смоделировал. Я заинтересован в обнаружении веса каждой функции, выбранной в узлах, а также сам термин. Мои данные-куча документов.
Это мой код для дерева решений, я изменил фрагмент кода из Scikit-learn, который извлечен (http://scikit-learn.org/stable/auto_exa ... ances.html):/p>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> * ensemble/plot_forest_importances.html)from sklearn.feature_extraction.text import TfidfVectorizer
### Feature extraction
tfidf_vectorizer = TfidfVectorizer(stop_words=stopwords,
use_idf=True, tokenizer=None, ngram_range=(1,2))#ngram_range=(1,0)
tfidf_matrix = tfidf_vectorizer.fit_transform(data[:, 1])
terms = tfidf_vectorizer.get_features_names()
### Define Decision Tree and fit
dtclf = DecisionTreeClassifier(random_state=1234)
dt = data.copy()
y = dt["label"]
X = tfidf_matrix
fitdt = dtclf.fit(X, y)
from sklearn.datasets import load_iris
from sklearn import tree
### Visualize Devision Tree
with open('data.dot', 'w') as file:
tree.export_graphviz(dtclf, out_file = file, feature_names = terms)
file.close()
import subprocess
subprocess.call(['dot', '-Tpdf', 'data.dot', '-o' 'data.pdf'])
### Extract feature importance
importances = dtclf.feature_importances_
indices = np.argsort(importances)[::-1]
# Print the feature ranking
print('Feature Ranking:')
for f in range(tfidf_matrix.shape[1]):
if importances[indices[f]] > 0:
print("%d. feature %d (%f)" % (f + 1, indices[f], importances[indices[f]]))
print ("feature name: ", terms[indices[f]])
< /code>
Я прав, если предположить, что использование терминов [индексы [f]] < /code> (что является вектором термина функции) печатать фактический термин признаков, используемый для разделения дерева на определенном узле? Как извлечь сам термин, чтобы я мог проверить процесс, который я развернул в #1?fitdt = dtclf.fit(X, y)
with open(...):
tree.export_graphviz(dtclf, out_file = file, feature_names = terms)
Подробнее здесь: https://stackoverflow.com/questions/342 ... sion-trees
Особенность значения извлечения деревьев решений ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Автоматизированное принятие решений с использованием классификатора дерева решений
Anonymous » » в форуме Python - 0 Ответы
- 4 Просмотры
-
Последнее сообщение Anonymous
-