全书总评

  • 书本印刷质量:5星。纸张很白,印刷清楚,文字排版合适,基本没有排版过程中引入的错误,阅读不累眼睛。
  • 著作编写质量:3星。入门书,看完后可能会对神经网络有个基本概念,但是也可能就只有个基本概念。基本概念描述还是清楚的,还给出了比较好的参考资料。几个例子讲的很浅,好处就是提供了代码,如果有开发方向的需要可以参考。深入学习神经网络还是参考《神经网络和机器学习》这本书吧。
  • 著作翻译质量:4星。用的都是常用词汇。对于不了解神经网络的读者,通过本书了解一些基本概念,为将来学习其他书籍打下基础;对于了解神经网络的读者不会造成概念混淆。
  • 代码质量:3星。基本没错误,但是思路跟书上不完全匹配。比如说:感知机一般都是单层的,就是一个神经元,一个偏置量,两个输入的值,一个输出的值,两个权值。但是作者在测试代码中放入两个输入权值,一个输出权值,不明白,后面都是这样的思路,于是只好弃了。

读书笔记

C1.初识神经网络

基本概念:人工神经元,激活函数,权值,偏置,层。

神经网络结构:

  • 神经元连接
    • 单层神经网络:单层感知机,自适应机,自组织映射、Elman网络和Hopfield网络。
    • 多层神经网络:多层感知机,径向基函数。
  • 信号流
    • 前馈神经网络:多层感知机,径向基函数。
    • 反馈神经网络:单层的(Elman网络和Hopfield网络)和多层的(递归多层感知机和Echo网络)。

C2.神经网络是如何学习的

学习范式:

  • 有监督学习:
    • 描述:已知的数据集与学习得到的结果之间的误差最小,最小的评价基于某个代价函数。
    • 应用:图像分类,语音识别,函数逼近和趋势预测。
  • 无监督学习:
    • 描述:从已知的数据集提取知识,即将数据集分类,类间距离大,类内距离小,评价基于某个代价函数。
    • 应用:聚类分析,数据压缩,统计建模和语言建模。

学习算法:

  • 两个阶段:训练和测试。
  • 重要细节:参数。
  • 评价方式:误差度量和代价函数。
  • 例子:Perceptron 感知机和Delta规则。

C3.有监督学习(运用感知机)

  • 单层感知机的作用和局限性:解决线性可分问题,不能解决非线性问题。
  • 多层感知机(MLP):
    • 层:
      • 输入层:
      • 隐藏层:激活函数一般选择双曲正切或者sigmoid,因为它们是可导的。
      • 输出层:
    • 学习过程:
      • 反向传播:敏感性反向传播。收敛速度比较慢。
      • Levenberg-Marquardt:

C4.无监督学习(自组织映射)

  • 竞争学习或赢家通吃:产生最大值的神经元更新它的权值。
  • Kohonen自组织映射(Self-Organization Map):
    • 一维SOM:产生最大值的神经元更新它的权值,与之相邻的神经元以相对较低的学习率更新权值。
    • 二维SOM:领域函数判断相邻的神经元,使结构更“组织化”。

Rreferences(参考文献)

Bishop C M. Neural networks for pattern recognition[M]. Oxford university press, 1995. Duda R O, Hart P E, Stork D G. Unsupervised learning and clustering[J]. Pattern classification, 2001: 517-601. Freedman D A. Statistical models: theory and practice[M]. cambridge university press, 2009. Haykin S S, Haykin S S, Haykin S S, et al. Neural networks and learning machines[M]. Upper Saddle River: Pearson, 2009.

