参考回答:
考虑一个多分类问题,即预测变量y可以取k个离散值中的任何一个.比如一个邮件分类系统将邮件分为私人邮件,工作邮件和垃圾邮件。由于y仍然是一个离散值,只是相对于二分类的逻辑回归多了一些类别。下面将根据多项式分布建模。
考虑将样本共有k类,每一类的概率分别为,由于,所以通常我们只需要k-1个参数即可
,
为了推导,引入表达式:
上面T(y)是k-1维列向量,其中y = 1, 2, ...k.
T(y)i 表示向量T(y)的第i个元素。
还要引入表达式,如果大括号里面为真,则真个表达式就为1,否则为0.例如:1{2=3} = 0和1{3=3} = 1.
则上面的k个向量就可以表示为
以为y只能属于某一个类别,于是T(y)中只能有一个元素为1其他元素都为0,可以求出k-1个元素的期望:
定义:
其中i = 1,2,...k.则有:
也
就容易得出:,由该式和上面使得等式:一起可以得到:这个函数就是softmax函数。
然后假设和具有线性关系,即
于是从概率的角度出发:
其中这个模型就是softmax回归(softmax regression), 它是逻辑回归的泛化。
这样我们的输出:
就是输出了x属于(1,2,...k-1)中每一类的概率,当然属于第k类的概率就是:
下面开始拟合参数
同样使用最大化参数θ的对数似然函数:
这里使用梯度下降和牛顿法均可。
SoftMax Regression Softmax回归也称为多元逻辑回归,既通过逻辑回归算法处理多分类问题。不同于二元逻辑回归,softmax可归可处理K个类别变量的分类问题。 1. 算法介绍 SoftMax Regression SoftMax Regression Model 在逻辑回归中,给出测试输入x,希望假设可以针对同一样本在不同的k(其中,k=1,...,K)值下估计概率 P(y=k
import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) x = tf.placeholder(tf.float32, [None, 784]) W = tf.Var
K分类,第k类的参数为$$\theta_k$$, 组成二维矩阵$$\theta_{k*n}$$ 概率: $$p(c=k|x;\theta)=\frac {exp(\thetaT_kx)} {\sum _{l=1} K exp(\theta^T_l x)}$$, k=1,2,....K 似然 函数: 对数似然: 随机梯度: 在前面的logistic regression博文Deep learnin
示例 数据集来自https://archive.ics.uci.edu/ml/datasets/Iris,包含4个feature和3个分类: sepal length in cm sepal width in cm petal length in cm petal width in cm class: – Iris Setosa – Iris Versicolour – Iris Virginic
前几节介绍的线性回归模型适用于输出为连续值的情景。在另一类情景中,模型输出可以是一个像图像类别这样的离散值。对于这样的离散值预测问题,我们可以使用诸如softmax回归在内的分类模型。和线性回归不同,softmax回归的输出单元从一个变成了多个,且引入了softmax运算使输出更适合离散值的预测和训练。本节以softmax回归模型为例,介绍神经网络中的分类模型。 分类问题 让我们考虑一个简单的图像
本文向大家介绍softmax原理分类?相关面试题,主要包含被问及softmax原理分类?时的应答技巧和注意事项,需要的朋友参考一下 Softmax 函数可以导,这点很关键,当损失函数是交叉熵时,计算很方便。 Softmax 函数能够指数级扩大最后一层的输出,每个值都会增大,然而最大的那个值相比其他值扩大的更多,最终归一化。