美文网首页
DL basis theory

DL basis theory

作者: Ewitter | 来源:发表于2018-12-10 11:22 被阅读0次

语义鸿沟:eg一张1024x768的图像,拥有RGB三个分量,因此该图像拥有1024x768x3个像素,每个像素是一个0(黑)到255(白)之间的整数,这种现象成为语义鸿沟。
除了语义鸿沟,图像识别的其他挑战:
视觉变化(一个相同目标对摄像机可有不同朝向)、尺度变化(占据图像的大小、目标在真是世界的大小也会变化)、形变(目标非刚体情况时会形变)、遮挡(可能被遮挡)、光照改变(光照会对像素值的大小产生巨大变化)、背景融合(目标可能和背景混为一体,使目标难以被识别)、类内变化(相同类的不同个体之间可能会变的完全不同)。

数据驱动过程:提供给计算机每个类别的许多实例,它们组成了训练集,利用学习算法从训练集中产生分类器或模型,在面对新情况时,模型会提供相应的判断,这个过程称为数据驱动过程。

线性分类器

1. 训练数据

给定m张图像组成的训练集,每个图像的标记是K个不同类中的一个,
D ={(\vec{x}^{(i) } , {y^{(i)}} )^{m}_{i=1} }
{\vec{x}^{(i) } }\in\mathbb{R}^{n}
{{y^{(i)}}}\in\{ 0,1,2,3,...,K-1\},{\forall{i}}
其中i用于对训练实例进行索引,{\vec{x}^{(i) }}是第i张图像展成列向量后的结果,n是每个向量的维数,若图像大小为1024x768x3,则n=1024x768x32=359296,{y^{(i)}}{\vec{x}^{(i)}}对应的标记。

2. 假设函数

给定训练集后,将从训练集中学到一个映射h称为假设(hypothesis),使得{h(\vec{x})}给出\vec{x}属于某个类的分数,进而对y 做预测。

2.1 线性分类模型的假设函数

线性分类模型中,假设函数h采用一种最简单线性映射,
h(\vec{x};W,\vec{b} )=W{\vec{x}}+\vec{b},W\in{R^{{K}\times{n} } },\vec{b}\in{R^K}
W,\vec{b}是函数的参数,W常称为权值(weight)\vec{b}常称为偏置向量(bias vector)
目标是设置W,\vec{b}使得计算的分数匹配真实值,这个过程称作学习参数W,\vec{b};学习过程结束后可丢弃训练集,通过参数W,\vec{b}做预测。

2.1.1 对假设函数的理解

h(\vec{x};W,\vec{b} )=W{\vec{x}}+\vec{b},W\in{R^{{K}\times{n} } },\vec{b}\in{R^K}可看作有K个分类器进行计算:
h(\vec{x};W,\vec{b} )=W{\vec{x}}+\vec{b}={\left[ \begin{matrix} \vec{w}^{T}_{0} \\ \vec{w}^{T}_{1} \\ \vdots \\ \vec{w}^{T}_{K-1} \end{matrix} \right] } \vec{x} + {\left[ \begin{matrix} b_0 \\ b_1 \\ \vdots \\ b_K-1 \end{matrix} \right] } = {\left[ \begin{matrix} {\vec{w}^{T}_{0}}\vec{x}+b_0 \\ {\vec{w}^{T}_{1}}\vec{x}+b_1 \\ \vdots \\ {\vec{w}^{T}_{K-1}}\vec{x}+b_{K-1} \end{matrix} \right] }
其中K用于对W中各元素的索引,{\vec{w}^{T}_{K}}\vec{x}+b_{K}计算的是\vec{x}属于第K个类的分数/概率。
另一种理解方式是将{\vec{w}^{T}_{K}}看作一种相似度的度量,每个\vec{w}_K代表了每个类的原型,预测过程是将\vec{x}与各个类的原型比较,找到最相似的。

2.1.2 Softmax分类器的假设函数

Softmax分类器是一种线性分类器,它对于\vec{s}=h(\vec{x})=W\vec{x}+\vec{b}计算得到的各类的分数有概率上的理解:
\Pr(y=k\mid \vec{x})=\frac{\exp(s_k)}{\sum_{j=0}^{K-1}\exp(s_j)} \in[0,1],\forall{k}
其中\frac{\exp(s_k)}{\sum_{j=0}^{K-1}\exp(s_j)}称为softmax函数。

2.2 损失函数

给定假设函数h后,计算每个数据\vec{x}对各个类的分数,需要通过一个能够比较该分数与真实值y^{(i)}相符程度的度量来判断当前参数的好坏。损失函数(loss function)计算的是不相符的程度,即损失函数值低时当前参数W,\vec{b}表现好。

2.2.1 交叉熵损失

通过最大似然估计(maximum likehood estimate)可得到softmax分类器的损失函数:
(W^*,\vec{b^*})= \arg \max_{W,\vec{b}} L(W,\vec{b})
=\arg \max_{W,\vec{b}} p(D;W,\vec{b})
=\arg \max_{W,\vec{b}} {\prod_{i=1}^{m} p(y^{(i)} \mid \vec{x}^{(i) } ;W,\vec{b} ) }
=\arg \max_{W,\vec{b}} \log {\prod_{i=1}^{m} p(y^{(i)} \mid \vec{x}^{(i) };W,\vec{b} })
= \arg \max_{W,\vec{b}} \sum_{i=1}^{m} \log p(y^{(i)} \mid \vec{x}^{(i) } ; W,\vec{b} )
=\arg \max_{W,\vec{b}} \sum_{i=1}^{m} \log {\frac{\exp(s_{y^{(i) } }^{(i) } ) }{\sum_{j=0}^{K-1}\exp(s_{j }^{(i) } )}}
=\arg \min_{W,\vec{b}} \sum_{i=1}^{m} {-\log{ \frac{s_{y^{(i)}}^{(i)} }{\sum_{j=0}^{K-1}\exp(s_{j }^{(i) } ) }}}
=\arg \min_{W,\vec{b}} \frac{1}{m} {\sum_{i=1}^{m} {-\log{ \frac{s_{y^{(i)}}^{(i)} }{\sum_{j=0}^{K-1}\exp(s_{j }^{(i) } ) }}}}
= \arg \min_{W,\vec{b}} \frac{1}{m} \sum_{i=1}^{m} \left(-s_{y^{(i) } }^{(i) } + \log(\sum_{j=0}^{K-1} \exp(s_{j }^{(i) } )) \right)
{}_{ = }^{def} \arg \min_{W,\vec{b}} \frac{1}{m}{\sum err(W,\vec{b}; \vec{x}^{(i)},y^{(i)})}
{}_{ = }^{def} \arg \min_{W,\vec{b}} J(W,\vec{b})
假设数据间独立分布,且\vec{s}^{(i)}=W{\vec{x}^{(i)}}+\vec{b},其中err(W,\vec{b}; \vec{x}^{(i)},y^{(i)})={-\log{ \frac{s_{y^{(i)}}^{(i)} }{\sum_{j=0}^{K-1}\exp(s_{j }^{(i) } ) }}} = -s_{y^{(i) } }^{(i) } + \log(\sum_{j=0}^{K-1} \exp(s_{j }^{(i) } ))称为交叉熵损失(hinge loss),后文将err(W,\vec{b}; \vec{x}^{(i)},y^{(i)})记为err^{(i)}

相关文章

网友评论

      本文标题:DL basis theory

      本文链接:https://www.haomeiwen.com/subject/djeqhqtx.html