没有合适的资源?快使用搜索试试~ 我知道了~
首页D2L-zh-PyTorch(2022): 动手学习深度学习基础与Python操作详解
D2L-zh-PyTorch(2022): 动手学习深度学习基础与Python操作详解
需积分: 0 3 下载量 4 浏览量
更新于2024-06-26
收藏 24.07MB PDF 举报
《动手学深度学习》(d2l-zh-pytorch(Jan-2022).pdf)是一本面向初学者的深度学习教程,作者包括Aston Zhang、Zachary C. Lipton、Mu Li和Alexander J. Smola,于2022年1月发布。该书详细介绍了使用PyTorch库进行深度学习实践的基础知识,分为多个章节帮助读者逐步掌握核心概念。
第1章是序言,可能会介绍本书的目的、背景以及PyTorch在深度学习领域的地位。随后章节内容丰富,包括:
1. 安装与符号定义:这部分会指导读者如何安装PyTorch,并对核心符号和术语进行解释,以便理解后续代码示例。
2. 数据操作:这部分介绍基本的数据处理技巧,如入门操作(如创建、复制和删除),以及数据格式转换、广播机制、索引和切片等,旨在让读者熟悉如何高效地处理和操作数据。
3. 数据预处理:涉及读取数据集、处理缺失值、数据类型转换为张量以及常见数据预处理技术。这部分强调实际应用中的数据清洗和准备工作。
4. 线性代数基础:涵盖了标量、向量、矩阵和张量的概念,以及它们之间的运算,如点积、矩阵-向量积和矩阵乘法。此外,还包括向量和矩阵的维度、范数等概念,以及微积分基础知识,如导数、偏导数和梯度。
5. 微积分应用:解释导数和微分在深度学习中的作用,链式法则的运用,以及如何计算非标量变量的梯度。自动微分部分深入介绍了反向传播算法及其在复杂计算中的应用。
6. 概率与统计:涉及基本的概率理论,多变量概率处理,以及期望和方差等概念。这部分为理解模型训练中的不确定性以及优化提供基础。
7. 查阅文档:最后,指南将教导读者如何高效地查阅PyTorch的官方文档,以解决实际编程过程中的问题。
每一章都配有实践练习,帮助读者通过实际操作巩固所学知识。整体来看,《动手学深度学习》是一本实用且系统化的PyTorch入门教程,适合那些希望踏入深度学习领域的学习者。
11.9.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
11.10 Adam算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
11.10.1 算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
11.10.2 实现 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
11.10.3 Yogi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
11.10.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
11.10.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
11.11 学习率调度器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
11.11.1 ⼀个简单的问题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
11.11.2 学习率调度器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
11.11.3 策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
11.11.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
11.11.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
12 计算性能 507
12.1 编译器和解释器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
12.1.1 符号式编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
12.1.2 混合式编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
12.1.3 Sequential的混合式编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
12.1.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
12.1.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
12.2 异步计算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
12.2.1 通过后端异步处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
12.2.2 障碍器与阻塞器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
12.2.3 改进计算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
12.2.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
12.2.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
12.3 ⾃动并⾏ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
12.3.1 基于GPU的并⾏计算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
12.3.2 并⾏计算与通信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
12.3.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
12.3.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
12.4 硬件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
12.4.1 计算机 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
12.4.2 内存 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
12.4.3 存储器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
12.4.4 CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
12.4.5 GPU和其他加速卡 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
12.4.6 ⽹络和总线 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
12.4.7 更多延迟 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
12.4.8 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
12.4.9 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
xiv
12.5 多GPU训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
12.5.1 问题拆分 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
12.5.2 数据并⾏性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
12.5.3 简单⽹络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
12.5.4 数据同步 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
12.5.5 数据分发 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
12.5.6 训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
12.5.7 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
12.5.8 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
12.6 多GPU的简洁实现 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
12.6.1 简单⽹络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
12.6.2 ⽹络初始化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
12.6.3 训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
12.6.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
12.6.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
12.7 参数服务器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
12.7.1 数据并⾏训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
12.7.2 环同步(Ring Synchronization) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
12.7.3 多机训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
12.7.4 键值存储 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
12.7.5 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
12.7.6 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
13 计算机视觉 553
13.1 图像增⼴ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
13.1.1 常⽤的图像增⼴⽅法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554
13.1.2 使⽤图像增⼴进⾏训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
13.1.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
13.1.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
13.2 微调 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
13.2.1 步骤 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
13.2.2 热狗识别 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
13.2.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
13.2.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
13.3 ⽬标检测和边界框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
13.3.1 边界框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
13.3.2 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
13.3.3 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
13.4 锚框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
13.4.1 ⽣成多个锚框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
13.4.2 交并⽐(IoU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574
13.4.3 在训练数据中标注锚框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
xv
13.4.4 使⽤⾮极⼤值抑制预测边界框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
13.4.5 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
13.4.6 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
13.5 多尺度⽬标检测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
13.5.1 多尺度锚框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
13.5.2 多尺度检测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
13.5.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
13.5.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
13.6 ⽬标检测数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
13.6.1 下载数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
13.6.2 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
13.6.3 演⽰ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
13.6.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
13.6.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
13.7 单发多框检测(SSD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
13.7.1 模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
13.7.2 训练模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
13.7.3 预测⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600
13.7.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
13.7.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
13.8 区域卷积神经⽹络(R-CNN)系列 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
13.8.1 R-CNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
13.8.2 Fast R-CNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604
13.8.3 Faster R-CNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
13.8.4 Mask R-CNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
13.8.5 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
13.8.6 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
13.9 语义分割和数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
13.9.1 图像分割和实例分割 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
13.9.2 Pascal VOC2012 语义分割数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
13.9.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
13.9.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
13.10 转置卷积 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616
13.10.1 基本操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616
13.10.2 填充、步幅和多通道 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617
13.10.3 与矩阵变换的联系 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619
13.10.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
13.10.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
13.11 全卷积⽹络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
13.11.1 构造模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
13.11.2 初始化转置卷积层 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
13.11.3 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
xvi
13.11.4 训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625
13.11.5 预测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
13.11.6 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
13.11.7 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
13.12 ⻛格迁移 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
13.12.1 ⽅法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
13.12.2 阅读内容和⻛格图像 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
13.12.3 预处理和后处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
13.12.4 抽取图像特征 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631
13.12.5 定义损失函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
13.12.6 初始化合成图像 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634
13.12.7 训练模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634
13.12.8 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
13.12.9 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636
13.13 实战 Kaggle ⽐赛:图像分类 (CIFAR-10) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636
13.13.1 获取并组织数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637
13.13.2 图像增⼴ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
13.13.3 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
13.13.4 定义模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
13.13.5 定义训练函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
13.13.6 训练和验证模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
13.13.7 在 Kaggle 上对测试集进⾏分类并提交结果 . . . . . . . . . . . . . . . . . . . . . . . 643
13.13.8 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
13.13.9 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
13.14 实战Kaggle⽐赛:狗的品种识别(ImageNet Dogs) . . . . . . . . . . . . . . . . . . . . . . 644
13.14.1 获取和整理数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
13.14.2 图像增⼴ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
13.14.3 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
13.14.4 微调预训练模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
13.14.5 定义训练函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
13.14.6 训练和验证模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
13.14.7 对测试集分类并在Kaggle提交结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
13.14.8 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
13.14.9 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
14 ⾃然语⾔处理:预训练 653
14.1 词嵌⼊(Word2vec) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
14.1.1 为何独热向量是⼀个糟糕的选择 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
14.1.2 ⾃监督的word2vec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
14.1.3 跳元模型(Skip-Gram) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
14.1.4 连续词袋(CBOW)模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
14.1.5 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
xvii
14.1.6 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
14.2 近似训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
14.2.1 负采样 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
14.2.2 层序Somax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
14.2.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660
14.2.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
14.3 ⽤于预训练词嵌⼊的数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
14.3.1 正在读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
14.3.2 下采样 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
14.3.3 中⼼词和上下⽂词的提取 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
14.3.4 负采样 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
14.3.5 小批量加载训练实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666
14.3.6 整合代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
14.3.7 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
14.3.8 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
14.4 预训练word2vec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
14.4.1 跳元模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670
14.4.2 训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
14.4.3 应⽤词嵌⼊ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673
14.4.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
14.4.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
14.5 全局向量的词嵌⼊(GloVe) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
14.5.1 带全局语料统计的跳元模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675
14.5.2 GloVe模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675
14.5.3 从条件概率⽐值理解GloVe模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676
14.5.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677
14.5.5 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677
14.6 ⼦词嵌⼊ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677
14.6.1 fastText模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
14.6.2 字节对编码(Byte Pair Encoding) . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
14.6.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
14.6.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
14.7 词的相似性和类⽐任务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682
14.7.1 加载预训练词向量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682
14.7.2 应⽤预训练词向量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
14.7.3 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
14.7.4 练习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
14.8 来⾃Transformers的双向编码器表⽰(BERT) . . . . . . . . . . . . . . . . . . . . . . . . . 686
14.8.1 从上下⽂⽆关到上下⽂敏感 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
14.8.2 从特定于任务到不可知任务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
14.8.3 BERT:把两个最好的结合起来 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
14.8.4 输⼊表⽰ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688
xviii
剩余808页未读,继续阅读
2022-08-03 上传
2020-09-30 上传
2023-09-20 上传
2021-03-19 上传
2021-03-06 上传
2024-01-07 上传
2021-04-19 上传
MJy65535
- 粉丝: 191
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- JDK 17 Linux版本压缩包解压与安装指南
- C++/Qt飞行模拟器教员控制台系统源码发布
- TensorFlow深度学习实践:CNN在MNIST数据集上的应用
- 鸿蒙驱动HCIA资料整理-培训教材与开发者指南
- 凯撒Java版SaaS OA协同办公软件v2.0特性解析
- AutoCAD二次开发中文指南下载 - C#编程深入解析
- C语言冒泡排序算法实现详解
- Pointofix截屏:轻松实现高效截图体验
- Matlab实现SVM数据分类与预测教程
- 基于JSP+SQL的网站流量统计管理系统设计与实现
- C语言实现删除字符中重复项的方法与技巧
- e-sqlcipher.dll动态链接库的作用与应用
- 浙江工业大学自考网站开发与继续教育官网模板设计
- STM32 103C8T6 OLED 显示程序实现指南
- 高效压缩技术:删除重复字符压缩包
- JSP+SQL智能交通管理系统:违章处理与交通效率提升
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功