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

深度学习系列--01.入门

一.深度学习概念

  深度学习(Deep Learning)是机器学习的分支,是指使用多层的神经网络进行机器学习的一种手法抖音百科。它学习样本数据的内在规律和表示层次,最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。以下是对深度学习概念的详细介绍:

  深度学习基于人工神经网络,其神经元之间的每个连接(突触)都可以传输信号,接收神经元可以处理信号后再发信号通知与之相连的下层神经元。神经元具有激活抑制两种状态,且神经元和突触之间存在权重,用来权衡信号的强度,权重会随着学习的进行而变化。通常,神经元是分层的,信号从第一层(输入)传播到最后一层(输出),同时信号也可以多次遍历某些层之后进行输出。通过不断地调整神经元之间的权重和偏置,使得模型能够最小化预测结果与真实结果之间的误差,这个过程通常使用反向传播算法来实现。

二.特点

  • 自动特征学习:深度学习能够自动从数据中学习特征,将特征学习融入模型建立的过程中,减少了人为设计特征所造成的不完备性。
  • 强大的表示能力:随着神经网络层数的增加,网络的非线性表征能力也越来越强,理论上可以将其映射到几乎任何函数,因此可以应对多种复杂问题。
  • 数据驱动:对数据的依赖性很高,数据量越大,其性能表现也越好,通过调整参数,还可以进一步提升其性能上限。
  • 适应性强:在各个领域都有广泛应用,并且具有较好的适应性。

三.常用模型

  • 卷积神经网络(CNN):主要用于图像视频处理,通过卷积层、池化层和全连接层等组件,自动提取图像的特征,如边缘、纹理、形状等。
  • 循环神经网络(RNN):适用于处理序列数据,如文本、语音等,能够捕捉序列中的长期依赖关系。
  • 生成对抗网络(GAN):由生成器和判别器组成,通过对抗训练的方式,使得生成器能够生成与真实数据相似的样本。
  • 深度强化学习(DRL):将深度学习与强化学习相结合,用于解决决策和控制问题,如机器人控制、游戏等。

四.结构示意

  • 输入层:接收外部输入数据,每个节点对应一个输入特征,将输入数据传递到下一层。比如在图像识别中,输入层的节点可以是图像的像素值。
  • 隐藏层:位于输入层和输出层之间,可包含一层或多层。隐藏层中的神经元对输入数据进行复杂的特征提取和变换,通过非线性激活函数来增加模型的表达能力。不同的隐藏层可以学习到不同层次的特征。
  • 输出层:根据隐藏层的输出进行最终的决策或预测,输出结果可以是分类标签的概率、数值预测等。例如在手写数字识别任务中,输出层会输出输入图像属于每个数字类别的概率。

 五.输入层详解

1. 节点(神经元)的构成与功能

  • 节点数量:输入层节点的数量取决于输入数据的特征数量。例如,在一个简单的房价预测模型中,如果我们使用房屋面积卧室数量房龄这三个特征来预测房价,那么输入层就会有 3 个节点,每个节点对应一个特征。又如,对于一个处理 MNIST 手写数字图像识别的神经网络,图像是 28×28 像素的灰度图,每个像素可以看作一个特征,所以输入层节点数量为 28×28 = 784 个。
  • 功能:每个节点并不执行复杂的计算,其主要功能是接收外部数据并将数据原封不动地传递到下一层(隐藏层)。它就像是数据的搬运工,将现实世界中的数据信息传递到神经网络这个 “智能工厂” 中进行加工处理。