《神经网络算法与实现-基于Java语言》的读书笔记的更多相关文章

  1. 单元测试之道Java版——读书笔记

    单元测试知道Java版读书笔记 首先我们必须要知道我们所写的代码,它的功能是什么,如果我们不了解代码的行为,那么也就无从测试. 我们测试的目的,是为了我们整个程序架构的稳定,代码其实就是欧文要实现功能 ...

  2. 《单元测试之道Java版》的读书笔记

    总览 第2章 首个单元测试 第3章 使用JUnit编写测试 3.1 构建单元测试 3.2 JUnit的各种断言 3.3 JUnit框架 4. 测试什么? 5.CORRECT(正确的)边界条件 6.使用 ...

  3. 补习系列(8)-springboot 单元测试之道

    目录 目标 一.About 单元测试 二.About Junit 三.SpringBoot-单元测试 项目依赖 测试样例 四.Mock测试 五.最后 目标 了解 单元测试的背景 了解如何 利用 spr ...

  4. 《深入java虚拟机》读书笔记之垃圾收集器与内存分配策略

    前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,或者是对其中不明白的地方做一些注释.主要是方便之后进行 ...

  5. 《黑客攻防技术宝典Web实战篇@第2版》读书笔记1:了解Web应用程序

    读书笔记第一部分对应原书的第一章,主要介绍了Web应用程序的发展,功能,安全状况. Web应用程序的发展历程 早期的万维网仅由Web站点构成,只是包含静态文档的信息库,随后人们发明了Web浏览器用来检 ...

  6. JAVA编程思想读书笔记(五)--多线程

    接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/detail ...

  7. JAVA编程思想读书笔记(四)--对象的克隆

    接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 public class MyObject implements Cloneable { int i; public MyObje ...

  8. JAVA编程思想读书笔记(三)--RTTI

    接上篇JAVA编程思想读书笔记(二) 第十一章 运行期类型判定 No1: 对于作为程序一部分的每个类,它们都有一个Class对象.换言之,每次写一个新类时,同时也会创建一个Class对象(更恰当的说, ...

  9. JAVA编程思想读书笔记(二)--容器

    接上篇JAVA编程思想读书笔记(一) 第八章.对象的容纳 No1: java提供了四种类型的集合类:Vector(矢量).BitSet(位集).Stack(堆栈).Hashtable(散列表) No2 ...

  10. 《大型网站系统与Java中间件》读书笔记 (中)

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾上一篇: <大型网站系统与Java中间件& ...

随机推荐

  1. “Validation failed for one or more entities”异常的解决办法

    日志中出现Entity Framework修改数据库时的错误: Validation failed for one or more entities. See 'EntityValidationErr ...

  2. 用ASP.NET Core 2.1 建立规范的 REST API -- HATEOAS

    本文所需的一些预备知识可以看这里: http://www.cnblogs.com/cgzl/p/9010978.html 和 http://www.cnblogs.com/cgzl/p/9019314 ...

  3. Python:tesserocr 在 windows 下的安装及简单使用

    tesserocr 是 python 的一个 OCR 库,它是对 tesseract 做的一层 Python API 封装,所以他的核心是tesseract. tesseract 的安装见 https ...

  4. mysql索引规范

    索引并不是越多越好!索引可以提高查询效率,但会降低增删改效率.但多了甚至会降低查询效率. Innodb是按照主键索引的顺序来组织表,如没有建立主键,mysql会选择第一个非空唯一索引做为主键,或生成一 ...

  5. MySQL 笔记整理(18) --为什么这些SQL语句逻辑相同,性能却差异巨大?

    笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> (本篇内图片均来自丁奇老师的讲解,如有侵权,请联系我删除) 18) --为什么这些SQL语句逻辑相同,性能却差异巨大? 本篇我们以三 ...

  6. 分布式系统唯一ID的生成方案讨论

    在分布式系统下唯一id问题,就是id咋生成?比如分表分库,因为要是一个表分成多个表之后,每个表的id都是从1开始累加自增长,那是不对的.举个例子,一个表拆分为了2张表,每个表的id都从1开始累加,这个 ...

  7. 如何在windows系统下安装swoole

    swoole框架是一个很神奇很厉害的框架,它弥补了PHP的本身的一些不足之处.其实swoole确切的说是一个使用C语言编写的PHP扩展,并且这个扩展不能够在windows系统使用,但是就目前的开发环境 ...

  8. tablednd onDrap 方法不调用

    场景 使用 tablednd 插件时,onDrap 方法不调用 解决 给tr标签加 id 属性

  9. es6 generator函数

    es6 新增了Generator函数,一种异步编程的解决方案 回顾一下,es6 提供了新的遍历方法,for of ,适用于各种数据集合,统一了遍历操作,原生支持for of 集合的数据集合有.数组,字 ...

  10. js中console使用2

    接着上一篇js中console使用1,本片继续介绍js中console的用法 测试代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 ...