scikit-learn相关内容

如何减少Scikit-Learn矢量化器的内存使用量?

TFIDFVectorizer占用大量内存,将470 MB的10万个文档向量化将占用6 GB的空间,如果我们处理2100万个文档,将无法容纳60 GB的RAM. 所以我们选择了HashingVectorizer,但仍然需要知道如何分发哈希矢量化器.Fit和Partial Fit什么都没做,所以如何使用Huge Corpus? 解决方案 我强烈建议您使用 HashingVectoriz ..
发布时间:2020-05-04 09:03:15 AI人工智能

如何计算Scikit中的R2值?

scikit Learn(metrics.r2_score())返回的R ^ 2值可以为负. 文档说: “与其他大多数分数不同,R²分数可能为负(不需要 实际上是数量R的平方." 但是,R ^ 2上的维基百科文章并未提及R(未平方)的数量.也许它使用绝对差异而不是平方差异.我真的不知道 解决方案 scikit learning中的R^2与1 - residual sum of ..
发布时间:2020-05-04 09:02:44 AI人工智能

scikit-learn,向矢量化的文档集中添加功能

我从scikit-learn开始,我试图将一组文档转换为可以应用聚类和分类的格式.我已经看到了有关矢量化方法的详细信息,以及用于加载文件并为其词汇编制索引的tfidf转换. 但是,每个文档都有额外的元数据,例如作者,负责的部门,主题列表等. 如何为矢量化功能生成的每个文档矢量添加特征? 解决方案 您可以将DictVectorizer用于额外的分类数据,然后使用 ..
发布时间:2020-05-04 09:02:27 AI人工智能

多输出回归

在过去的几周里,我一直在研究多元输出回归.我正在使用scikit学习包.我的机器学习问题的输入为3,需要预测两个输出变量. sklearn软件包中的某些ML模型可以自然地支持多输出回归.如果模型不支持此功能,则可以使用sklearn多输出回归算法进行转换. multioutput 类适合每个目标一个回归器. mullioutput回归类或受支持的多输出回归算法是否考虑了输入变量的潜在关系? ..
发布时间:2020-05-04 09:02:07 AI人工智能

与sklearn并行训练多个模型?

我想训练具有不同随机状态的多个LinearSVC模型,但我更喜欢并行进行. sklearn中是否有支持此功能的机制?我知道Gridsearch或某些合奏方法正在隐式地执行操作,但是到底是什么呢? 解决方案 内部的“东西"是库 joblib ,例如GridSearchCV中的多重处理和一些集成方法.它的Parallel辅助类是非常方便的瑞士刀,用于尴尬地并行循环. 这是一个使用jobl ..

sklearn管道的自定义转换器,可同时更改X和y

我想创建自己的变压器,以与sklearn Pipeline一起使用.因此,我正在创建一个同时实现fit和transform方法的类.转换器的目的是从矩阵中删除NaN数量超过指定数量的行.因此,我面临的问题是如何更改传递到转换器的X和y矩阵?我认为这必须在fit方法中完成,因为它可以同时访问X和y.由于一旦我将X重新分配给具有较少行的新矩阵,python就会通过赋值传递参数,因此丢失了对原始X的引用 ..

以安全正确的方式使用RandomForestClassifier的predict_proba()函数

我正在使用Scikit-learn将机器学习算法应用于我的数据集.有时我需要使标签/类的概率恢复为标签/类的自身.我不希望将垃圾邮件/非垃圾邮件作为电子邮件的标签,而仅希望举例说明:给定电子邮件为垃圾邮件的概率为0.78. 出于这个目的,我将Random_ForestClassifier与预测_proba()一起使用,如下所示: clf = RandomForestClassifier ..
发布时间:2020-05-04 09:01:10 AI人工智能

根据文本语料库中的出现情况列出词汇表中的单词,Scikit-Learn

我为scikit-learn中的某些文档安装了CountVectorizer.我想在文本语料库中查看所有术语及其对应的频率,以便选择停用词.例如 'and' 123 times, 'to' 100 times, 'for' 90 times, ... and so on 有内置功能吗? 解决方案 如果cv是您的CountVectorizer,而X是向量化语料库,则 zip ..

具有不同基础学习者的AdaBoostClassifier

我试图将AdaBoostClassifier与除DecisionTree以外的基础学习器一起使用.我已经尝试过SVM和KNeighborsClassifier,但出现错误.有人可以指出可以与AdaBoostClassifier一起使用的分类器吗? 解决方案 好的,我们有一种系统的方法来找出AdaBoostClassifier支持的所有基础学习者.兼容的基础学习者的fit方法需要支持samp ..
发布时间:2020-05-04 09:00:48 AI人工智能

多处理scikit学习

我使用load_file方法使linearsvc与训练集和测试集相对应,我正在尝试使其在多处理器环境中起作用. 如何在LinearSVC().fit() LinearSVC().predict()上进行多处理工作?我还不太熟悉scikit-learn的数据类型. 我也正在考虑将样本拆分为多个数组,但是我对numpy数组和scikit-learn数据结构不熟悉. 这样做可以更容易地 ..

如何使用自定义SVM内核?

我想用Python实现自己的高斯内核,只是为了锻炼.我正在使用: sklearn.svm.SVC(kernel=my_kernel),但我真的不明白发生了什么事. 我希望函数my_kernel以X矩阵的列作为参数来调用,而不是以X,X作为参数来调用它.查看示例并不清楚. 我想念什么? 这是我的代码: ''' Created on 15 Nov 2014 @author: ..
发布时间:2020-05-04 08:59:57 AI人工智能

如何反向sklearn.OneHotEncoder转换以恢复原始数据?

我使用sklearn.OneHotEncoder对分类数据进行了编码,并将其输入到随机森林分类器中.一切似乎正常,我得到了预期的输出. 有没有办法反转编码并将我的输出转换回原始状态? 解决方案 弄清这一点的一种很好的系统方法是从一些测试数据开始并通过X = np.array([ [3, 10, 15, 33, 54, 55, 78, 79, 80, 99], [5, 1, 3, 7, ..
发布时间:2020-05-04 08:59:53 AI人工智能

区分过度拟合与良好预测

这些是有关如何计算和计算的问题.减少机器学习中的过度拟合.我认为许多机器学习的新手都会有相同的问题,因此我尝试通过示例和问题弄清楚,希望这里的答案可以帮助其他人. 我的文本样本非常小,我正在尝试预测与它们相关的值.我已经使用sklearn计算tf-idf,并将其插入回归模型中进行预测.这给了我26个具有6323个功能的样本-数量不多..我知道: >> count_vectorizer ..
发布时间:2020-05-04 08:59:04 AI人工智能