深度学习
方naoke
学无止境
展开
-
神经网络-感知器
目录目录前言感知器Frank Rosenblatt感知器Heaviside阶跃函数算法步骤权重初始化计算预测值更新权重更新阈值代码部分前言这是一篇神经网络最最最基础的博文! 讲解的是感知器和自适应性圣经元,为以后的深度学习打下基础。 本文章是阅览技术文档加以实现和理解。 原文地址:http://www.ranling.com/category/it/689240.html原创 2017-11-17 19:03:40 · 1201 阅读 · 0 评论 -
Fasi.ai V1.0安装与使用
文章目录前言安装conda安装Anancoda安装fastaipip安装其他小例子启动jupyter-notebook新建一个python文件导入包下载数据集数据处理建立模型训练模型结果后语前言fast.ai是一个深度学习的框架。它使用起来非常简单,是一种开箱即用的深度学习库。提供了海量的模型封装,还提供了一些pre-training的模型。开发者设计模型代价降低,还可以做一些迁移学习的研究。...原创 2019-01-31 16:28:50 · 1164 阅读 · 0 评论 -
使用tensorflow实现CNN
前言好久没有更新博客,在之前的博文用代码一步一步完成了手写数字识别,但是在工业应用中不需要这么复杂的实现。我们造车再也不需要自己造轮子。Tensorflow作为当今最流行的机器学习框架,也是Google的亲儿子,对其学习也是有必要性。当然tensorflow也出来很久了,在写本文的时候tensorflow已经是1.8版本。这篇文章没有什么理论知识,因为理论知识早在前面的文章说过了,也用代码实现...原创 2018-05-24 15:19:03 · 21232 阅读 · 20 评论 -
RNN与LSTM
前言循环神经网络,循环神经网络与卷积神经网络有很大的不同。就是有“记忆暂存”功能,可以把过去的输入内容产生的影响量化后与当前时间输入一起反应到网络中参与训练。RNN理解个人理解,RNN还是在模仿人类。在模仿人类的学习的过程。根据前言所述,当前输入对未来可能会有影响。那么当前的输出应该也跟之前的输入和当前的输入有关系。 举个生活中的例子:例子背景就是在学校念书读小学。在这里把神经元比做自己,输入Xt原创 2018-01-02 14:54:57 · 1050 阅读 · 0 评论 -
Tensorflow之TensorBoard的使用
前言这是对TensorBoard的简单使用 。简介Tensorboard是一个web应用程序套件,用于检查tensorflow程序的运行情况。可以直观了解训练情况。使用使用summary op。用上一篇文章的例子,用tensorboard记录cost的变化。加入summary把待观察的op加入到summary op 的scalar中# 创建summary来观察损失值tf.summary.scala原创 2017-12-07 21:56:46 · 1455 阅读 · 0 评论 -
神经网路识别手写(Mnist)
神经网路识别手写(Mnist)前言本文是之前我们实现的神经网路对手写体识别的一个实践。使用的数据是经典的Mnist数据。 下载链接为: http://www.iro.umontreal.ca/~lisa/deep/data/mnist/mnist.pkl.gz官网地址是http://yann.lecun.com/exdb/mnist/数据读取这里直接使用别人提供的读取函数。# -*- codin原创 2017-11-27 19:45:59 · 631 阅读 · 0 评论 -
神经网络——梯度下降&反向传播
前言本篇是根据上一篇博文《神经网络–前向传播》续写的。 http://blog.csdn.net/skullFang/article/details/78620456 本文中的数学知识有点,需要一点微分的知识。(会求导)就可以。基本概念在上文我们已经知道了什么是前向传播。就是当前层的输入是上一层的输出,当前层的输出是下一层的输入。然后一层一层的传递下去。反向传播也叫反向更新。根据感知机的原理。神原创 2017-11-25 21:19:52 · 9675 阅读 · 3 评论 -
卷积神经网络组件之卷积&池化层
前言其实之前使用的bp前馈神经网络就是一个全连接神经网络,现在就是要把它封装成一个层。在卷积神经网络中会使用到。卷积神经网路(CNN)卷积神经网络也是一种前馈神经网络,相对于传统的神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现(摘自维基百科)。 怎么去解释和理解这句话呢? 之前实现的是一个全连接神经网络,也就是说每个神经元对应一个输入,当前层的输出就是下一原创 2017-12-04 10:09:10 · 2077 阅读 · 3 评论 -
BP神经网络-前向传播
前言回顾前向传播前言本文是接着上一文多层感知机所写的。上一文说的了如何初始化一个MLP。本文简单介绍一下前向传播的概念以及代码实现。 上文:http://blog.csdn.net/skullfang/article/details/78609851回顾还是从一个简单的多层感知器入手,这个感知器只有两层(输入层不算)。输入层——隐藏层——输出层 模型: 其中w是 权重。b 是偏置。(注意原创 2017-11-24 00:11:43 · 2583 阅读 · 0 评论 -
深度学习-多层感知器
多层感知器多层感知器(Multilayer Perceptron,缩写MLP)是一种前向结构的人工神经网络,映射一组输入向量到一组输出向量。MLP可以被看作是一个有向图,由多个的节点层所组成,每一层都全连接到下一层。除了输入节点,每个节点都是一个带有非线性激活函数的神经元(或称处理单元)。一种被称为反向传播算法的监督学习方法常被用来训练MLP。 MLP是感知器的推广,克服了感知器不能对线性不可分数据原创 2017-11-23 00:24:25 · 4856 阅读 · 0 评论 -
神经网络识别手写优化(三)
前言本文是为了实现存储自己训练好的模型 结构和参数,以及加载训练好的模型进行预测。代码保存 def save(self,filename): """ 模型保存 :param filename: 文件名 :return: """ data ={ "sizes": self.sizes, #模型结构原创 2017-12-01 15:25:58 · 299 阅读 · 0 评论 -
神经网络识别手写优化(二)
前言本文接着一写的,还是对之前实现的神经网络进行一个优化。DropOut这个东西也是防止过拟合的。意思就是每一轮训练完了之后,丢弃掉一些神经元。从而防止过拟合。这是什么原理?因为我们网络的神经元过多,有些神经元把没有泛化能力的特征记录了下来,通俗来说就是把无关紧要的东西记录了下来。及时在训练集上表现的特别好,cost会降到很低,但是在验证集上反而会升高,因为验证集上的数据可能不包括那些无关紧要的东西原创 2017-11-30 16:48:19 · 349 阅读 · 0 评论 -
神经网络识别手写优化(一)
手写识别优化前言之前实现的神经网络还有很多可以优化的地方。本文主要正对其进行优化。初始化在训练神经网络之前参数初始化。这里的参数就是w,b。 w,b的初始化。 权重w初始化基于正态分布模型(高斯分布): 以0为均值,1为方差然后除以当前神经元的个数的算数平方根。 偏执b初始化基于高斯模型: 以0为均值,1为方差。 公式为:为什么? 首先观察一下高斯分布的函数图像 符合高斯分布的数据也原创 2017-11-29 22:37:46 · 809 阅读 · 0 评论 -
神经网络-自适应神经元
自适应神经元前言感知机存在的问题自适应神经元算法步骤权重初始化计算预测值更新权重更新阈值代码部分自适应神经元前言本博客讲解的是自适应性神经元,为以后的深度学习打下基础。 本文章是阅览技术文档加以实现和理解。 原文地址:http://www.ranling.com/category/it/689240.html 这篇博客是继上一篇博客写下的。 神经网络-感知器:http原创 2017-11-18 15:38:49 · 3597 阅读 · 0 评论