gpt4 book ai didi

python - sklearn.pipeline 如何手动工作?

转载 作者:行者123 更新时间:2023-12-01 07:40:01 25 4
gpt4 key购买 nike

目前,我正在开发 sklearn.pipeline,这非常棒,这是一个示例:

model = make_pipeline(TfidfVectorizer(), MultinomialNB())
model.fit(train.data, train.target)
labels = model.predict(test.data)

(*数据来自train = fetch_20newsgroups(subset='train',categories=categories))with categories= ['talk.religion.misc', 'soc.religion.christian', 'sci.space','comp.graphics']

但是,我的理解还很模糊。我想问一下,如果我们一步步做,没有管道的话会怎样。这正是我想做的,但失败了。

from sklearn.datasets import fetch_20newsgroups
Categories = ['talk.religion.misc', 'soc.religion.christian', 'sci.space','comp.graphics']
train = fetch_20newsgroups(subset='train', categories=categories)`

from sklearn.feature_extraction.text import TfidfVectorizer
model1=TfidfVectorizer()
X=model1.fit_transform(train.data)

from sklearn.naive_bayes import MultinomialNB
model2=MultinomialNB
model2.fit(....)

到目前为止,我只是不知道下一步该怎么做,因为 X 的形状不适合 model2

有关这方面的更多信息,请参阅 this 中的书籍关联在第(406/548)页

*** 请原谅我愚蠢的问题。我知道我可以通过使用管道来做到这一点,但只是想尝试

最佳答案

你就快到了!您需要使用 MultinomialNB() 而不是 MultinomialNB

尝试以下过程。

from sklearn.datasets import fetch_20newsgroups
Categories = ['talk.religion.misc', 'soc.religion.christian', 'sci.space','comp.graphics']
train = fetch_20newsgroups(subset='train', categories=categories)


from sklearn.feature_extraction.text import TfidfVectorizer
model1=TfidfVectorizer()
X=model1.fit_transform(train.data)

from sklearn.naive_bayes import MultinomialNB
model2=MultinomialNB()
model2.fit(X, train.target)
model2.predict(model1.transform(test.data))

# array([2, 1, 1, ..., 2, 1, 1])

关于python - sklearn.pipeline 如何手动工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56766697/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com