1 python pandas scikit-learn train-test-split
我正在尝试比较不同的算法,看看哪种算法最适合我的问题。
我直接尝试本教程中的代码:https ://machinelearningmastery.com/machine-learning-in-python-step-by-step/
特别是在下面的代码中:
import sys
import pandas as pd
import scipy as sp
import sklearn as sk
import numpy as np
import matplotlib.pyplot as plt
from pandas.plotting import scatter_matrix
from sklearn.model_selection import train_test_split
from sklearn.model_selection import KFold
from sklearn.linear_model import LogisticRegression
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.neighbors import KNeighborsClassifier
from sklearn.svm import SVC
from sklearn.naive_bayes import GaussianNB
from sklearn.tree import DecisionTreeClassifier
Run Code Online (Sandbox Code Playgroud)
import sys
import pandas as pd
import scipy as sp
import sklearn as sk
import numpy as np
import matplotlib.pyplot as plt
from pandas.plotting import scatter_matrix
from sklearn.model_selection import train_test_split
from sklearn.model_selection import KFold
from sklearn.linear_model import LogisticRegression
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.neighbors import KNeighborsClassifier
from sklearn.svm import SVC
from sklearn.naive_bayes import GaussianNB
from sklearn.tree import DecisionTreeClassifier
Run Code Online (Sandbox Code Playgroud)
models = []
models.append(('LR', LogisticRegression(solver='liblinear', multi_class='ovr')))
models.append(('LDA', LinearDiscriminantAnalysis()))
models.append(('KNN', KNeighborsClassifier()))
models.append(('CART', DecisionTreeClassifier()))
models.append(('NB', GaussianNB()))
models.append(('SVM', SVC(gamma='auto')))
Run Code Online (Sandbox Code Playgroud)
当我运行这个时,我不断得到(<----第12行):
results = []
names = []
for name, model in models:
kfold = model_selection.KFold(n_splits=10, random_state=seed)
cv_results = model_selection.cross_val_score(model, X_train, Y_train, cv=kfold, scoring=scoring)
results.append(cv_results)
names.append(name)
msg = "%s: %f (%f)" % (name, cv_results.mean(), cv_results.std())
print(msg)
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释 KFold 的具体工作原理以及为什么它不接受该实例吗?
KFold是sklearn.model_selection模块的一部分。
确保将名称导入到您的工作区中,方法是:
from sklearn import model_selection
Run Code Online (Sandbox Code Playgroud)
并使用
model_selection.KFold
Run Code Online (Sandbox Code Playgroud)
或者
import sklearn.model_selection
sklearn.model_selection.KFold
Run Code Online (Sandbox Code Playgroud)
甚至
from sklearn.model_selection import KFold
KFold
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10139 次 |
| 最近记录: |