前言
教育部新工科培养方案明确指出本科生应具备复杂系统设计能力。本书与此目标完美契合,同时具备高阶性、创新性与挑战性三种特质。本书是四位作者通力合作的成果,具有以下四个特色。
第一,所见即所得。所有编码和图表分析,均出自本书案例的实践过程,与案例100%同步,100%测试,100%可靠。
第二,一例一世界。七个案例,各有侧重。案例全部采用国际著名机构发布的真实数据,研究领域涉及房产零售、生物信息、图像处理、自动驾驶、蛋白质折叠、机器问答、植物病理等。案例从数据分析和预处理开始,到特征工程,再到机器学习建模,最后完成模型评估,系统推演,丝毫毕现。
第三,把脉问前沿。案例聚焦问题前沿与技术前沿,同时兼顾方法的普适性、代表性与先进性。例如,对于历史经典模型(LeNet5)、结构优美的模型(VGG16)、自身应用广泛并对后来算法影响深远的模型(ResNet、Inception)、性能卓著的后起之秀模型(YOLO v1~v4、DenseNet、EfficientNet、EfficientDet、BERT)等,予以重点关注。
第四,视频求深解。所有章节同步配有作者高清视频讲解,扫描书中二维码即可在线观看。视频不是书本内容的简单重复,而是再次升华和有益补充。视频讲解弥补了文字在逻辑推演细节上的跳跃,口头表达带来了更为丰富的立体感知,视频讲解在聚焦前沿方面亦多有拓展。
本书以应用为导向,理论教学贯穿其中,理论与实践相得益彰。
回归问题讨论了线性回归、岭回归、Lasso回归、ElasticNet回归、XGBoost回归、Voting回归和Stacking回归七种方法在同一问题上的表现。
神经网络基本理论的内容则循序渐进,包括神经网络结构、激励函数、损失函数、梯度下降、正向传播、反向传播、偏差与方差、正则化、MiniBatch梯度下降、参数与超参数、优化算法等。
卷积神经网络的内容囊括卷积核、卷积运算、边缘扩充、卷积步长、最大池化与平均池化、卷积层、经典结构、1×1卷积等基础模块,也包括对经典网络的剖析与运用,包括LeNet5网络、VGG16网络、ResNet网络、Inception网络、DenseNet网络、EfficientNet网络、EfficientDet网络等。
自动驾驶与YOLO算法碰撞,从目标检测、OpenCV、滑动窗口、卷积滑动窗口、Bounding Box、交并比、非极大值抑制、Anchor Box等算法基础模块,到最后的YOLO算法v1、v2、v3、v4等一气呵成。
循环神经网络和自然语言处理领域,从词汇表征、词嵌入向量、注意力机制、Transformer到以BERT模型为核心的机器问答。
本书将理论知识作为独立教学模块,与案例推演前后呼应,浑然一体。这种边理论边实践的教学模式,既可在工程实践中熏陶理论见识,又可在复杂系统设计中淬炼过硬本领。
总之,本书坚持理论与实践相融合的教学理念,使得案例在易读、易学、易用、易模仿、易创新等方面形成了自己的特色。作者坚持一流教学标准引领教材各个环节的创作,既有内容美,又有形式美。教材文案设计和视频讲解以读者为中心,课后习题均有解答,让读者学得轻松,学得快乐,学有所成。
本书彩色图表较多,为了节约印刷成本,彩色图表以黑白颜色呈现,但是文字表达仍然沿用彩色图表的描述逻辑,一方面是为了保留彩色图表的丰富内涵; 另一方面,彩色图表本身就是实践的结果。如果读到描述彩色图表的文字,可以参照视频讲解、程序文档或随书课件,完整复原彩色图表的庐山真面目。
本书的出版得到了清华大学出版社的大力支持,在此致以衷心感谢!
本书案例编码借鉴了众多Kaggle作者、GitHub作者和不知名网络作者的方案,书中行文或者案例文档已有注明,部分图表引用了论文作者的原创,相关论文已列在书末参考文献中。在此向众多的网络作者、原创学者表达谢意!本书部分内容参照了吴恩达老师的深度学习公开课,在此表达崇高敬意!
好作品离不开读者的反馈,欢迎读者批评指正。
最后,是写给读者的几句话:
致读者
数据滔滔,浮光跃金。
机器碌碌,静影沉璧。
平凡数据,不凡潜力。
生生不息,碌碌不止。
案例领航,风雷万里。
鸿蒙壮心,寻根问底。
明明如月,何时可掇?
行到水穷,坐看云起。
编著者2020年5月