提交 c5e73160 编写于 作者: W wizardforcel

2020-08-05 10:36:34

上级 100bc239
......@@ -963,7 +963,7 @@ os.environ['CUDA_VISIBLE_DEVICES']='0'
config.gpu_options.per_process_gpu_memory_fraction = 0.5
```
这将分配所有 GPU 设备的 50%的内存。
这将分配所有 GPU 设备的 50% 的内存。
* 您还可以结合上述两种策略,即只制作一个百分比,同时只让部分 GPU 对流程可见。
* 您还可以将 TensorFlow 进程限制为仅在进程开始时获取所需的最小内存。随着进程的进一步执行,您可以设置配置选项以允许此内存的增长。
......@@ -1015,7 +1015,7 @@ TensorBoard 可视化计算图结构,提供统计分析并绘制在计算图
# TensorBoard 最小的例子
1. S 通过定义线性模型的变量和占位符来实现:
1. 通过定义线性模型的变量和占位符来实现:
```py
# Assume Linear Model y = w * x + b
......@@ -1073,7 +1073,7 @@ TensorBoard 通过读取 TensorFlow 生成的日志文件来工作。因此,
1. 像往常一样创建计算图。
2. 创建摘要节点。将`tf.summary`包中的摘要操作附加到输出您要收集和分析的值的节点。
3. 运行摘要节点以及运行模型节点。通常,您将使用便捷函数`tf.summary.merge_all()`将所有汇总节点合并到一个汇总节点中。然后执行此合并节点将基本上执行所有摘要节点。合并的摘要节点生成包含所有摘要的并集的序列化`Summary` P rotocolBuffers 对象。
3. 运行摘要节点以及运行模型节点。通常,您将使用便捷函数`tf.summary.merge_all()`将所有汇总节点合并到一个汇总节点中。然后执行此合并节点将基本上执行所有摘要节点。合并的摘要节点生成包含所有摘要的并集的序列化`Summary` ProtocolBuffers 对象。
1. 通过将`Summary` ProtocolBuffers 对象传递给`tf.summary.FileWriter`对象将事件日志写入磁盘。
2. 启动 TensorBoard 并分析可视化数据。
......
......@@ -12,7 +12,7 @@ TensorFlow 有几个高级库和接口(API),允许我们使用 TF Learn,
我们将提供使用所有五个库构建 MNIST 数据集模型的示例。当我们从第 4 章开始介绍模型的细节时,不要担心理解模型的细节。
您可以使用代码包中包含的 Jupyter Notebook `ch-02_TF_High_Level_Libraries`来遵循本章中的代码示例。 尝试修改笔记本中的示例以进行实验和游戏。
您可以使用代码包中包含的 Jupyter 笔记本`ch-02_TF_High_Level_Libraries`来遵循本章中的代码示例。 尝试修改笔记本中的示例以进行实验和游戏。
# TF Estimator - 以前的 TF 学习
......
......@@ -840,7 +840,7 @@ with tf.Session() as tfs:
plt.show()
```
我们获得了大约 96%的相当好的准确率,原始和预测的数据图如下所示:
我们获得了大约 96% 的相当好的准确率,原始和预测的数据图如下所示:
![](img/abc7eea6-1cdf-486e-9f34-0b571ef90b67.png)
......
......@@ -390,7 +390,7 @@ epoch: 0049 loss = 0.668717
accuracy=0.85720009
```
我们看到单个神经元网络在 50 次迭代中缓慢地将损失从 8.3 降低到 0.66,最终得到几乎 85%的准确率。对于这个具体的例子,这是非常糟糕的准确率,因为这只是使用 TensorFlow 进行分类使用 MLP 的演示。
我们看到单个神经元网络在 50 次迭代中缓慢地将损失从 8.3 降低到 0.66,最终得到几乎 85% 的准确率。对于这个具体的例子,这是非常糟糕的准确率,因为这只是使用 TensorFlow 进行分类使用 MLP 的演示。
我们使用更多层和神经元运行相同的代码,并获得以下准确率:
......@@ -644,7 +644,7 @@ dataset = dataframe.values
dataset = dataset.astype('float32')
```
1. 利用`datasetslib`的效用函数,我们将数据集分成测试和训练集。对于时间序列数据集,我们有一个单独的函数,不会改变观察结果,因为对于时间序列回归,我们需要维持观察的顺序。我们使用 67%的数据进行训练,33%的数据用于测试。您可能希望尝试使用不同比例的示例。
1. 利用`datasetslib`的效用函数,我们将数据集分成测试和训练集。对于时间序列数据集,我们有一个单独的函数,不会改变观察结果,因为对于时间序列回归,我们需要维持观察的顺序。我们使用 67% 的数据进行训练,33% 的数据用于测试。您可能希望尝试使用不同比例的示例。
```py
train,test=dsu.train_test_split(dataset,train_size=0.67)
......
......@@ -530,7 +530,7 @@ error_rate = do_inference(hostport='0.0.0.0:8500',
print('\nInference error rate: %s%%' % (error_rate * 100))
```
我们得到差不多 7%的错误率! (您可能会得到不同的值):
我们得到差不多 7% 的错误率! (您可能会得到不同的值):
```py
Extracting /home/armando/datasets/mnist/train-images-idx3-ubyte.gz
......
......@@ -1054,7 +1054,7 @@ Trainable params: 13,504,264
Non-trainable params: 7,635,264
```
我们看到近 40%的参数是冻结的和不可训练的。
我们看到近 40% 的参数是冻结的和不可训练的。
1. 接下来,训练 Keras 模型 20 个周期,批量大小为 32:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册