神经网络改进:注重空间变化,权重参数调整,正则化, 熵的简单理解

news2024/11/24 5:27:25

目录

神经网络改进:注重空间变化

将高纬空间映射到地位空间便于表示(供给数据)

将地位空间映射到高纬空间进行分类聚合(达到可分状态(K-means))

神经网络改进:权重参数调整

自注意力机制(数据间关联性)

多注意力机制(加权)

正则化

正则化为什么可以防止过拟合

 卷积网络和循环神经网络让我们对神经元展开结构继续改造的能力

 transform 让我们对微观结构进行改造

 自注意力机制计算序列之间关联权重

多头注意力机制捕获不同维度的特征信息

神经网络通过低纬度空间实现了对高纬复杂流行空间结构的一种编程能力

 熵的简单理解:不确定性的度量

对数的应用:


神经网络改进:注重空间变化

将高纬空间映射到地位空间便于表示(供给数据)

将地位空间映射到高纬空间进行分类聚合(达到可分状态(K-means))

神经网络改进:权重参数调整

自注意力机制(数据间关联性)

多注意力机制(加权)

正则化

是一种常用的模型训练方法,它的作用是限制模型的复杂度,以防止过拟合。具体来说,正则化会通过向损失函数中加入一个惩罚项来限制模型的复杂度,其中惩罚项中的参数称为正则化系数。正则化的类型有很多,常见的有 L1 正则化和 L2 正则化。

过拟合是模型处于预测结果偏差小而方差大的状态。处于过拟合状态的模型过于细致地记住了训练集的特点,导致对训练集中的噪声敏感,因此泛化能力差,在验证集或测试集效果差。

造成过拟合的原因有几种:(1) 训练数据不足,(2) 训练数据噪音大,(3) 模型过于复杂

了解了过拟合的原因之后,就可以对症下药,对不同的原因采用不同的方法。

  1. 对于训练数据不足则通过数据增广的方式来增加训练数据;
  2. 对于训练数据噪音大,则可以在训练前对数据进行一些清洗工作;
  3. 对于模型过于复杂,有很多种方法,比如模型剪枝、正则化、dropout等,本文主要讨论正则化,其它方法后续有时间将会陆续讨论。

我们用训练集上的loss来表示当前模型 f^ 和真实映射 f 的差异,loss是模型预测的 y^ 与真实的 y 的差异,即式子(1),其中 W 为当前模型 f^ 的参数, N 为训练集中样本数量。模型训练的过程就是损失最小的过程。

 

上述loss只考虑了基于训练集的经验风险(表示为 Loss0(W) ),当模型训练使损失最小时,容易造成在训练集上的过拟合。为了缓解过拟合问题,在损失函数中加入描述模型复杂度的正则项 J(W) ,如式子(2),其中 λ 用于控制正则化强度,以权衡经验风险和模型复杂度。正则项的加入,使得损失函数从经验风险转化为结构风险。

 

总结来说,正则化是通过在损失中引入描述模型复杂度的正则项,把经验风险最小化转化为结构风险最小化,从而防止模型过拟合。

正则化为什么可以防止过拟合

在连续性的世界里,微小变化导致结果变化也是微小的,大变化导致结果变化也大。而当模型过拟合时,微小的输入变化会导致大的输出差异。

造成该现象的原因是过拟合的模型对训练集的数据拟合得很“完美”,对每一个数据都能准确地预测出结果,如图1(c)所示。而训练集中的数据情况复杂,噪声无法避免和异常值,于是就存在一些输入变化小而结果差异大的数据,过拟合的模型对这些数据也能准确输出,于是导致上述现象。

过拟合的模型既要满足连续性角度的输入变化大结果变化大这一规律,也要顾忌训练集中所有的数据,即输入变化小结果变化大的情况,在输入变化有大有小的情况下都要保证输出变化大,只能通过大的参数来实现。

