线性模型
决策树
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
data = load_iris()
x_train, x_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2)#划分训练集和验证集 比例4:1
classifier=DecisionTreeClassifier(max_depth=4) #决策树最大深度,默认使用基尼指数
classifier.fit(x_train, y_train) #训练
pred =classifier.predict(x_test) #预测 返回预测值
score =classifier.score(x_test, y_test) #用测试集测试正确率
print(pred, y_test)
print(score)
iris是sklearn中自带的机器学习数据集,非常容易分类。通过load_iris()函数可以加载数据集,返回的是一个对象,对象包含data,target,feature_names,target_names,DESCR,filename,分别对应 属性值,数据标签,每列属性的名字,标签类别名,数据集描述,数据文件所在位置。
基尼值:从某属性所有样本中随机抽出两个,两个样本标签不一样的概率。显然,基尼值越小,该属性数据集的纯度越大。
基尼指数:属性a的基尼指数定义为:
所以,决策树在某个节点时,应选择基尼指数最小的属性划分该节点。
神经网络
支持向量机
贝叶斯分类
聚类
参考
【1】周志华 机器学习
【2】https://github.com/pgmpy/pgmpy_notebook/blob/master/notebooks/1.%20Introduction%20to%20Probabilistic%20Graphical%20Models.ipynb