首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《机器学习实战:基于Scikit-Learn、Keras和TensorFlow》第12章 使用TensorFlow自定义模型并训练

字符串张量 类型是tf.string的常规张量,是字节串而不是Unicode字符串,因此如果你用Unicode字符串(比如,Python3字符串café)创建了一个字符串张量,就会自动被转换为UTF-...另外,如果想利用TensorFlow的图特性,则只能使用TensorFlow运算。 最好返回一个包含实例的张量,其中每个实例都有一个损失,而不是返回平均损失。...=float32, numpy=0.5> 在这个例子中,我们创建了一个Precision对象,然后将其用作函数,将第一个批次的标签和预测传给它,然后传第二个批次的数据(这里也可以传样本权重)。...注意,这里对重建损失乘以了0.05(这是个可调节的超参数),做了缩小,以确保重建损失不主导主损失。 最后,call()方法将隐藏层的输出传递给输出层,然后返回输出。...因此,要确保使用的是tf.reduce_sum()而不是np.sum(),使用的是tf.sort()而不是内置的sorted(),等等。

5.3K30

TensorFlow 2.0 快速入门指南:第一部分

特别是,我们将使用急切的执行而不是计算图,并且将尽可能利用tf.keras的功能来构建网络,因为这是研究和实验的现代方法。...(1, dtype = tf.int64) unit # dtype=int64, numpy=1> 调整张量 张量的形状通过属性(而不是函数...急切的执行意味着代码的执行是命令式编程环境,而不是基于图的环境,这是在 TensorFlow(v1.5 之前)的初始产品中工作的唯一方法。...在本章中,我们将介绍以下主题: 将数据呈现给人工神经网络(ANN) 神经网络层 梯度下降算法的梯度计算 损失函数 将数据呈现给人工神经网络 Google 推荐的将数据呈现给 TensorFlow ANN...(而不是在推理过程中)随机关闭的层。

