如题,场景是情感分析,有个想法是做 NLP 的时候能不能加入一些超信息,比如一个人在论坛里发了一段话作为原始输入,在此基础上我能不能在输入信息里附带这个人的账号等级、年龄、性别、地区等信息,应该会对网络输出结果有帮助(或者,还可以输入历史对话的编码结果),但是不知道该如何组织。
一个简单的方法是直接在每个原始数据点上,比如原始数据用 10 维表示一个字,那就再额外增加几个维度输入这些超信息,所有数据点的这几维都一样。这个处理方法比较简单,但我对效果存疑,而且还有个问题是超信息这么搞的话就没法提前通过其他网络编码了,编码后一旦维数增加,总不至于让每个点携带 10 维的词信息+20 维的超信息吧,感觉有点头重脚轻了。
不知道有没有什么好的方法,大佬提供个思路啥的。不知道有没有什么可以从 cv 或者其他领域借鉴的经验?我感觉 vit 方面数据结构和 nlp 也挺像的,肯定也有人研究过超信息啥的吧。。。
1
string2020 2023-03-14 15:06:55 +08:00
我虽然不懂。但我知道你就是个纯彩笔
|
2
Richard14 OP @string2020 朋友你多大了。。。
|
3
lonewolfakela 2023-03-14 15:43:14 +08:00
直接把这些信息作为文字贴在用户发的话前面?
|
4
ytgui 2023-03-14 15:50:38 +08:00
我虽然不懂。但我知道你就是个纯彩笔(笑)
(这些外部信息可以在构造 embedding 的时候塞进去,alongside positional embedding ) |
5
sujin190 2023-03-14 15:51:09 +08:00
word2vec 之后两个词的 vec 之间的几何距离代表词相似度,加几个维度会不会改变了相似度导致模型识别不出来了啊?
chatgpt 这种大模型直接结构化语义写在后面或前面都可以,但是估计小模型上应该不能很好区分权重,导致超信息影响因子太大也会影响模型结果,也许你应该在 NLP 处理完的结果然后再和超信息拼接在一起再组一个全连接网络或者 CNN 网络来处理可能更好吧 其实我也不懂,只是猜测可能是这样的,仅供参考啊 |
6
Porphet 2023-03-14 15:55:37 +08:00
方案一:可以试试图方法,比如图卷积、图注意力
方案二:可以看看 KBERT 这篇论文,找一找灵感 方案三:直接把上述信息作为文本+论坛发言一起输入到 bert 中 简单的想了想,不一定真的有效 |
7
LeeReamond 2023-03-14 16:51:16 +08:00
@ytgui 只是讨论一下可行性和经验,毕竟没有时序数据外再加数据,然后用注意力关注的经验。另外位置编码近两年在时序数据上不是被诟病的蛮多的,去年鼎会很多这方面的文章,我感觉不太行所以来问问
|
8
LeeReamond 2023-03-14 16:52:58 +08:00
@LeeReamond 楼主提到的层编码的方式我试过是可以跑的,但是我附加的维数只有一维所以可能没什么代表性
|
9
nonduality 2023-03-17 18:52:10 +08:00
某乎搜“如何将专家知识编码入神经网络”,你要加的信息就属于先验。
|