机器学习入门14 - 神经网络简介 (Introduction to Neural Networks)
原文链接:https://developers.google.com/machine-learning/crash-course/introduction-to-neural-networks/
神经网络是更复杂版本的特征组合。实质上,神经网络会学习适合相应特征组合。
1- 剖析
“非线性问题”意味着无法使用形式为“$b + w_1x_1 + w_2x_2$”的线性模型准确预测标签。
对非线性问题可以用特征组合的方法进行建模。
隐藏层
“隐藏层”表示中间值。
如果构建一个多层模型,“隐藏层”每个节点是上一层输入节点值的加权和,输出是“隐藏层”节点的加权和,那么此模型仍是线性的。
因为当将输出表示为输入的函数并进行简化时,只是获得输入的另一个加权和而已。

激活函数
要对非线性问题进行建模,可以直接引入非线性函数。
可以用非线性函数将每个隐藏层节点像管道一样连接起来。
在隐藏层中的各个节点的值传递到下一层进行加权求和之前,采用一个非线性函数对其进行了转换,这种非线性函数称为激活函数。

通过在非线性上堆叠非线性,能够对输入和预测输出之间极其复杂的关系进行建模。
简而言之,每一层均可通过原始输入有效学习更复杂、更高级别的函数。
常见激活函数
S型激活函数
S型激活函数将加权和转换为介于 0 和 1 之间的值。
S 型函数的响应性在两端相对较快地减少。
公式:
$F(x)=\frac{1} {1+e^{-x}}$
曲线图:

修正线性单元激活函数(简称为 ReLU)
ReLU 的优势:基于实证发现(可能由 ReLU 驱动),拥有更实用的响应范围。
相较于 S 型函数等平滑函数,效果通常要好一点,同时还非常易于计算。
公式:
$F(x)=max(0,x)$
曲线图:

