我正在处理数十万个文件。以后可能会有数百万。坏文件将包含 Excel 电子表格的文本版本或其他不是二进制但也不是句子的文本。这些文件会导致 CoreNLP 崩溃(从技术上讲,这些文件需要很长时间来处理,例如每千字节文本需要 15 秒。)我很想检测这些文件并在亚秒级时间内丢弃它们。
我正在考虑随机抽取几千个文件,检查前 200 个字符并寻找字符分布以确定什么是合法的,什么是异常值。例如,如果没有标点符号或标点符号太多。这看起来是个好方法吗?有没有更好的已经被证明的?我认为,当然,这会很好地工作,可能会丢弃潜在的好文件,但很少。
另一个想法是简单地使用注释器进行标记和分割并进行单词和句子计数。这似乎也做得很好,并且很快就会返回。我可以想到这也可能失败的情况。