初识神经网络---My way of AI18

感知机

说到神经网络之前我们先说一下感知机,它其实是一种伪神经元。
有n个数据,通过权重与各种数据之间的计算和比较激活函数结果,得出输出,它的主要目的是解决分类问题。

但是如何现在是有一个感知机解决不了的我们就引入了多个感知机,这其实也就是我们常说的svm算法。

我们登陆playground.tensorflow.org网站去模拟一下单个以及多个感知机的分类效果。

1.一个神经元进行二分类
在这里插入图片描述

可以明显的看出分类结果毫不准确,就是因为一条线不可能分开。

2.两个神经元
在这里插入图片描述

3.三个神经元
在这里插入图片描述

可以看出来三个神经元得出的结果已经是非常准确了。所以可以看得出来,所谓的感知机其实就是神经网络(神经元)。

神经网络

神经网络的一些过程无法解释(其实今天10.28才在csdn上看到新闻,国外有一些科学家把深度学习比作是炼金术,hhhh),我讨厌将深度学习称为AI

多个神经元(感知机)组成神经网络。不同的结构解决不同的问题,不只是分类,回归及其他问题。

特点
  1. 输入向量维度与输入神经元个数相同
  2. 每个连接都有权值
  3. 同一层神经元之间没有连接
  4. 由输入层,隐层和输出层组成
  5. 第N层和第N-1层的所有神经元连接,叫做全连接
组成
  1. 结构:神经网络中的权重,神经元等
  2. 激活函数
  3. 学习规则:学习规则规定了网络中的权重如何随着时间推进而调整(反向传播算法)

神经网络。解决多分类,得出某一个样本属于全部样本的概率,所有有多少个类别就有多少个类别概率的输出。

神经网络的模块选择:
tf.nn:提供神经网络的基本操作
tf.layers:主要是对tf.nn的进一步封装
tf.contrib:将tf.layers进一步封装,目前处于试验阶段还不稳定

学习中采用tf.nn模块体会神经网络的流程

浅层的人工神经网络模型

SoftMax回归

Si=ei/(e1+e2+…+ej)求出的是一个概率值,其中i代表的是第i个类别求出的值,j代表一共j个列别。这样就可以求出各个类别的概率。且从公式可以看出来所有类别的概率值相加等于1。
在这里插入图片描述

神经网络用交叉熵函数衡量损失
其实就是信息熵,一个样本就有一个交叉熵损失,y\i代表是真实值,yi代表预测概率
在这里插入图片描述

优化:反向传播算法(就是梯度下降)

因为神经网络有反响传播的概念,我们把数据的输入叫做正向传播,我们把更新权重叫做反向传播。可以参考李金洪的《深度学习之tensorflow入门与实战》。

API

softmax

在这里插入图片描述

损失值列表平均值计算

在这里插入图片描述

反向传播算法API

在这里插入图片描述

author: specyue@mail.ustc.edu.cn 欢迎交流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值