神经网络基础知识

一、感知机模型概念
有n个输入数据,通过权重与各数据之间的计算和,比较激活函数结果,得出输出。
神经网络基础知识_第1张图片
神经网络基础知识_第2张图片
神经网络基础知识_第3张图片
二、感知机的应用
很容易解决与、或、非问题,解决分类问题。
三、感知机与逻辑回归的联系与区别
感知机用的是阈值,而逻辑回归用的是sigmoid激活函数。
四、神经网络的概念
在机器学习和认知科学领域,人工神经网络(artificial neural network,缩写ANN),简称神经网络(:neural network,缩写NN)或类神经网络,是一种模仿生物神经网络的结构和功能的计算模型,用于对函数进行估计或近似。
在这里插入图片描述
五、神经网络的分类
(一)基础神经网络:单层感知器,线性神经网络,BP神经网络,Hopfield神经网络等;
(二)进阶神经网络:玻尔兹曼机,受限玻尔兹曼机,递归神经网络等;
(三)深度神经网络:深度置信网络,卷积神经网络,循环神经网络,LSTM网络等。
六、神经网络的特点
(一)输入向量的维度和输入神经元的个数相同
(二)每个连接都有个权值
(三)同一层神经元之间没有连接
(四)由输入层,隐层,输出层组成
(五)第N层与第N-1层的所有神经元连接,也叫全连接
神经网络基础知识_第4张图片
六、神经网络的组成
(一)结构(Architecture)例如,神经网络中的变量可以是神经元连接的权重。
(二)激励函数(Activity Rule)大部分神经网络模型具有一个短时间尺度的动力学规则,来定义神经元如何根据其他神经元的活动来改变自己的激励值。
(三)学习规则(Learning Rule)学习规则指定了网络中的权重如何随着时间推进而调整。(反向传播算法)
七、神经网络API模块
在使用 tensorflow时候,tf.nn,tf.layers,tf.contrib模块有很多功能是重复的。
(一)tf.nn:提供神经网络相关操作的支持,包括卷积操作(conv)、池化操作(pooling)、归一化、loss、分类操作、embedding、RNN、Evaluation;
(二)tf.layers:主要提供的高层的神经网络,主要和卷积相关的,对tf.nn的进一步封装;
(三)tf.contrib:tf.contrib.layers提供够将计算图中的网络层、正则化、摘要操作,是构建计算图的高级操作,但是tf.contrib包不稳定以及一些实验代码,处于测试阶段。
八、浅层人工神经网络模型
正向传播:输出经过一层层的计算得出输出
反向传播:从损失计算开始,梯度下降更新权重
(一)全连接-从输入直接到输出
特征加权:
tf.matmul(a, b,name=None)+bias
return:全连接结果,供交叉损失运算
不需要激活函数(因为是最后的输出)
(二)SoftMax回归
e = 2.71,softmax回归的作用相当于将输出值转化为每个类别的概率,再经过one-hot编码转化为每一个类别。
神经网络基础知识_第5张图片
神经网络基础知识_第6张图片
1、计算概率
2、所有类别的概率值相加都等于1
算法 策略 优化
线性回归 均方误差 梯度下降
逻辑回归 对数似然损失 梯度下降 二分类
神经网络 交叉熵损失 反向传播算法(本质也是梯度下降)
3、代码实现
tf.nn.softmax_cross_entropy_with_logits(labels=None,
logits=None,name=None)计算logits和labels之间的交叉损失熵
(1)labels:标签值(真实值)
(2)logits:样本加权之后的值
(3)return:返回损失值列表

(二)损失计算API
损失计算——交叉熵损失
神经网络基础知识_第7张图片
损失值列表平均值计算:tf.reduce_mean(input_tensor)
计算张量的尺寸的元素平均值
(三)其他方法API介绍
tf.train.GradientDescentOptimizer(learning_rate)
梯度下降优化
(1)learning_rate:学习率,一般为
(2)minimize(loss):最小化损失
(3)return:梯度下降op
九、one-hotAPI
tf.ne_hot(indices,depth,on_value=None,off_value=None,axis=None,dtype=None,name=None)
1、indices 在独热编码中位置,即数据标签
2、depth张量的深度,即类别数
十、准确度计算
(一)equal_list = tf.equal(tf.argmax(y, 1), tf.argmax(y_label, 1))
(二)accuracy = tf.reduce_mean(tf.cast(equal_list, tf.float32))
神经网络基础知识_第8张图片

你可能感兴趣的:(tensorflow)