---
schema_version: "library-reader-v1"
source_type: "original_book"
title: "人工智能与大数据技术导论"
author: null
edition: null
publisher: null
year: null
isbn: "9787302517986"
library_document_id: "cd4f7678-cd9b-4971-bde0-e9ad46a6cc71"
source_sha256: "5011cdcf83cd5e047c93a1ce7465f970fc88be69c93b94be3d7fa5fbddbb43f0"
pdf_physical_page_count: 490
pdf_physical_page_index_base: 0
range_start: 240
range_count: 10
html_url: "https://workshop.closeclaw.top/api/ai/read/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71?start=240&limit=10"
markdown_url: "https://workshop.closeclaw.top/api/ai/read/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71.md?start=240&limit=10"
previous_url: "https://workshop.closeclaw.top/api/ai/read/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71.md?start=230&limit=10"
next_url: "https://workshop.closeclaw.top/api/ai/read/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71.md?start=250&limit=10"
---

# 人工智能与大数据技术导论

> 页码规则：PDF_PHYSICAL_PAGE_INDEX 是从 0 开始的权威文件物理页索引；PRINTED_PAGE 是页面中识别出的印刷页码，可能为空，二者不得混用。

## PDF_PHYSICAL_PAGE_INDEX=240 | PRINTED_PAGE=224

结果如图8-15所示。

从上面的数据可以看出，均方根误差（RMSE）大概在目标的最小值和最大值之间。能否把误差缩小呢？我们首先来比较一下模型的预测值和目标值之间的区别：

注意，图8-17中，predictions列的值的单位是1000。所以，均值（mean）为0.1，相当于100。有时候，图表是一种展示数据的更直接的方式：

人工智能与大数据技术导论

224

## PDF_PHYSICAL_PAGE_INDEX=241 | PRINTED_PAGE=225

结果如图8-18所示。

上图显示的线性回归线显然有一些问题，不能很好地预测房屋中位价。下面我们尝试优化模型。

8.2.5 优化模型

为了方便优化，我们首先定义一个模型训练函数。通过变换函数的参数，可以看到不同的效果。下面这个代码把整个执行过程分成10个平均分割的期间（periods），这样就可以让我们看到每个期间的模型优化情况。在图上展示每个时期的误差，从而帮助我们判断是否收敛，或者需要更多迭代。比如，periods=7和steps=70，那么，每10步就会输出误差值。值得注意的是，periods不是超参数（而steps是），所以，修改periods不会影响模型训练本身。

第8章 TensorFlow

225

## PDF_PHYSICAL_PAGE_INDEX=242 | PRINTED_PAGE=226

人工智能与大数据技术导论

226

## PDF_PHYSICAL_PAGE_INDEX=243 | PRINTED_PAGE=227

第8章 TensorFlow

227

## PDF_PHYSICAL_PAGE_INDEX=244 | PRINTED_PAGE=228

相关数据如图8-19、图8-20所示。

我们更改这些超参数的值，看看误差是否有改善：

人工智能与大数据技术导论

228

## PDF_PHYSICAL_PAGE_INDEX=245 | PRINTED_PAGE=229

相关数据如图8-21、图8-22所示。

从上面两个例子看出，不同的配置参数，预测的效果很不一样。至于哪些配置参数的预测效果好，其实也与数据集相关，多试几次。下面是优化的一些基本原则。

第8章 TensorFlow

229

## PDF_PHYSICAL_PAGE_INDEX=246 | PRINTED_PAGE=230

人工智能与大数据技术导论

训练误差应该持续减小，这个误差曲线开始时可能比较陡，但是最终平稳(这时训练收敛）。

●如果训练没有收敛，训练时间可以更长一点。

如果训练误差下降得很慢，可以尝试加大步长。但要注意，有时步长过大，会有反作用。

●如果训练误差上下起伏很大，可以尝试减少步长。除了减少步长外，还要增加步数和批处理大小。

●小的批处理有时会不太稳定。可以先尝试100或1000，然后逐步减少，直到看到降级。

有时，我们也可以变换特征参数，比如：

相关数据如图8-23、图8-24所示。

230

## PDF_PHYSICAL_PAGE_INDEX=247 | PRINTED_PAGE=231

8.2.6 合成特征

合成特征（syntheticfeature）是一种特征，不在输入特征之列，而是从一个或多个输入特征衍生而来。在本节中，我们需要修改一下模型训练函数：

第8章 TensorFlow

231

## PDF_PHYSICAL_PAGE_INDEX=248 | PRINTED_PAGE=232

人工智能与大数据技术导论

232

## PDF_PHYSICAL_PAGE_INDEX=249 | PRINTED_PAGE=233

对于一个城市街区，房价可能与total\_rooms和population两个特征相关，即人口密度与房价有关。在下面的代码中创建一个合成特征：roomsperperson，记录每人所分到的房间数。然后把这个合成特征作为模型训练函数的输入特征。其代码如下：

第8章 TensorFlow

233

下一段：[继续读取](https://workshop.closeclaw.top/api/ai/read/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71.md?start=250&limit=10)