4.4K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【深度学习】人人都能看得懂的卷积神经网络——入门篇

    人工智能:人类通过直觉可以解决,如图像识别、语言理解、语音识别等,但计算机很难解决,而人工智能就是要解决这类问题。...所有的人工神经网络本质上就是函数逼近问题,即曲面或函数的拟合。 深度学习:深度学习是机器学习的新方向,其核心就是自动将简单的特征组合成功更加复杂的特征,并用这些特征解决问题。...本文将基于TensorFlow实现Mnist手写数据集的识别和预测。...而Mnist手写数据集则是机器学习的基础,包含手写数字的图像(0-9)及标签来说明它是哪个数字。..., 10), dtype=float32) 关于op (Operation Object),这里主要是误差的反向传播 # 交叉熵损失 loss = tf.losses.softmax_cross_entropy

    1.1K20

    Sklearn、TensorFlow 与 Keras 机器学习实用指南第三版(九)

    但也可以在不构建图形的情况下运行正向模式自动微分(即数值上,而不是符号上),只需在运行时计算中间结果。...=int32)> 注意 在类型为tf.string的张量中,字符串长度不是张量形状的一部分。...左侧的具体函数专门用于x=2,因此 TensorFlow 成功将其简化为始终输出 8(请注意,函数定义甚至没有输入)。右侧的具体函数专门用于 float32 标量张量,无法简化。...这是因为 print() 函数不是一个 TensorFlow 操作,所以它只会在 Python 函数被跟踪时运行,这发生在图模式下,参数被替换为符号张量(相同类型和形状,但没有值)。...它只捕获对tf.data.Dataset对象的张量进行迭代的for循环,因此您应该使用tf.range()而不是range()。

    18300

    中国香港科技大学TensorFlow课件分享

    教程第二天详细地讨论了卷积神经网络,它从 TensorFlow 的训练与构建技巧开始,解释了应用于神经网络的各种权重初始化方法、激活函数、损失函数、正则化和各种优化方法等。...零阶张量就是我们熟悉的标量数字,它仅仅只表达了量的大小或性质而没有其它的描述。一阶张量即我们熟悉的向量,它不仅表达了线段量的大小,同时还表达了方向。...02 TensorFlow 模型实战 TensorFlow 线性回归 该教程前面介绍了很多线性回归的基本概念,包括直线拟合、损失函数、梯度下降等基础内容。...该直线和这些数据点之间的距离即损失函数,所以我们希望找到一条能令损失函数最小的直线。以下是使用 TensorFlow 构建线性回归的简单案例。 1....构建损失函数 下面我们需要构建整个模型的损失函数,即各数据点到该直线的距离,这里我们构建的损失函数为均方误差函数: 该函数表明根据数据点预测的值和该数据点真实值之间的距离,我们可以使用以下代码实现

    3.1K20

    中国香港科技大学TensorFlow课件分享

    教程第二天详细地讨论了卷积神经网络,它从 TensorFlow 的训练与构建技巧开始,解释了应用于神经网络的各种权重初始化方法、激活函数、损失函数、正则化和各种优化方法等。...零阶张量就是我们熟悉的标量数字,它仅仅只表达了量的大小或性质而没有其它的描述。一阶张量即我们熟悉的向量,它不仅表达了线段量的大小,同时还表达了方向。...TensorFlow 模型实战 TensorFlow 线性回归 该教程前面介绍了很多线性回归的基本概念,包括直线拟合、损失函数、梯度下降等基础内容。...该直线和这些数据点之间的距离即损失函数,所以我们希望找到一条能令损失函数最小的直线。以下是使用 TensorFlow 构建线性回归的简单案例。 1....构建损失函数 下面我们需要构建整个模型的损失函数,即各数据点到该直线的距离,这里我们构建的损失函数为均方误差函数: 该函数表明根据数据点预测的值和该数据点真实值之间的距离,我们可以使用以下代码实现

    4.6K120

    三天速成 TensorFlow课件分享

    教程第二天详细地讨论了卷积神经网络,它从 TensorFlow 的训练与构建技巧开始,解释了应用于神经网络的各种权重初始化方法、激活函数、损失函数、正则化和各种优化方法等。...零阶张量就是我们熟悉的标量数字,它仅仅只表达了量的大小或性质而没有其它的描述。一阶张量即我们熟悉的向量,它不仅表达了线段量的大小,同时还表达了方向。...TensorFlow 模型实战 TensorFlow 线性回归 该教程前面介绍了很多线性回归的基本概念,包括直线拟合、损失函数、梯度下降等基础内容。...该直线和这些数据点之间的距离即损失函数,所以我们希望找到一条能令损失函数最小的直线。以下是使用 TensorFlow 构建线性回归的简单案例。 1....构建损失函数 下面我们需要构建整个模型的损失函数,即各数据点到该直线的距离,这里我们构建的损失函数为均方误差函数: ?

    2K90

    【tensorflow2.0】张量数据结构

    TensorFlow程序 = 张量数据结构 + 计算图算法语言 张量和计算图是 TensorFlow的核心概念。 Tensorflow的基本数据结构是张量Tensor。张量即多维数组。...Tensorflow的张量和numpy中的array很类似。 从行为特性来看,有两种类型的张量,常量constant和变量Variable....标量为0维张量,向量为1维张量,矩阵为2维张量。 彩色图像有rgb三个通道,可以表示为3维张量。 视频还有时间维,可以表示为4维张量。 可以简单地总结为:有几层中括号,就是多少维的张量。...=float32) tf.Tensor(4, shape=(), dtype=int32) 可以用tf.cast改变张量的数据类型。...可以用numpy方法将tensorflow中的张量转化成numpy中的张量。 可以用shape方法查看张量的尺寸。

    50430

    TensorFlow2.0(7):4种常用的激活函数

    TensorFlow2.0(1):基本数据结构——张量 TensorFlow2.0(2):数学运算 TensorFlow2.0(3):张量排序、最大最小值 TensorFlow2.0(4):填充与复制...TensorFlow2.0(5):张量限幅 TensorFlow2.0(6):利用data模块进行数据预处理 1 什么是激活函数 激活函数是深度学习,亦或者说人工神经网络中一个十分重要的组成部分...2 常用激活函数 2.1 sigmoid函数 sigmoid函数可以将整个实数范围的的任意值映射到[0,1]范围内,当当输入值较大时,sigmoid将返回一个接近于1的值,而当输入值较小时,返回值将接近于...由于当x函数的导数为0,导致对应的权重无法更新,这样的神经元被称为"神经元死亡"。 relu函数公式和图像如下: ?...2.4 tanh函数 tanh函数无论是功能还是函数图像上斗鱼sigmoid函数十分相似,所以两者的优缺点也一样,区别在于tanh函数将值映射到[-1,1]范围,其数学公式和函数图像如下: ?

    1.3K20

    TensorFlow2.0(8):误差计算——损失函数总结

    TensorFlow2.0(1):基本数据结构——张量 TensorFlow2.0(2):数学运算 TensorFlow2.0(3):张量排序、最大最小值 TensorFlow2.0(4):填充与复制...TensorFlow2.0(5):张量限幅 TensorFlow2.0(6):利用data模块进行数据预处理 TensorFlow2.0(7):4种常用的激活函数 1 均方差损失函数:MSE...,均方误差损失函数比较适用于回归问题中,对于分类问题,特别是目标输出为One-hot向量的分类任务中,下面要说的交叉熵损失函数就要合适的多。...2 交叉熵损失函数 交叉熵(Cross Entropy)是信息论中一个重要概念,主要用于度量两个概率分布间的差异性信息,交叉熵越小,两者之间差异越小,当交叉熵等于0时达到最佳状态,也即是预测值与真实值完全吻合...dtype=float32, numpy=0.5108256> 模型在最后一层隐含层的输出可能并不是概率的形式,不过可以通过softmax函数转换为概率形式输出

    1.3K20

    精通 TensorFlow 1.x:1~5

    使用 TensorFlow 数据类型来定义张量,而不是 Python 本地数据类型。 可以通过以下方式创建张量: 通过定义常量,操作和变量,并将值传递给它们的构造器。...=float32_ref> y: Tensor("add:0", dtype=float32) 输出显示x是占位符张量,y是操作张量,而w和b是形状(1,)和数据类型float32的变量。...也可以通过以下方式调用全局初始化程序便利函数,而不是在会话对象的run()函数内调用: tf.global_variables_initializer().run() 在初始化变量之后,让我们运行我们的模型来给出...如果您希望使用自己的图而不是默认图,可以使用tf.graph()命令执行此操作。...此函数在内部使用softmax来缩放输出。 该函数计算模型之间的 softmax 熵(估计值y)和y的实际值。当输出属于一个类而不是一个类时,使用熵函数。在我们的示例中,图像只能属于其中一个数字。

    3.1K10

    四个用于Keras的很棒的操作(含代码)

    这可以通过使用Python的math,Keras或TensorFlow操作来实现。 看起来很简单!以下是如何创建和应用自定义损失和自定义度量的示例。我实现了通常用于度量图像质量的PSNR度量。...而对于损失函数,我实现了Charbonnier,它已经被证明比L1或L2损失更能抵抗异常值。我们编写函数后,只需将它们传递给我们的模型编译函数即可!...除非你希望你的层支持屏蔽(mask),否则你只需关心传递给call的第一个参数:输入张量。...我定义了call()函数的第一个输入为x(即图像张量),和第二个输入(可选)method(这是我要选择的调整大小的方法。调整的scale被定义在初始化函数__init__内 。...要坚持使用TensorFlow操作(所以我们总是使用Keras或TensorFlow张量),我们根据取整的scale调整并返回图像。

    3.1K40

    tf.SparseTensor

    tf.SparseTensor 函数SparseTensor 类定义在:tensorflow/python/framework/sparse_tensor.py.参见指南:稀疏张量>稀疏张量表示代表稀疏张量...如果你有单独的indices,values和dense_shape张量,SparseTensor在传递给下面的操作之前,将它们包装在一个对象中。...0] [0, 0, 2, 0] [0, 0, 0, 0]]属性dense_shape int64的一维张量,表示稠密张量的形状.dtype 在这个张量中元素的DType.graph 包含 index,value...限制:这个操作只向稀疏的一面播放密集的一面,而不是其他的方向.参数:sp_indices:int64 类型的张量,是2维的;N x R矩阵具有SparseTensor中的非空值索引,可能不符合规范排序....与稀疏张量中的隐藏零元素相对应的输出位置将是零(即不会占用存储空间),而与密集张量的内容无关(即使它是+/- INF,且INF * 0 == NAN).限制:这个操作只向稀疏的一面播放密集的一面,而不是其他的方向

    2.1K20

    【tensorflow2.0】张量的数学运算

    张量的操作主要包括张量的结构操作和张量的数学运算。 张量结构操作诸如:张量创建,索引切片,维度变换,合并分割。 张量数学运算主要有:标量运算,向量运算,矩阵运算。另外我们会介绍张量运算的广播机制。...本篇我们介绍张量的数学运算。 一,标量运算 张量的数学运算符可以分为标量运算符、向量运算符、以及矩阵运算符。 加减乘除乘方,以及三角函数,指数,对数等常见函数,逻辑比较运算符等都是标量运算符。...类似tf.constant([1,2,3])这样的不是矩阵。 矩阵运算包括:矩阵乘法,矩阵转置,矩阵逆,矩阵求迹,矩阵范数,矩阵行列式,矩阵求特征值,矩阵分解等运算。..., 4. ]], dtype=float32)> 四,广播机制 TensorFlow的广播规则和numpy是一样的: 1、如果张量的维度不同,将维度较小的张量进行扩展,直到两个张量的维度都一样...4、广播之后,每个维度的长度将取两个张量在该维度长度的较大值。 5、在任何一个维度上,如果一个张量的长度为1,另一个张量长度大于1,那么在该维度上,就好像是对第一个张量进行了复制。

    2.1K30

    Tensorflow使用TFRecords和tf.Example

    处理非标量特性的最简单方法是使用tf。serialize_张量将张量转换成二进制字符串。字符串是tensorflow中的标量。使用tf.parse_tensor 将二进制字符串转换回张量。...Example只是将字典序列化为字节字符串的一种方法。文本行、编码图像数据或序列化张量(使用tf.io)。serialize_tensor, tf.io.parse_tensor转载)。看到特遣部队。...方法将函数应用于数据集的每个元素。所映射的函数必须在张量流图模式中操作—它必须操作并返回tf.张量。一个非张量函数,比如create_example,可以用tf封装。py_function使其兼容。...将示例字段转换为标准张量。 5、TFRecord files in Python tf.io模块还包含用于读取和写入TFRecord文件的纯python函数。...它可以被预处理成TFRecords格式,而不是存储原始的图像数据,并且可以用于所有进一步的处理和建模。首先,让我们下载这张猫在雪地里的照片和这张正在建设中的纽约威廉斯堡大桥的照片。

    87310
    领券