神经网络101 手把手快速入门神经网络基础

David 9 今天发现一篇很适合作神经网络101的文章, 就是这篇Learning How To Code Neural Networks . 没有什么比自己写一个简单的神经网络更容易理解神经网络的了.

所以, 让我们开始吧 :

步骤1: 神经元和前向传播

什么是神经网络?  我们首先要搞明白什么是神经元.

神经元像一个函数 ; 它输入一些值, 计算后, 仅输出一个值.

下图中, 是一个人工神经元,输入是5,经过Sigmoid函数输出是1. 输入值5是哪里来的呢? 其实就是向量[1, 0]与[7, 3]的点积, 最后加上bias偏置-2,即1*7 + 0*3 + (-2) = 5. 这里的[1, 0]叫输入向量,[7, 3]叫权重向量,-2叫偏置项,下面会谈到。

1-ya95fcxh4h7zys8gsrzvng

所以计算方式是:

1-pa-u0c_k9lpmgya696rq4w 继续阅读神经网络101 手把手快速入门神经网络基础

蒙特卡洛树搜索 MCTS 入门

参考文献:

  1. http://www.kuqin.com/shuoit/20160219/350769.html
  2. https://www.caktusgroup.com/blog/2015/09/24/introduction-monte-carlo-tree-search-1/

什么是 MCTS?

全称 Monte Carlo Tree Search,是一种人工智能问题中做出最优决策的方法,一般是在组合博弈中的行动(move)规划形式。它结合了随机模拟的一般性和树搜索的准确性。

MCTS 受到快速关注主要是由计算机围棋程序的成功以及其潜在的在众多难题上的应用所致。超越博弈游戏本身,MCTS 理论上可以被用在以 {状态 state,行动 action} 对定义和用模拟进行预测输出结果的任何领域。

基本算法

基本的 MCTS 算法非常简单:根据模拟的输出结果,按照节点构造搜索树。其过程可以分为下面的若干步: 继续阅读蒙特卡洛树搜索 MCTS 入门

Pycon 2016 tensorflow 研讨会总结 — tensorflow 手把手入门, 用”人话”解释CNN #第三讲 CNN

上一期我们讲到Pycon 2016 tensorflow 研讨会总结 — tensorflow 手把手入门 #第二讲 word2vec . 今天是我们第三讲, 仔细讲一下CNN.

所讲解的Workshop地址:http://bit.ly/tf-workshop-slides
示例代码地址:https://github.com/amygdala/tensorflow-workshop

首先什么是CNN? 其实, 用”人话”简洁地说, 卷积神经网络关键就在于”卷积”二字, 卷积是指神经网络对输入的特征提取的方法不同. 学过卷积的同学一定知道, 在通信中, 卷积是对输入信号经过持续的转换, 持续输出另一组信号的过程.

convolution_of_box_signal_with_itself2

上图来自维基百科, 经过红色方框的持续转换, 我们关注红色方框和蓝色方框的重叠面积, 于是我们得到新的输出: 黑色线的函数. 这正是通过卷积生成新函数的过程. 继续阅读Pycon 2016 tensorflow 研讨会总结 — tensorflow 手把手入门, 用”人话”解释CNN #第三讲 CNN