介绍
我正在学习一份教程,对于Python和机器学习都比较新(所以如果我看起来像一个新手,还请见谅……因为我确实是)。该教程可以在这里找到:Data Science Python Tutorial
涉及的代码行
我发现早期创建了一个名为bow_transformer
的变量:
bow_transformer = CountVectorizer(analyzer=split_into_lemmas).fit(messages['message'])
我对“向量化”这个概念的理解不是很清楚...我们是说每个短信语料库中的单词都会有自己的行吗?
然后,这个变量被转换了(我认为这里的“转换”是为了创建某种单词的(x,y)表示,以便机器可以读取并计算它们的出现次数。):
bow4 = bow_transformer.transform(messages['message'])
messages_bow = bow_transformer.transform(messages['message'])
到目前为止,我感到有些困惑......我认为自己已经在头脑中做出了适当的逻辑推理(如果我上面犯了一些逻辑错误,请纠正我,这将极大地帮助我理解机器学习+Python。
现在,主要问题来了
以下代码块进一步加深了我的困惑:
tfidf_transformer = TfidfTransformer().fit(messages_bow)
tfidf4 = tfidf_transformer.transform(bow4)
我的解释
messages_bow
是词袋变换(不管这意味着什么),然后将其拟合到tfidfTranformer
上,将其赋值给tfidf_transformer
变量。现在,这个新创建的tfidf_transformer
变量看起来不像一个变量了,因为下一行使用上述过程/对象创建一个新变量(tfidf4
)?
结论
我希望你们能理解我的困惑-我不知道如何搜索我的问题,因为我根本不知道我不知道什么。我的问题在呼喊“新手”,我希望这不会阻止任何人认真对待我的问题。