《动手学深度学习(Pytorch版)》Task01:初识深度学习——4.22打卡

深度学习介绍

AI地图

在这里插入图片描述

  • 自然语言处理:起源于符号学,如机器翻译,人在几秒钟能反应过来,属于感知问题
  • 计算机视觉:图片由像素组成,难以用符号学解释,在图片中进行推理,大部分用概率模型或者机器学习
  • 深度学习:机器学习的一种

深度学习任务

图片分类

输入图像识别类别

著名数据集Image-net

物体检测和分割

  • 目标检测:输入图像识别图像中每个物体的类别和框
  • 语义分割:识别每个像素的类别

在这里插入图片描述

样式迁移

将一个图像中的样式应用在另一图像之上

在这里插入图片描述

人脸合成

请添加图片描述

文字生成图片

在这里插入图片描述

文字生成

以QA形式进行文字生成,如GPT-3

在这里插入图片描述

无人驾驶

在这里插入图片描述

案例:广告点击

场景:给定用户输入如何返回相应的广告

三个阶段:

  1. 触发
  2. 点击率预估 —> 机器学习模型
  3. 排序

**预测:**特征提取 —> 模型 —> 点击率预测

**训练:**训练数据(过去广告展现和用户点击) —> 特征和用户点击 —> 模型

完整过程

在这里插入图片描述

领域专家:关心模型应用产生的影响,提需求的人,甲方

数据科学家:将原始数据转换成机器可以理解的数据,乙方

AI专家:训练模型并且关注模型的进一步提升

QA

Q:机器学习的可解释性:机器学习在图片分割领域为什么有效?

A:深度学习的可解释性(人类理解层面)现在很难定论,但是可以从一些角度解释模型为什么有效

Q:深度学习无法用数学规范表述,只能从直觉上理解对吗?

A:不一定,模型可以用数学表述,但是目前难以用数学来解释模型为什么工作/不工作

引言-相关名词整理

关键组件

数据(data)

数据集(dataset)

模型(model):任一调整参数后的程序

参数(parameter):可以调整程序行为的旋钮

学习算法(learning algorithm):使用数据集来选择参数的元程序

样本(example, sample)数据点(data point)数据实例(data instance):组成数据集的数据

独立同分布(independently and identically distributed, i.i.d.)

特征(features,或协变量(covariates)):一组特征属性组成一个样本

维数(dimensionality):特征向量的长度

深度学习(deep learning):关注功能强大的模型,这些模型由神经网络错综复杂的交织在一起,包含层层数据转换

目标函数(objective function):量化模型的有效性的函数

损失函数(loss function,或cost function):习惯上取目标函数越低越好,所以叫损失

训练数据集(training dataset,或称为训练集(training set)):用于模型训练而收集的样本,拟合模型参数

测试数据集(test dataset,或称为测试集(test set)):用于测试模型性能,模型没有见过的“新数据集”,评估拟合的模型

过拟合(overfitting):模型在训练集上表现良好,但测试集效果很差

梯度下降(gradient descent):常用的优化算法,在每个步骤中,梯度下降法都会检查每个参数,看看如果仅对该参数进行少量变动,训练集损失会朝哪个方向移动。 然后,它在可以减少损失的方向上优化参数。

监督学习

监督学习(supervised learning):在“给定输入特征”的情况下预测标签。每个“特征-标签”对都称为一个样本(example)。

回归

回归(regression):训练一个回归函数来输出一个数值

平方误差(squared error):预测值与实际值之差的平方,预测数值最常用

分类

分类(classification):练一个分类器来输出预测的类别

类别(category,正式称为(class))

二项分类(binomial classification):只有两个类别的分类

多项分类(multiclass classification):有两个以上的类别

交叉熵(cross-entropy):所有标签分布的预期损失值

层次分类(hierarchical classification):一些分类任务的变体可以用于寻找层次结构,层次结构假定在许多类之间存在某种关系

标记问题

多标签分类(multi-label classification):学习预测不相互排斥的类别的问题

推荐系统

推荐系统(recommender system):向特定用户进行“个性化”推荐

序列学习

序列学习(sequence Learning):摄取可变长度的输入序列 和/或 预测可变长度的输出序列

