先验知识融入深度学习

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

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
IT_陈寒2 小时前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
甲维斯2 小时前
Claude Opus5手搓“NewAPI Plus”首轮成果!
人工智能
程序猿DD2 小时前
分享两个我每天都在用的 Skill,拖进豆包就能跑,限时领 30 天会员
人工智能
阿里云大数据AI技术3 小时前
Agentic Search 2.0:从单轮对话迈向企业级 AI 搜索自动驾驶Agent
人工智能·elasticsearch·agent
东风破_3 小时前
从 messages 数组到 Memory:大模型到底是怎么“记住”上一轮对话的?
人工智能
AEI3 小时前
四年间大模型的演进历程
人工智能·面试·程序员
狂师3 小时前
阿里开源:skill-up,一款Agent Skill 评测工具!
人工智能·开源·agent
武子康3 小时前
同一套 Agent Runtime,为什么 Web、Headless 和 Python SDK 仍然不是同一个产品
人工智能·llm·agent
天天代码码天天3 小时前
一个纯 C 的 OCR Runtime,又向前走了一步:lw.PPOCR.C preview.5 发布
人工智能
程序员cxuan4 小时前
Claude 官方的学习教程,太强了。
人工智能·后端·程序员