2. 数据类型与格式

  • 数值型数据:这是最常见的输入数据类型。例如在预测销售额与广告投入关系的模型中,广告投入金额、历史销售额等都是数值型数据。这些数值可以是整数或浮点数,直接输入到对应的节点。
  • 分类数据:当输入数据是分类信息时,如商品的类别(服装、电子产品、食品等),通常需要进行编码处理才能输入到神经网络。常见的编码方式有独热编码(One - Hot Encoding)。以商品类别为例,如果有 3 种商品类别,那么 “服装” 可以编码为 [1, 0, 0],“电子产品” 编码为 [0, 1, 0],“食品” 编码为 [0, 0, 1],然后将这些编码后的向量输入到输入层节点。
  • 图像数据:图像数据通常以矩阵形式表示,其元素值代表像素的颜色强度等信息。如前面提到的 MNIST 手写数字图像,是一个二维矩阵,每个元素是 0 - 255 之间的整数,表示该像素的灰度值。对于彩色图像,一般是三维矩阵,额外的维度表示不同的颜色通道(如 RGB 图像的红、绿、蓝通道)。
  • 序列数据:像时间序列数据(如股票价格随时间的变化)或文本数据(由单词序列组成)。对于时间序列数据,每个时间点的观测值可以作为输入层的一个节点输入;对于文本数据,通常需要先将单词转换为向量表示(如词嵌入),然后再输入到输入层。

3. (输入特征)x

  • 含义:代表输入到神经网络的数据特征。在实际应用中,这些特征是对现实世界中事物或现象的一种量化描述.在图像识别任务里,可能是图像的像素值,每个像素点的亮度或颜色值就是一个特征。
  • 表示形式:通常以向量的形式表示。假设我们有个输入特征,那么输入向量可以写成                x=[x1,x2,x3....]

4. 偏置 (Bias)b

  • 含义:偏置是一个可学习的常数项,它为神经网络的计算引入了一个额外的自由度。直观上,偏置可以理解为在神经网络的计算过程中添加的一个 “基础值”,帮助模型更好地拟合数据。以简单的线性回归模型为例(这里是权重,是自变量,是因变量),就是当时的取值,它允许模型在不依赖输入特征的情况下,调整输出的基准水平。在神经网络中,偏置的作用类似,它让神经元能够对输入特征之外的因素做出响应,从而使模型能够学习到更复杂的模式。
  • 作用
    • 增加模型灵活性:在神经网络中,每个神经元都计算输入信号的加权和,并通过激活函数输出。如果没有偏置,当所有输入特征都为 0 时,神经元的输出将仅取决于权重与输入的乘积之和,结果也为 0(假设初始权重也为 0)。然而,现实中的数据分布往往非常复杂,可能存在一些固有偏移或与输入特征无关的因素影响最终输出。偏置的引入使得即使输入特征为 0,神经元也能有非零输出,从而增加了模型的表达能力和灵活性,使模型能够更好地拟合各种复杂的数据分布。
    • 协助模型收敛:在训练神经网络时,偏置可以帮助模型更快地收敛到最优解。通过调整偏置值,模型可以更有效地探索参数空间,避免陷入局部最优解。例如,在训练一个图像分类模型时,偏置能够帮助模型更快地适应不同图像数据集的特性,提高训练效率和分类准确率。

 表示形式:在神经网络中,每个神经元都有自己的偏置。对于输入层到隐藏层的连接,假设隐藏层有个神经元,那么就会有个偏置值,分别记为b1,b2,b3...。这些偏置值与输入特征相结合,共同参与神经网络的前向传播计算。例如,对于隐藏层的第个神经元,其输入的计算为:,其中是输入层第个节点到隐藏层第个节点的权重

相关文章:

深度学习系列--01.入门

一.深度学习概念 深度学习(Deep Learning)是机器学习的分支,是指使用多层的神经网络进行机器学习的一种手法抖音百科。它学习样本数据的内在规律和表示层次,最终目标是让机器能够像人一样具有分析学习能力,能够识别文字…...

【Elasticsearch】`auto_date_histogram`聚合功能详解

1.功能概述 auto_date_histogram是 Elasticsearch 提供的一种时间分桶聚合功能,它可以根据数据分布自动调整分桶的间隔,以生成指定数量的分桶。与传统的date_histogram不同,auto_date_histogram不需要用户手动指定时间间隔,而是根…...

php7.3安装php7.3-gmp扩展踩坑总结

