自然语言处理:文本预处理、嵌入与分类实战
1. 文本预处理
在使用文本数据训练机器学习模型之前,通常需要对文本进行清理和向量化。Scikit - Learn的 CountVectorizer 类可以将文本行转换为词频行,同时将字符转换为小写,去除数字和标点符号,还可以选择去除停用词(如“and”和“the”等对结果影响较小的常用词)。
而在训练神经网络时,文本同样需要清理和向量化,但方式有所不同。Keras提供了 Tokenizer 类,它可以将文本转换为包含代表单个单词的标记序列的表格。标记通常是数据集中单词语料库构建的字典(词汇表)中的索引。
以下是一个使用 Tokenizer 从四行文本创建序列的示例代码:
from tensorflow.keras.preprocessing.text import Tokenizer
lines = [
'The quick brown fox',
'Jumps over $$$ the lazy brown dog',
'Who jumps high into the blue sky after counting 123',
'And quickly returns to earth'
]
tokenizer = Tokenizer()
tokenizer.fit_on_texts(lines)
sequences = tokenizer.texts_to_sequences(lines)
超级会员免费看
订阅专栏 解锁全文
753

被折叠的 条评论
为什么被折叠?



