如何将包含标注句子的文本输入到神经网络中?

我在深度学习方面还是新手。我正在尝试为文本提取标题。

因此,对于每段文本,我有以下内容:

  • 标题

  • 句子

  • 这些句子的标签(全部为0,其中一个与标题的ROUGE1得分最接近的为1)。例如['Title'], ['s1','s2','s3','s4'], [0,1,0,0]

我已经将所有内容(显然包括标题和句子)进行了向量化处理。

问题是我无法理解如何将这些数据输入网络,以便它能够学习预测一组句子(一个文本)中哪个句子应该是1(即标题)。

我的意思是……我知道在进行文本分类(或句子分类)时,我们有整个文本及其标签。所以我们只需向网络输入类似于

x = ['t1','t2','t3','t4','t5']y= [0,1,0,0,1]

但在这里……我们需要针对一个文本中的每个句子预测标签。所以,我将会有类似于

x = ['s01','s02','s03','s04'] ['s11','s12','s13','s14','s15','s16','s17'] ...['sn1','sn2','sn3']y = [0,1,0,0][0,0,0,0,1,0,0]...[1,0,0]

另外,标题也应该包含在某个地方……(我认为)

如果我想预测新文本(比如)['s1','s2','s3','s4','s5','s6']中哪些句子是0,哪个是1,我应该以何种形式将其输入到网络中?


回答:

从我看到的情况来看,你的每段文本中都包含句子,并且其中一个句子被标记为“标题”(或1)。让我们总结一下这个问题:在神经网络中,你将有一个输入矩阵,列为特征,行是个体(元素)。在这里,你的行是文档(标题+内容),而据我所见,特征是一个句子。

你的方法存在以下问题:

  1. 在你的方法中,一个特征就是一个句子(我的意思是每个句子或多或少是独一无二的,对吗?)。因此,你将会有比个体(即文档,即矩阵的行)更多的特征,在这种情况下,神经网络的效果会很差。

  2. 即使你设法使个体数量超过特征数量,你也将会有大量的特征,这将需要更多的时间和内存来训练。

  3. 如果你考虑到句子中的单词,你可能会遇到看起来像普通句子的标题,这里会产生歧义。

你为什么不尝试使用简单的规则(不使用机器学习)来做这件事呢?标题通常是文本的第一句话,且比其他句子短,有时没有动词?

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注