未知目标文本大小的文本摘要

问题描述

我在 python3 中使用 Tensorflow keras 库进行未知文本大小的文本摘要

我使用 this link 中的代码说明进行文本摘要。但看起来代码一个用于要汇总的输入文本的最大大小的设置值,因为它已经知道要汇总的文本大小。但如果我不知道呢?我的意思是,如果我必须对许多我不知道它们总大小的文本进行摘要??

错误文本太长,所以我没有成功找到与我的案例相关的内容

所以错误是:

indices[0,0] = 30 不在 [0,13) [[node model_2/embedding_1/embedding_lookup(定义于 C:\Users\f_pc\Desktop\class_python.py:314)]] [操作:__inference_predict_function_19765]

错误可能源于输入操作。输入源 连接到节点 model_2/embedding_1/embedding_lookup 的操作: model_2/embedding_1/embedding_lookup/19252(定义于 D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\contextlib.py:112)

函数调用栈:predict_function

我也在尝试

max_text_len=800
max_summary_len=500

但是把这个大小加起来,分析时间会增加,但也有

解决方法

encoder_inputs = Input(shape=(max_len_text,)) 

所以你必须设置 max_len_text

从(Bahdanau et al.,2015)可以看出,Attention层的输入长度没有限制。剩下的只是收集 LSTM 中间状态,也不应该依赖于输入长度。

您是否尝试在推理期间设置与模型构建期间不同的 max_len_text? (为每个推理动态设置它,即为您总结的每个输入文本)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...