无监督学习

无监督学习(unsupervised learning):数据中不含有“目标”的机器学习问题

聚类(clustering):没有标签的情况下给数据分类

主成分分析(principal component analysis):用少量的参数来准确地捕捉数据的线性相关属性

因果关系(causality)和概率图模型(probabilistic graphical models):根据经验数据发现属性之间的关系

生成对抗性网络(generative adversarial networks):通过两个神经网络相互博弈的方式进行学习,生成数据

与环境互动

离线学习(offline learning):根据预先收集的数据进行模型训练,训练开始后不与环境交互

分布偏移(distribution shift):训练集和测试集之间的数据分布不同,导致模型的泛化性能很差。

强化学习

强化学习(reinforcement learning):让智能体(agent)在与环境交互的过程中,通过学习最优的行为策略,来实现最大的回报或目标。

智能体(agent)

观察(observation)

动作(action)

奖励(reward)

策略(policy):强化学习的目标是产生一个好的策略

在这里插入图片描述

学分分配(credit assignment):决定哪些行为是值得奖励的,哪些行为是需要惩罚的。

马尔可夫决策过程(markov decision process):环境可被完全观察到的强化学习问题

上下文赌博机(contextual bandit problem):状态不依赖于之前的操作的强化学习问题

多臂赌博机(multi-armed bandit problem):没有状态,只有一组最初未知回报的可用动作的强化学习问题

神经网络(neural networks):一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。

(layers):线性和非线性处理单元的交替

链式规则(也称为反向传播(backpropagation)):一次性调整网络中的全部参数的规则

dropout :有助于减轻过拟合

表示学习(representation learning):模型自动从数据中抽取特征或表达,以方便后续任务

Datawhale环境配置讲解

视频分为Linux和windows环境配置,本人使用笔记本自带的RTX4060显卡进行配置,所以是windows环境,视频在20:30左右开始

视频内容:

下载 Miniconda

更换镜像源

下载GIT

下载课程 Repo

之前已经配置过conda和pytorch,所以跳过

安装

因为已经安装conda,所以跳过安装Miniconda

安装深度学习框架和d2l软件包

创建conda虚拟环境

conda create -n learning_pytorch python=3.9

激活虚拟环境

conda activate learning_pytorch

确定CUDA driver的版本

运行nvidia-smi, CUDA版本为12.4

在这里插入图片描述

pytorch官网选择比CUDA driver小的最新版本

在这里插入图片描述

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

安装d2l

pip install d2l==0.17.6

下载 D2L Notebook

创建文件夹d2l-zh并下载压缩包

mkdir d2l-zh && cd d2l-zh
curl https://zh-v2.d2l.ai/d2l-zh-2.0.0.zip -o d2l-zh.zip

问题:‘unzip’ 不是内部或外部命令,也不是可运行的程序
或批处理文件。

原因:unzip是linux系统下,windows不自带。

解决方法:下载unzip,官网地址:https://gnuwin32.sourceforge.net/packages/unzip.htm

  1. 选择Binaries;
  2. 下载ZIP;
  3. 最后将下载下来的unzip-5.51-1-bin\bin\unzip.exe文件复制到 C:\Windows\System32 即可。

在这里插入图片描述

在这里插入图片描述

解压,可以正常运行

unzip d2l-zh.zip && del d2l-zh.zip

PS:windows命令提示符(CMD)使用 del 命令来删除文件。

cd pytorch

打开Jupyter笔记本(在Window系统的命令行窗口中运行以下命令前,需先将当前路径定位到刚下载的本书代码解压后的目录)

jupyter notebook

成功打开

在这里插入图片描述

李沐:GPT时代AI怎么学?

原来的深度学习:人在5s可以决策出来的问题

现在的深度学习:一个专业人士1h的工作量

机器学习这么多年在训练上其实没有本质的变化

不同:每几年会把一类模型的做到智能顶点

transformer的智能上限仍在探索中

就算遇到上限,也会去探索新的模型架构

现状:transformer的了解不够深入,下一个架构仍未出现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/640883.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3组件封装系列-表单请求

我们在开发一些后台管理系统时,总是会写很多的列表查询页面,如果不封装组件,就会无限的复制粘贴,而且页面很冗余,正常情况下,我们都是要把组件进行二次封装,来达到我们想要效果。这里我分享一下…

