当前位置: 首页 > article >正文

深度学习——基础知识

  深度学习的重点在于优化,其中很重要的步骤在于如何调参,会涉及到一些微积分等数学知识。不同于以往接触到的数值运算,深度(机器)学习都是关于张量Tensor(向量)的计算,Python中最常用的包就是Numpy,其次张量类支持调用包可自动微分。

一、基础操作运算

1.1 导入torch

  先导入torch,虽然是pytorch版本的深度学习,但是代码中使用torch,而不是pytorch.
在这里插入图片描述

1.2 arange创建行向量

在这里插入图片描述

1.3 通过张量的shape属性来访问张量的形状或维度

在这里插入图片描述

1.4 张量的大小

  张量中元素的总数,即shape属性中所有元素的乘积。
在这里插入图片描述

一维向量的shape和size是相同的数值

1.5 改变张量的形状reshape

  要想改变一个张量的形状而不改变元素数量和元素值,可以调用reshape函数。
在这里插入图片描述

在reshape时,不需要特别指定每个维度的参数,在知道元素总数的前提下,知道宽度(高度)后,高度(宽度)会被自动计算得出,不需要自己手动计算,可以通过-1来调用此自动计算出形状。

在这里插入图片描述

1.6 初始化矩阵

1.6.1 将张量中所有元素设置为0

在这里插入图片描述

1.6.2 将张量中所有元素设置为1

在这里插入图片描述

1.6.3 标准高斯分布:均值为0,标准差为1,随机初始化参数的值

在这里插入图片描述

1.6.4 自定义张量

  可以通过包含数值的python列表(嵌套列表)来为所需张量中的每个元素赋予确定值。
在这里插入图片描述

二、张量运算符

2.1 按元素计算

在这里插入图片描述

2.2 张量连接

在这里插入图片描述

dim=0对行进行拼接;dim=1对列进行拼接。

2.3 逻辑运算符

在这里插入图片描述

2.3 求和

在这里插入图片描述

三、广播机制

  形状相同的张量按元素操作,在某些情况下,即使形状不同,可以通过调用广播机制来执行按元素操作。
  广播机制在大多数情况下,沿着数组中长度为1的轴进行广播。
在这里插入图片描述
  a和b分别是31和12的矩阵,如果让它们相加,它们的形状不匹配,我们将两个矩阵广播为一个更大的3*2矩阵,矩阵a将复制列,矩阵b将复制行,然后按元素相加。
a + b = [ 0 0 1 1 2 2 ] + [ 0 1 0 1 0 1 ] = [ 0 1 1 2 2 3 ] a+b= \begin{bmatrix} 0 & 0 \\ 1 & 1 \\ 2 &2 \end{bmatrix}+\begin{bmatrix} 0 & 1 \\ 0 & 1 \\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 0 & 1 \\ 1 & 2 \\ 2 & 3 \end{bmatrix} a+b= 012012 + 000111 = 012123
在这里插入图片描述

四、转换为其他Python对象

  torch张量和numpy数组可以互相转化.
在这里插入图片描述
  要将大小为1的张量转换为python标量,可以用item函数或者python的内置函数。
在这里插入图片描述


http://www.kler.cn/news/314233.html

相关文章:

  • 初识zookeeper
  • 计组(蒋)期末速成笔记1
  • 基于MATLAB的运动模糊图像处理
  • LVGL学习
  • ES6 -- 2015
  • 肺结节检测系统源码分享
  • CLion/Git版本控制
  • 使用Rust直接编译单个的Solidity合约
  • VCG 顶点区域生长
  • 成都睿明智科技有限公司电商服务引领品牌跃升
  • 群晖NAS使用Docker本地部署网页版Ubuntu系统并实现无公网IP远程访问
  • 人工智能之就业方向(The Employment Direction of Artificial Intelligence)
  • Python套接字
  • 淘宝扭蛋机小程序,扭蛋机文化下的新体验
  • Flutter 踩坑记录分享(持续更新)
  • mockito+junit搞定单元测试(2h)
  • 前端JavaScript导出excel,并用excel分析数据,使用SheetJS导出excel
  • C++ 笔试常用算法模板
  • 在 Qt 中使用 QLabel 设置 GIF 动态背景
  • 【后端开发】JavaEE初阶—线程的理解和编程实现
  • C#用SDK打开海康工业相机,callback取图Bitmap格式,并保存
  • 如何使用ssm实现基于Web的数字家庭网站设计与实现+vue
  • Netty+HTML5+Canvas 网络画画板实时在线画画
  • 嵌入式 开发技巧和经验分享
  • 电脑ip地址怎么换地区:操作步骤与利弊分析
  • Elasticsearch如何排序,分页以及高亮查询
  • Rust GUI框架 tauri V2 项目创建
  • 如何安装部署kafka
  • JAVA自助高效安全无人台球茶室棋牌室系统小程序源码
  • 篮球运动场景物体检测系统源码分享