书名:线性代数与数据学习
作者:吉尔伯特·斯特朗

这几年机器学习、深度学习发展迅速,不少高校开设了人工智能学院,招收人工智能方向的本科生;而集成电路也是这几年的大热门,集成电路学院纷纷成立,很多同学跨专业考入集成电路方向的研究生。那么,今天介绍的这本书,机器学习及其硬件实现,就是把这机器学习深度学习原理及应用,和集成电路中硬件的新型架构设计这两个方向做了融合,希望通过设计特定的硬件,来加速机器学习的训练和推理;不仅如此,优化各类模型,使其能运行在各种计算环境中,也是本书的内容之一。
主体内容
第二章介绍了用于机器学习的基本硬件,比如微处理器,多核处理器,DSP、GPU和FPGA,它们的架构、编程模型、设计流程等,也讨论了它们在人工智能时代的优劣势和特定市场的前景。
第三章介绍了神经形态计算的硬件实现方式,神经网络硬件的实现方式,比如点积的实现。这一章可以看作,把机器学习的数学模型和软件代码映射到硬件电路的介绍。
第四章介绍ASIC的特征,设计约束比如线延时、能耗、带宽等。这一章可以让读者更清晰的了解芯片能做什么,代价是什么。
第五章介绍机器学习模型的开发,这一章打通了上层软件到底层硬件的联系。
第六章性能提升的方法,主要介绍如何优化模型,使其在硬件上进行模型训练和推理的时候,更好的发挥性能。普遍的方法包括模型压缩、数值压缩、近似等。
第七章介绍了硬件实现的案例研究。如果看这本书还是不太能理解什么是机器学习的硬件实现,那么这些案例和案例所对应的论文,是比较好的学习资料。这一章也是我们最喜欢的一章,分门别类介绍了很多国内外高校、研究组的项目和成果,是一份非常好的论文整理和综述。这本书的实际内容不止这些,我们甚至觉得附录和参考文献的价值也很高。
总结
读完这本书,你并不能清晰的体会到某一个深度学习模型加速器的设计与实现,它不是一本手把手教你做某一个加速器的书籍,这本书没有一行RTL代码。这本书是一本高屋建瓴的书,从顶层给大家介绍机器学习及其硬件实现,讲所需要的基础、你会面临的条件约束(也是评价的指标)和提升性能表现的方法,讲不通计算介质,它们的现在和它们的将来。阅读这本书,可以让大家更宏观更全面的了解和入门这个研究方向,对于已经在从事硬件加速研究设计和开发的同学们,这本书可以帮助大家整理和补全这个领域大大小小的各种知识模块,也有助于大家写出一份好的硕士论文背景综述~