一、softmax
softmax模型的含义是假设后验概率P(y|x)服从多项式分布,y=1,2,3,4,..,k,即有k类,根据多项式分布(n=1,也可以称为目录分布)的定义:
二、从广义线性模型中推导出softmax模型
我们的目标是给定X,求出参数phi,需要建立参数phi对X的模型,下面给出模型的推导。
下面我们将后验概率写成指数函数族的形式,以得出
三、优化函数与梯度
现在我们已经建立了参数phi对X的模型,下面需要做的是估计参数theta的值,利用最大似然估计即可。
下面求解梯度:
四、正则惩罚
为了使目标函数严格凸函数即存在唯一最小值,再加入一个权值惩罚项,得到新的目标函数与梯度:
五、matlab实验
实验数据用到了mnist数据库,用于识别10个手写数字。
%% CS294A/CS294W Softmax Exercise
% Instructions
% ------------
%
% This file contains code that helps you get started on the
% softmax exercise. You will need to write the softmax cost function
% in softmaxCost.m and the softmax prediction function in softmaxPred.m.
% For this exercise, you will not need to change any code in this file,
% or any other files other than those mentioned above.
% (However, you may be required to do so in later exercises)
%%==============================================