zoukankan      html  css  js  c++  java
  • 【2020.02.11】jupyter特点、Pytorch数据加载、dataset类的使用

    今天学习来源是:https://www.bilibili.com/video/BV1hE411t7RN

    学习python的两个常用函数

    image-20210211101701000

    两个pytorch常用函数

    dir()函数,能让我们知道工具箱以及工具箱中的分隔区有什么东西。
    help()函数,能让我们知道每个工具是如何使用的,工具的使用方法。
    Tips:在使用help函数时候,后面的括号中不用再加括号
    

    Jupyter的特点

    使用三种不同的方式运行下方错误代码

    image-20210211104311393

    三种不同运行方式的比较

    代码是以块为一个整体运行的话

    python方式: 
    python文件的块是所有行的代码,即运行整个文件后报错
    优:通用,传播方便,适用于大型项目
    缺:需要从头运行
    
    python控制台:
    以每一行为块,运行的,当出错的时候,阅读性较差
    优:显示每个变量属性
    缺:不利于代码阅读及修改
    
    jupyter:
    自定义分割块大小以任意行为块运行的,不会影响到其他块的运行
    优:利于代码阅读及修改
    缺:环境需要配置
    

    (感觉jupyter好特别啊,中和了两种方式)

    image-20210211105120346

    其中左边的一是错误代码的执行

    右边的二是将2019加上双引号,订正了赋值给b的效果

    Pytorch数据的加载

    dataset 和 dataloader的作用和区别

    读取数据涉及到两个类,分别为 datasetdataloader

    dataset的作用是:
    提供一种方式去获取数据及其label(标签) 
    
    主要实现了两个功能:
    如何获取每一个数据及其label
    告诉我们总共有多少的数据
    
    dataloader的作用是:
    
    为后面的网络提供不同的数据形式
    

    上传数据包到jupyter并解压

    因为要在jupyter中进行运行,jupyter只能上传单个文件,因此上传压缩包

    image-20210213165532104

    点击upload

    image-20210213165712137

    新建用于解压的文件

    代码如下

    import zipfile
    import os
    files = zipfile.ZipFile('这里改为解压包名称', 'r')
    files.extractall('这里是解压目录名')
    files.close() 
    

    image-20210213165824339

    点击运行,便会解压到当前目录文件夹下,检查一下,训练集确实在当前目录下

    image-20210213171115684

    导入的简单测试

    按照jupyter的思想,我们分块进行处理

    先导入库函数

    from torch.utils.data import dataset
    # 用于相片操作
    from PIL import Image
    # 系统操作,获取文件列表会用到
    import os 
    

    导入一张照片并打开

    # 因为在macOS下,目录层级之间是用/进行分隔的,Windows下需要\进行转义为
    img_path = "hymenoptera_data1/hymenoptera_data/train/ants/0013035.jpg"
    # 打印进行检查,特别是Windows
    print(img_path)
    img = Image.open(img_path)
    img.show()
    

    输出正常就行

    image-20210213171506608

    导入一个文件目录下的所有照片试试

    # 这是通过路径获取文件列表
    dir_path = "hymenoptera_data1/hymenoptera_data/train/ants"
    img_path_list = os.listdir(dir_path)
    

    可以在变量查看的插件里面看到得到的是一个list

    插件的安装方法看我之前的博客:https://www.cnblogs.com/mokou/p/14386462.html

    image-20210214115802978

    此时获得的数据是以数组形式存在

    image-20210216112803847

  • 相关阅读:
    一篇文章搞懂密码学基础及SSL/TLS协议
    如何编写一个多进程性能测试程序
    自动化测试用例编写日志总结(一)
    Python lambda匿名函数
    Python map() 函数
    python中sorted函数的理解(对list列表排序,对dict字典排序)
    python list列表冒泡排序
    range的用法
    同时安装python2和python3是使用pip的方法:
    cmd输出文件树结构
  • 原文地址:https://www.cnblogs.com/mokou/p/14397478.html
Copyright © 2011-2022 走看看