如何解决机器学习时报错:sklearn.exceptions.NotFittedError: Vocabulary not fitted or provided

博客围绕利用sklearn的svm算法做新文本向量化报错问题展开。指出报错原因是重新定义了CountVectorizer(),通常是训练模型时将其放在自定义函数内且未传出。解决办法是训练阶段传出CountVectorizer(),或传入新文本时不重新定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、代码运行到何处报错?

在利用sklearn的svm算法做新文本的向量化时报错

2、为什么报错:

原因是,重新定义了CountVectorizer()
往往是因为我们在训练模型的时候,将CountVectorizer()放在自定义的函数内,而且没有将它传出来,后面再调用CountVectorizer()时,会报错,除非是重新定义了CountVectorizer(),那么就会报和本文一样的错误

3、如何解决?

如果之前训练模型时,自定义的函数,没有将CountVectorizer()类传出来(无论是return或者是global),那么在将新文本传入模型,想要做预测时候,往往会报错,所以在训练模型的阶段,要将CountVectorizer()传出来,或者后面传入新文本时候不要重新定义CountVectorizer()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值