gpt4 book ai didi

machine-learning - 区分具有相同含义但使用不同单词组合的句子

转载 作者:行者123 更新时间:2023-11-30 08:41:10 25 4
gpt4 key购买 nike

我正在尝试学习自然语言处理,但遇到了一个开放式问题。如何将含义相同的句子组合在一起。可以存在一组有限的具有相同含义的句子。我使用什么样的算法来俱乐部它们?

例如:考虑以下句子:

There is a man. There is a lion. The lion will chase the man on seeing him. If the lion catches the man he dies.

There is a man and a lion. If the lion catches the man he dies. The lion will chase the man if he sees him.

You have a lion that chases men on seeing them. There is one man. If the lion catches the man he dies.

基本上所有这些句子的意思是:

 1 Lion. 1 Man. Lions chase men. If lion catches men the man dies.

我无法将能够帮助我实现类似目标的一类机器学习或深度学习算法归零。请引导我走向正确的方向,或者为我指出一些足以实现这一目标的算法。

另一个重要因素是拥有可扩展的解决方案。那里可能有很多这样的句子。然后会发生什么?

一种可能的解决方案是:使用词性和句子中单词之间的关系作为某些机器学习算法的特征。但这在大量句子中实用吗?我们还需要考虑更多的事情吗?

最佳答案

基于深度学习的解决方案之一是使用 word embeddings (理想情况下,应该用固定维度向量表示单词,以便相似的单词在该嵌入空间中紧密相连,甚至像 德国 - 柏林 ~= 意大利 - 罗马 这样的向量运算也可能成立),两个著名的单词嵌入技术是 Word2VecGlove ,另一种选择是用固定维度向量表示句子,使得相似的句子靠近该嵌入空间,请检查 Skip-Thought vectors 。到目前为止,我们只尝试以更语义的数字方式表示文本(单词/句子),下一步是捕获当前上下文(段落、文档)的含义,一种非常幼稚的方法是仅平均单词/句子嵌入(你必须尝试这个来看看它是否有效),更好的方法是使用某种序列模型,如 RNN (实际上是 LSTMGRU )来捕获之前所说的内容。使用序列模型的问题是它需要监督(你应该有一个标记数据,但如果你没有它,我猜就是这种情况),那么只需在 language modelling 中使用序列模型即可。设置并在最后一个时间步获取 RNN/GRU/LSTM 的隐藏表示,即如果您使用的是朴素方法,则在读取最后一个单词或聚合单词嵌入后。一旦有了隐藏表示,您就可以应用任何聚类技术来对不同的段落进行聚类(您必须找到适当的 distance metric ),或者您可以手动应用一些距离度量并定义或学习将相似段落分类为一个的阈值。

关于machine-learning - 区分具有相同含义但使用不同单词组合的句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39462199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com