环境: 容器里面为php7.3.3版本 服务器也为php7.3.3-14版本,但是因为业务量太大需要在服务器里面跑脚本 容器里面为 alpine 系统,安装各种扩展 服务器里面开发服为 ubuntu 16.04.7 LTS (Xenial Xerus) 系统 服务器线上为 ubuntu 20.04.6 LTS (…...

7. k8s二进制集群之Kube ApiServer部署

创建kube工作目录(仅在主节点上创建即可)同样在我们的部署主机上创建apiserver证书请求文件根据证书文件生成apiserver证书仅接着创建TLS所需要的TOKEN创建apiserver服务的配置文件(仅在主节点上创建即可)创建apiserver服务管理配置文件对所有master节点分发证书 & TOK…...

QT笔记——多语言翻译

文章目录 1、概要2、多语言切换2.1、结果展示2.2、创建项目2.2、绘制UI2.2、生成“.st”文件2.4、生成“.qm”文件2.5、工程demo 1、概要 借助QT自带的翻译功能,实现实际应用用进行 “多语言切换” 2、多语言切换 2.1、结果展示 多语言切换 2.2、创建项目 1、文件…...

【2025】camunda API接口介绍以及REST接口使用(3)

前言 在前面的两篇文章我们介绍了Camunda的web端和camunda-modeler的使用。这篇文章主要介绍camunda结合springboot进行使用,以及相关api介绍。 该专栏主要为介绍camunda的学习和使用 🍅【2024】Camunda常用功能基本详细介绍和使用-下(1&…...

js面试some和every的区别

1.基础使用 some和every 都是数组的一个方法let num [1,2,3,4,5,6] let flag1 num.some((item,index,array)> item > 2)let flag2 num.every((item,index, array)> item > 2)1.some 遍历判断中是符合条件的值 一旦找到则不会继续迭代下去 直接返回 2.every 遍历…...

Vue 中如何嵌入可浮动的第三方网页窗口(附Demo)

目录 前言1. 思路Demo2. 实战Demo 前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 1. 思路Demo 以下Demo提供思路参考,需要结合实际自身应用代码 下述URL的链接使用百度替代! 方式 1…...

【大数据技术】词频统计样例(hadoop+mapreduce+yarn)

词频统计(hadoop+mapreduce+yarn) 搭建完全分布式高可用大数据集群(VMware+CentOS+FinalShell) 搭建完全分布式高可用大数据集群(Hadoop+MapReduce+Yarn) 在阅读本文前,请确保已经阅读过以上两篇文章,成功搭建了Hadoop+MapReduce+Yarn的大数据集群环境。 写在前面 Wo…...

java进阶知识点

java回收机制 浅谈java中的反射 依赖注入的简单理解 通过接口的引用和构造方法的表达,将一些事情整好了反过来传给需要用到的地方~ 这样做得好处:做到了单一职责,并且提高了复用性,解耦了之后,任你如何实现&#xf…...

深度学习系列--02.损失函数

一.定义 损失函数(Loss Function)是机器学习和深度学习中用于衡量模型预测结果与真实标签之间差异的函数,它在模型训练和评估过程中起着至关重要的作用 二.作用 1.指导模型训练 提供优化方向:在训练模型时,我们的目…...

构建一个数据分析Agent:提升分析效率的实践

在上一篇文章中,我们讨论了如何构建一个智能客服Agent。今天,我想分享另一个实际项目:如何构建一个数据分析Agent。这个项目源于我们一个金融客户的真实需求 - 提升数据分析效率,加快决策速度。 从分析师的痛点说起 记得和分析师团队交流时的场景: 小张&#xff…...

在K8S中,如何把某个worker节点设置为不可调度?

在Kubernetes中,如果你想要把一个worker节点设置为不可调度,意味着你不想让Kubernetes调度器在这个节点上调度新的Pod。这通常用于维护或升级节点,或者当节点遇到硬件故障或性能问题时,要将某个worker节点设置为不可调度。 方法1…...

硬件电路基础

目录 1. 电学基础 1.1 原子 1.2 电压 1.3 电流 1.电流方向: 正极->负极,正电荷定向移动方向为电流方向,与电子定向移动方向相反。 2.电荷(这里表示负电荷)运动方向: 与电流方向相反 1.4 测电压的时候 2. 地线…...

5 前端系统开发:Vue2、Vue3框架(上):Vue入门式开发和Ajax技术

文章目录 前言一、Vue框架(简化DOM操作的一个前端框架):基础入门1 Vue基本概念2 快速入门:创建Vue实例,初始化渲染(1)创建一个入门Vue实例(2)插值表达式:{{表…...

阿里 Java 岗个人面经分享(技术三面 + 技术 HR 面):Java 基础 +Spring+JVM+ 并发编程 + 算法 + 缓存

技术一面 20 分钟 1、自我介绍 说了很多遍了,很流畅捡重点介绍完。 2、问我数据结构算法好不好 挺好的(其实心还是有点虚,不过最近刷了很多题也只能壮着胆子充胖子了) 3、找到单链表的三等分点,如果单链表是有环的…...

vue2-给data动态添加属性

vue2-给data动态添加属性 1. 问题的来源 在VUe2中(VUE3中使用了proxy,及时动态添加也能实现响应式),如果我们动态给data添加一个属性,会发现视图没有同步更新举个例子我们通过v-for遍历data中的一个属性list&#xf…...

Linux 文件和目录

Linux 文件和目录 文章目录 Linux 文件和目录Linux 目录Linux 目录配置的依据 --FHS目录树文件属性文件的分类一般权限 UGO特殊权限 suid\sgid\sticky隐藏属性 ATTR文件访问控制列表 ACL文件相关的命令权限的修改 chmod chown chgrp umaskchmodchgrpumask相关文档 /etc/profile…...

【大数据技术】本机DataGrip远程连接虚拟机MySQL/Hive

本机DataGrip远程连接虚拟机MySQL/Hive datagrip-2024.3.4VMware Workstation Pro 16CentOS-Stream-10-latest-x86_64-dvd1.iso写在前面 本文主要介绍如何使用本机的DataGrip连接虚拟机的MySQL数据库和Hive数据库,提高编程效率。 安装DataGrip 请按照以下步骤安装DataGrip软…...

Leetcode 3440. Reschedule Meetings for Maximum Free Time II

Leetcode 3440. Reschedule Meetings for Maximum Free Time II 1. 解题思路2. 代码实现 题目链接:3440. Reschedule Meetings for Maximum Free Time II 1. 解题思路 这一题某种意义上来说甚至是上一题Leetcode 3439的简化版本(关于这一题的解答可以…...

python打卡day49

知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...

uniapp中使用aixos 报错

问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

k8s从入门到放弃之HPA控制器

k8s从入门到放弃之HPA控制器 Kubernetes中的Horizontal Pod Autoscaler (HPA)控制器是一种用于自动扩展部署、副本集或复制控制器中Pod数量的机制。它可以根据观察到的CPU利用率(或其他自定义指标)来调整这些对象的规模,从而帮助应用程序在负…...

2025 后端自学UNIAPP【项目实战:旅游项目】7、景点详情页面【完结】

1、获取景点详情的请求【my_api.js】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http(/login/getWXSessionKey, {code,avatar}); };//…...

iOS 项目怎么构建稳定性保障机制?一次系统性防错经验分享(含 KeyMob 工具应用)

崩溃、内存飙升、后台任务未释放、页面卡顿、日志丢失——稳定性问题,不一定会立刻崩,但一旦积累,就是“上线后救不回来的代价”。 稳定性保障不是某个工具的功能,而是一套贯穿开发、测试、上线全流程的“观测分析防范”机制。 …...

前端打包工具简单介绍

前端打包工具简单介绍 一、Webpack 架构与插件机制 1. Webpack 架构核心组成 Entry(入口) 指定应用的起点文件,比如 src/index.js。 Module(模块) Webpack 把项目当作模块图,模块可以是 JS、CSS、图片等…...