参考彭亮老师的视频教程:转载请注明出处及彭亮老师原创
视频教程: http://pan.baidu.com/s/1kVNe5EJ

1. 背景:

1.1 以人脑中的神经网络为启发,历史上出现过很多不同版本
1.2 最著名的算法是1980年的 backpropagation 
2. 多层向前神经网络(Multilayer Feed-Forward Neural Network)
2.1 Backpropagation被使用在多层向前神经网络上
2.2 多层向前神经网络由以下部分组成:
输入层(input layer), 隐藏层 (hidden layers), 输入层 (output layers)
2.3 每层由单元(units)组成
2.4 输入层(input layer)是由训练集的实例特征向量传入
2.5 经过连接结点的权重(weight)传入下一层,一层的输出是下一层的输入
2.6 隐藏层的个数可以是任意的,输入层有一层,输出层有一层
2.7 每个单元(unit)也可以被称作神经结点,根据生物学来源定义
2.8 以上成为2层的神经网络(输入层不算)
2.8 一层中加权的求和,然后根据非线性方程转化输出
2.9 作为多层向前神经网络,理论上,如果有足够多的隐藏层(hidden layers) 和足够大的训练集, 可以模     
拟出任何方程
3. 设计神经网络结构
3.1 使用神经网络训练数据之前,必须确定神经网络的层数,以及每层单元的个数
3.2 特征向量在被传入输入层时通常被先标准化(normalize)到0和1之间 (为了加速学习过程)
3.3 离散型变量可以被编码成每一个输入单元对应一个特征值可能赋的值
比如:特征值A可能取三个值(a0, a1, a2), 可以使用3个输入单元来代表A。
如果A=a0, 那么代表a0的单元值就取1, 其他取0;
如果A=a1, 那么代表a1de单元值就取1,其他取0,以此类推
3.4 神经网络即可以用来做分类(classification)问题,也可以解决回归(regression)问题
3.4.1 对于分类问题,如果是2类,可以用一个输出单元表示(0和1分别代表2类)
如果多余2类,每一个类别用一个输出单元表示
所以输入层的单元数量通常等于类别的数量
3.4.2 没有明确的规则来设计最好有多少个隐藏层
3.4.2.1 根据实验测试和误差,以及准确度来实验并改进
4. 交叉验证方法(Cross-Validation)
          
K-fold cross validation 
5. Backpropagation算法
5.1 通过迭代性的来处理训练集中的实例
5.2 对比经过神经网络后输入层预测值(predicted value)与真实值(target value)之间
5.3 反方向(从输出层=>隐藏层=>输入层)来以最小化误差(error)来更新每个连接的权重(weight)
5.4 算法详细介绍
输入:D:数据集,l 学习率(learning rate), 一个多层前向神经网络
输入:一个训练好的神经网络(a trained neural network)
5.4.1 初始化权重(weights)和偏向(bias): 随机初始化在-1到1之间,或者-0.5到0.5之间,每个单元有          
一个偏向
5.4.2 对于每一个训练实例X,执行以下步骤:
5.4.2.1: 由输入层向前传送
5.4.2.2 根据误差(error)反向传送
对于输出层:
对于隐藏层:
权重更新:  
偏向更新    
5.4.3 终止条件
5.4.3.1 权重的更新低于某个阈值
5.4.3.2 预测的错误率低于某个阈值
5.4.3.3 达到预设一定的循环次数
6. Backpropagation 算法举例
对于输出层:
对于隐藏层:
权重更新:  
偏向更新    

