利用Tensorflow实现三层全连接的神经网络

本文介绍了如何使用TensorFlow构建一个基于鸢尾花数据集的三层全连接神经网络。首先,通过tensorflow.one_hot()进行数据预处理。接着,定义输入层、隐藏层和输出层的权重变量,并构建计算图。前向传播过程中,通过矩阵乘法和激活函数计算预测值。然后,定义损失函数并选择梯度下降优化器进行参数优化。最后,在会话控制模块中执行优化过程,实现权重的迭代更新。
摘要由CSDN通过智能技术生成

1.Tensorflow的概述原理:

tensorflow的使用类似于一种框架定义,在使用tensorflow定义变量variable,和占位符tensorflow.placeholder()的时候,给出的是一种框架的定义。只有在会话控制模块tensorflow.session中调用run(),才能让对应的语句真正的执行。

这里关于tensorflow有一个很重要的计算图的概念,意思就是在你声明的一些框架变量之后,对变量的相关计算操作都会被连接,绘制成一个计算图,叶子结点就是你声明的一些参数变量,也是你最后要进行优化的参数,在计算图绘制完成之后,在会话控制模块对计算图的根节点进行反向追踪,才能对变量进行优化,计算图的构造是自然而然的,不需要程序员操心,这只是一个概念

这里我们基于sklearn中的莺尾花数据集进行三层全连接的神经网络搭建,数据集的导入不做详细介绍

第一步:因为我们要进行分类模型的训练,首先我们需要利用tensorflow的one_hot()独热编码函数,将数据集的label集编码成为对应编码集。one_hot()中有两个核心的参数要传入,第一个就是待编码的列表格式的label集,第二个就是depth(也就是数据集是几分类就传几)。需要注意的是,这里的独热编码对象是一个列表!!!是一个列表!!列表!!重要的说三遍,函数会对传入的列表的每一个元素进行编码,如果是三分类且label为2的话就是[0,0,1]。

第二步:我们需要定义我们计算要的参数

1.输入集,input=tensorflow.placehol

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值