
TensorFlow
文章平均质量分 70
TensorFlow
u013250861
这个作者很懒,什么都没留下…
展开
-
Anaconda中安装指定版本的tensorflow1.14.0/tensorflow-gpu1.14.0
在运行github中一个项目时,由于其使用的tensorflow的版本是1.14.0,而我的版本是2.6.0的版本,因为版本过高导致运行失败,所以需要。即删除高版本的tensorflow,当然,你也可以不删除,那么你就需要创建新的运行环境。即可将环境降到python3.7。注意:install后面是你之前下载的文件的路径。注意:虽说上面提示可以使用。原创 2023-05-25 23:35:00 · 1768 阅读 · 0 评论 -
TensorFlow:各种层
要判断是否包含这两类特征,我们就需要有一个小方块在图片上移动,这个小方块是带着有色眼镜的,会专门寻找鹰爪的那个勾,遇到带勾的区域就特别兴奋地标记为1,遇不到就没有感觉地标记为0。第一层转为784大小的一维数组,经过第二层变为128大小,到第三层时转化成10的大小,这10个代表0~9个数字的分类,其中数字“6”的分类占比最高,所以识别结果就是“6”。通过打印结果发现,32x32的图片,经过3x3的卷积核以每次移动1个单位处理后,变成30x30的图片,再通过2x2的池化,让30x30变成了15x15。原创 2023-02-15 21:47:01 · 1722 阅读 · 0 评论 -
win10安装tensorflow-gpu-1.15
因课程要求,需要安装tensorflow1.15。我是使用conda来管理不同环境的。原创 2023-01-24 12:38:56 · 5634 阅读 · 2 评论 -
简单利用conda安装tensorflow-gpu=2.2.0
我最后实验了,很好解决上面的问题。二、cuda和cudnn版本不对。原创 2022-10-15 22:50:45 · 648 阅读 · 0 评论 -
TensorFlow2:概述
Tensorflow的核心概念就是tensor,也就是多维矩阵\向量。基于各种tensor,Tensorflow将它们拼接成一个数据计算流图,最终完成计算。原创 2022-07-30 11:04:27 · 296 阅读 · 0 评论 -
Linux:普通用户安装Pytorch、Tensorflow【在Anaconda的基础上】
1.安装Anaconda第一条:wget https://repo.anaconda.com/archive/Anaconda3-2020.11-Linux-x86_64.sh第二条:bash Anaconda3-2020.11-Linux-x86_64.sh第三条:source ~/.bashrc参考资料:linux安装pytorchanaconda 更换默认官方镜像离线安装Pytorch 最简单 高效的方法http://download.pytorch.org/whl/torch_原创 2022-05-13 13:44:24 · 577 阅读 · 0 评论 -
TensorFlow2-数据加载(一):公开数据集【keras.datasets+tf.data.Dataset.from_tensor_slices+shuffle+map+batch+repea】
为了方便使用,tensorflow将一些常用的数据源预先处理好,用户可以直接使用。完整内容请参考:https://www.tensorflow.org/datasets/overviewtensorflow的数据集有2种类型:简单的数据集,使用keras.datasets.***.load_data()即可以得到数据在tensorflow_datasets中的数据集。参考资料:tensorflow系列之1:加载数据TensorFlow:数据集加载tensorflow数据集加载...原创 2022-04-19 21:50:32 · 722 阅读 · 0 评论 -
TensorFlow2-基础(一):数据类型【张量“常量”(标量、向量、矩阵)、张量“变量”(表示神经网络待优化权重、偏置)】、基本数据类型【int、float、double、bool、string】
张量(Tensor):可理解为一个 n 维矩阵,所有类型的数据,包括标量(Scalar)、矢量(Vector)、矩阵(Matrix) 等都是特殊类型的张量。张量(Tensor) 所有维度数dim > 2的数组统称为张量。张量的每个维度也做轴(Axis), 一般维度代表了具体的物理含义,比如Shape为[2,32,32,3]的张量共有4 维,如果表 示图片数据的话,每个维度/轴代表的含义分别是:图片数量图片高度图片宽度图片通道数其中2 代表了 2 张图片,32代表了高宽均为32, 3原创 2022-04-16 21:02:35 · 2307 阅读 · 0 评论 -
TensorFlow2-基础(二):Tensor常见阶Rank【Rank = 0阶[]、1阶[d]、2阶[h, w]、3阶[b, len, vec]、4阶[b, h, w, c] 、5阶(元学习)】
一、Rankimport pandas as pdimport tensorflow as tfa1 = [ [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]], [[11, 21, 31], [41, 51, 61], [71, 81, 91], [101, 111, 121]]]a2 = [ [1, 2, 3], [4, 5, 6]]t1 = tf原创 2022-04-16 22:26:17 · 903 阅读 · 0 评论 -
TensorFlow2-基础(三):创建Tensor【从numpy、list创建】【zeros, ones】【fill、random、constant、Application】
一、从Numpy, List创建Tensor二、tf.zeros()、tf.zeros_like()、tf.ones()、tf.ones_like()1、tf.zeros()2、tf.zeros_like()3、tf.ones()、tf.ones_like()三、fill、random、constant、Application1、fill2、random2.1 random.Normal2.2 random.Uniform2.3 Permutation3、constan原创 2022-04-16 22:04:45 · 417 阅读 · 0 评论 -
TensorFlow2-基础(四):Tensor的索引、切片
一、按照顺序采样1、Basic indexing: [idx][idx][idx]只能取一个元素a = tf.ones([1,5,5,3])a[0][0]a[0][0][0]a[0][0][0][2]2、Same with Numpy: [idx, idx,…]a = tf.random.normal([4,28,28,3])a[1].shapea[1,2].shapea[1,2,3].shapea[1,2,3,2].shape3、start: end 表示从A到B取值,包含A原创 2022-04-16 22:39:30 · 731 阅读 · 0 评论 -
TensorFlow2-基础(五):Tensor的维度变换【改变:reshape(view级别)、transpose(content级别)】【增加(expand_dims)、删除(squeeze)】
tensorFlow维度变换可分为两个级别,一个是view级,一个是content级。view级维度变换:不改变数据的存储关系,比如[3,28,28,3]变换维度为[3,784,3]之后,数据本身并没有改变,属于哪一行哪一列的元素还是可以确定,可以原模原样的恢复为[3,28,28,3]。content级维度变换:会改变数据的存储关系。content有“目录”的意思,即索引关系,通过[3,28,28,3]这样的索引号能够找到一个元素。当content被改变时,意味着元素之间的索引关系变了。例如[3,28原创 2022-04-16 22:46:36 · 3479 阅读 · 0 评论 -
TensorFlow2-基础(六):Broadcasting(广播机制)【张量维度扩张的手段,但是没有在数据层面上的复制;是一种数据优化的手段;高效且直观】
Broadcasting 也叫广播机制(自动扩展也许更合适),它是一种轻量级张量复制的手段,在逻辑上扩展张量数据的形状,但是只要在需要时才会执行实际存储复制操作。对于大部分场景,Broadcasting 机制都能通过优化手段避免实际复制数据而完成逻辑运算,从而相对于tf.tile 函数,减少了大量计算代价。对于所有长度为1 的维度,Broadcasting 的效果和tf.tile 一样,都能在此维度上逻辑复制数据若干份,区别在于tf.tile 会创建一个新的张量,执行复制IO 操作,并保存复制后的张量数据原创 2022-04-16 23:01:38 · 728 阅读 · 0 评论 -
TensorFlow2-基础(七):数学运算【元素级:+、-、*、/、//】【矩阵级:@、matmul】【降维级:reduce_mean/max/sum】【扫描方法、张量分段、序列比较与索引提取】
Tensor 之间的运算规则相同大小 Tensor 之间的任何算术运算都会将运算应用到元素级不同大小 Tensor(要求dimension 0 必须相同) 之间的运算叫做广播(broadcasting)Tensor 与 Scalar(0维 tensor) 间的算术运算会将那个标量值传播到各个元素Note: TensorFLow 在进行数学运算时,一定要求各个 Tensor 数据类型一致一、常用操作符和基本数学函数大多数运算符都进行了重载操作,使我们可以快速使用 (+ - * /) 等,但是原创 2022-04-16 23:23:05 · 291 阅读 · 0 评论 -
TensorFlow2-高阶操作(一):张量合并【concat/拼接(不创造新维度;拼接轴处维度可不同,其他轴维度必须相同)】【stack/堆叠(会创造新维度;各个轴的维度都必须相同)】
一、concat(拼接)concat()是将tensor沿着指定维度连接起来。tf.concat(values, axis, name='concat')values:A list of Tensor objects or a single Tensor.axis:0-D int32 Tensor. Dimension along which to concatenate. Must be in the range [-rank(values), rank(values)). As in Pyt原创 2022-04-17 09:02:52 · 2548 阅读 · 0 评论 -
TensorFlow2-高阶操作(二):张量分割【split(分割后:rank不变)】【unstack(分割后:rank-1)】
一、split二、unstacktf.unstack(value, num=None, axis=0, name='unstack')value: A rank R > 0 Tensor to be unstacked.num: An int. The length of the dimension axis. Automatically inferred if None (the default).axis: An int. The axis to unstack along. De原创 2022-04-17 12:45:58 · 647 阅读 · 0 评论 -
TensorFlow2-高阶操作(三):数据统计【tf.norm(范数)、tf.reduce_max(最大值)、tf.argmax(最值索引)、tf.equal(张量比较)、tf.unique独特值】
TensorFlow2数据统计函数:tf.norm(范数)tf.reduce_min/max(最大值/最小值)tf.argmax/argmin(最大值/最小值的位置)tf.equal(两个张量的比较)tf.unique(独特值)一. tf.norm(范数)1、范数定义2、tf.norm(二范数)如果不指定tf.norm()中的参数ord,那么默认为求二范数(注: 这里只讨论向量的范数,不讨论矩阵的范数)a = tf.ones([2, 2]): 创建一个2×2元素值都为1的Te原创 2022-04-17 20:40:45 · 3692 阅读 · 0 评论 -
TensorFlow2-高阶操作(四):张量排序【sort(返回排序后的新张量)、argsort(返回排序后的索引组成的张量)、Topk(返回排列后的前k个元素组成的张量)、Top-k准确度】
一、tf.sort:返回排序后的新Tensortf.sort:返回排序后的新Tensor也可以对多维Tensor进行排序,当对多维Tensor进行排序时,可以通过axis参数指定需要排序的维度,axis的默认值为-1,也就是对最后一维进行排序。import tensorflow as tfa = tf.random.shuffle(tf.range(5))print("a = ", a)print("-" * 100)b = tf.sort(a, direction='DESCENDING原创 2022-04-17 20:52:57 · 1158 阅读 · 0 评论 -
TensorFlow2-高阶操作(五):数据填充【tf.pad();参数:padding、mode】、【数据复制:tf.tile()】、【维度扩展+复制:broadcast_to()】
一、数据填充:tf.pad()为了方便网络的并行计算,需要将不同长度的数据扩张为相同长度,通常是在需要补充长度的数据开始或结束处填充足够数量的特定数值,这些特定数值一般代表了无效意义。这种操作成为填充(Padding)。填充操作可以通过tf.pad(x,paddings)函数实现,参数paddings是包含了多个[leftPaddings,RightPaddings]的嵌套方案List。tf.pad( tensor, paddings, //类原创 2022-04-17 22:47:12 · 1415 阅读 · 0 评论 -
TensorFlow2-高阶操作(六):张量限幅【根据值:clip_by_value、relu】【根据范数:clip_by_norm(可指定轴)、clip_by_global_norm(全局)】
一、clip_by_value、relu:根据值进行限幅1、clip_by_value根据值进行限幅tf.maximum(tensor, thread):下限幅,值必须大于阈值 if data < thread, data = threadtf.minimum(tensor, thread):上限幅,值必须小于阈值 if data > thread, data = threadtf.clip_by_value(tensor, down_thread, up_thread):值必须在阈原创 2022-04-18 21:20:05 · 781 阅读 · 0 评论 -
TensorFlow2-高阶操作(七):where(采集元素)【从1个Tensor中采集元素】【从2个Tensor中采集元素:where(cond, A, B)】
一、where:采集元素1、从1个Tensor中采集元素1.1 使用boolean_mask采集元素import tensorflow as tfa = tf.convert_to_tensor( [[0.79134136, 0.09345922, -0.7822895], [1.9430199, -0.2962239, -1.1451387], [0.35126936, 1.0099757, 0.67769486]])print("a = \n", a)print原创 2022-04-18 22:43:55 · 465 阅读 · 0 评论 -
TensorFlow2-高阶操作(八):gather/gather_nd(已知元素的位置,从张量中提取该元素)、scatter_nd/scatter_nd_update(已知赋值位置,向0张量中赋值)
一、tf.gather()函数tf.gather( params, # 传入的tensor indices, # 指定的索引 validate_indices=None, # 不重要 name=None, # 命名 axis=None, # 指定轴 batch_dims=0)功能:就是抽取出params的第axis维度上在indices里面所有的indexparams是要查找的张量,ind原创 2022-04-18 23:43:32 · 1823 阅读 · 0 评论 -
TensorFlow2-实战(一):回归问题(手写梯度下降,不用任何模型)、步骤:【初始化参数】-->【循环(①计算Loss;②计算梯度;③利用梯度下降来更新参数)】
import numpy as np# y = wx + bdef compute_error_for_line_given_points(b, w, points): totalError = 0 for i in range(0, len(points)): x = points[i, 0] y = points[i, 1] # computer mean-squared-error totalError += (y原创 2022-04-14 22:07:21 · 434 阅读 · 0 评论 -
TensorFlow2-实战-手写数字识别(一):手写版(不用模型)、步骤:【初始化参数】-->【循环(①根据参数W、B与输入值X计算出预测值Y;②计算Loss;③计算梯度;④梯度下降来更新参数)】
import pandas as pdimport tensorflow as tffrom tensorflow.keras import datasetsimport osos.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'# 读取数据集# x: [60k, 28, 28], y: [60k]mnist_dataset = datasets.mnist.load_data()dataset_train, datasset_val = mnist_datas原创 2022-04-16 23:35:18 · 291 阅读 · 0 评论 -
TensorFlow2-实战-手写数字识别(二):模型版【初始化参数】-->【循环(①根据参数W、B通过模型前向计算,计算出输入X对应的输出Y;②计算Loss;③计算梯度;④利用梯度下降来更新参数)】
TensorFlow2-实战(二):手写数字识别【数据集:MNIST】原创 2022-04-14 23:25:29 · 394 阅读 · 0 评论 -
人工智能-深度学习:Tensorflow2使用技巧【tpo_k、网格采样点生成函数meshgrid、可视化工具tensorBoard】
人工智能-机器学习-深度学习:Structured Learning(结构化学习)原创 2020-12-28 22:50:16 · 467 阅读 · 0 评论 -
深度学习-TensorFlow2 :构建DNN神经网络模型【构建方式:自定义函数、keras.Sequential、Compile&Fit、自定义Layer、自定义Model】
人工智能-深度学习-TensorFlow2 :TensorFlow2 创建DNN神经网络模型【自定义函数、keras.Sequential、Compile&Fit、自定义Layer、自定义Model】原创 2021-01-12 23:07:24 · 1346 阅读 · 0 评论 -
深度学习:TensorFlow2构建、保存、加载神经网络模型【经典流程】
# 一、network.save_weights、network.load_weights保存模型的参数,加载已保存的参数的network的结构必须和之前的network的所有结构一模一样原创 2021-01-12 23:06:28 · 2127 阅读 · 0 评论 -
基于 TensorFlow 的自适应系统实践
使用 TensorFlow 来构建学生模型并应用在自适应系统里面。一、应用背景1、自适应学习是什么自适应学习是现在教育科技领域谈得比较多的一个概念,它的核心问题可以用一句话概括,即通过个性化的学习路径规划,提高学生的学习效率。为什么需要自适应学习?在传统的教学过程中,每个学生的学习路径是一致的,由于学生个人基础和学习能力的差异性,这种千人一面的做法对大部分学生来说其实比较低效。由此我们可以很自然地想到:如果我们能够根据学生的能力,去匹配合适的教学内容,就应该可以提高他们的学习效率。而这正是自适应系统希原创 2022-04-14 23:35:33 · 777 阅读 · 0 评论