首页 > 其他分享 >神经网络及其迁移学习

神经网络及其迁移学习

时间:2023-01-19 00:55:32浏览次数:52  
标签:误差 函数 模型 学习 神经网络 拟合 迁移

点头出品,必属精品!!!嘿嘿嘿( ̄y▽, ̄)╭

image

神经网络

一、线性模型

多元线性模型:$$y = w_1x_1+w_2x_2+...+w_nx_n+b$$
其中\(w\)是权重,表示当前权重对应变量\(x\)关于\(y\)的影响程度,\(b\)表示当前线性模型所代表的偏差,其参数\(w\)和\(b\)的求解可以使用最小二乘法,详细过程就不写了,电脑上是真的麻烦!

\[y = g^{-1}(\bm{w^Tx}+b) \]

他的扩展就是广义线性模型,也就是神经网络里在加权求和操作之后的激活函数,其作用是给线性模型引入非线性的关系,使其在神经网络里能够拟合非线性的函数。

二、BP神经网络

BP神经网络也叫做全连接神经网络,整个神经网络包含输入层,隐藏层以及输出层,其特点就是除了输出层和输入层以外的其他神经元的输入都与上一层所有神经元相连。

激活函数

常见的激活函数有\(sigmoid\)函数$$f(x) = \frac{1}{1+e^{-z}}$$,常被使用在二分类任务,缺点是没有分布在0的两侧且容易出现梯度消失现象。
\(tanh\)函数:$$tanh(x)=\frac{(ex-e)}{(ex+e)}$$,比sigmoid要好点,但还是容易发生梯度消失或梯度爆炸的问题。
最常用的是\(relu\)函数:$$f(x)=max(0,x)$$,优势在于该函数就像生物受刺激时的电位的变化一样,能够为神经网络引入非线性的因素,让其能够拟合任意复杂的非线性函数,并且在大于0的情况下导数不会消失,造成梯度消失或梯度爆炸的问题。

三、过拟合与欠拟合

过拟合的表现为往往为训练集上表现良好而验证集上表现较差,泛化能力弱,其本质是由于模型对于数据的拟合能力太强且数据量过少导致过度学习了数据中不重要的部分。
欠拟合表现为训练集和验证集表现都不好,往往是由于模型的拟合能力不够好且数据过大不足以挖掘数据更深的内在联系导致的。
过拟合与欠拟合主要与数据以及模型容量(模型的拟合能力)有关,模型容量即拟合函数的能力,高容量即拟合能力强,低容量即拟合能力弱。
image
上边是从模型容量以及数据的角度解释过拟合以及欠拟合现象。其实也可以用训练误差和泛化误差来解释,训练误差就像是偏差,泛化误差就像方差一样。image
由上图可以看出,过拟合导致泛化误差较大但训练误差较小,也就是泛化能力弱,但在训练集上的误差小,欠拟合是两种误差都很大。
重点在于如何处理过拟合和欠拟合这两种现象。
过拟合的处理方法:

  1. 正则化
  2. 降维
  3. 数据增强
  4. 集成方法

欠拟合的处理方法:

  1. 添加新特征(特征工程)
  2. 增加模型容量,即加强模型的拟合能力,这里可以从模型的复杂度以及参数量进行优化
  3. 减小正则项系数,降低正则化带来的影响

四、迁移学习

迁移学习能够将适用于大数据模型迁移到小数据上,也就是说在数据量较少时可以考虑白嫖别人的模型。这里考虑的就是该白嫖什么样的模型,怎么样白嫖。
image
主要分为这几类:

  1. 按照特征分类的迁移学习-具有共同特征,交叉特征,任务目标类型相似。
  2. 基于实例的迁移学习-感觉就是白嫖数据
  3. 基于关系的迁移学习-这是靠脑洞吧,感觉由相似的关联就可以迁移
    总结:以上无外乎就是白嫖数据,白嫖神经网络中的参数,网络结构,白嫖想法。

标签:误差,函数,模型,学习,神经网络,拟合,迁移
From: https://www.cnblogs.com/WangChe/p/17060959.html

相关文章

  • CSS3学习笔记
    CSS3学习笔记            CSS3选择器总结(表格)html标签有2种关系:包含关系和并列关系;CSS3选择器分类:基本选择器、组合选择器、属性选择器、伪类......
  • 扩欧学习笔记
    扩欧这玩意儿暑假就学了,但是一直仅限于背\(y=\cdots\),背完就忘,于是搞个学习笔记加深印象。解方程\(ax+by=\gcd(a,b)\)设\(ax_1+by_1=\gcd(a,b)\),\(bx_2+(a\modb)y_2=......
  • 2023.1.2~2023.1.18 学习总结
    这一段时间学的东西还是蛮多的,所以稍微总结一下左偏树左偏树是堆的一种,具有堆的性质,同时支持快速合并,所以也被称为可并堆。先来看一些定义:我们把一个左子树或右子树为......
  • SpringBoot源码学习3——SpringBoot启动流程
    系列文章目录和关于我一丶前言在《SpringBoot源码学习1——SpringBoot自动装配源码解析+Spring如何处理配置类的》中我们学习了SpringBoot自动装配如何实现的,在《Sprin......
  • JavaScript学习笔记—instanceof和hasOwn
    1.instanceof用来检查一个对象是否是一个类的实例检查的是对象的原型链上是否有该类实例(只要原型链上有该类实例,就会返回true)Object是所有对象的原型,所以任何对象和Ob......
  • 学习笔记——Tomcat中的结点(Server、Service、Connector、Container、Engine、Host、C
    2023-01-18一、Tomcat中的结点1、Server(服务器)Server代表整个Tomcat服务器,一个tomcat只有一个ServerServer中包含至少一个Service组件,用于提供具体服务。2、ServiceS......
  • LINUX学习之文件基本属性(二)
    查看文件属性Linux系统是一种典型的多用户系统,不同的用户处于不同的地位并拥有不同的权限。在Linux系统中,通常使用chown命令来修改文件或目录的所有者,chmod命令则用......
  • JavaScript学习笔记—原型对象
    1.访问一个对象的原型对象(1)对象.__proto__(2)Object.getPrototypeOf(对象)一般用第二种,第一种不安全2.原型对象中的数据(1)对象中的数据(属性、方法等)(2)constructor(对象......
  • 学习笔记——Spring声明式事务管理;Spring中支持事务管理;使用声明式事务管理;Spring声明
    2023-01-18一、Spring声明式事务管理1、事务四大特征(ACID)(1)原子性(2)一致性(3)隔离性(4)持久性2、事务三种行为(1)开启事务:connection.setAutoCommit(False)(2)提交事务:conne......
  • 「学习笔记」后缀自动机与广义后缀自动机
    本文仅为方便理解,没有具体证明过程,推荐理解主要原理后去阅读详细证明过程。后缀自动机是一个处理字符串子串相关问题的优秀的算法。引入首先来考虑这样一个问题:如何存......