【发布时间】:2021-08-30 10:52:13
【问题描述】:
import PyPDF4
from google.colab import files
files.upload()
fileReader = PyPDF4.PdfFileReader('ITC-1.pdf')
s=""
for i in range(2, fileReader.numPages):
s+=fileReader.getPage(i).extractText()
sentences = []
while s.find('.') != -1:
index = s.find('.')
sentences.append(s[:index])
s = s[index+1:]
text_ds = tf.data.TextLineDataset('ITC-1.pdf').filter(lambda x: tf.cast(tf.strings.length(x), bool))
vectorize_layer.adapt(text_ds.batch(1024))
inverse_vocab = vectorize_layer.get_vocabulary()
上面代码的最后一行显示了错误。我看了几篇文章来理解它的含义,但似乎没有一个解决方案对我有用。我无法使用本地机器,因为我需要访问 GPU。请为此提出解决方法。谢谢!
PS:按照这里的代码https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/text/word2vec.ipynb#scrollTo=haJUNjSB60Kh,区别在于我读取文件的方式。如果有更好的方法,请告诉我!
【问题讨论】:
-
您正在阅读 pdf 到 's' 并且从不使用它?那么您正在使用 TextLineDataset() 将文本文件作为输入来读取 pdf?
-
@harry 是的,我知道我输入错误。你能建议一个更好的方法吗?我已编辑问题以包含原始代码所在的链接
-
您真的想从 pdf 中读取文本还是任何文本文件就足够了?
-
我想从 pdf 中读取文本...如果有帮助,也许可以进行一些手动转换? (但数据量很大,可能存在格式问题)
标签: python tensorflow compiler-errors