营销型网站开发方案,游戏工作室招聘信息,萧县住房和城乡建设局网站,做家政网上推广网站图像分类数据集有CIFAR-10、ImageNet
应用#xff1a;情感分类
关键#xff1a;将样本x从文本形式转为向量形式 词袋模型#xff08;Bag-of-Words#xff0c;BoW#xff09;
模型性能的评估指标
混淆矩阵#xff08;confusion matrix#xff09;
对于二分类问题情感分类
关键将样本x从文本形式转为向量形式 词袋模型Bag-of-WordsBoW
模型性能的评估指标
混淆矩阵confusion matrix
对于二分类问题根据每一个样本的真实标签 和预测标签 ෝ的差异可以 得到一个2*2的矩阵 对于多分类N问题可以得到一个N*N的矩阵
二分类评价指标 三分类评价指标
micro策略
指把所有的类放在一起算即所 有类的TP加和再除以所有类的 TP和FP的加和。因此 micro方 法下的precision和recall都等 于accuracy。 macro策略
先分别求出每个类的precision再算术平均 Weighted策略
weighted算法不再是取算术平均, 而是 乘以该类在总样本数中的占比作为权重 逻辑斯蒂回归(logistic regression)是机器学习中的经典分类方法属于对数 线性模型的一种。
对于线性判别函数f实数空间选择怎样的决策函数g能让决策空间缩 小到[0,1]上同时保证损失函数的连续性
以二分类问题为例
以下第一个函数也叫sigmoid函数 梯度下降过程中需要在每个点上计算损失函数的梯度然后继续朝负梯度值的 方向移动。因此计算损失函数相对于参数向量每个分量的梯度然后更新参数。 参数(权值向量)更新公式为 算法关键步骤
1随机初始化权重参数和偏置项
2计算初步加权平均输出X_out
3对X_out进行Sigmoid转换
4计算真实值和预测值的误差err
5计算权重参数的梯度
6计算偏置项的梯度
7分别更新权重参数和偏置项的参数
8记录损失以便后续观察是否收敛
9重复1-8直至收敛
import pandas as pd
import numpy as np
import os
os.chdir(rd:\classdata\机器学习\02\to_student\data)
df pd.read_csv(iris.csv)
df.head()
X df.iloc[:100,0:4].values#读取样本点数据
y df.iloc[:100,4].values#读取样本点真实值
y np.where(y setosa,0,1)#对真实值二值化
w_ np.zeros(1X.shape[1])#构造线性函数除了权重参数需要加上偏置项这样才构成权值向量shape[1]表示X的1维长度
total_loss []#构造损失列表表示收敛趋势
iter 1000
for i in range(iter):X_out X.dot(w_[1:].T)#使用权值向量输出预测值y_val 1/(1 np.exp(-X_out))#对预测值进行sigmoid化err y - y_val#真实值和预测值的误差errgrad -(1/len(X))*X.T.dot(err)#计算权重参数的梯度eta 0.25#设置步长w_[1:] - eta*gradw_[0] - -(1/len(X))*eta*err.sum()#计算偏置项梯度然后乘以步长更新偏置项loss (1/len(X))*(-y.dot(np.log(y_val))-(1-y).dot(np.log(1-y_val)))#记录损失total_loss.append(loss)print(no.{} is completed,loss is {}.format(i1, loss))
print(w_)
多分类问题
类别标签 ∈ {1,2, … , }可以有个取值 logistic回归在多分类问题上的扩展判别函数的数量是C个 预测输入属于每个类别的取值 通过softmax函数将输出值转换为条件概率
Softmax回归#exp表示自然指数函数 多分类问题的交叉熵损失函数