NLTK - 何时对文本进行标准化?
我已经收集好了我打算用来做语料库的数据,但我对是否需要对文本进行规范化有点困惑。我计划将来对这个语料库进行标记和分块。NLTK的一些语料库都是小写字母,而其他的则不是。
有没有人能帮我解释一下这个问题呢?
1 个回答
9
你说的“规范化”是不是指把所有字母都变成小写?
决定是否把所有字母都变成小写,实际上是看你打算怎么用这些数据。对于某些用途,把字母都变成小写更好,因为这样可以减少数据的稀疏性(大写字母的单词比较少,可能会让系统感到困惑,除非你有大量的数据,这样关于大写单词的统计才会比较准确)。而在其他任务中,字母的大小写信息可能是有价值的。
此外,还有其他类似的考虑。例如,"can't"
应该被当作["can't"]
、["can", "'t"]
,还是["ca", "n't"]
来处理?(我在不同的数据集中见过这三种情况)。那7-year-old
呢?它是一个长单词,还是应该分成三个单词?
不过,没必要重新格式化你的数据集。你可以让代码在运行时动态处理这些变化。这样的话,原始信息以后如果需要的话还在。