机器学习
真实值为1 | 真实值为0 | |
预测为1 | TP | FP |
预测为0 | FN | TN |
TP: True Positive
TP:样本为正,预测结果为正;
FP:样本为负,预测结果为正;
TN:样本为负,预测结果为负;
FN:样本为正,预测结果为负。
准确率、精准率和召回率的计算公式如下:
准确率(accuracy): (TP + TN )/( TP + FP + TN + FN)
精准率(precision):TP / (TP + FP),正确预测为正占全部预测为正的比例
召回率(recall): TP / (TP + FN),正确预测为正占全部正样本的比例
F1 = 2*PR / P+R
TPrate = (预测正确的正例) / 样本中1的总数
FPrate = (预测成1的负例) / 样本中0的个数
ROC曲线:
以真正例率为纵坐标,以假正例率为横纵标
AUC是ROC的面积
决策树
非叶子节点 代表测试的条件,对数据属性的测试
分支 代表测试的结果
叶子结点 分类后所获得的分类标记
熵 物体内部的混乱程度
熵小 物体较稳定 纯
熵大 混乱 不稳定
决策树 根节点的确定(计算机计算得到)
构造书的原则:随着树深度的增加,节点的熵迅速的降低,熵降低的速度越快越好,这样有希望得到一颗高度最矮的树
第一步: 基于各个属性划分结果
依据这四个属性分别计算各自的熵值
outlook = overvast 熵 = 0
outlook = sunny 0.971
outlook = rainy 0.971
ID3 信息增益
C4.5 信息增益率
有些属性如(ID)的信息增益很大,但是对最终结果没有任何影响,为了避免这种情况,选择信息增益率
CART 基尼系数
剪枝 树的规模过于庞大是需要进行剪枝
预剪枝:在构建决策树的过程中,提前停止
后剪枝:决策树构建好后,然后才开始剪枝
类似于损失函数
评价函数中增加Tleaf:叶子结点的数量
构造多个决策树
随机森林
多个决策树对于相同数据尽心测试,它的结果可能不一致
因此我们需要这些决策树的结果,进行选择
随机森林
双重随机性
1、数据随机性:进行一个样本的选择,进行有放回的采样
2、特征随机性;随机选择几个特征进行随机树的建立,因为有些特征可能对整体效果有负增益
SKLearn可以构建随机树
Seaborn库,画图