监督学习经典模型
机器学习中的监督学习模型的任务重点在于,根据已有的经验知识对未知样本的目标/标记进行预测。根据目标预测变量的类型不同,我们把监督学习任务大体分为分类学习与回归预测两类。监督学习任务的基本流程:首先准备训练数据,可以是文本、图像、音频等;然后抽取所需要的特征,形成特征向量,接着把这些特征向量连同对应的标记/目标(Labels)一并送入学习算法中,训练一个预测模型,然后采用同样的特征抽取方法作用于新测试数据,得到用于测试的特征向量,最后使用预测模型对这些待测试的特征向量进行预测并得到结果。
1.分类学习
最基础的是二分类问题,即判断是非,从两个类别中选择一个作为预测结果。多分类问题,即在多余两个类别中选择一个,多标签分类问题,判断一个样本是否同时属于多个不同类别。
1.1线性分类器
模型介绍:线性分类器是一种假设特征与分类结果存在线性关系的模型。通过累加计算每个维度的特征与各自权重的乘积来帮助类别决策。
如果我们定义x=<x1,x2,...,xn>来代表n维特征列向量,同时用n维列向量w=<w1,w2,...wn>来代表对应得权重,避免坐标过坐标原点,假设截距为b。线性关系可表达为:
f(w,x,b)=wTx+b
我们所要处理的简单二分类问题希望f∈{0,1};因此需要一个函数把原先的f∈R映射到(0,1),逻辑斯蒂函数:
g(z)=1/(1+e-z)
将z替换为f,逻辑斯蒂回归模型:
hw,b(x)=g(f(w,x,b))=1/(1+e-f)=1/(1+e-(wTx+b)
实例1:良/恶性乳腺癌肿瘤预测----------逻辑斯蒂回归分类器
数据描述:
Number of Instances: 699 (as of 15 July 1992)
#Sample code number Clump Thickness Uniformity of Cell Size \
#0 1000025 5 1
#1 1002945 5 4
#2 1015425 3 1
#3 1016277 6 8
#4 1017023 4 1
#Uniformity of Cell Shape Marginal Adhesion Single Epithelial Cell Size \
#0 1 1 2
#1 4 5 7
#2 1 1 2
#3 8 1 3
#4 1 3 2
#Bare Nuclei Bland Chromatin Normal Nucleoli Mitoses Class
#0 1 3 1 1 2
#1 10 3 2 1 2
#2 2 3 1 1 2
#3 4 3 7 1 2
#4 1 3 1 1 2
#步骤二:准备良/恶性乳腺癌肿瘤训练、测试数据
#使用sklearn.cross_validation里的train_test_split模块用于分割数据
from sklearn.cross_validation import train_test_split
#随机采样25%的数据用于测试,剩下的75%用于构建训练集合
X_train,X_test,y_train,y_test=train_test_split(data[column_names[1:10]],data[column_names[10]],test_size=0.25,random_state=33)
#检查训练样本的数量和类别分布
print(y_train.value_counts())
# 2 344
# 4 168
# Name: Class, dtype: int64
print(y_test.value_counts())
# 2 100
# 4 71
# Name: Class, dtype: int64
原文:https://www.cnblogs.com/yxllfl/p/10526921.html