【机器学习】记录一些新的认识

2020-10-09  本文已影响0人  虫虫工工队
  • 从最早接触机器学习到现在已经2年了,中间做过别的事情,也并没有很系统地学习过,因此本文用于记录一些我对机器学习的新认识,或者纠正之前认识的误区
  • 我用sklearn做机器学习,所以本文主要是记录我对sklearn的新认识,或纠正误区

关于超参和参数

关于验证集

关于random_state

StratifiedKFold的使用

from sklearn.model_selection import StratifiedKFold
skf=StratifiedKFold(n_splits=10, shuffle=True, random_state=32)
for train_index,test_index in skf.split(X,y):
  train_index=list(train_index)
  test_index=list(test_index)
  X_train, X_test = X.iloc[train_index], X.iloc[test_index]
  y_train, y_test = y.iloc[train_index], y.iloc[test_index]

参考:https://towardsdatascience.com/how-to-train-test-split-kfold-vs-stratifiedkfold-281767b93869

Pipeline和make_pipeline的区别

cross_val_score的理解

cross_val_score的使用

from sklearn.model_selection import cross_val_score, StratifiedKFold
skf=StratifiedKFold(n_splits=5, shuffle=True, random_state=0)
scores=cross_val_score(estimator=pipe,X=X,y=y,cv=skf)

StandardScaler

from sklearn.preprocessing import StandardScaler
df=pd.read_csv('example.csv')
scaled_features = StandardScaler().fit_transform(df.values)
scaled_features_df = pd.DataFrame(scaled_features, index=df.index, columns=df.columns)

GridSearchCV

上一篇 下一篇

猜你喜欢

热点阅读