提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
前言
一、如何下载并安装pycharm?
下载pycharm:
安装pycharm:
二、简单使用pycharm
1.如何变成中文模式
2.导入环境
三、RMB识别项目之数据部分的感悟
1.为什么要尝试实践这样一个简单的小项目?
2.数据部分的收获
第二个子模块数据划分
第三个子模块数据读取
第四个子模块数据预处理:
总结
(本文默认已经下载完anaconda且配置过pytorch的环境并下载完pytorch)
本文主要展示如何下载pycharm,并将介绍一些基础的pycharm使用技巧及如何导入数据集和项目所需的数据板块的一些操作。
pycharm是一种集成开发环境,为了能够让你快速编写代码,便于调试.
出现下图说明安装成功,点击最上方选项
1.首先打开pycharm 新建项目
2.点击左上角setting,如下图
3.点击左栏的python interpreter
4.选择对应的解释器python interpreter ,点击ok完成
5.如果没有你要的解释器,则点击下面的选择show all
6.再选择+号
7.选择conda环境,然后选择已经存在的环境 existing environment
8.一路ok回去
9.再main.py文件中写入下面代码测试
import torch
print(torch.cuda.is_available())
x=torch.randn(3,5)
print(x)
RMB识别项目可以跟着哔哩哔哩UP主 比飞鸟贵重的多_HKL 进行学习(亲测通俗易懂,而且非常基础),项目的具体代码在视频下方也有,以下是具体链接:人工智能打游戏系列课程1:基于深度学习的目标检测算法(正经深度学习教程!!!)_哔哩哔哩_bilibili
我相信不少初学者在学习深度学习时会产生更为一样的想法,那就是知识点太多太繁杂了。而通过一个小项目的实践可以帮助我们迅速地了解一个项目的主干部分都有什么,正如一棵大树,只有拥有足够粗壮的躯体,才能支撑起更加繁茂的枝丫。在机器学习模型训练中大致有五大步骤;第一是数据,第二是模型,第三是损失函数,第四是优化器,第五个是迭代训练过程。本文主要讲述我在学习第一个板块,即数据部分的一些收获和感悟。
数据模块通常还会分为四个子模块,数据收集、数据划分、数据读取、数据预处理。在进行实验之前,需要收集数据,数据包括原始样本和标签。
而DataLoader则能细分为两个子模块,Sampler和DataSet;Sample的功能是生成索引,也就是样本的序号;Dataset是根据索引去读取图片以及对应的标签;
首先, DataLoader的功能是构建可迭代的数据装载器。而对于其用法,其中不仅需要我们根据特定情况设定的Dataset类(决定数据从哪里读取及如何读取),还需要我们设定以下参数,其具体功能如下:
其中对于batchsize与Epoch的概念我们尤其要掌握:
所有训练样本都已输入到模型中,称为一个Epoch;而Batchsize则是代表了批大小,决定一个Epoch中有多少个Iteration。我们可通过一个Batchsize和Epoch实例进一步了解:
假设您有一个包含200个样本(数据行)的数据集,并且您选择的Batch大小为5和1,000个Epoch。这意味着数据集将分为40个Batch,每个Batch有5个样本。每批五个样品后,模型权重将更新。这也意味着一个epoch将涉及40个Batch或40个模型更新。有1000个Epoch,模型将暴露或传递整个数据集1,000次。在整个培训过程中,总共有40,000Batch。
其次, Dataset又具体承担什么责任呢?
简单来说,Dataset是用来定义数据从哪里读取(根据我们给定的存放数据集的路径),以及如何读取的问题。在具体实践中,我们往往会重新定义一个合适的Dataset类,而我们所定义的类则需要继承给定的Dataset抽象类,并且复写__init__(),__getitem__()函数。
把数据读取进来往往还需要对数据进行一系列的图像预处理,比如说数据的中心化,标准化,旋转或者翻转等等。pytorch中数据预处理是通过transforms进行处理的。
数据预处理中 1. Resize的功能是缩放
2. RandomCrop的功能是裁剪
3. ToTensor的功能是把图片变为张量
第一周正儿八经地去学了如何将一个简单的小项目落地,中间遇到了很多问题,比如环境的调试,运行的时候各种问题,这些都需要花费大量时间去搜索资料慢慢解决。也终于使我一个原先什么都不懂的小白成为了一个。。。普普通通的小白。总而言之,还是很有收获的,现在进度也在慢慢推进,等我学完模型等板块,也会继续发布我的收获的。