当前位置:   article > 正文

学习一个Github深度学习库_github 深度学习

github 深度学习

###本博客参考博主Bubbliiiing的博客,汇总了一些,做个笔记。###

b站视频参考:如何下载与打开一个Github深度学习库_哔哩哔哩_bilibili

原博客如下:

如何下载与打开一个Github深度学习库

初入深度学习1——如何下载与打开一个Github深度学习库_Bubbliiiing的博客-CSDN博客_深度学习教程github

windows: Download Zip(借助clash

linux:        git clone        :git clone HTTPS网址信息

如何使用一个深度学习库 

初入深度学习2——如何使用一个深度学习库_Bubbliiiing的博客-CSDN博客

深度学习仓库包含三个部分,第一部分是环境配置,第二部分是训练,第三部分是预测。

一、环境配置

安装requirements.txt

pip install -r requirements.txt # install

需要CUDA\CUDNN另说

二、训练复现

训练部分其实主要也是看Readme,Readme一般会有个上手指南,关键词一般是train

三、预测复现

预测部分其实主要也是看Readme,Readme一般会有个上手指南,关键词一般是predict或者Inference(当然也有别的,比如detect、image等)

如何分解与学习一个深度学习库

初入深度学习3——如何分解与学习一个深度学习库_Bubbliiiing的博客-CSDN博客_深度学习库

 深度学习库的功能包括两个部分,一部分是训练模型,另一部分是利用模型进行预测。
在训练模型时,需要考虑模型本身,训练参数,数据加载与损失函数
预测模型时,需要考虑模型本身,数据加载,预测后处理。

综合起来,一个能用的深度学习库需要包含如下5个部分:
模型本身,训练参数,数据加载,损失函数,预测后处理。

一、模型

模型本身在仓库中的名字是net(网络)或者model(模型)

二、训练参数

训练参数一般伴随着训练文件,因此一般在train.py文件里面,每一个库指定参数的方式不同,有些喜欢通过yaml文件指定,有些喜欢通过cfg文件指定,有些甚至通过py文件指定,都不一样,这个需要参考每一个库的组成去分析。但大多数库都可以在train.py文件中找到蛛丝马迹。

三、数据加载

数据加载分为两部分,一部分是训练的数据加载,另一部分是预测的数据加载。

1、训练部分

训练的数据加载其实是非常重要的,直接关系到模型的训练,监督模型在训练时加载的数据一般分为两部分,一部分是输入变量,通常是图片;另一部分是标签,在目标检测中就是图片对应的框的坐标,在语义分割中就是每个像素点的种类。

一般来讲,数据加载部分,模型本身在仓库中的名字是data、datasets或者dataloader。

2、 预测部分

预测部分

预测的数据加载和训练的数据加载相比,少了数据增强与标签处理的部分,因此会相对简单一些,主要是对输入图片进行预处理。
既然是预测部分的数据预处理,我们需要从预测文件开始寻找。

四、损失函数

一般来讲,损失函数在仓库中的名字是Loss(损失),Loss函数是模型优化的目标,在训练过程中Loss理论上是要被越优化越小的。

五、结果可视化

如何修改一个深度学习库

初入深度学习4——如何修改一个深度学习库_Bubbliiiing的博客-CSDN博客

对于在修改仓库前,需要根据所需要修改的功能对需要修改的目标进行定位:

想要对网络结构进行改进,那么就定位到模型本身,然后修改网络结构的特定部分。
想要对训练参数进行改进,那么就定位到训练参数,然后查找各个参数的作用,进一步进行修改。
想要对数据增强进行改进,那么就定位到数据加载,然后分解其中数据增强的部分,修改数据增强的过程。
想要对损失函数进行改进,那么就定位到损失函数,然后分解其中的回归部分、分类部分等,进一步对细节进行修改。
想要对预测结果进行改进,那么就定位到预测后处理,然后根据自身需求,分解每个输出的作用,进一步修改。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/649882
推荐阅读
相关标签
  

闽ICP备14008679号