x.1 Classification 分类问题
x.1.1 Classification和Regression的区别
注意,广义上来讲,Classification/Softmax Regression 和 Linear Regression 都属于线性模型。但人们口语上更习惯用Classification表示Softmax Regression,而用Regression表示Linear Regression。
例如预测房屋出售价格就是一个典型的Linear Regression线性回归问题,而有时我们比起how much更关心category,例如给一些特征判断患者是否患有癌症,由此产生的便是Classification分类问题。
x.1.2 One-hot Encoding
Classification问题的输出往往并不与类别之间的自然顺序有关,因此有时候并不能将问题转化为Regression问题,为此统计学家发明了一种用于表示分类数据的简单方法:one-hot encoding独热编码。one-hot encoding是一个向量,它的长度对应类别总数,类别对应的分量的位置设置为1,其余位置设置为0,例如 y ∈ { ( 1 , 0 , 0 ) , ( 0 , 1 , 0 ) , ( 0 , 0 , 1 ) } y \in \{(1, 0, 0), (0, 1, 0), (0, 0, 1)\} y∈{(1,0,0),(0,1,0),(0,0,1)}
x.1.3 Model Architecture
Classification和Regression 模型的区别在于Classification是多输出,因此我们也需要和输出具有同样数量的bias偏置。例如我们具有4个输入,3个输出,则需要12个weight scalars权重标量,和3个bias scalars偏置标量,共计15个可学习参数,如下:
为了简化模型,我们通过矩阵形式来表达运算,其中W是一个3x4的矩阵,而b是一个长度为3的向量。
可见,由层数为2,全连接层产生的网络模型,它的参数量一直都是 O ( d p ) , d = 输入 , p = 输出 O(dp), d=输入, p=输出 O(dp),d=输入,p=输出。
x.1.4 Softmax
存在问题:
- 输出数值总和不一定为1
- 输出可能为负数甚至大于1
上面这些都不符合概率论基本公理,为了解决问题引入Softmax,
softmax具备的好处,
- 将预测变换为非负数且总和为1。
- 让模型保持可导的性质。
- softmax不会改变未规范化的预测间的次序,所以下式仍然成立,
最终,我们的引入softmax的网络模型如下: