【Tensorflow】TensorFlow的嵌入layer和多层layer

计算图中的操作

# python 3.6
import tensorflow as tf
import numpy as npsess = tf.Session()# 将张量和占位符对象组成一个计算图,创建一个简单的分类器# 一、计算图中的操作
# 1. 声明张量和占位符,创建numpy数组,传入计算图操作
x_vals = np.array([1.,3.,5.,7.,9.])
x_data = tf.placeholder(tf.float32)
m_const = tf.constant(3.)
my_product = tf.multiply(x_data, m_const)
for x_val in x_vals:print(sess.run(my_product, feed_dict={x_data: x_val}))
#输出:
# 3.0
# 9.0
# 15.0
# 21.0
# 27.0

计算图中的操作

工作原理
在这里插入图片描述

嵌入Layer

# python 3.6
import tensorflow as tf
import numpy as npsess = tf.Session()
# 二、TensorFlow的嵌入layer
# 在同一个计算图中进行多个乘法操作
# 1. 创建数据和占位符
array = np.array([[1.,3.,5.,7.,9.],[2.,4.,6.,8.,10.],[-4,-2,0,1,2]]) # 3×5的矩阵
x_vals = np.array([array, array+1]) # 两个3×5的矩阵
# 如果未知占位符的维度可以设为None shape=(3,None)
x_data = tf.placeholder(tf.float32,shape=(3,5))# 2. 创建常量矩阵
c1 = tf.constant([[1.],[0.],[-1.],[3.],[2.]])
c2 = tf.constant([[2.]])
c3 = tf.constant([[10.]])# 3. 声明计算图操作
prod1 = tf.matmul(x_data, c1) # (3,5) × (5×1) = (3,1)
prod2 = tf.matmul(prod1, c2) # (3,1) × (1×1) = (3,1)
add1 = tf.add(prod2, c3) #
print(prod2)
print(c3)
print(add1)
# 4. 计算图赋值
for x_val in x_vals:print(sess.run(add1,feed_dict={x_data:x_val}))# print("----")# print(sess.run(prod2,feed_dict={x_data:x_val}))# print("----")# print(sess.run(c3,feed_dict={x_data:x_val}))# print("----")# print(sess.run(add1,feed_dict={x_data:x_val}))

原理
在这里插入图片描述

多层Layer

# 三、TensorFlow的多层Layer
# 如何连接传播数据的多层layer?
# 1. 通过numpy创建2D图像,4×4像素图片。
# 将创建成四维:第一维和最后一维大小为1。
# 注意,TensorFlow的图像函数是处理四维图片的,
# 这四维是:图片数量(1)、高度、宽度和颜色通道(1)。
# 这里是一张图片,单颜色通道,所以设两个维度值为1:
x_shape = [1,4,4,1]
x_val = np.random.uniform(size=x_shape)# 2. 创建占位符,用来传入图片
x_data = tf.placeholder(tf.float32,shape=x_shape)# 3. 创建过滤4×4像素图片的滑动窗口
# 用conv2d()卷积2×2形状的常量窗口:传入滑动窗口、过滤器和步长
# 窗口大小:2×2 步长:2
# 为了计算平均值,用常量为0.25的向量与2×2窗口卷积
filter = tf.constant(0.25, shape=[2,2,1,1])
strides = [1,2,2,1]
mov_avg_layer = tf.nn.conv2d(x_data,filter,strides,padding='SAME', name='Moving_Avg_Window')# 4. 自定义layer,操作滑动窗口平均的2×2的返回值
# 输入张量乘以2×2的矩阵张量 然后每个元素加1
# 因为矩阵乘法只计算二维矩阵所以剪裁squeeze()图形的多余维度
def custom_layer(input_matrix):input_matrix_sqeezed = tf.squeeze(input_matrix)a = tf.constant([[1.,2.],[-1.,3.]])b = tf.constant(1.,shape=[2,2])temp1 = tf.matmul(a, input_matrix_sqeezed)temp = tf.add(temp1,b)return tf.sigmoid(temp)# 5. 将自定义的layer加入计算图,用tf.name.scope命名唯一的layer名字
# 后续在计算图中可以折叠或者扩展Custom_Layer
with tf.name_scope('Custom_Layer') as scope:custom_layer1 = custom_layer(mov_avg_layer)# 6. 传入4×4的像素图片,执行计算图
print(sess.run(custom_layer1, feed_dict={x_data:x_val}))

原理
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/481116.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文本分类问题不需要ResNet?小夕解析DPCNN设计原理(下)

哎呀呀,说好的不拖稿的又拖了两天T_T,小夕过一阵子分享给你们这两天的开心事哦。后台催稿调参系列的小伙伴们不要急,下一篇就是第二篇调参文啦。好啦,接着上一篇文章,直接搬来DPCNN、ShallowCNN、ResNet的对比图。从图…

注意力机制-深度学习中的注意力机制+注意力机制在自然语言处理中的应用

1 深度学习中的注意力机制 https://mp.weixin.qq.com/s?__bizMzA4Mzc0NjkwNA&mid2650783542&idx1&sn3846652d54d48e315e31b59507e34e9e&chksm87fad601b08d5f17f41b27bb21829ed2c2e511cf2049ba6f5c7244c6e4e1bd7144715faa8f67&mpshare1&scene1&src…

【TensorFlow】常用的损失函数及其TensorFlow实现

