附录 A — 关于数据
本文大部分数据都是开源的,你可以在不同的平台上找到它们。
1. MNIST 数据集
- 包含了 60,000 张 28x28 像素的灰度图像,用于训练和测试手写数字识别模型。
- 每个图像都被标记为 0 到 9 之间的一个数字。
- 地址:Kaggle MNIST Dataset
各列说明:
- train-images-idx3-ubyte.gz: training set images (9912422 bytes)
- train-labels-idx1-ubyte.gz: training set labels (28881 bytes)
- t10k-images-idx3-ubyte.gz: test set images (1648877 bytes)
- t10k-labels-idx1-ubyte.gz: test set labels (4542 bytes)
章 章节 8
1. 北京 PM2.5 数据
- 文件名:
PRSA_data_2010.1.1-2014.12.31.csv - 该数据集包含了 2010 年至 2014 年北京每个小时的 PM2.5 浓度数据。
- 地址:UCI Machine Learning Repository
- 关键词:
Beijing PM2.5
数据各列说明:
| variable_name | type | description | units | missing_values |
|---|---|---|---|---|
| No | Integer | 序号 | 0 | |
| year | Integer | 年份 | 0 | |
| month | Integer | 月份 | 0 | |
| day | Integer | 日期 | 0 | |
| hour | Integer | 小时 | 0 | |
| pm2.5 | Integer | PM2.5 浓度 | μg/m^3 | 2067 |
| DEWP | Integer | 露点温度 | C | 0 |
| TEMP | Integer | 气温 | C | 0 |
| PRES | Integer | 大气压 | hPa | 0 |
| cbwd | Categorical | 综合风向 | 0 | |
| Iws | Integer | 累计风速 | m/s | 0 |
| Is | Integer | 累计降雪小时数 | 0 | |
| Ir | Integer | 累计降雨小时数 | 0 |
2. IMDB 电影评论数据集
- 文件名:
aclImdb_v1.tar.gz(解压后包含aclImdb文件夹) - 该数据集包含了:50,000 条极其明显的两极分化(正面/负面)的电影评论,广泛用于二分类情感分析任务。数据被平均分为训练集(25,000条)和测试集(25,000条),且每个集合中正负样本各占一半。此外,还包含 50,000 条未标记的评论用于无监督学习。
- 地址:Stanford AI Lab - Andrew Maas
原始数据存储为文本文件(每个评论一个
.txt文件),分布在train/pos,train/neg,test/pos,test/neg文件夹中。
3. GloVe 预训练词向量
- 本书使用的 GloVe 预训练词向量文件为
glove.2024.wikigiga.50d.zip - 地址:Stanford NLP Group - GloVe
- 除了 50d 版本,GloVe 还提供了 100d、200d、300d 版本的预训练词向量。
- 该数据集包含了 400,000 个单词的预训练词向量,每个向量的维度为 50、100、200 或 300。这些向量是通过在大规模文本语料库上使用无监督学习训练得到的,能够捕捉到单词之间的语义关系。
关于提示块 (callout block) 的说明:
提示
这是 tip(技巧):用于提供“捷径”、最佳实践或优化建议。
适用场景:比如建议读者:“提示:使用 GPU 可以将这段训练代码的速度提升 10 倍。”这是为了让读者做得更好、更快。
注记
这是 note(备注):用于补充背景知识、来源说明或非关键信息。
适用场景:比如你在书中介绍某个算法时,顺便提一句:“注:该算法最早由 Yann LeCun 在 1998 年提出。”读者即使跳过这段话,也不影响对后续代码的理解。
重要
这是 important(重要):虽然不是报错警告,但如果你不读这段话,可能会导致概念理解错误。
适用场景:比如在讲解核心逻辑前:“重要:在继续下一章之前,请务必理解‘动态计算图’的概念,否则你将无法看懂后面的自定义层代码。”
注意
这是 caution(小心):用于提醒常见的陷阱、容易犯的错或性能问题。
适用场景:比如代码可能报错但不致命的情况:“注意:如果在 CPU 上运行此函数,由于内存限制,可能会导致 R 此时响应变慢。”
警告
这是 warning(警告):用于警示破坏性操作、不可逆的后果或严重错误。
适用场景:这是最高级别的警示:“警告!该操作会清空当前目录下所有的模型检查点(Checkpoints),请确保你已经做好了备份。”