董董灿是个攻城狮

董董灿是个攻城狮

从本节开始,进入到代码实战部分,在开始之前,先简单进行一下说明。

代码实战部分,我会默认大家有一定的编程基础,不需要对编程很精通,但是至少要会 python 的基础语法、python 环境搭建、pip 的使用;C++ 要熟悉基础知识和基础语法,会根据文章中的步骤完成 C++ 的环境搭建,以及 C++ 编译和运行。

如果确实有某一部分之前没有接触过,可以借着代码实战部分的示例,多查查资料,把这部分知识丰富起来,虽然每一部分涉及的知识不会很深,但还是要有基础的概念和技能。

当然在每一部分,我也会尽可能的写清楚一些细节,尤其是环境搭建和思路方面,但是无法保证面面俱到,因此,如果在自己电脑环境中遇到了无法解决的事情,可以先自己尝试去解决,99%的问题在百度一圈,或者询问 GPT 之后,都可以得到完美的解决。

python 环境依赖

实战部分的代码,除了核心的算子代码,以及神经网络搭建的逻辑需要我们手写之外,其他的辅助逻辑还是会依赖于一些三方库来实现。

这些辅助逻辑包括:模型下载,图片导入,权值保存等。

python 开发环境下,主要依赖的三方库有以下几个。

numpy

这是一个很常用的科学计算工具包,我们会用它来做卷积的优化以及数据的存储。

torch,torchinfo,torchvision

使用这几个库来下载已经训练好的 resnet50 的模型。下载好模型之后,会对模型进行拆解,将其中含有权值的层进行权值下载,将权值提取出来并且保存在

01-14 23:29