深度学习及pytorch基础

mcgradyxyz mcgradyxyz     2022-12-08     271

关键词:

【任务一】视频学习心得及问题总结

根据下面三个视频的学习内容,写一个总结,最后列出没有学明白的问题。

【任务二】代码练习

在谷歌 Colab 上完成代码练习中的 2.1、2.2、2.3、2.4 节,关键步骤截图,并附一些自己的想法和解读。

【任务三】进阶练习

在谷歌 Colab 上完成猫狗大战的VGG模型的迁移学习,关键步骤截图,并附一些自己想法和解读。

在该代码的基础上,下载AI研习社“猫狗大战”比赛的测试集,利用fine-tune的VGG模型进行测试,按照比赛规定的格式输出,上传结果在线评测。将在线评测结果截图,及实现代码发在博客。同时,分析使用哪些技术可以进一步提高分类准确率。

 

1. 视频学习

视频学习包括两章内容:

1.1 绪论

(下载地址:https://www.jianguoyun.com/p/DVJarjYQrKKIBhi8la0D)

  • 从专家系统到机器学习
  • 从传统机器学习到深度学习
  • 深度学习的能与不能

1.2 深度学习概述

(下载地址:https://www.jianguoyun.com/p/DVlvT3cQrKKIBhi_la0D)

  • 浅层神经网络:生物神经元到单层感知器,多层感知器,反向传播和梯度消失
  • 神经网络到深度学习:逐层预训练,自编码器和受限玻尔兹曼机

1.3 pytorch 基础

(下载地址:https://www.jianguoyun.com/p/DYkxgJcQrKKIBhi5lq0D)

所有视频下载链接2020年7月25日自动过期,请抓紧时间下载。

 

【任务一解答】视频学习心得及问题总结

1.1绪论-人工智能和机器学习概述

(1)人工智能(Artificial Intelligence)

       使一部机器像人一样进行感知、认知、决策、执行的人工程序或系统。

 

(2)图灵测试

       假设在一个封闭的空间里一个机器做了一个任务,在封闭空间之外有一个人,如果这个人判断不了在封闭空间里的任务是由一个人还是一个机器完成的,那就说这个机器通过了图灵测试。

 

(3)人工智能的三个层面

       计算智能(能存会算)

       感知智能(能听会说、能看会认)

       认知智能(能理解,会思考)

 

(4)实现人工智能需要模仿人的智能方式,人的智能方式大概有两种:逻辑演绎和归纳总结

技术图片

 

   (5)知识工程/专家系统

       根据专家定义的知识和经验,进行推理和判断,从而模拟人类专家的决策过程来解决问题。

技术图片

 

 

 (6)机器学习的应用技术领域

       计算机视觉,语音,自然语言处理

 

 (7)机器学习的定义

技术图片

 

(8)机器学习方法都可以从以下三个要素去理解:

技术图片

 

(9)模型分类

技术图片

 

(10)模型分类之根据数据标记分类:监督学习、无监督学习、半监督学习、强化学习

技术图片

 

技术图片

 

(11)模型分类之根据数据分布分类:参数模型,非参数模型

技术图片

 

(12)模型分类之根据建模对象分类:判别模型,生成模型

技术图片

 

 (13)标记数据不够用时,可采用两种模型:半监督模型(部分标记),生成模型(生成一些数据)

 

1.2绪论-深度学习概述

(1)人工智能>机器学习>深度学习

技术图片

 

 (2)传统机器学习:人工设计特征

技术图片

 

 (3)深度学习又称为表示学习

 

 (4)深度学习的发展有三个要素:算法(学术界),算力(工业界),数据(工业界)

 

 (5)神经网络结构的发展

技术图片

 

(6)深度学习的“不能”

       a.算法输出不稳定,容易被“攻击”

       b.模型复杂度高,难以纠错和调试

       c.模型层级复合程度高,参数不透明

       d.端到端训练方式对数据依赖性强,模型增量性差

       e.专注直观感知类问题,对开放性推理问题无能为力

       f.人类知识无法有效引入进行监督,机器偏见难以避免

 

2.1 神经网络基础 - 浅层神经网络

(1)为什么需要激活函数?

       激活函数很多情况下我们需要非线性函数,从而让整个神经网络具有非线性的拟合能力。

 

(2)激活函数举例

技术图片

 

 

 

2. 代码练习

代码练习需要使用谷歌的 Colab,它是一个 Jupyter 笔记本环境,已经默认安装好 pytorch,不需要进行任何设置就可以使用,并且完全在云端运行。使用方法可以参考 Rogan 的博客:https://www.cnblogs.com/lfri/p/10471852.html 国内目前无法访问 colab,可以安装 Ghelper: http://googlehelper.net/

2.1 图像处理基本练习

这部分内容包括:理解图像类型,进行一些基本的图像分割操作。代码我都写在了一个 JupyterNotebook 里面,地址为:https://github.com/OUCTheoryGroup/colab_demo/blob/master/01_Image_Processing.ipynb

要求: 把代码输入 colab,在线运行观察效果。

2.2 pytorch 基础练习

基础练习部分包括 pytorch 基础操作,链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/02_Pytorch_Basic.ipynb

要求: 把代码输入 colab,在线运行观察效果。

2.3 螺旋数据分类

技术图片

代码链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/03_Spiral_Classification.ipynb

要求: 把代码输入 colab,在线运行观察效果

备注:详细说明可参考 https://atcold.github.io/pytorch-Deep-Learning/zh/week02/02-3/ 中英文字幕的视频讲解在B站:https://www.bilibili.com/video/BV1gV411o7AD?p=4 有精力的同学可以看看

2.4 回归分析

技术图片

代码链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/04_Regression.ipynb

要求: 把代码输入 colab,在线运行观察效果

备注: 详细说明可参考 https://atcold.github.io/pytorch-Deep-Learning/zh/week02/02-3/ 中英文字幕的视频讲解在B站:https://www.bilibili.com/video/BV1gV411o7AD?p=4 有精力的同学可以看看

 

3. 进阶练习

主要内容包括: 迁移学习、图像分类、VGG模型

notebook链接:https://github.com/OUCTheoryGroup/colab_demo/blob/master/05_04_Transfer_VGG_for_dogs_vs_cats.ipynb

技术图片

这部分为 Kaggle 于 2013 年举办的猫狗大战竞赛,使用在 ImageNet 上预训练的 VGG 网络进行测试。因为原网络的分类结果是1000类,所以这里进行迁移学习,对原网络进行 fine-tune (即固定前面若干层,作为特征提取器,只重新训练最后两层)。

仔细研读AI研习社猫狗大战赛题的要求:https://god.yanxishe.com/41 (目前比赛已经结束,但仍可做为练习赛每天提交测试结果)

下载比赛的测试集(包含2000张图片),利用fine-tune的VGG模型进行测试,按照比赛规定的格式输出,上传结果评测(练习赛每天仅可评测5次)。我已进行测试,VGG模型训练 1 个 epoch 的准确率约为 96.1 %。

技术图片

大家可以思考,如何改进当前模型,可以进一步提高分类准确率。有了这些技术积累,可以较好的应对未来的 kaggle 竞赛。

深度学习——pytorch基础(代码片段)

深度学习(1)——Pytorch基础作者:夏风喃喃参考:《动手学深度学习第二版》李沐文章目录深度学习(1)——Pytorch基础一.数据操作二.数据预处理三.绘图四.自动求导五.概率论导入相关包:importtorch ... 查看详情

深度学习——pytorch基础(代码片段)

深度学习(1)——Pytorch基础作者:夏风喃喃参考:《动手学深度学习第二版》李沐文章目录深度学习(1)——Pytorch基础一.数据操作二.数据预处理三.绘图四.自动求导五.概率论导入相关包:importtorch ... 查看详情

对比学习:《深度学习之pytorch》《pytorch深度学习实战》+代码

PyTorch是一个基于Python的深度学习平台,该平台简单易用上手快,从计算机视觉、自然语言处理再到强化学习,PyTorch的功能强大,支持PyTorch的工具包有用于自然语言处理的AllenNLP,用于概率图模型的Pyro,扩展了PyTorch的功能。通... 查看详情

pytorch学习笔记3.深度学习基础(代码片段)

...多分类22.全连接层23.激活函数与GPU加速24.测试根据龙良曲Pytorch学习视频整理,视频链接:【计算机-AI】PyTorch学这个就够了!(好课推荐)深度学习与PyTorch入门实战——主讲人龙 查看详情

深度学习理论与实战pytorch实现

课程目录:01.预备内容(入门)02.Python基础(入门)03.PyTorch基础(入门)04.神经网络(进阶)05.卷积神经网络(进阶)06.循环神经网络(进阶)07.生成对抗网络GAN(进阶)08.强化学习(进阶)09.毕业项目 下载地址:深度学习理... 查看详情

深度学习---从入门到放弃pytorch基础(代码片段)

深度学习—从入门到放弃(一)pytorchTensor类似于numpy的array,pandas的dataframe;在pytorch里的数据结构是tensor,即张量tensor简单操作1.Flattenandreshape###Originalz:tensor([[0,1],[2,3],[4,5],[6,7],[8,9],[10,11]])Flatte 查看详情

深入浅出卷积神经网络及实现!

...CNN的基础原理及常见的CNN网络进行了详细解读,并介绍了Pytorch构建深度网络的流程。最后,以阿里天池零基础入门CV赛事为学习实践,对Pytorch构建CNN模型进行实现。数据及背景  CNN原理CNN,又称卷积神经网络,是深 查看详情

深度学习基础:4.pytorch搭建基础网络模型(代码片段)

...始,巩固基础才能看懂复杂代码。Torch基本架构使用Pytorch之前,首先要理清楚Pytorch基本架构。Pytorch的核心库是torch,根据不同领域细分可以分成计算机视觉、自然语言处理和语音处理,这三个领域分别有自己对应... 查看详情

pytorch学习笔记基础知识

PyTorch深度学习:60分钟入门(Translation) 查看详情

[九]深度学习pytorch-transforms图像增强(剪裁翻转旋转)(代码片段)

0.往期内容[一]深度学习Pytorch-张量定义与张量创建[二]深度学习Pytorch-张量的操作:拼接、切分、索引和变换[三]深度学习Pytorch-张量数学运算[四]深度学习Pytorch-线性回归[五]深度学习Pytorch-计算图与动态图机制[六]深度学习Pyto... 查看详情

深度学习基础--激活函数

...度学习基础–激活函数最近在阅读一本书籍–Dive-into-DL-Pytorch(动手学深度学习),链接:https://github.com/newmonkey/Dive-into-DL-PyTorch,自身觉得受益匪浅,在此记录下自己的学习历程。本篇主要记录关于三种常... 查看详情

《深度学习与计算机视觉算法原理框架应用》pdf+《深度学习之pytorch实战计算机视觉》pdf

...下载:https://pan.baidu.com/s/1P0-o29x0ZrXp8WotN7GzcA《深度学习之PyTorch实战计算机视觉》更多分享:https://pan.baidu.com/s/1g4hv05UZ_w92uh9NNNkCaA《深度学习与计算机视觉算法原理框架应用》共13章,分为2篇。第1篇基础知识,介绍了人工智能发展... 查看详情

深度学习常用pytorchcuda版本whl下载及在线安装命令(代码片段)

✨安装非最新版PyTorch请点击如下链接阅读PyTorch提供的命令以确认不同版本torch、torchvision、torchaudio对应关系https://pytorch.org/get-started/previous-versions/✨whl下载链接CUDA11.6https://download.pytorch.org/whl/cu116CUDA11.3https://downlo 查看详情

深度学习——基础(基于pytorch代码)(代码片段)

...数管理延后初始化自定义层读写文件GPU预备知识数据操作Pytorch中对数据(tensor张量)的操作类似于Numpy(ndarray),但由于深度学习大都是用GPU进行计算,而Numpy仅支持CPU计算,且Pytorch的张量类支持自动... 查看详情

pytorch学习6《pytorch深度学习实践》——加载数据集(datasetanddataloader)(代码片段)

一、基础概念二、代码及讲解importtorchimportnumpyasnpfromtorch.utils.dataimportDatasetfromtorch.utils.dataimportDataLoader#preparedatasetclassDiabetesDataset(Dataset):def__init__(self,filepath):xy=np.loadtxt(filepath,delimiter=',',dtype=np.float32)#(759,9)最后一列... 查看详情

参考《深度学习之pytorch实战计算机视觉》pdf

...三大应用方向。计算机视觉学习,推荐阅读《深度学习之PyTorch实战计算机视觉》。学到人工智能的基础概念及Python编程技能,掌握PyTorch的使用方法,学到深度学习相关的理论知识,比如卷积神经网络、循环神经网络、自动编码... 查看详情

深度学习基础--多层感知机(mlp)(代码片段)

...层感知机(MLP)最近在阅读一本书籍–Dive-into-DL-Pytorch(动手学深度学习),链接:https://github.com/newmonkey/Dive-into-DL-PyTorch,自身觉得受益匪浅,在此记录下自己的学习历程。本篇主要记录关于多层... 查看详情

window10系统如何安装pytorch教程

...s系统电脑安装深度学习教程对于深度学习来说,安装pytorch和tensorflow是基础中的基础,毕竟无法搭建环境就无法进行训练程序,我也是首先对window安装好pytorch和tenso 查看详情