1、train_test_split
sklearn分割数据函数train_test_split和np.split()有点像,
随机数种子:其实就是该组随机数的编号,在需要重复试验的时候,保证得到一组一样的随机数。比如你每次都填1,其他参数一样的情况下你得到的随机数组是一样的。但填0或不填,每次都会不一样。随机数的产生取决于种子,随机数和种子之间的关系遵从以下两个规则:种子不同,产生不同的随机数;种子相同,即使实例不同也产生相同的随机数。
train_test_split(train_data,train_target,test_size=数字, random_state=0)
- ----train_data:所要划分的样本特征集
- ----train_target:所要划分的样本结果
- ----test_size:样本占比,如果是整数的话就是样本的数量
- ----random_state:是随机数的种子
2、svm.SVC()
clf = svm.SVC(c = 0.8, kernel = 'rbf', gamma = 20, decision_function_shape = 'ovr')
clf = svm.SVC(c = 0.8, kernel = 'linear', decision_function_shape = 'ovr')
- ----kernel='linear'时,为线性核,C越大分类效果越好,但有可能会过拟合(defaul C=1)
- ----kernel='rbf'时(default),为高斯核,gamma值越小,分类界面越连续;gamma值越大,分类界面越“散”,分类效果越好,但有可能会过拟合
- ----decision_function_shape='ovr'时,为one v rest,即一个类别与其他类别进行划分
- ----decision_function_shape='ovo'时,为one v one,即将类别两两之间进行划分,用二分类的方法模拟多分类的结果
sklear 中 svm调用全部代码
clf = svm.SVC(C=0.8, kernel='rbf', gamma=20, decision_function_shape='ovr')
clf.fit(x_train, y_train.ravel()) # 模型的训练
clf.score(x_train, y_train) # 精度
y_hat = clf.predict(x_train) # 训练以后传入新的特征值进行预测
clf.score(x_test, y_test)
y_hat = clf.predict(x_test)
3、fit 和 transform 和 fit_transform