uni-app 的 扩展组件(uni-ui) 与uView UI

uni-app 的 扩展组件(uni-ui) 与uView UI uni-ui 官方背景:组件集:设计风格:文档与支持:社区与生态: uView UI 第三方框架:组件集:设计风格:文档与支持&#…

ScriptableObject数据容器讲解

概述 是Unity提供的一个用于创建可重用的数据容器或逻辑的基类。 ScriptableObject 是继承自 UnityEngine.Object 的一个类,但与普通的 MonoBehaviour 不同,它不能附加到GameObject上作为组件。 相反,ScriptableObject 通常用于存储和管理…

【JavaSE启航篇 01】探索JavaSE:史上最强JavaSE学习路线图 知识图谱

【JavaSE启航篇 01】探索JavaSE:史上最强JavaSE学习路线图 &知识图谱 作者名称:纸飞机-暖阳 作者简介:专注于Java和大数据领域,致力于探索技术的边界,分享前沿的实践和洞见 文章专栏:JavaSE那些年专栏 …

数据库管理-第173期 OceanBase一体化Plus多模融合(20240422)

数据库管理173期 2024-04-22 数据库管理-第173期 OceanBase一体化Plus多模融合(20240422)1 架构简化2 不止融合2.1 行列混存2.2 多维使用2.3 多模JOIN 3 展望 数据库管理-第173期 OceanBase一体化Plus多模融合(20240422) 作者&…

3D Gaussian Splatting介绍

目录 一、概述二、基础介绍1. 多维高斯分布2. 将3D 高斯投影到2D像素平面3. 球谐函数4. Splatting and α \alpha α blending 三、整体流程四、 伪代码五、评价指标六、实验结果七、reference 一、概述 3D Gaussian Splatting和NeRF一样,主要用于新视图合成。 特…

eCharts 折线图 一段是实线,一段是虚线的实现效果

在lineStyle里写了不生效的话,可以尝试数据拼接 option {xAxis: {type: category,data: [Mon, Tue, Wed, Thu, Fri, Sat, Sun]},yAxis: {type: value},series: [{data: [150, 230, 224,218 ,,,],type: line},{data: [,,, 218, 135, 147, 260],type: line,lineStyl…

Valentina Studio Pro for Mac:强大的数据库管理工具

Valentina Studio Pro for Mac是一款功能全面、操作高效的数据库管理工具,专为Mac用户设计,旨在帮助用户轻松管理各种类型的数据库。 Valentina Studio Pro for Mac v13.10激活版下载 该软件拥有直观的用户界面,使得数据库管理变得简单直观。…

ChromaDB教程

使用 Chroma DB,管理文本文档、将文本嵌入以及进行相似度搜索。 随着大型语言模型 (LLM) 及其应用的兴起,我们看到向量数据库越来越受欢迎。这是因为使用 LLM 需要一种与传统机器学习模型不同的方法。 LLM 的核心支持技术之一是…

CSS-vminvmax单位

vmin 和 vmax 单位 vmin 是相对于视口宽度和高度中较小值进行计算,它的值为视口宽度和高度中的较小值的百分比。 例如,如果视口宽度为 800px,高度为 1000px,那么 1vmin 等于 8px(800px 的 1%)。 vmax 是…

半年来每月必用,隐私协议Railgun因何得到Vitalik的青睐?

还没有哪个隐私协议能让 Vitalik 每个月都转入以太坊交互,但 Railgun 做到了。在过去 6 个月中,Vitalik 基本每个月都会使用 ETH 与 Railgun 交互,随后被 Vitalik 推特确认,并为 Railgun 打了个小广告。市场反应迅速,其…

书生·浦语大模型实战训练营--第二期第七节--OpenCompass大模型评测实战--homework

一、配置环境 安装下面的顺序以及自己的文件路径配置环境 conda create -n opencompass python3.10 -y 安装下面的包 absl-py accelerate>0.19.0 boto3 cn2an cpm_kernels datasets>2.12.0 einops0.5.0 evaluate>0.3.0 fairscale func_timeout fuzzywuzzy immutab…