1 损失函数 定义:将随机事件或其有关随机变量的取值映射为非负实数以表示该随机事件的“风险”或“损失”的函数。 应用:作为学习准则与优化问题相联系,即通过最小化损失函数求解和评估模型。 分类:回归问题、分类问题 2 回归问…

从经典文本分类模型TextCNN到深度模型DPCNN

如今深度学习已经成为NLP领域的标配技术,在图像中大为成功的卷积神经网络(CNN)也开始广泛渗透到文本分类、机器翻译、机器阅读等NLP任务中。但是,在ACL2017以前,word-level的文本分类模型(以单词为语义单位…

从特征分解到协方差矩阵:详细剖析和实现PCA算法

从特征分解到协方差矩阵:详细剖析和实现PCA算法本文先简要明了地介绍了特征向量和其与矩阵的关系,然后再以其为基础解释协方差矩阵和主成分分析法的基本概念,最后我们结合协方差矩阵和主成分分析法实现数据降维。本文不仅仅是从理论上阐述各种…

NLP中常用文本分类模型汇总

如今深度学习已经成为NLP领域的标配技术,在图像中大为成功的卷积神经网络(CNN)也开始广泛渗透到文本分类、机器翻译、机器阅读等NLP任务中。但是,在ACL2017以前,word-level的文本分类模型(以单词为语义单位…

【TensorFlow】随机训练和批训练的比较与实现

一、随机训练和批训练 随机训练:一次随机抽样训练数据和目标数据对完成训练。批训练:一次大批量训练取平均损失来进行梯度计算,批量训练大小可以一次上扩到整个数据集。批训练和随机训练的差异:优化器方法和收敛的不同批训练的难…

「小公式」平均数与级数

喵喵喵,小夕最近准备复习一下数学和基础算法,所以可能会推送或者附带推送点数学和基础算法的小文章。说不定哪天就用(考)到了呢( ̄∇ ̄)注意哦,与头条位的文章推送不同,「小公式」和「…

最新出炉-阿里 2020届算法工程师-自然语言处理(实习生)以及补充:快递最短路径

问题2感觉跟下面的分苹果类似; 问题 G: 分梨 题目描述 zzq非常喜欢吃梨,有一天他得到了ACMCLUB送给他的一筐梨子。由于他比较仗义,就打算把梨子分给好朋友们吃。现在他要把M个梨子放到N个盘子里面(我们允许有的盘子为空&#xff0…

如何匹配两段文本的语义?

喵喵喵,好久不见啦。首先很抱歉大家期待的调参手册(下)迟迟没有出稿,最近两个月连着赶了4个DDL,整个人都不好了。最近几天终于有时间赶一下未完成的稿子了。在赶DDL的时候夹着写了这篇文章,就先发布这一篇吧…

【TensorFlow】实现简单的鸢尾花分类器

代码实现及说明 # python 3.6 # TensorFlow实现简单的鸢尾花分类器 import matplotlib.pyplot as plt import tensorflow as tf import numpy as np from sklearn import datasetssess tf.Session()#导入数据 iris datasets.load_iris() # 是否是山鸢尾 0/1 binary_target …

偏差-方差全面解释

偏差(Bias)与方差(Variance) 目录: 为什么会有偏差和方差?偏差、方差、噪声是什么?泛化误差、偏差和方差的关系?用图形解释偏差和方差。偏差、方差窘境。偏差、方差与过拟合、欠拟合…

「小算法」回文数与数值合法性检验

喵喵喵,小夕最近准备复习一下数学和基础算法,尽量每篇推送下面会附带点数学和基础算法的小文章。说不定哪天就用(考)到了呢( ̄∇ ̄)注意哦,与头条位的文章推送不同,「小公式」和「小算…

【TensorFlow】实现、训练并评估简单的回归模型和分类模型

1 回归模型 回归算法模型用来预测连续数值型,其目标不是分类值而是数字。为了评估这些回归预测值是否与实际目标相符,我们需要度量两者间的距离,打印训练过程中的损失,最终评估模型损失。 这里使用的例子是从均值为1、标准差为0…

史上最通熟易懂的检索式聊天机器人讲解

喵喵喵,一不小心又匿了三个月,突然诈尸害不害怕( ̄∇ ̄) 小夕从7月份开始收到第一场面试邀请,到9月初基本结束了校招(面够了面够了T_T),深深的意识到今年的对话系统/chatbot方向是真的…

Python pandas数据分析中常用方法

官方教程 读取写入文件 官方IO 读取 写入 read_csv       to_csv read_excel      to_excel read_hdf       to_hdf read_sql       to_sql read_json      to_json read_msgpack (experimental)   to_msgpack (experimental) read_html    …

小哥哥,检索式chatbot了解一下?

喵喵喵,一不小心又匿了三个月,突然诈尸害不害怕( ̄∇ ̄) 小夕从7月份开始收到第一场面试邀请,到9月初基本结束了校招(面够了面够了T_T),深深的意识到今年的对话系统/chatbot方向是真的…

领域应用 | 中医临床术语系统

本文转载自公众号中医药知识组织与标准。什么是中医药术语系统?它是干什么用的呢?中医药术语系统是运用计算机与信息技术等工具,对中医药学各领域中的事物、现象、特性、关系和过程进行标记和概括,并为每个概念赋予指称形成概念体…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Image图片组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Image图片组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Image组件 Image 用来加载并显示图片的基础组件,它支持从内存、本…