【PyTorch】深度学习实践 01 Overview

news2025/1/12 1:05:36

人工智能概述

课程前置知识

  • 线性代数 + 概率论 (不要有路径依赖,遇到不会的就现学)
  • Python基础

人工智能

问题分类

人工智能,实际上就是利用计算机来代替人脑进行智能工作,计算机所要实现的智能可以分为两大部分,分别是推理预测

推理类

根据已有的信息来进行推理并做出决策的过程。

比如通过外界信息来判断自己要吃什么:

e4f62a63fe9e4283bf1fbd427c937c2b.png

人脑 - 中午吃什么

94a51d96033e4236935989e62f7bc402.png

机器学习 - 中午吃什么

预测类

根据具体的实体,将实体与抽象概念结合起来。

比如通过认识猫这一动物实体,来与汉字“猫”建立联系,本质是一个预测的过程,赋予真实存在的事物一个不真实存在的抽象的符号:

5429af8ab8b14b17b07fd7850a494553.png

人 - 识别猫

 

5a3ab838aa4747c0b345efbea2702650.png

机器学习 - 识别猫

 算法分类

机器学习主要分为监督学习和非监督学习,监督学习相当于考前给模拟卷和答案,看完之后再考试,而非监督学习就是给模拟卷但是不给答案,看完之后就考试。

在学习的过程中,需要用到机器学习算法,这里的算法属于智能算法,而不是我们算法课学的那些传统算法。

传统算法与智能算法

传统算法:比如穷举法(暴力法)、分治法、动态规划(dp)和贪心,我们基于这些思想,可以利用数据结构来人工地设计算法。

智能算法:是基于数据集生成的算法,而非人工设计,主要和统计相关。

人工智能领域细分

人工智能包括传统的知识库和新兴的机器学习,而深度学习实际上是基于机器学习中的神经网路而衍生出的一种手段,是机器学习的一个分支。

3fda898e28f14f6e8a996318ca021a11.png

AI(知识库)-> 机器学习(逻辑回归)-> 表示学习(自动编码器) -> 深度学习(多层感知机等神经网络)

 学习系统的发展

基于规则的系统

将数据输入人工设计的程序中,从而得到满足目的的输出。

20941eef9b2f40139f9177c1db66d0ef.png

eg:基于根据导函数求解原函数的法则,设计求解原函数的程序,其中用到积分规则来建立知识库,并非真正的智能。

经典机器学习算法

在输入以后进行人工的特征提取,并对所提取的特征进行适配,以此来得到相应的输出。即先将具体信息变成张量,再实现对张量的映射来得到输出。

f9e299962d6e477b8d05dc4d643fadf8.png

表示学习方法

维度诅咒

在整个input里面,对特征的需求越多,则对整个样本数量的需求就越大,造成参数空间搜索组合爆炸。

说明

依据大数定律,采样越多,与数据真实情况越接近。假定对于每个feature需要采集十个样本才能保证与真实情况足够得接近。

对于一组数据,如果只有一个feature,需要10个采样点。有两个feature ,则需要102个采样点,有n个feature,则需要10n个采样点。从而引起对原始数据量的过度需求,即维度诅咒。

解决方法

进行一个线性或者非线性的映射,来让原始维度降低。经过降维后的特征有可能会丢失关键信息,因此综合上述问题需要进行表示学习的过程,即在降维的同时而又保持住高维空间的度量信息,也就是使用更少的更有代表性的参数。

第一代

在提取特征时,利用特殊的算法进行,也就是自动提取特征,而非人工提取。

提取特征的部分,以及最终学习的部分(深色框)需要分开训练。先提取特征,再学习算法。

00333410cad54a3883ec50212c0d7320.png

第二代(深度学习)

利用原始特征来进行特征提取,在原始特征的基础上,再进行提取,所有训练过程是统一的。

将特征提取和特征函数训练两个过程结合起来,也称之为End2End(端到端)。

9a4b182661f246348cddccccacc0794a.png

传统机器学习策略

afa3da3701104eaa871ebda150ed45bd.png

神经网络基础

基本原理

模仿神经元细胞来进行的设计,在整体结构上,模仿神经进行分层设计,属于仿生学的算法。

