西瓜书笔记01:logistic回归、决策树

logistic回归

@[回归|分类|极大似然|泰勒级数|牛顿法|Hessian矩阵|sigmoid函数]

线性模型可以用来回归学习,若要做分类就要找一个单调可微函数将分类标记y与线性回归预测值联系起来。

如何求w和b?

  • 二分类任务中,sigmoid函数即可将预测值z转换为0/1值。其中,sigmoid function: y = 1 1 + e z 。将线性模型代入,即为 y = 1 1 + e ( w T x + b )

  • 先算 y 1 y 再得 l n ( y 1 y ) = w T x + b 。令y为后验概率估计p(y=1|x),则 l n ( p ( y = 1 | x ) p ( y = 0 | x ) ) = w T x + b 。赋值法可得,

    p ( y = 1 | x ) = e w T x + b 1 + e w T x + b

    p ( y = 0 | x ) = 1 1 + e w T x + b

  • 极大似然估计w,b,最大化

    l ( w , b ) = i = 1 m l n p ( y i | x i ; w , b )

    再根据牛顿法解出最优解。

牛顿法利用泰勒级数公式,求经过(x0,f(x0))点斜率为 f ( x 0 ) 的直线与x轴交点。即 f ( x ) = f ( x 0 ) + f ( x 0 ) Δ x + . . . = 0 x n + 1 x n = f ( x n ) f ( x n ) 。计算hessian矩阵开销大,所以有了拟牛顿法。

优缺点

优点:计算代价不高,易于理解和实现。
缺点:容易欠拟合,分类精度可能不高。

python sklearn实现

# logistic分类
import pandas as pd
import numpy as np
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split,cross_val_score
#from sklearn.metrics import roc_curve #二元分类
#import matplotlib.pyplot as plt

# txt也可以用read_csv读成dataframe,.loc取出需要的列 行数表示到某一行
iris = pd.read_csv('E:\\study\\data\\iris.txt',sep=',',skiprows=[1])
X = iris.loc[:,['sepal length','sepal width']]
y = iris.loc[:,['class']]

X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.3)
logreg = LogisticRegression(C=1e5)
logreg.fit(X_train,y_train)
#y_pred = logreg.predict(X_test)
scores = cross_val_score(logreg,X_train,y_train,cv=5)
#scooing='recall' 召回率
print '准确率:%s' % np.mean(scores) # 0.78

二元分类模型评估

预测
正例 反例
真实 正例 TP FN(假反例)
反例 FP(假正例) TN

精确率|查准率 为预测为正例的里面真正例的比例, P = T P T P + F P
召回率|查全率为真实为正例的里面真正例的比例, R = T P T P + F N
ROC曲线 ROC的纵轴为真正例率,横轴为假正例率,分别为:

T P R = T P T P + F N

F P R = T P T P + F N

Tips

  • logistic回归广泛应用于流行病学,如判断哪些因素是致病的关键因素,判断得某些病的概率等。
  • 一般来说,拓展到多分类问题,OneVOne比OneVRest开销更小。
  • 类别不平衡学习的基本策略——“再缩放”,常用SMOTE算法在少的类别中过采样。

决策树

@[信息熵]

划分属性

ID3决策树划分属性的准则为信息增益。
C4.5决策树的准则为增益率。
CART决策树使用基尼系数来选择划分属性,使划分后基尼指数最小。

属性值缺失怎么办?

数据集D关于属性a的信息增益公式可推广为

G a i n ( D , a ) = ρ G a i n ( D ~ , a ) = ρ ( E n t ( D ~ ) v = 1 V E n t ( D ~ v ) )

其中, D ~ 表示D中属性a上没有缺失值的样本子集, ρ 为无缺失值样本所占的比例,a有v个取值。

优缺点

优点:易于理解和解释,数据准备简单。
缺点:对各类别样本数量不一致的数据,信息增益结果偏向于更多数值的特征。结果不稳定,可以使用集成决策树解决。

猜你喜欢

转载自blog.csdn.net/qq_33476409/article/details/81698209