先验知识融入深度学习

模型加入先验知识的必要性

端到端深度神经网络是个黑盒子,虽然能够自动学习到一些可区分度好的特征,但是往往会拟合到一些非重要特征,导致模型会局部坍塌到一些不好的特征上面。常常一些人们想让模型去学习的特征模型反而没有学习到。

为了解决这个问题,给模型加入人为设计的先验信息会让模型学习到一些关键的特征。下面就从几个方面来谈谈如何给模型加入先验信息。在深度学习中,知识嵌入是将领域知识(如物理定律、工程经验、先验约束)引入神经网络,以提升模型的准确性、鲁棒性并减少对大规模数据的依赖。

简单地直接应用机器学习很难获得理想的效果。嵌入领域知识可以为模型提供更丰富的信息,是提高模型性能的一种实用有效的方法

研究人员们尝试在机器学习建模过程中嵌入领域知识,具体包含三个阶段:数据预处理、模型结构设计和惩罚与奖励设计。

1)基于pretrain模型给模型加入先验

给模型加入先验,大家最容易想到的是把网络的weight替换成一个在另外一个任务上pretrain好的模型weight。经过的预训练的模型(如ImageNet预训练)往往已经具备的识别到一些基本的图片pattern的能力,如边缘,纹理,颜色等等,而识别这些信息的能力是识别一副图片的基础。如下图所示:

2)基于输入给模型加入先验

假设:你有这样的一个先验:

你觉得鸮鹦鹉的头是一个区别其他它和鸟类的重要部分,也就是说相比于身体,它的头部更能区分它和其他鸟类。

这时怎么让网络更加关注鸮鹦鹉的头部呢。这时你可以这样做,把整个鸮鹦鹉和它的头部作为一个网络的两路输入,在网咯的后端再把两路输入的信息融合。以达到既关注局域,又关注整体的目的。一个简单的示意图如下所示。

3)基于模型重现给模型加入先验

4)例子:《融合睡眠结构与个体先验的OSA严重程度估计》--------------------------------------------------------------------------------------论文

相关推荐
沃恩智慧2 小时前
不确定性量化难题破解!贝叶斯+LSTM,革新时序预测!
人工智能·机器学习·lstm
whaosoft-1432 小时前
51c视觉~合集56
人工智能
A林玖2 小时前
【深度学习】目标检测
人工智能·深度学习·目标检测
代码洲学长2 小时前
一、RNN基本概念与数学原理
人工智能·rnn·深度学习
A林玖2 小时前
【深度学习】 循环神经网络
人工智能·rnn·深度学习
普蓝机器人2 小时前
融合SLAM导航与视觉感知的智能果蔬采摘机器人科研平台
人工智能·机器人
趁你还年轻_2 小时前
Claude Skills 超全入门指南
人工智能
救救孩子把2 小时前
Dogs vs. Cats:从零到一的图像分类数据集
人工智能·分类·数据挖掘
Narrastory2 小时前
最大似然估计,香农熵,交叉熵与KL散度的详细解读与实现
人工智能·机器学习