人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。

神经网络是通过对人脑的基本单元——神经元的建模和联接,探索模拟人脑神经系统功能的模型,并研制一种具有学习、联想、记忆和模式识别等智能信息处理功能的人工系统。神经网络的一个重要特性是它能够从环境中学习,并把学习的结果分布存储于网络的突触连接中。神经网络的学习是一个过程,在其所处环境的激励下,相继给网络输入一些样本模式,并按照一定的规则(学习算法)调整网络各层的权值矩阵,待网络各层权值都收敛到一定值,学习过程结束。然后我们就可以用生成的神经网络来对真实数据做分类。

d1b6df52026346278c6886b3c587465d.png

正向传播和反向传播

正向传播本质上是按照输入层到输出层的顺序,求解并保存网络中的中间变量本身。

反向传播本质上是按照输出层到输入层的顺序,求解并保存网络中的中间变量以及其他参数的导数(梯度)。

两者核心都是计算图

下图中,左图每一步是需要正向传播过程计算的中间量及结果,右图是需要进行反向传播过程进行计算的导数。

deee843ec69a4639a76e90bc3f6b46dd.png

正向传播

上图中的实际计算过程为:

e=(a+b)∗(b+1)e=(a+b)*(b+1) e=(a+b)∗(b+1)

每一步都只能进行原子计算,每个原子计算构成一个圈,继而形成整个计算图。

在计算图中,先进行正向计算c=a+bc=a+bc=a+b, d=b+1d=b+1d=b+1,再进行e=c∗de=c*de=c∗d,求解得到ee的值以后即完成了正向计算的过程。

反向传播

4402a9de240f4b6f9528bcef93ac5046.png

小结

需要学会已经发展健全的基本神经网络的结构,进行针对问题的重新组装与搭建。

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

腾讯待办是不是停了?能准时提醒待办事项的APP

有不少网友会使用“腾讯待办”小程序来记录待办的事情,并且设置提醒时间,进行任务管理。不过有不少网友最近在使用腾讯待办小程序的时候,看到了“业务关停通知”的弹窗,想问一下,腾讯待办是不是停了?确实如…

JS多选答题时,选项互斥时的情况

在做答题类的项目时,应该会比较常见多选题选相互斥的问题,例如: 你喜欢什么颜色?()A、红色B、紫色C、蓝色D、灰色E、均无如该题,当选择选项E时,明显与其他选项互斥。这个时候经常会…

《作为一名编程新手,如何提升编程能力》

互联网行业是一个充满挑战且内卷比较严重的行业,程序员如何让自己在行业内一直保持竞争力,其实就是需要通过不断的学习提升自己,那么对于一个刚刚入门的新手,如何快速的提升自己呢?本文就和大家交流下入门级程序员想要…

Vue中linq的应用及语句示例

