当前位置: 代码迷 >> 综合 >> MOOC《人工智能实践:Tensorflow笔记2》(一)
  详细解决方案

MOOC《人工智能实践:Tensorflow笔记2》(一)

热度:36   发布时间:2024-02-06 14:23:14.0

去年秋天看过这个视频,现在再好好看看
后面关于代码的内容,too lazy to write,我现在只想接受深度学习的知识

1. 专家系统与神经网络区别

要求:对iris进行分类
专家系统将经验编写成条件语句,输入当前鸢尾花的特征,输出其类别
神经网络通过训练集训练好,输入当前鸢尾花的特征,输出其类别

2. 神经网络对iris进行分类

输入是四个特征:花萼长、花萼宽、花瓣长、花瓣宽  
输出:狗尾草鸢尾 或 杂色鸢尾 或 弗吉尼亚鸢尾

y = x*w + b
(1,3) = (1,4)*(4,3) + (1,3)

2.1 参数学习

参数学习的方法:梯度下降法,使得损失函数L最小
梯度:函数对各参数求导后的向量
损失函数采用均方误差

y为输出向量,y*为目标向量

损失函数对参数w b求导
   lr为学习率

链式法则
标量函数L对矩阵w求偏导 = 标量函数L对向量y求偏导 X 向量y对矩阵w求偏导
标量函数L对向量b求偏导 = 标量函数L对向量y求偏导 X 向量y对向量b求偏导
所以需要求出三个偏导,即    



标量函数y1  y2   y3


讨论结果的维数:

  标量函数L 对 向量y 求导   结果
向量y 对 矩阵w 求导  结果
向量y 对 向量b 求导  结果
结果为 

  结果为

 

参数更新

将损失函数L对向量y的偏导结果带入得

这便说明了,如何通过输入x、输出y、目标y 来更新w与b

但是说实话,我这里的矩阵微分有很大问题。

2.2 tensorflow实现代码

环境 python3.7 tensorflow2.1

 

3.tensorflow 生成张量

tf数据类型

4.tensorflow 常用函数

5.tensorflow 读入iris数据集

6.tensorflow 神经网络实现iris分类

 

  相关解决方案