Neural Networks for Machine Learning by Geoffrey Hinton (4)
一种能够学习家谱关系的简单神经网络
血缘一共同拥有12种关系:
son, daughter, nephew, niece, father, mother, uncle, aunt, brother, sister, husband, wife
有1个英国家庭以及1个意大利家庭,每一个家庭有12个人。
各种家庭关系都是可用三元数组表示。即( Agent / Relation / Patient ) 结构:
- (colin has-father james)
- (colin has-mother victoria)
- (james has-wife victoria) 能够由上述关系推导得到
该网络由5层结构组成,如图1所看到的
图1
- 网络底层左右两边各有12个神经元。
- 第1层左側神经元输入 Agent 向量,每次仅仅有一个为1,如000100000000。
- 第1层右側神经元输入 Relation 向量。每次也仅仅有一个为1。
- 第2层左側神经元用来序列化 Agent 向量,右側神经元用来序列化 Relation 向量。
- 第3层用以学习 Agent 与 Relation 的关系,预測出 Patient。
- 第4层解析出 Patient 向量。
- 第5层是预測出的实际 Patient。其每次的激活值可能不仅仅一个。
比如:Andrew has-aunt ? 可能相应多个 aunt。
网络学到了什么?
以序列化输入 Agent 的 6 个神经元为例。如图2.
- 1号神经元对不同国籍的输入非常敏感。能够进行区分。
- 2号神经元对每次输入 Agent 所属的辈分(Generation)非常敏感。
- 6号神经元对每次输入 Agent 所属的家庭非常敏感。
图2
关于 概念(Concepts) 的两种理论
- 特征理论(The Feature Theory)
概念是语义特征的集合。
A concept is a set of semantic features.
因此概念就能够用特征的向量来表示。
- 结构主义理论(The Structuralist Theory)
概念的意义存在于概念与概念之间的关系。
The meaning of a concept lies in its relationships to other concepts.
因此概念能够用关系图模型表达。
Hinton 觉得 *Both sides are wrong* ,由于
神经网络能够使用语义特征来实现关系图模型。
Softmax 输出函数
均方误差有下面缺陷
- 假设目标是1而如今的实际输出是0.00000001。那么返回给神经元的梯度差点儿为0.
- 强制指定所属各类概率就会剥夺网络的学习能力。
Softmax作为逻辑回归的推广,能够非常好解决这些问题。
构造公式
yi=ezi∑j∈groupezi
梯度公式
∂yi∂zi=yi(1−yi)
代价函数依旧使用相互熵
dC / dy 的陡峭正好抵消了 dy / dz 的平坦。
相互熵
C=−∑jtjlogyj
梯度
∂C∂zi=∑j∂C∂yj∂yj∂zi=yi−ti
Theano相应函数
x,y,b = T.dvectors('x','y','b')
W = T.dmatrix('W')
y = T.nnet.softmax(T.dot(W,x) + b)
Neural Networks for Machine Learning by Geoffrey Hinton (4)的更多相关文章
- Neural Networks for Machine Learning by Geoffrey Hinton (1~2)
机器学习能良好解决的问题 识别模式 识别异常 预測 大脑工作模式 人类有个神经元,每一个包括个权重,带宽要远好于工作站. 神经元的不同类型 Linear (线性)神经元 Binary thresho ...
- [Hinton] Neural Networks for Machine Learning - Basic
Link: Neural Networks for Machine Learning - 多伦多大学 Link: Hinton的CSC321课程笔记1 Link: Hinton的CSC321课程笔记2 ...
- [Hinton] Neural Networks for Machine Learning - Converage
Link: Neural Networks for Machine Learning - 多伦多大学 Link: Hinton的CSC321课程笔记 Ref: 神经网络训练中的Tricks之高效BP ...
- [Hinton] Neural Networks for Machine Learning - RNN
Link: Neural Networks for Machine Learning - 多伦多大学 Link: Hinton的CSC321课程笔记 补充: 参见cs231n 2017版本,ppt写得 ...
- [Hinton] Neural Networks for Machine Learning - Bayesian
Link: Neural Networks for Machine Learning - 多伦多大学 Link: Hinton的CSC321课程笔记 Lecture 09 Lecture 10 提高泛 ...
- [Hinton] Neural Networks for Machine Learning - Hopfield Nets and Boltzmann Machine
Lecture 11 — Hopfield Nets Lecture 12 — Boltzmann machine learning Ref: 能量模型(EBM).限制波尔兹曼机(RBM) 高大上的模 ...
- 课程一(Neural Networks and Deep Learning),第二周(Basics of Neural Network programming)—— 4、Logistic Regression with a Neural Network mindset
Logistic Regression with a Neural Network mindset Welcome to the first (required) programming exerci ...
- 课程一(Neural Networks and Deep Learning),第一周(Introduction to Deep Learning)—— 2、10个测验题
1.What does the analogy “AI is the new electricity” refer to? (B) A. Through the “smart grid”, AI i ...
- 课程一(Neural Networks and Deep Learning),第四周(Deep Neural Networks) —— 3.Programming Assignments: Deep Neural Network - Application
Deep Neural Network - Application Congratulations! Welcome to the fourth programming exercise of the ...
随机推荐
- JAVA版数据库主键ID生成器
import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public clas ...
- AC日记——送花 洛谷 P2073
送花 思路: 线段树: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 struct TreeN ...
- Python Unicode与中文处理(转)
Python Unicode与中文处理 python中的unicode是让人很困惑.比较难以理解的问题,本文力求彻底解决这些问题: 1.unicode.gbk.gb2312.utf-8的关系: htt ...
- gvim 编辑器配置
"关才兼容模式 set nocompatible "模仿快捷键,如:ctrt+A 全选.Ctrl+C复制. Ctrl+V 粘贴等 source $VIMRUNTIME/vimrc_ ...
- Python3 字典及三级菜单练习
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # Author;Tsukasa list_1 = { '广州':{ '越秀区':{ '五羊石像','镇海 ...
- 在Spring Controller中将数据缓存到session
Servlet方案 在Controller的方法的参数列表中,添加一个javax.servlet.http.HttpSession类型的形参.spring mvc会 自动把当前session对象注入这 ...
- mysql索引之七:组合索引中选择合适的索引列顺序
组合索引(concatenated index):由多个列构成的索引,如create index idx_emp on emp(col1, col2, col3, ……),则我们称idx_emp索引为 ...
- 在CentOS6或RHEL6恢复上ext4文件系统误删除的文件
首先说明: [root@CentOS6 ~]# rm -rf / //这条命令不可以执行 [root@CentOS6 ~]# rm -rf /* //这条命令可以执行,别去试 ext4文件系统上误删除 ...
- Express使用MongoDB常用操作
const MongoClient = require('mongodb').MongoClient const url = "mongodb://localhost:27017" ...
- 封装boto3 api用于服务器端与AWS S3交互
由于使用AWS的时候,需要S3来存储重要的数据. 使用Python的boto3时候,很多重要的参数设置有点繁琐. 重新写了一个类来封装操作S3的api.分享一下: https://github.com ...