神经网络的表现 在Training Set上表现不好 ----> 可能陷入局部最优 在Testing Set上表现不好 -----> Overfitting 过拟合 虽然在机器学习中,很容易通过SVM等方法在Training Set上得出好的结果,但DL不是,所以得先看Training Set上的表现. 要注意方法适用的阶段: 比如:dropout方法只适合于:在Training Data上表现好,在Testing Data上表现不好的. 如果在Training Data上就表现不好了,那么这…
Classification: Probabilistic Generative Model 分类:概率生成模型 如果说对于分类问题用回归的方法硬解,也就是说,将其连续化.比如 \(Class 1\) 对应的目标输出为 1, \(Class 2\) 对应 -1. 则在测试集上,结果更接近1的归为\(Class 1\),反之归为\(Class 2\). 这样做存在的问题:如果有Error数据的干扰,会影响分类的结果. 还有就是,如果是多分类问题,则在各类之间增加了线性关系,比如认为 \(Class…
Machine Learning == Looking for a Function AI过程的解释:用户输入信息,计算机经过处理,输出反馈信息(输入输出信息的形式可以是文字.语音.图像等). 因为从输入到输出的处理不是简单的数学运算,甚至很多时候科学家并不知道如何来实现这个过程. 所以最初的时候科学家写了很多的规则. 但是这种方法,有很多的问题: 一是hand-crafted rule无法包括所有可能情况, 二是它永远不会超过它的创造者的水平, 三是投入的人力过多. 所以后来采用的方法是让计算…
当参数一样多的时候,神经网络变得更高比变宽更有效果.为什么会这样呢? 其实和软件行业的模块化思想是一致的. 比如,如果直接对这四种分类进行训练,长发的男孩数据较少,那么这一类训练得到的classifier不是很好. 但如果分成长发or短发,男孩or女孩,这两种基分类器,那么数据就是足够的,可以得到很好的结果.这样的话,其实用比较少的数据就可以得到很好地分类结果. 模组化这个事情机器是可以自动学到的. 图像应用 语音应用 第一步要做的事情就是把acoustic feature转成state,再把s…
Convolutional Neural Network CNN 卷积神经网络 1. 为什么要用CNN? CNN一般都是用来做图像识别的,当然其他的神经网络也可以做,也就是输入一张图的像素数组(pixel vector),最后输出n个分类(dimension). 但是为什么不用Fully Connected Network呢,主要原因还是因为前后各层涉及到的参数太多了. 所以CNN主要就是简化神经网络的架构,使其比一般的DNN都要简单.这是第一点原因. 网络中的每一个神经元都可以看做是一个Cla…
1. Keras Demo2 前节的Keras Demo代码: import numpy as np from keras.models import Sequential from keras.layers.core import Dense,Dropout,Activation from keras.optimizers import SGD,Adam from keras.utils import np_utils from keras.datasets import mnist def…
3.1 configuration 3.2 寻找最优网络参数 代码示例: # 1.Step 1 model = Sequential() model.add(Dense(input_dim=28*28, output_dim=500)) # Dense是全连接 model.add(Activation('sigmoid')) model.add(Dense(output_dim=500)) model.add(Activation('sigmoid')) model.add(Dense(outp…
反向传播 反向传播主要用到是链式法则. 概念: 损失函数Loss Function是定义在单个训练样本上的,也就是一个样本的误差. 代价函数Cost Function是定义在整个训练集上的,也就是所有样本误差的总和的平均.有没有这个平均不会影响最后的参数求解结果. 总体损失函数Total Loss Function是定义在整个训练集上的,所有误差的总和,反向传播需要最小化的值. 取一个神经元分析: 计算梯度分为两部分: forward pass.backward pass Forward Pas…
深度学习发展历史: 感知机和逻辑回归很像,只是没有\(sigmoid\)激活函数. 深度学习训练的三个步骤: Step1:神经网络(Neural network) Step2:模型评估(Goodness of function) Step3:选择最优函数(Pick best function) Step1: 完全连接前馈神经网络 Fully Connect Feedforward Network: 概念:输入层.隐藏层.输出层.神经元 Deep = Many hidden layers 全连接:…
Logistic Regression 逻辑回归 逻辑回归与线性回归有很多相似的地方.后面会做对比,先将逻辑回归函数可视化一下. 与其所对应的损失函数如下,并将求max转换为min,并转换为求指数形式,便于计算. 最后得到的是两个伯努利分布(function output & target)的交叉熵(两个分布的接近程度,如果分布相同,则交叉熵为0). 经过求导,最后得到的损失函数的偏导数和线性回归的是形式一致的.将其三个步骤的对比归纳如下. 为何用交叉熵而不用平方差,因为逻辑回归模型在求导过程中…