Menu
深度学习机器学习目标检测

一、目标检测

1.深度学习开发流程

深度学习开发流程

2.应用案例

深度学习应用案例

3.目标检测算法基本流程

目标检测算法流程

二.机器学习

1.机器学习算法能解决那些问题

  • 分类问题:图像识别,垃圾邮件识别
  • 回归问题:各种预测(房价,天气,股价等等)
  • 排序问题:推荐,点击率排序
  • 生成问题:图像生成,图像风格转换,图像文字描述生成

2.机器学习实现流程

机器学习实现流程
 

3.深度学习算法集合

  • 卷积神经网络: 卷积神经网络仿造生物的视知觉(visual perception)机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化(grid-like topology)特征,例如像素和音频进行学习、有稳定的效果且对数据没有额外的特征工程
  • 循环神经网络: 循环神经网络具有记忆性、参数共享并且图灵完备(Turing completeness),因此在对序列的非线性特征进行学习时具有一定优势 [4]  。循环神经网络在自然语言处理(Natural Language Processing, NLP),例如语音识别、语言建模、机器翻译等领域有应用,也被用于各类时间序列预报。引入了卷积神经网络(Convolutional Neural Network,CNN)构筑的循环神经网络可以处理包含序列输入的计算机视觉问题。
  • 自动编码器: 自动编码器是一种无监督的神经网络模型,它可以学习到输入数据的隐含特征,这称为编码(coding),同时用学习到的新特征可以重构出原始输入数据,称之为解码(decoding)。从直观上来看,自动编码器可以用于特征降维,类似主成分分析PCA,但是其相比PCA其性能更强,这是由于神经网络模型可以提取更有效的新特征。除了进行特征降维,自动编码器学习到的新特征可以送入有监督学习模型中,所以自动编码器可以起到特征提取器的作用。作为无监督学习模型,自动编码器还可以用于生成与训练样本不同的新数据,这样自动编码器(变分自动编码器,Variational Autoencoders)就是生成式模型
  • 稀疏编码器: 自动编码器是一种无监督的神经网络模型,它可以学习到输入数据的隐含特征,这称为编码(coding),同时用学习到的新特征可以重构出原始输入数据,称之为解码(decoding)。从直观上来看,自动编码器可以用于特征降维,类似主成分分析PCA,但是其相比PCA其性能更强,这是由于神经网络模型可以提取更有效的新特征。除了进行特征降维,自动编码器学习到的新特征可以送入有监督学习模型中,所以自动编码器可以起到特征提取器的作用。作为无监督学习模型,自动编码器还可以用于生成与训练样本不同的新数据,这样自动编码器(变分自动编码器,Variational Autoencoders)就是生成式模型
  • 深度信念网络: 深度信念网络是一个概率生成模型,与传统的判别模型的神经网络相对,生成模型是建立一个观察数据和标签之间的联合分布,对P(Observation|Label)和 P(Label|Observation)都做了评估,而判别模型仅仅而已评估了后者,也就是P(Label|Observation)。
  • 受限玻尔兹曼机: 受限玻尔兹曼机是玻尔兹曼机(Boltzman machine,BM)的一种特殊拓扑结构。BM的原理起源于统计物理学,是一种基于能量函数的建模方法,能够描述变量之间的高阶相互作用,BM的学习算法较复杂,但所建模型和学习算法有比较完备的物理解释和严格的数理统计理论作基础。BM是一种对称耦合的随机反馈型二值单元神经网络,由可见层和多个隐层组成,网络节点分为可见单元(visible unit)和隐单元(hidden unit),用可见单元和隐单元来表达随机网络与随机环境的学习模型,通过权值表达单元之间的相关性。
  • 深度学习+强化学习=深度强化学习: 深度学习具有较强的感知能力,但是缺乏一定的决策能力;而强化学习具有决策能力,对感知问题束手无策。因此,将两者结合起来,优势互补,为复杂系统的感知决策问题提供了解决思路

4.机器学习的工作分工

  • 数据处理(采集+去噪)
  • 模型训练(特征+模型)
  • 模型评估与优化(MSE,F1-score,AUC+调参)
  • 模型应用(A/B测试)

5.神经网络

它从信息处理角度对人脑神经元网络进行抽象, 建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重
单位神经网络-神经元

单位网络神经-神经元 
 
 
 

W为权重,X为特征值,H(为激活函数)
例子:X=[1,2,3],W=[0.3,0.2,0.8]   H(a)=a/10  则计算如下
W*X=1*0.3+2*0.2+3*0.8=0.94
H(W*X)=H(0.94)=0.094
多输出神经元
W从向量扩展为矩阵
输出W*X变成向量

多输出神经元 
 

二分类及激活函数Logistic
f(x) =     Logistic函数的因变量x取值范围是-∞到+∞,(-∞,+∞),但是sigmoid函数的值域是(0, 1)。不管x取什么值其对应的sigmoid函数值一定会落到(0,1)范围内
对于二分类的Logistic回归,因变量y只有“是、否”两个取值,记为1和0。这种值为0/1的二值品质型变量,我们称其为二分类变量。
多分类及激活函数

其中为第i个节点的输出值,C为输出节点的个数,即分类的类别个数。通过Softmax函数就可以将多分类的输出值转换为范围在[0, 1]和为1的概率分布。

6.机器学习函数概念

激活函数
所谓激活函数(Activation Function),就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。目的是将线性运算转化成非线性运算
常见激活函数:sigmoid,tanh,Relu,softmax
损失函数
损失函数(loss function)也称代价函数(cost function)用来评价模型的预测值和真实值不一样的程度
常见损失函数:0-1损失函数(zero-one loss),绝对值损失函数,log对数损失函数,平方损失函数,指数损失函数,Hinge 损失函数,感知损失函数,交叉熵损失函数
目标函数
损失函数最优时可以为目标函数

7.神经网络训练

调整参数使模型在训练集上的损失函数最小