问题标签 [naivebayes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - How to add features to scikit-learn DictVectorizer?
I'm training a spam detector using the MultinomialNB model in scikit-learn. I use the DictVectorizer class to transform tokens to word counts (i.e. features). I would like to be able to train the model over time using new data as it arrives (in this case in the form of chat messages incoming to our app server). For this, it looks like the partial_fit function will be useful.
However what I can't seem to figure out is how to enlarge the size of the DictVectorizer after it has been initially "trained". If new features/words arrive that have never been seen, they are simply ignored. What I would like to do is pickle the current version of the model and the DictVectorizer and update them each time we do a new training session. Is this possible?
python - 为什么我的系数只有一维?
我正在尝试对一些评论数据进行情感分析。响应变量是“正面”或“负面”。我运行了我的模型,我的系数只有一维,我相信它应该是两个,因为有两个响应变量。任何帮助都可以弄清楚为什么会这样。
最后一行打印出 (1L, 6L)。我试图找出负面和正面的信息特征,但由于它的 1L 它将为我提供两种响应的相同信息。
谢谢!
r - 如何在 R 中使用朴素贝叶斯
标签是从 1 到 5 的数字。
此代码适用于 SVM,但不适用于朴素贝叶斯分类器,更具体地说,y_pred_svm 是数字向量,但 y_pred_bayes 不是。
我在包中找到了很多关于 naiveBayes 函数的示例,但数据和标签不在单独的数组中。谁能帮我吗?谢谢。
python - 用一些不在训练集中的词预测分类(朴素贝叶斯)
我创建了一个朴素贝叶斯模型来预测结果是“负”还是“正”。我遇到的问题是在一组新数据上运行模型,其中一些单词不在模型中。我收到的预测新数据集的错误是:
ValueError:预期输入有 6 个特征,得到 4 个
我读到我必须在我的模型中放置一个拉普拉斯平滑器,而 Bernoulli() 的默认 alpha 已经为 1。我还能做些什么来修复我的错误?谢谢
c# - 如何使用朴素贝叶斯和主成分分析(C#、Accord.NET)对文档进行分类
我正在做一个电子邮件分类项目,将电子邮件分类到某个类别。到目前为止,我们将有趣的数据(例如:主题和正文)与其他信息一起保存到我们的数据库中。我们已成功地将术语频率 - 逆文档频率应用于项目,以检索在我们的电子邮件主题和正文中找到的所有术语/特征的矩阵。该矩阵的一个非常小的样本输出将是:
实际上,这个矩阵要大得多,因为我们有大约 23000 个术语,用于一组 165 封电子邮件。因为我们需要使用这个矩阵中的术语对电子邮件进行分类,所以 23000 个特征实在是太多了。这就是我们实施降维算法 (PCA) 的原因。这是通过使用以下代码(Accord 框架)完成的:
现在我们已经硬编码了维度的#,但这暂时不应该是一个问题。
我一直在研究如何使用朴素贝叶斯进行分类的 Accord 框架示例,但我无法真正弄清楚如何将其付诸实践。主要是因为该示例在我们处理数字时使用了文本,而我不太了解分类的工作原理。请参阅有关如何实现朴素贝叶斯的示例。
基本上,我的原始矩阵包含我的特征及其 TF-IDF 值(参见上面的示例),我想使用包含我的 PCA 的矩阵(pca.Transform 方法的输出)对它们进行分类。目前,我只有 2 个类我想对我的电子邮件进行分类(注册和提交)。我将如何实现这一目标?另外,如果我想在将来添加多个类,我将如何扩展它?
示例输出应类似于:
machine-learning - 训练朴素贝叶斯分类器
我正在使用简单的词袋概念开发一个朴素贝叶斯分类器。我的问题是在朴素贝叶斯或任何其他机器学习场景中“训练”分类器是一件重要的事情。但是,当我已经拥有各种类别的 bag_of_words 时,如何训练朴素贝叶斯分类器。
statistics - 交叉验证的目的是什么?
我现在正在阅读一本关于机器学习的书。
在作者上工作NaiveBayesClassifier
非常支持交叉验证方法。
他建议将数据分成十个桶(文件),并在每次保留一个不同的桶时对其中的九个进行训练。
到目前为止,我熟悉的唯一方法是将数据以 50%/50% 的比例分成训练集和测试集,然后简单地一次性训练分类器。
有人可以解释使用交叉验证的可能优势吗?
document-classification - 将 LSA/LSI 与朴素贝叶斯结合用于文档分类
一般来说,我是gensim包和向量空间模型的新手,我不确定我应该如何处理我的 LSA 输出。
为了简要概述我的目标,我想使用主题建模来增强朴素贝叶斯分类器,以改进评论的分类(正面或负面)。这是我一直在阅读的一篇很棒的论文,它塑造了我的想法,但让我对实施仍然有些困惑。
我已经有了朴素贝叶斯的工作代码——目前,我只是使用一元词袋,因为我的特征和标签要么是正面的,要么是负面的。
这是我的gensim代码
这是输出
任何建议或一般性意见将不胜感激。
python - 如何使用 sklearn 库使用朴素贝叶斯执行文本分类?
我正在尝试使用朴素贝叶斯文本分类器进行文本分类。我的数据采用以下格式,根据问题和摘录,我必须决定问题的主题。训练数据有超过 20K 条记录。我知道 SVM 在这里会是一个更好的选择,但我想使用 sklearn 库与 Naive Bayes一起使用。
这是我到目前为止尝试过的,
但正如预期的那样,我得到了 ValueError: could not convert string to float。我的问题是如何创建一个简单的分类器来将问题和摘录分类为相关主题?
python - 为什么朴素贝叶斯文本分类器在使用标记类别时表现不佳?
我正在尝试使用多项式朴素贝叶斯创建文本分类模型。我的数据有 10 种不同类型的类别。在模型训练期间,我以整数格式表示这些类别。
训练数据格式:
这就是我的代码片段的样子:
现在我分析了一个奇怪的行为,在使用类别的整数表示时,我的模型的准确率为 82%,如果我使用字符串表示,准确率飙升至 90%。
我的问题是为什么模型在第二种情况下表现不同(更好)?
PS我正在使用sklearn库。