Tensorflow2的基本用法
张量表示数据,用计算图搭建神经网络,用会话执行计算图,优化线上的权重(参数)->得到模型。
张量(tensor):多维数组(列表) 阶:张量的维数。
数据类型: tf.float32 tf.int32 bool string
创建张量的4种方式 1. Constant(恒定,在应用中该类型的变量通常是只读,不可修改的)张量 constant (张量的内容,dtype=数据类型(可选)) 2 . tf. convert_to_tensor(数据名,dtype=数据类型(可选)) (转换)
3.创建全为0的张量 tf.zeros(纬度) 创建全为1的张量 t f.ones(纬度) 创建全为指定值的张量 tf.fill(维度,指定值) 一维 直接写个数 二维 用[行,列] 4. 生成正态分布的随机数,默认均值为0,标准差为1 tf.random.normal(维度,mean=均值,stddev=标准差) 生成截断式正态分布的随机数: tf.random.truncated_normal(维度,mean=均值,stddev=标准差) 生成均匀分布随机数 tf.random.uniform(维度,minval=最小值,maxval=最大值)
计算图:graph:搭建神经网络的计算过程,只搭建,不运算。
参数是指—>线上的权重w,用变量表示。随机给初值
常用函数:
1.强制数据转化数据类型。
tf.cast(张量名,dtype=数据类型)
2.计算张量维度上元素的最小值
tf.reduce_min(张量名)
3.计算张量维度上元素的最大最。
tf.reduce_max(张量名)
4.axis
=0 对一个维度进行操作
=1 对第二个维度操作
5.计算张量沿着维度的平均值
tf.reduce_mean (张量名,axis=操作轴)
6.计算张量沿着指定维度的和
tf.reduce.sum(z张量名,axis=操作轴)
7.tf.Variable(初始值)
可以将变量标记为“可训练”,被标记的变量会在反向传播中记录梯度信息,神经网络训练中,通常用该函数标记待训练的参数。
tf.Variable(初始值)
w=tf.Variable(tf.random,normal([2,2],mean=0,stddev=1)) 8.tf.data.Dataset.from_tensor_slices
切分传入张量的第一维度,生成输入特征/标签对,构建数据集
data=tf.data.Dataset.from_tensor_slices(输入特征,标签))
9.tf.GradientTape
gradient求出张量的梯度
with tf.GradientTape( ) as tape:
若干个计算过程
gard=tape.gradient(函数,对谁求导)
10.enumerate
Enumerate是python的内建函数,他可以遍历每个元素(如列表,元祖或字符串),组合为:索引 元素,常在for循环中使用 enumerate(列表名) 11.
Tf.one_hot:在分类问题中,常用独热码做标签,
标记类别:1表示是,0表示非。 tf.one_hot(带转换数据,depth=几分类) 12.
tf.nn.softmax tf.nn.softmax(x)使输出符合概率分布。 13.assign_sub
赋值操作,更新参数的值并返回
调用assign_sub前,先用tf.Variable定义变量w为可训练(可自更新)。
w.assign_sub(w要自减的内容) 14. tf.argmax
返回张量沿指定维度最大的索引。
关于学习率:不要太大。太大会在最优模型左右摇摆。太小会叠代太多次
Tensorflow2的基本用法的更多相关文章
- TensorFlow2.0(1):基本数据结构—张量
1 引言 TensorFlow2.0版本已经发布,虽然不是正式版,但预览版都发布了,正式版还会远吗?相比于1.X,2.0版的TensorFlow修改的不是一点半点,这些修改极大的弥补了1.X版本的反人 ...
- 人工智能之深度学习-初始环境搭建(安装Anaconda3和TensorFlow2步骤详解)
前言: 本篇文章主要讲解的是在学习人工智能之深度学习时所学到的知识和需要的环境配置(安装Anaconda3和TensorFlow2步骤详解),以及个人的心得体会,汇集成本篇文章,作为自己深度学习的总结 ...
- EditText 基本用法
title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- Java中的Socket的用法
Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...
- python enumerate 用法
A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...
- [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- 【JavaScript】innerHTML、innerText和outerHTML的用法区别
用法: <div id="test"> <span style="color:red">test1</span> tes ...
随机推荐
- 2.4V升5V芯片,8uA功耗,低功耗升压电路图
2.4V升5V,可用于USB拔插充电,也可以用于把两节镍氢电池2.4V升压到5V,的固定输出稳压电压值,同时输出电流可达1A,0.5A等 首先是先说下0.5A的这款的话,是比较低功耗的,8uA左右的输 ...
- 特斯拉Toolbox诊断检测仪工具Tesla诊断电脑 Tesla Toolbox
Tesla特斯拉Toolbox诊断工具Tesla诊断电脑检测仪 Tesla Toolbox, Tesla Toolbox Diagnostic Tester.Language: English,Deu ...
- 2021/1/20随记,MTU
背景: 事情是这样的,客户2台防火墙部署了ipsec,内网互通,但是其中ssh以及其他大命令之类的操作就会卡住,简单的vi命令可以使用. 解决: 排除网络问题,因为内网互通,其次是系统层面问题,最终定 ...
- LR 场景中Windows资源配置设置
监视连接前的准备工作 1)进入被监视windows系统,开启以下几个服务Remote Procedure Call(RPC) .Rmote Resgistry.Network DDE.Server.W ...
- Redis持久化之父子进程与写时复制
之所以将Linux底层的写时复制技术放在Redis篇幅下,是因为Redis进行RDB持久化时,BGSAVE(后面称之为"后台保存")会开辟一个子进程,将数据从内存写进磁盘,这儿我产 ...
- Java并发组件三之Semaphore
使用场景:常用于使用有限的资源,限制线程并发的最大数量.默认情况下,信号量是非公平性的(先等待先执行为公平.类似于买东西的时候大家排队付款,先来的先付款是公平的.但是这时候有人插队,那就是非公平的)设 ...
- 竞态条件 race condition data race
竞态条件 race condition Race condition - Wikipedia https://en.wikipedia.org/wiki/Race_condition A race c ...
- 为什么要使用 do while(0)?
两点 避免宏定义的花括号对代码的完整性造成影响 可以在指定的代码块中(do{})使用break提前跳出,避免goto.
- CF 板刷总结
CF 板刷总结 这件事的开始要从万圣节那一天说起.当然,万圣节只用于描述时间,我显然是不参加任何万圣节活动的对吧. 以下是一些我觉得有必要拿出来讲的,有技术含量的题.会持续更新,断更了记得来催更. C ...
- loj10171
牧场的安排 内存限制:512 MiB 时间限制:1000 ms 原题来自:USACO 2006 Nov. Gold Farmer John 新买了一块长方形的牧场,这块牧场被划分成 MMM 行 NNN ...