Tensorflow lesson 4---输入参数placeholder

在Tensorflow中如果我们要从外部输入数据,就要用到placeholder,当然placeholder也是一个tensor,可以接受任何维度的tensor数据,比如向量,矩阵,图像等

import tensorflow as tf
import numpy as np

a=tf.placeholder(tf.float32)#声明a作为placeholder接收float32的数据
b=tf.placeholder(tf.float32)#声明b作为placeholder接收float32的数据
adder_node=a+b#对两个placeholder输入的tensor数据做加法
c=tf.placeholder(tf.float32)#声明c作为placeholder接收float32的数据
adder_and_triple= adder_node*c #执行(a+b)*c

with tf.Session() as sess:
    print(sess.run(adder_node,{a:5,b:7}))#这里placeholder输入的为rank=0的tensor数据
    print(sess.run(adder_node,{a:[[6,9],[6,10],[12,3]],b:[[4,5],[36,13],[23,35]]}))#placeholder输入的位rank=2的tensor数据
    print(sess.run(adder_and_triple,{a:[8,9],b:[1,6],c:3}))#a,b为rank=1的tensor数据,c为rank=0的tensor数据

执行的结果为

12.0
[[ 10.  14.]
 [ 42.  23.]
 [ 35.  38.]]
[ 27.  45.]

在实际的机器学习中,我们可以用tensor输入任何类型的tensor数据,作为神经元的输入数据

TensorFlow是一个强大的开源机器学习框架,用于构建和部署深度学习模型。以下是使用TensorFlow入门构建简单神经网络的基本步骤: 1. **安装TensorFlow**:首先,你需要安装TensorFlow库。如果你使用Python,可以使用pip安装最新版本: ``` pip install tensorflow ``` 2. **导入库**:在Python脚本中,引入`tensorflow`模块: ```python import tensorflow as tf ``` 3. **创建占位符**:定义输入数据的占位符,它们会在每次运行会话时提供实际的数据: ```python inputs = tf.placeholder(tf.float32, [None, input_size]) labels = tf.placeholder(tf.float32, [None, num_classes]) ``` 4. **定义权重和偏置**:初始化随机权重矩阵和偏置项,通常使用正态分布或其他初始化策略: ```python weights = tf.Variable(tf.random_normal([input_size, num_classes])) biases = tf.Variable(tf.zeros([num_classes])) ``` 5. **计算预测值**:使用点乘和加法操作计算神经网络的输出: ```python predictions = tf.nn.softmax(tf.add(tf.matmul(inputs, weights), biases)) ``` 6. **损失函数**:选择合适的损失函数,如交叉熵损失(适合分类任务): ```python loss = tf.reduce_mean(-tf.reduce_sum(labels * tf.log(predictions), reduction_indices=[1])) ``` 7. **优化器**:配置一个优化算法,如梯度下降或Adam,来更新权重以最小化损失: ```python optimizer = tf.train.AdamOptimizer(learning_rate).minimize(loss) ``` 8. **训练循环**:在一个会话中,不断提供训练数据并调用优化器迭代: ```python with tf.Session() as sess: sess.run(tf.global_variables_initializer()) for epoch in range(num_epochs): # 进行一次训练轮次... ``` 9. **评估模型**:通过测试数据集验证模型性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DiegoRobot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值