6.1神经网络--python机器学习相关推荐

  1. 超实用!Python机器学习书籍推荐——《Python神经网络编程》(一定要看到最后)

    听说有小伙伴想学习关于Python机器学习,那么今天为你们推荐一本关于人工智能机器学习的书籍--<Python神经网络编程>,超实用. 豆瓣评分9.1分,非常受机器学习的小伙伴喜欢哦. 本 ...

  2. python神经网络算法pdf_高清图解:神经网络、机器学习、数据科学一网打尽|附PDF...

    原标题:高清图解:神经网络.机器学习.数据科学一网打尽|附PDF [导读]完全图解人工智能.NLP.机器学习.深度学习.大数据!这份备忘单涵盖了上述领域几乎全部的知识点,并使用信息图.脑图等多种可视化 ...

  3. Python机器学习Sklearn入门之神经网络

    Python机器学习Sklearn入门之神经网络 MLP 神经网络算法 MLP 神经网络算法函数位于 neural_network 神经网络模块,函数名是 MLPClassifier,接口是 MLPC ...

  4. 从零开始掌握Python机器学习(循环神经网络、卷积神经网络)

    本文中的文章用于做笔记用,来源于网络,并非本人所写,如有侵权,请您联系我标明出处或删除,3Q~ 只需十四步:从零开始掌握 Python 机器学习(附资源) Python 可以说是现在最流行的机器学习语 ...

  5. 入行AI,你需要一本Python机器学习入门

    ​ 目前机器学习红遍全球.男女老少都在学机器学习模型,分类器,神经网络和吴恩达.你也想成为一份子,但你该如何开始? 今天小编推荐这本<Python机器学习>教你快速入门. ​ 01什么是机 ...

  6. 资源 | AI、神经网络、机器学习、深度学习以及大数据学习备忘单

    向AI转型的程序员都关注了这个号☝☝☝ 以下是关于神经网络.机器学习.深度学习以及大数据学习的备忘单,其中部分内容和此前发布的<资源 | 值得收藏的 27 个机器学习的小抄>有所重复,大家 ...

  7. 【转】Python机器学习库

    2019独角兽企业重金招聘Python工程师标准>>> Python 在科学计算领域,有两个重要的扩展模块:Numpy和Scipy.其中Numpy是一个用python实现的科学计算包 ...

  8. 免费教材丨第55期:Python机器学习实践指南、Tensorflow 实战Google深度学习框架

    小编说  时间过的好快啊,小伙伴们是不是都快进入寒假啦?但是学习可不要落下哦!  本期教材  本期为大家发放的教材为:<Python机器学习实践指南>.<Tensorflow 实战G ...

  9. Python 机器学习库 Top 10,你值得拥有!

    随着人工智能技术的发展与普及,Python 超越了许多其他编程语言,成为了机器学习领域中最热门最常用的编程语言之一.有许多原因致使 Python 在众多开发者中如此受追捧,其中之一便是其拥有大量的与机 ...

最新文章

  1. flask 核心 之 应用上下文 及 请求上下文
  2. Spring的环绕通知
  3. 函数模块:CTVB_COMPARE_TABLES
  4. c++矩阵类_数据结构-JavaScript矩阵类的设计与实现
  5. 【CF global1 D / CF1110D】 Jongmah
  6. Android复制assets目录下的图片到内存
  7. Java多线程学习十四:Lock 有哪几个常用方法?分别有什么用?
  8. 线段树(Segment Tree)
  9. jQuery CSS 操作函数
  10. 解析json结构绘制canvas
  11. 微信小程序 上传图片失败
  12. oracle分析函数技术详解(配上开窗函数over())
  13. 【我的电赛日记(二)】ADF4351锁相环模块
  14. 小语种翻译软件,谷歌api接口批量翻译软件
  15. 多元相关与回归分析及R使用
  16. 用python自动推送文章到kindle
  17. matlab1到100求和for_一个简单的MATLAB程序(1到100求和)
  18. 偏导,梯度,Hesse矩阵的一些概念和求函数的极值
  19. Erlang 下载安装
  20. SAP 系统使用技巧汇总

热门文章

  1. 嵌入式单片机基础篇(十三)之 STM32 内部温度传感器
  2. xgboost 论文
  3. Image Denoising State-of-the-art
  4. Hadoop 大数据生态框架--总述
  5. 计算机组成原理 — GPU 图形处理器
  6. Mac解决 zsh: command not found: ll
  7. 直播观看指南|SOFA 五周年,Live Long and Prosper!
  8. C语言程序——关系运算符的应用
  9. 50条经典(学生,课程,成绩,教师)表SQL语句~~值得一看!
  10. android关闭背光