目录
4、支持向量机(Support Vector Machine)
一、前期准备
学习:通过接收到的数据,归纳提取出相同与不同之处。
机器学习:让计算机以数据为基础,进行归纳与总结。
- 监督学习:有标注——分类回归
- 非监督学习:无标注——聚类关联
- 半监督学习:部分有标注;部分无标注
案例数据及数据预处理和特征工程——
二、划分数据集
- 训练集:用来训练和拟合模型
- 验证集:当通过训练集训练出多个模型后,使用验证集数据纠偏或者比较预测
- 测试集:模型泛化能力的考量,泛化对未知数据的预测能力
k-fold交叉验证:将数据集分成k份,每次轮流做一遍测试集,其他做训练集
# 切分训练集和验证集(测试集)
from sklearn.model_selection import train_test_split
f_v = features.values # 原先的数据是DataFrame,装换为数值,得到特征值
f_names = features.columns.values # 得到特征名称
l_v = label.values
x_tt, x_validation, y_tt, y_validation = train_test_split(f_v, l_v, test_size=0.2)
# 将训练集再切分为训练集和测试集
x_train, x_test, y_train, y_test = train_test_split(x_tt, y_tt, test_size=0.25)
三、引入分类的性能评价指标
# 引入评价指标:精确度;召回率;F1分数
from sklearn.metrics import accuracy_score, recall_score, f1_score
准确率(Accuracy)
精确率(Precision):在所有预测为正类的样本中,预测正确的比例,也称为查准率
召回率(Recall):在所有实际为正类的样本中,预测正确的比例,也称为查全率
F1分数(F1 Score):查准率和查全率的调和平均值

四、分类算法概述
1、KNN(K-Nearest Neighbors)
- 算法思想ÿ