ML: 2-3 neural network 代码理解

发布时间:2024年01月11日

1. 如何用代码实现推理

1.1 介绍

  1. Tensorflow是实现深度学习算法里的领先的框架之一。
  2. Tensorflow和PyTorch一样都很常用。这节课会着重于Tensorflow,。
  3. 神经网络特点之一:是相同的算法可以被应用到很多不同的应用程序里。

1.2 案例1:咖啡豆的烘焙问题。

  1. 温度太低/时间太短—undercoked
  2. 温度太高/时间太长—overcoked
  3. 用神经网络来优化咖啡豆的烘焙。
  4. temp 200,duration 17: 算法会告诉我们它是否为好的咖啡。

请添加图片描述
5. 将input输入
6. layer_1里设置3个neurons,activation为sigmoid函数的神经网络算法。
7. dense为这层layer的类型。

请添加图片描述
8. 继续设置layer_2
9. a2的值为output,用a2来跟threshold比较。

请添加图片描述

1.3 案例2: 手写数字的分类问题。

请添加图片描述

2. Tensorflow中的数据形式【code理解】

【了解Tensorflow如何处理数据】

2.1 Tensorflow如何表达数据。

  1. double squared brackets [[]]表示什么???【表示2D数据】

请添加图片描述
2. Numpy如何储存vector和matrices???
- 用array来表示(按行存,每行用一个list表示)

请添加图片描述
3. Numpy arrays的区别
1. 是1行2列的matrix。【row vector】
2. 是2行1列的matrix。【column vector】
3. 只有一个squared bracket:【1D“vector”, 而不是2维的matrix。只是一组数据的list】
4. 在Tensorflow里用2D形式来表达数据。跟线性/逻辑回归不同,它俩用1D。

请添加图片描述
5. 把a1打印出来的结果如图
6. float32: 表示这个float在计算机占32bits的内存。
7. Tensor是一种数据类型,由Tensorflow创立团队建设的,能有效储存matrices的计算
8. 使用a1.numpy()可以将Tensor数据类型转回Numpy array

请添加图片描述
请添加图片描述

3. 搭建一个神经网络

【了解另一种构建neural networks的code方法】

  1. 回顾: 如图,这是上面学习的一种实现neural network的方法。
    请添加图片描述
  2. 另一种方法:
    (1)设置layer1、layer2。然后不用手动获取数据(a1,a2)传递到下一层。
    (2)使用sequential()函数将layer1、layer2串起来。
    (3)将training data输入进去。
    (4)使用model.complie() 、model.fit(x,y)
    (5)使用model.predict()让计算机帮忙做forward propagation,预测x_new值。

请添加图片描述

  1. 使用新方法,对手写数字进行预测。
    1. 设置layer信息。
    2. 使用sequential()指定什么是layer1,layer2等等。
    3. 使用.compile() 将model编译。
    4. 输入input
    5. 使用.fit(x,y)
    6. 使用模型进行预测model.predict(x_new)。

请添加图片描述

  • 这里layer1-3可以直接写进sequential()里面。
    请添加图片描述
文章来源:https://blog.csdn.net/skylar0/article/details/135508878
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。