一、运行npm install linq 二、引入linq(在你需要用到的组件中引入) var Enumerable require(linq); linq并不需要在main.js中import和Vue.use(linq) 三、linq的具体应用 (1)linq.js 的方法解析说明(但是在不同的…

【Python】机器学习-K-近邻(KNN)算法【文末送书】

目录 一 . K-近邻算法(KNN)概述 二、KNN算法实现 三、 MATLAB实现 四、 实战 一 . K-近邻算法(KNN)概述 K-近邻算法(KNN)是一种基本的分类算法,它通过计算数据点之间的距离来进行分类。在…

RDD算子操作(基本算子和常见算子)

目录 一、基本算子 1.map算子 2.flatMap算子 3.filter算子 4.foreach算子 5.saveAsTextFile算子 6.redueceByKey算子 二、常用Transformation算子 1.mapValues算子 2.groupBy算子 3.distinct算子 4.union算子 5.join算子 6.intersection算子 7.glom算子 8.groupByKey算…

阿里巴巴中国站item_search_img按图搜索1688商品(拍立淘) API 返回值说明

1. 商品API:提供了搜索、详情、评价等与商品相关的接口,可以通过关键词搜索商品,获取商品详情、销量等信息。 2. 店铺API:提供了店铺信息、店铺内商品等接口,可以查询店铺的基本信息、主营类目、评分等,还可…

常用封装工具类

文章目录 前言一、保留指定小数位二、获取bean三、假分页计算四、星期计算五、经纬度计算距离 前言 一、保留指定小数位 import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal;public class OffSetPointUtil {/*** 保留指定小数位数** param value 原始…

【AI视野·今日Sound 声学论文速览 第二十八期】Wed, 18 Oct 2023

AI视野今日CS.Sound 声学论文速览 Wed, 18 Oct 2023 Totally 12 papers 👉上期速览✈更多精彩请移步主页 Daily Sound Papers Robust Wake-Up Word Detection by Two-stage Multi-resolution Ensembles Authors Fernando L pez, Jordi Luque, Carlos Segura, Pablo…

当数据库遇上深度学习:AI DataLoader 助力因子管理模型训练全流程

深度学习模型有能力自动发现变量之间的关系,而这些关系通常是不可见的,这使得深度学习可以挖掘新的因子和规律,为量化投资策略提供更多可能性。在传统的量化策略开发流程中,通常会使用 Python 或第三方工具生成因子,并…

什么是电源高压测试标准?如何测试?测试时要注意什么?

电源高压测试也叫电源耐压测试,是为了检测电源产品绝缘结构是否能够承受电力系统的内部过电压,进而防止安全事故的发生。不同技术规格的产品,高压测试的标准也不同。对于一般设备来说,以两倍于被测物的工作电压再加1000V作为测试的…

访问控制1

文章目录 主要内容一.ServiceAccount1.示例:在一个名为acctests的namespace中,创建一个名为udbs的serviceAccount代码如下(示例): 2.解释 二.Role和ClusterRole1.在名为test的namespace中创建一个名为test-role的角色,以及创建一个…

vue3+ts父子组件以及单页面刷新的方法

父子组件刷新页面: 父组件定义函数reset,子组件props接收 示例一: 父组件 //ts删减部分: import { deleteCompanyById, findAllCompanys } from /api/company import { usePureFetch } from /nexus/useFetch import type Compa…

2023 | 组蛋白乳酸化如何影响免疫、自噬最新发现!

乳 酸 乳酸是人体循环系统最丰富的代谢产物之一。乳酸由糖酵解的终产物丙酮酸盐通过乳酸脱氢酶(LDH)产生。有氧条件下,丙酮酸盐可以穿梭进入线粒体,以促进生物合成途径和ATP产生。当氧气不足时,丙酮酸转化为乳酸&…

asp.net文档管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net文档管理系统是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言开发 asp.net文档管理系统 二、功能介绍 (1…

如何系列 如何玩转远程调用之OpenFegin+SpringBoot(非Cloud)

文章目录 简介原生Fegin示例基础契约日志重试编码器/解码器自定义解码器 请求拦截器响应拦截器表单文件上传支持错误解码器断路器指标metrics客户端 配合SpringBoot(阶段一)配合SpringBoot(阶段二)1.EnableLakerFeignClients2.Lak…

spring cloud Eureka集群模式搭建(IDEA中运行)《一》

spring cloud Eureka集群模式搭建(IDEA中运行) 新建springboot 工程工程整体目录配置文件IDEA中部署以jar包形式启动总结 新建springboot 工程 新建一个springboot 工程,命名为:eureka_server。 其中pom.xml文件为: …

Mask Free VIS笔记(CVPR2023 不需要mask标注的实例分割)

paper: Mask-Free Video Instance Segmentation github 一般模型学instance segmentation都是要有mask标注的, 不过mask标注既耗时又枯燥,所以paper中仅用目标框的标注来实现实例分割。 主要针对视频的实例分割。 之前也有box-supervised实例分割&…

去除QPushButton边框上的白点

使用border:3px solid #35FFFAF0; 出现上面一行border上白点。 使用border:3px solid rgb(89,87,84); 没有白点。

1.java环境搭建与eclipse安装和配置

JDK(JAVA开发工具包):提供给java开发人员使用的,其中包含了java的开发工具,也包括了JRE所以安装了JDK,就不用单独安装JTE了,其中的开发工具:编译工具(javac.exe) 打包工具(jar.exe)等JRE(JAVA运…