08_创建权重与偏置

在这里插入图片描述


博文配套视频课程:24小时实现从零到AI人工智能


神经网络特点

神经网络就是之前的感知器的叠加,主要用来解决多分类问题。

  1. 有多少个特征,就会有多少个输入神经元
  2. 每根连接线都有权重,除了输入神经元,其它每个神经元都有偏置
  3. 同一层神经元之间没有连接,深度神经网络神由:输入、隐藏、输出层组成
  4. 简单神经网络由:输入、输出层组成

在这里插入图片描述

创建输入与输出神经元

训练的时候不会一次性加载所有图片,因此需要采用占位符,加载图片数量不确定,但是每张图都有784个像素

# 完成图形图像的加载 (分辨率和尺寸相同)
from tensorflow.examples.tutorials.mnist import input_data
import tensorflow as tf
# 通过函数下载或者加载本地的图片资源,建议设置one_hot=True
mnist = input_data.read_data_sets("../data/input_data",one_hot=True)
# 训练的时候不会一次性加载55000,因此需要采用占位符
X = tf.placeholder(tf.float32,[None,784])
y_true = tf.placeholder(tf.int32,[None,10])

创建权重与偏置

多少个连接就会有多少个权重weight [None,784] dot [784,10] => [None,10]

weight = tf.Variable(tf.random.normal([784,10]),name="weight")
bias = tf.Variable(tf.random.normal([10]),name="bias")
# matmul类似numpy dot函数
y_predict = tf.matmul(X,weight) + bias # matmul == dot

import numpy as np
X = np.arange(12).reshape(3,4)
w = np.arange(4).reshape(4,1)
print(X)
print(w)
print(X.dot(w))
y_predict = tf.matmul(X,w)
# 通过会话连接graph图
with tf.Session() as sess:
    print(sess.run(y_predict))  # dot

在这里插入图片描述

发布了128 篇原创文章 · 获赞 17 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/lsqzedu/article/details/102316044