《神经网络算法与实现-基于Java语言》的读书笔记
全书总评
- 书本印刷质量: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语言》的读书笔记的更多相关文章
- 单元测试之道Java版——读书笔记
单元测试知道Java版读书笔记 首先我们必须要知道我们所写的代码,它的功能是什么,如果我们不了解代码的行为,那么也就无从测试. 我们测试的目的,是为了我们整个程序架构的稳定,代码其实就是欧文要实现功能 ...
- 《单元测试之道Java版》的读书笔记
总览 第2章 首个单元测试 第3章 使用JUnit编写测试 3.1 构建单元测试 3.2 JUnit的各种断言 3.3 JUnit框架 4. 测试什么? 5.CORRECT(正确的)边界条件 6.使用 ...
- 补习系列(8)-springboot 单元测试之道
目录 目标 一.About 单元测试 二.About Junit 三.SpringBoot-单元测试 项目依赖 测试样例 四.Mock测试 五.最后 目标 了解 单元测试的背景 了解如何 利用 spr ...
- 《深入java虚拟机》读书笔记之垃圾收集器与内存分配策略
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,或者是对其中不明白的地方做一些注释.主要是方便之后进行 ...
- 《黑客攻防技术宝典Web实战篇@第2版》读书笔记1:了解Web应用程序
读书笔记第一部分对应原书的第一章,主要介绍了Web应用程序的发展,功能,安全状况. Web应用程序的发展历程 早期的万维网仅由Web站点构成,只是包含静态文档的信息库,随后人们发明了Web浏览器用来检 ...
- JAVA编程思想读书笔记(五)--多线程
接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/detail ...
- JAVA编程思想读书笔记(四)--对象的克隆
接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 public class MyObject implements Cloneable { int i; public MyObje ...
- JAVA编程思想读书笔记(三)--RTTI
接上篇JAVA编程思想读书笔记(二) 第十一章 运行期类型判定 No1: 对于作为程序一部分的每个类,它们都有一个Class对象.换言之,每次写一个新类时,同时也会创建一个Class对象(更恰当的说, ...
- JAVA编程思想读书笔记(二)--容器
接上篇JAVA编程思想读书笔记(一) 第八章.对象的容纳 No1: java提供了四种类型的集合类:Vector(矢量).BitSet(位集).Stack(堆栈).Hashtable(散列表) No2 ...
- 《大型网站系统与Java中间件》读书笔记 (中)
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾上一篇: <大型网站系统与Java中间件& ...
随机推荐
- 再谈AbstractQueuedSynchronizer2:共享模式与基于Condition的等待/通知机制实现
共享模式acquire实现流程 上文我们讲解了AbstractQueuedSynchronizer独占模式的acquire实现流程,本文趁热打铁继续看一下AbstractQueuedSynchroni ...
- 【RL-TCPnet网络教程】第39章 RL-TCPnet之TFTP服务器
第39章 RL-TCPnet之TFTP服务器 本章节为大家讲解RL-TCPnet的TFTP服务器应用,学习本章节前,务必要优先学习第38章的TFTP基础知识.有了这些基础知识之后,再搞本章节会 ...
- markdown用法
Markdown 语法的目标是成为一种适用于网络的书写语言.不在 Markdown 涵盖范围之内的标签,都可以直接在文档里面用 HTML 撰写.不需要额外标注,只要直接加标签就可以了. 一.常用部分 ...
- oracle 一些常用的sql优化规则
1.高效使用groupby 提高GROUP BY语句的效率,可以通过将不需要的记录在GROUP BY之前过滤掉. 低效: SELECT JOB ,AVG(SAL) FROM EMP GROUP BY ...
- Velocity 模板引擎的应用
springboot三层机构,还有数据映射待实体.肯定需要一套模板引擎呀.那不然还手写不成. 根据我们的实际业务需求,我添加了一套数据库反向生成实体类的模板,用的是Velocity 的引擎. 不多说直 ...
- 网卡也能虚拟化?网卡虚拟化技术 macvlan 详解
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. 01 macv ...
- C# 《编写高质量代码改善建议》整理&笔记 --(五)成员设计
1.可以字段应该重构为属性 2.谨慎将数组或集合作为属性 数组和集合作为属性存在会引起这样的一个分歧:如果属性是只读的,我们通常会认为他是不可改变的.但是如果将只读属性应用于数组和集合,而元素的内容和 ...
- ToastMiui【仿MIUI的带有动画的Toast】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 仿MIUI的带有动画的Toast 效果图 代码分析 ToastMiui类基于WindowManager 为了和Toast用法保持一致 ...
- 【Python3爬虫】使用异步协程编写爬虫
一.基本概念 进程:进程是一个具有独立功能的程序关于某个数据集合的一次运行活动.进程是操作系统动态执行的基本单元. 线程:一个进程中包含若干线程,当然至少有一个线程,线程可以利用进程所拥有的资源.线程 ...
- 创建简单的npm脚手架
前言 vue-cli, webpack-cli 等脚手架是不是用起来爱不释手?自己写了个模版每次来回复制粘贴代码是不是很难维护?如果你是对前端.Node操作有一定的了解,同时也存在以上疑问,那就请尽情 ...