其他激活函数
实际上,所有数学函数均可作为激活函数。
TensorFlow 为各种激活函数提供开箱即用型支持。建议从 ReLU 着手。
2- 总结
通常所说的“神经网络”的所有标准组件:
- 一组节点,类似于神经元,位于层中。
- 一组权重,表示每个神经网络层与其下方的层之间的关系。下方的层可能是另一个神经网络层,也可能是其他类型的层。
- 一组偏差,每个节点一个偏差。
- 一个激活函数,对层中每个节点的输出进行转换。不同的层可能拥有不同的激活函数。
3- 练习
xxx
4- 关键词
激活函数 (activation function)
一种函数(例如 ReLU 或 S 型函数),用于对上一层的所有输入求加权和,然后生成一个输出值(通常为非线性值),并将其传递给下一层。
隐藏层 (hidden layer)
神经网络中的合成层,介于输入层(即特征)和输出层(即预测)之间。神经网络包含一个或多个隐藏层。
神经网络 (neural network)
一种模型,灵感来源于脑部结构,由多个层构成(至少有一个是隐藏层),每个层都包含简单相连的单元或神经元(具有非线性关系)。
神经元 (neuron)
神经网络中的节点,通常会接收多个输入值并生成一个输出值。
神经元通过将激活函数(非线性转换)应用于输入值的加权和来计算输出值。
修正线性单元 (ReLU, Rectified Linear Unit)
一种激活函数,其规则如下:
- 如果输入为负数或 0,则输出 0。
- 如果输入为正数,则输出等于输入。
S 型函数 (sigmoid function)
一种函数,可将逻辑回归输出或多项回归输出(对数几率)映射到概率,以返回介于 0 到 1 之间的值。
S 型函数的公式:$y = \frac{1}{1 + e^{-\sigma}}$
在逻辑回归问题中, $\sigma$非常简单:$\sigma = b + w_1x_1 + w_2x_2 + … w_nx_n$
换句话说,S 型函数可将$\sigma$转换为介于 0 到 1 之间的概率。
在某些神经网络中,S 型函数可作为激活函数使用。
机器学习入门14 - 神经网络简介 (Introduction to Neural Networks)的更多相关文章
- 今天开始学模式识别与机器学习(PRML),章节5.1,Neural Networks神经网络-前向网络。
今天开始学模式识别与机器学习Pattern Recognition and Machine Learning (PRML),章节5.1,Neural Networks神经网络-前向网络. 话说上一次写 ...
- 卷积神经网络用于视觉识别Convolutional Neural Networks for Visual Recognition
Table of Contents: Architecture Overview ConvNet Layers Convolutional Layer Pooling Layer Normalizat ...
- [翻译]用神经网络做回归(Using Neural Networks With Regression)
本文英文原文出自这里, 这个博客里面的内容是Java开源, 分布式深度学习项目deeplearning4j的介绍学习文档. 简介: 一般来说, 神经网络常被用来做无监督学习, 分类, 以及回归. 也就 ...
- cs231n spring 2017 lecture4 Introduction to Neural Networks 听课笔记
1. Backpropagation:沿着computational graph利用链式法则求导.每个神经元有两个输入x.y,一个输出z,好多层这种神经元连接起来,这时候已知∂L/∂z,可以求出∂L/ ...
- CS231n笔记 Lecture 4 Introduction to Neural Networks
这一讲主要介绍了神经网络,基本内容之前如果学习过Andrew的Machine learning应该也都有所了解了.不过这次听完这一讲后还是有了新的一些认识. 计算图 Computational gra ...
- cs231n spring 2017 lecture4 Introduction to Neural Networks
1. Backpropagation:沿着computational graph利用链式法则求导.每个神经元有两个输入x.y,一个输出z,好多层这种神经元连接起来,这时候已知∂L/∂z,可以求出∂L/ ...
- 机器学习入门 - Google机器学习速成课程 - 笔记汇总
机器学习入门 - Google机器学习速成课程 https://www.cnblogs.com/anliven/p/6107783.html MLCC简介 前提条件和准备工作 完成课程的下一步 机器学 ...
- 卷积神经网络(Convolutional Neural Networks)CNN
申明:本文非笔者原创,原文转载自:http://www.36dsj.com/archives/24006 自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural ...
- 一目了然卷积神经网络 - An Intuitive Explanation of Convolutional Neural Networks
An Intuitive Explanation of Convolutional Neural Networks 原文地址:https://ujjwalkarn.me/2016/08/11/intu ...
随机推荐
- KNN Python实现
KNN Python实现 ''' k近邻(kNN)算法的工作机制比较简单,根据某种距离测度找出距离给定待测样本距离最小的k个训练样本,根据k个训练样本进行预测. 分类问题:k个点中出现频率最高的类别作 ...
- Spring Boot 启动(四) EnvironmentPostProcessor
Spring Boot 启动(四) EnvironmentPostProcessor Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698. ...
- Gym - 101848B Almost AP 暴力
题目链接:http://codeforces.com/gym/101848/problem/B 给出一串数字要你最多改动三个数字使这一串数字成为等差数列.因为最多改动三个数字所以可以先求出相邻两项的差 ...
- apache ab 结果Failed requests探究
Failed requests: 537 (Connect: 0, Receive: 3, Length: 268, Exceptions: 266) Receive:当客户端connect成功后,并 ...
- 高速上手C++11 14 笔记1
1 constexpr constexpr关键字可以让已经具备常量返回的函数运用于常量的位置. c++14起可以在函数内部使用局部变量.循环和分支等简单语句. 2 委托构造&继承构造 委托构造 ...
- Javascript中表达式和语句的区别
一.表达式:一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数. 以下例子就是表达式: a=35: b=1+a; a=function (){return 6}: b ...
- HDU 6382 odds (暴力 + 剪枝优化)
odds Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Subm ...
- java 幂等性(转)
(转自)http://www.cnblogs.com/weidagang2046/archive/2011/06/04/idempotence.html 理解HTTP幂等性 基于HTTP协议的Web ...
- 2018-04-10 我的GitHub诞生的日子,欢迎大家吐槽批评
我的GitHub,诞生的日子,欢迎大家吐槽与批评,嘻嘻 首先是自己想刷一下LeetCode上的代码,其次创建了自己的读书笔记以及面试经验与教训 下边是仓库的Git链接,欢迎大家的批评与修正,谢谢: L ...
- java集成memcached、redis防止缓存穿透
下载相关jar,安装Memcached,安装教程:http://www.runoob.com/memcached/memcached-install.html spring配置memcached &l ...