正则化通过在损失项中加入对模型复杂度的描述,从而对模型参数增加了限制,因此增加了模型对每个数据都准确得到结果的难度,从而防止过拟合。

 如何防止过拟合(1)-正则化 - 知乎

 

 

 

 

 

 

 

 

 

 

 卷积网络和循环神经网络让我们对神经元展开结构继续改造的能力

 transform 让我们对微观结构进行改造

 自注意力机制计算序列之间关联权重

多头注意力机制捕获不同维度的特征信息

 

神经网络通过低纬度空间实现了对高纬复杂流行空间结构的一种编程能力

 熵的简单理解:不确定性的度量

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

对数的应用:

应用一:二进制编码

一位二进制数,可以表示2个数字,0或1。

二位二进制数,可以表示4个数字,即00,01,10,11。 十进制下为0,1,2,3

三位二进制数,可以表示8个数字,即000,001,010,011,100,101,110,111。十进制下为0,1,2,3,4,5,6,7

我们可以看到规律:

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

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

相关文章

docker搭建es+kibana

docker搭建eskibana 0 安装docker 如果是mac或者windows,可以直接安装Docker Desktop更加便捷。 前提条件: Docker可以运行在Windows、Mac、CentOS、Ubuntu等操作系统上 Docker支持以下的CentOS版本: CentOS 7 (64-bit)CentOS 6.5 (64-bit…

Viewpager2+Fragment+指示器

Viewpager2Fragment指示器 效果展示: MainActivity.java package com.huawei.myviewpager;import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.Fragment; import androidx.viewpager2.widget.ViewPager2;import android.os.Bundle; …

Java之接口

作者简介: zoro-1,目前大一,正在学习Java,数据结构等 作者主页: zoro-1的主页 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 Java之接口 接口的概念语法规则接口特性接口使用案…

初出茅庐的小李博客之STM32CubeMx驱动WS2812B实现幻彩(超详)

STM32CubeMx驱动WS2812B实现幻彩(超详) 1.创建基于STM32F03C8T6工程 1.1配置时钟 选择外部高速时钟源HSE 1.2配置系统时钟树使其达到最大时钟72MHz(最大系统时钟) 由时钟树可以知道APB1上定时器时钟频率是72MHz,实验使用的硬件…

人脸老化预测(Python)

本次项目的文件 main.py主程序如下 导入必要的库和模块: 导入 TensorFlow 库以及自定义的 FaceAging 模块。导入操作系统库和参数解析库。 定义 str2bool 函数: 自定义函数用于将字符串转换为布尔值。 创建命令行参数解析器: 使用 argparse.A…

linux驱动学习3-外部中断

在做中断试验时,发现中断驱动总是insmod失败,之后定位到 gpio_request 失败,之后是想到使用的野火做好的系统,在uEnv.txt中会加载大量设备树插件,将key相关的设备树插件屏蔽即可。 linux中断API函数 中断号 每个中断…

【管理运筹学】第 5 章 | 整数规划 (3,隐枚举法计算步骤)

文章目录 引言四、0-1 整数规划4.2 0-1 整数规划的解法4.2.1 0-1 规划模型标准型4.2.2 隐枚举法计算步骤 写在最后 引言 经过前文,了解以及体会到 0-1 变量的特性后,我们来研究该如何去求解这类特殊的 0-1 整数规划模型。 四、0-1 整数规划 4.2 0-1 整…

【Maven教程】(二)安装配置篇:手把手教你安装及配置Maven环境~

Maven安装配置篇 1️⃣ 在 Windows 上安装 Maven1.1 下载及安装 Maven1.2 升级 Maven 2️⃣ 在基于UNIX 的系统上安装 Maven2.1 下载和安装2.2 升级 Maven2.3 安装目录分析2.4 设置 HTTP 代理 3️⃣ 在 IDE中安装Maven插件 1️⃣ 在 Windows 上安装 Maven 在安装 Maven 之前&a…

【面试专题】Java核心基础篇②

📃个人主页:个人主页 🔥系列专栏:Java面试专题 目录 1.接口和抽象类有什么区别? 2.两个对象的 hashCode() 相同,则 equals()也一定为 true,对吗? 3.说一说hashCode()和equals()的…

一般文章让你了解mybatis,以及如今在Java开发的地位!

一.了解mybatis! A.什么是mybatis? MyBatis是一个开源的持久层框架,它简化了在Java应用程序中使用关系型数据库的开发工作。MyBatis提供了将SQL语句和Java代码进行解耦的能力,使得应用程序可以通过简单的配置来访问数据库&#x…

【AI视频教程】只需5步,AI作出鸡你太美视频

1.视频效果 黄昏见证虔诚的信徒 2.准备工作 制作视频效果,需要准备下面3个条件: 准备stable diffusion的环境剪辑一段【鸡你太美】原版视频stable diffusion安装sd-webui-IS-NET-pro插件 2.1部署stable diffusion环境 部署步骤参考制作ikun图片的文章…

软件开发中常用数据结构介绍:C语言队列

工作之余来写写C语言相关知识,以免忘记。今天就来聊聊C语言实现循环队列,我是分享人M哥,目前从事车载控制器的软件开发及测试工作。 学习过程中如有任何疑问,可底下评论! 如果觉得文章内容在工作学习中有帮助到你&…

基于springboot+vue的考研资讯平台(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

Python中Setup.py的作用是什么

Python中Setup.py的作用是什么 今天就跟大家聊聊有关Python中Setup.py的作用是什么,可能很多人都不太了解,为了让大家更加了解. 1. 为什么需要对项目分发打包? 平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单&#…

高项4.项目管理核心技术.

第一部分 项目管理概论 价值驱动的项目管理知识体系: 十二项原则;生命周期四个阶段;五个过程组;十大PM知识领域;八大绩效域;外加价值交付系统; 自1987 年以来, PMBOK 一直是基于过程的项目管理标准的重要代表,项目管理从业者一 直坚持基于过程的项目管理方法。随着…

用python从零开始做一个最简单的小说爬虫带GUI界面(1/3)

目录 前言 三节博客内容概要 PyQt5的配置 设置软件的快捷启动方式 1. 用于设计界面的程序 2. 将Qt Designer设计出来的ui文件转化为py文件 3. 可以把py文件打包成可执行的exe文件 4. 将ico图片放在qrc文件中,再将qrc文件转换成py…

Axios跨域请求处理

问题背景: vue 项目用 axios 进行请求的时候,总是报“Access to XMLHttpRequest at ‘http://localhost:8889/api/login’ from origin ‘http://localhost:8080……’”的错误 实际上就是前后端分离的情况下,发生了跨域的问题 跨域定义&…

AWS SDK 3.x for .NET Framework 4.0 可行性测试

前言 为了应对日益增长的网络安全挑战, 越来越多的互联网厂商已经陆续开始或者已经彻底停止了对 SSL 3 / TLS 1.0 / TLS1.1 等上古加密算法的支持. 而对于一些同样拥有悠久历史的和 AWS 服务相关联的应用程序, 是否可以通过仅更新 SDK 版本的方式来适应新的环境. 本文将以 Win…

PyTorch模型性能分析与优化

动动发财的小手,点个赞吧! 训练深度学习模型,尤其是大型模型,可能是一项昂贵的支出。我们可以使用的管理这些成本的主要方法之一是性能优化。性能优化是一个迭代过程,我们不断寻找提高应用程序性能的机会,然…

基于Java+SpringBoot+vue前后端分离在线动漫信息系统设计实现

基于JavaSpringBootvue前后端分离在线动漫信息系统设计实现(程序源码毕业论文) 大家好,今天给大家介绍基于JavaSpringBootvue前后端分离在线动漫信息系统设计与实现,本论文只截取部分文章重点,文章末尾附有本毕业设计完…