Scikit learn 哈明顿失利不支持交叉评分?

我正在使用sklearn和skmultilearn对多标签进行一些研究 我只是想知道为什么汉明损失不能用于交叉评分,因为它确实可以单独使用。在中,规定: 评分:字符串,可调用或无,可选,默认值:无 字符串(请参阅模型评估文档)或记分器可调用对象/ 带签名记分器的函数(估计量,X,y) 可用于此操作的字符串为。这里显示的这些字符串使用 hamming\u loss不在这些字符串中,但我们可以在其上使用make\u scorer来定义我们的评分函数对象,然后可以在cross\u val\u scor

Scikit learn scikit学习中NMF(也称为NNMF)测试集的重建错误

我正在使用scikit学习中的NMF(也称为NNMF)对自然语言数据执行主题提取。我试图优化集群的数量(aka组件)。为了做到这一点,我需要计算重建误差。然而,使用scikit learn,我只看到了在训练集上计算此度量的方法。但我对获取测试集的这些指标感兴趣。有什么建议吗?在外部数据上模仿sklearn的机制很容易 使用函数\u beta\u散度(X,W,H,self.beta\u损失,平方根=真)计算此误差度量值。 有关如何获得W,H的事实,请参见 假设我们得到了sklearn>=0.19(

Scikit learn Keras GridSearch scikit学习冻结

我很难使用scikit learn在Keras中实现网格搜索。基于,我编写了以下代码: 来自keras.wrappers.scikit\u了解导入KerasClassifier 从sklearn.model_选择导入GridSearchCV def create_model(): 模型=顺序() 添加(稠密(100,输入_形状=(max_len,len(字母表)),内核_正则化器=正则化器.l2(0.001))) 模型。添加(辍学率(0.85)) 添加(LSTM(100,输入_形=(100,))

Scikit learn dask是否支持sklearn learning_曲线函数?

我用sklearn计算随机森林的学习曲线。我需要为很多不同的RFs做这件事,因此我想使用集群和Dask来减少RFs匹配的时间 目前我实现了以下算法: from sklearn.externals import joblib from dask.distributed import Client, LocalCluster worker_kwargs = dict(memory_limit="2GB", ncores=4) cluster = LocalCluster(n_workers=4,

Scikit learn 确定最佳双聚类数

我最近在绝对相关系数值的矩阵上执行了K-均值双聚类。然而,双聚类算法要求将双聚类数(k)定义为输入。有没有什么好的方法来确定最佳的双聚类数(k) 我以前知道很多人使用剪影分数来估计最佳的聚类数,但我只听说人们在执行层次聚类时使用了它。轮廓分数也可以应用于双集群吗?有没有其他方法来定义最佳的双聚类数?是否可以使用均方剩余分数 双聚类算法沿对角线生成双聚类,这样一行或一列永远不会属于多个双聚类

Scikit learn tfidf是否应结合列车和测试集生成?

在上面的示例中,分别为训练语料库和测试语料库生成tfidf。它不应该一起生成吗?因为单独处理列车和测试时的idf与一起处理时的idf不同?谢谢 # Vectorize the training data X_train = vectorizer.fit_transform(train_corpus) # Vectorize the testing data X_test = vectorizer.transform(test_corpus) 您不能使用测试来创建TF-IDF模型,因为您不允许

Scikit learn skmultilearn多标签分类中的多个估计量

我想用二进制相关方法进行多标签分类,这需要一个基估计量。我想尝试几种不同的估计器,例如SGD、SVC、决策树等,每种估计器都有合适的参数。 我想也许我应该以某种方式结合管道和/或网格搜索,但我无法找到答案 大概是这样的: paramgrid = [{ 'estimator':[SVC()], 'estimator__C': [1, 10, 100, 1000], 'estimator__gamma': [0.001, 0.0001] }, { 'e

Scikit learn 有人能以简化的方式向我解释sklearn SVM.SVC的所有参数吗?

我试图在sklearn中精简SVM模型的SVC分类器。我已经学会在各种数据集上使用它,甚至应用gridsearch来改进结果,但我还不了解一些参数,如C,gamma 如果有人能对每个参数给出简单而详细的解释,那就太好了。因为我们试图最小化一些目标函数,我们可以在函数中添加一些系数向量本身的“大小”度量。C本质上是“正则化”项上权重的倒数。减少C将通过强制系数稀疏或小(取决于惩罚)来防止过度拟合。增加C太多会促进不适 Gamma是RBF核的一个参数。增加gamma允许更复杂的决策边界(这可能导致过

Scikit learn 分类预测产生错误的结果

我从一个数据集中生成了模型,并试图根据cohen_kappa分数和预测精度找到最佳算法。我针对各种算法运行它,因为我将获得的数据类型未知,所以通过比较它们的kappa和精度来找到最佳算法。 我的数据经过10次交叉验证 我对随机森林、决策树、SGDClassizer、感知器、被动攻击、逻辑回归、梯度推进、朴素贝叶斯、KNeighbors进行了比较 在我的例子中,我得到了Random Forest作为分类的最佳算法,Kappa=1,精度=0.94 我的分类为2级分类,条件如响应时间>200 现在,当

Scikit learn sklearn.linear_model.LogisticRegressionCV中的CV代表什么?

scikit学习有两个逻辑回归函数: sklearn.linear_模型.逻辑回归 sklearn.linear_model.LogisticRegressionCV 我只是好奇第二份简历代表什么。在ML中,我所知道的唯一与“CV”匹配的首字母缩略词是交叉验证,但我猜不是这样,因为这将通过包装函数在scikit learn中实现,而不是作为逻辑回归函数本身的一部分(我认为)。您猜对了,后者允许用户执行交叉验证。用户可以将折叠数作为函数的参数cv传递,以执行k折叠交叉验证(默认值为10倍,带S

Scikit learn 在这种情况下如何使用train_test_split?

这是我的数据。我知道第一列是因变量,其余列是自变量 我该怎么分呢?我不确定我应该通过哪个论点。如果你试图预测你的因变量,那就是你的“y”。自变量是你的“X” 如果是这样的话: from sklearn.model_selection import train_test_split Data1 = pd.read_csv(r"C:\Users\Zihao\Desktop\New\OBSTET.csv", index_col = 0) Data1.fillna(0, inplace = Tru

Scikit learn TfidfVectorizer中的“最大功能”有什么用途

我从中了解到的是,如果max_feature=n;这意味着它正在根据Tf Idf值选择top n特征。我在scikit learn上浏览了TfidfVectorizer的文档,但没有正确理解它 如果需要具有最高tfidf值的行字,则需要从矢量器访问转换后的tf idf矩阵,逐行逐文档访问它,然后对值进行排序以获得这些值 大概是这样的: # TfidfVectorizer will by default output a sparse matrix tfidf_data = tfidf_vecto

Scikit learn 使用Scikit Learn创建Amazon SageMaker超参数调整作业

我想知道如何使用Amazon Sagemaker自动调整我的scikit learn随机森林模型。现在,我想调整一个名为“max_depth”的超参数。我将首先转储代码,然后表达一些担忧 文件:notebook.ipynb estimator = sagemaker.estimator.Estimator(image, role, train_instance_count=1, train_instance_type='ml.m4.xlar

Scikit learn SKLearn管道和Gridsearch错误

我想首先在测试和训练集中分割数据。然后我想在我的训练集上使用GridSearchCV(内部分为训练集/验证集)。最后,我想收集所有测试数据并做一些其他事情(不在问题的范围内) 我必须调整我的数据。所以我想在管道中处理这个问题。我的SVC中的一些东西应该是FICE的(kernel='rbf',class_weight=…)。 当我运行代码时,会出现以下情况: “ValueError:估计器管道的参数估计器无效” 我不明白我做错了什么。我试着按照这个思路: 唯一的区别是,我在SVC中修复了一些参数。

Scikit learn 隔离林,如何使用多个特征进行预测,获取所有异常

我正在尝试使用scikit learn和python构建一个隔离林来检测异常。我附上了一张数据的图像,我试图根据几个“大小”特征预测“页面”。 当我打印(异常)时,每一行都被检测为-1,异常。这是因为我只使用“size2”对它们进行分类吗?是否有一种方法可以使用多个列来帮助检测异常?我应该使n_特性等于我使用的列数吗?非常感谢你的帮助 model = IsolationForest(n_estimators = 100, max_samples = 'auto', contamination =

Scikit learn 需要了解MLPC分类程序的帮助吗

我使用MLPClassizer已经有一段时间了,我想我对函数一直在做什么有一个错误的解释,我想我现在就知道了,但我不确定这一点。因此,我将总结我的理解,如果您能在正确的理解上添加您的想法,那将是非常棒的 因此,使用MLP分类器,我们正在基于训练数据集构建一个神经网络。设置early\u stopping=True可以在培训过程中使用验证数据集,以检查网络是否也在处理新的数据集。如果early\u stopping=False,则流程内不会进行验证。在一个数据集构建完成后,如果愿意,我们可以使用拟

Scikit learn 无法使用sklearn中的稀疏矩阵计算剪影_分数

我试图使用稀疏矩阵计算轮廓分数或轮廓样本,但得到以下错误: ValueError:diag需要至少两个维度的数组 示例代码如下所示: edges = [ (1, 2, 0.9), (1, 3, 0.7), (1, 4, 0.1), (1, 5, 0), (1, 6, 0), (2, 3, 0.8), (2, 4, 0.2), (2, 5, 0), (2, 6, 0.3), (3, 4, 0.3), (3, 5, 0.2), (3, 6, 0.25), (4, 5, 0.8), (4, 6, 0.

Scikit learn 使用skicit学习模型的预测函数时如何保持原始指标

如何通过sklearn模型的预测函数来保存数据集的索引 我在Jupyter笔记本中使用了这段代码,但是输出文件没有在X_prod中保留原始索引 clf_Naive = joblib.load('Name.pkl') predNaive = clf_Naive.predict(X_prod) predNaiveProba = clf_Naive.predict_proba(X_prod) pred = pd.DataFrame(data=predNaive) pred.to_csv('Pred_N

Scikit learn 支持向量机的稀疏数据中心化

我了解到,当您运行支持向量机时,您应该将数据集中,并将组件标准化为单位方差。然而,我的原始数据非常稀疏,以这种方式对数据进行预处理会使数据变得密集。这似乎使我的模型火车非常慢。如果您使用的是现成的SVM实现,您将如何处理这个问题?没有必要以这种方式进行扩展。您可以只缩放,不居中,或者只除以绝对最大值,使数据在-1和1的范围内。每个实例的SVM代码中动态复制预处理数据的可能性,这样您就可以通过少量执行保持内存公平。您还可以考虑使用其他模型,如RandomForests。

Scikit learn 使用scikit learn查找LDA每个主题的文档数

我将跟随scikit learn LDA示例,并试图了解如何(如果可能的话)显示有多少文档被标记为具有这些主题中的每一个。我一直在仔细阅读LDA模型的文档,但不知道从哪里可以得到这个号码。以前是否有人能够使用scikit learn做到这一点?LDA计算每个文档的主题概率列表,因此您可能希望将文档主题解释为该文档概率最高的主题 如果dtm是您的文档术语矩阵,而lda是您的潜在Dirichlet分配对象,则可以使用transform()函数和pandas探索主题混合: docsVStopics=l

Scikit learn 未找到要安装的匹配分发版

尝试安装scikit时,请使用以下命令学习: python -m pip install sckit-learn 它抛出一个错误,如下所示: 找不到满足安装要求的版本(来自版本:) 未找到要安装的匹配分发版 但是,在site\u软件包文件夹install.py中存在。 如何删除此问题?您的命令中有一个输入错误。应该说是学习。您已经了解了sckit。在我的例子中,通过代理配置pip也有点乏味。 这里有一个替代方案 在apt配置文件中使用设置代理后,使用Ubuntu包管理器 我知道这是一个老帖子,

Scikit learn 如何将`sklearn.neights.KDTree`对象转储到hdf5?

根据sklearn.neights.KDTree,我们可以使用pickle将KDTree对象转储到磁盘。 然而,无论是卸载还是装载,以及存储消耗,它都非常缓慢 是否可以将其转储为hdf5格式 您可以使用\uuu getstate\uu和\uu getstate\uu。大多数内部量为数组或标量类型,因此适用于hdf5。 还有一点工作要做,因为\uuu getstate\uuu返回的最后一个术语是一个函数,我们可以将它转换为字符串,使用pickle.dumps进行hdf5存储 如果您觉得这很有趣,您

Scikit learn Python-如何在网页中使用sklearn分类器

我正在学习Python,我有一个问题。我构建了一个分类器(名为build.py),如下所示: file = 'file path/CVdb.csv' input = pd.DataFrame.from_csv(file,index_col=None,encoding='ISO-8859- 1',sep=',') text = input.drop_duplicates() corpus = text.Text.str.replace(r'[^A-Za-z0-9+#,]+',' ') catego

Scikit learn sklearn:使用隔离林的异常检测

我有一个不包含异常值的训练数据集: train_vectors.shape (588649, 896) 我还有另外一组测试向量(test\u vectors),它们都是异常值 以下是我尝试执行异常值检测的步骤: from sklearn.ensemble import IsolationForest clf = IsolationForest(max_samples=0.01) clf.fit(train_vectors) y_pred_train = clf.predict(train_ve

Scikit learn “的含义;n_jobs==1“;在GridSearchCV中使用多个GPU

我一直在使用Keras框架和4个NVIDIA GPU来训练NN模型。(数据行数:~160000,列数:5)。现在我想使用GridSearchCV优化它的参数 然而,每当我试图将n_作业更改为一个以外的值时,我都会遇到几个不同的错误。错误,例如 CUDA OUT OF MEMORY Can not get device properties error code : 3 然后我看了这个网页,, #如果您不使用GPU,可以将n#U作业设置为1以外的值 所以不可能将多个GPU与GridSearch

Scikit learn 关于标准化和缩放的问题

我正在尝试生成一个模型,该模型使用一个分子的几个物理化学性质(包括原子数、环数、体积等)来预测数值Y。我想使用PLS回归,我知道标准化在这里非常重要。我正在用Python编程,使用scikit学习。功能的类型和范围各不相同。一些是int64,而另一些是浮动的。某些特征通常具有较小的值(正值或负值),而其他特征的值非常大。我尝试过使用各种定标器(例如标准定标器、规格化、最小-最大定标器等)。然而,R2/Q2仍然很低。我有几个问题: 是否有可能通过缩放,一些非常重要的特征失去其重要性,从而对解释响应

Scikit learn 为什么交叉验证的得分始终高于正常拟合和评分?

我试图了解交叉验证和评分的工作原理,并观察到一些奇怪的行为 我实例化一个分类器,然后对它进行4次交叉验证,得到4个分数,准确率在90%+-0.5%之间 然后,我在所有训练数据上重新装配模型,并在测试数据上打分。我也在这段代码中对训练数据打分,只是为了证明一点 我在将数据拆分为测试集和训练集后运行此代码 从sklearn.employ导入GradientBoostingClassifier 从sklearn.metrics导入make_scorer,平衡_准确性_分数 gbc=GradientBo

Scikit learn 如何将SHAP与sklearn中的线性SVC模型一起使用?使用管道学习?

我正在使用sklearn的线性SVC模型进行文本分类。现在,我想通过使用SHAP()可视化哪些单词/标记对分类决策的影响最大 现在这不起作用,因为我得到了一个错误,它似乎起源于我定义的管道中的矢量器步骤-这里出了什么问题 在这种情况下,我关于如何使用SHAP的一般方法正确吗 x_Train, x_Test, y_Train, y_Test = train_test_split(df_all['PDFText'], df_all['class'], test_size = 0.2, random_

Scikit learn Pytorch如何规范化与以前数据集相关的新记录?

我正试图用pytorch建立一个神经网络。我正在使用规范化我的数据集。但是,如何规范化需要根据数据集的mix max值预测的新传入记录 scaler=MinMaxScaler() scaler.fit\u转换(文件\ux[特征列表\u到\u规范化]) 要使用,首先需要将缩放器调整到训练数据的值。这是使用以下方法完成的(正如您已经做的) scaler.fit\u变换(文件\ux[特征列表\u到\u规范化]) 在此之后,fit您的缩放对象scaler将根据训练数据调整其内部参数(例如,min,sc

Scikit learn 通过sklearnpython包定义和使用球树列表

我定义了一个球树对象列表,如下所示,input1是一个带有形状(100320)的NumPy数组 我将input1的一个元素作为一个示例查询,其中sample\u index被假定在范围内 sample_query = input1[sample_index,:] # Find nearest neighbour and compute distance and index distance, index = bt[0].query(sample_query,1) 这里,distance[0]

Scikit learn 在scikit learn中将GMM拟合到3D直方图

scikit learn中的混合模型代码适用于单个数据点的列表,但是如果您有一个直方图呢?也就是说,我对每个体素都有一个密度值,我想让混合模型来近似它。这可能吗?我认为一种解决方案是从这个直方图中采样值,但这不是必需的。Scikit learn有大量的内核密度估计实用程序和算法,它专门围绕着从直方图之类的东西推断分布。有关一些示例,请参阅文档。如果您对数据的分布没有期望,KDE可能是一种更通用的方法。对于2D直方图Z,您可以使用2D体素数组 将numpy作为np导入 创建坐标值 十、 Y=np.

Scikit learn K-均值度量

我已经通读了scikit学习文档,在谷歌上搜索也没用。我有2000个数据集,如图所示。如图所示,一些簇是错误的,这里是红色簇。我需要一个度量方法来验证所有2000个集群集。scikit learn中的几乎每一个指标都需要基本真相类标签,我认为我没有或可以有这样的标签。我有30天的每小时交通流量,我使用k-means对它们进行聚类。这些线是集群中心。我该怎么办?我走对了吗?!横轴是小时,0到23,纵轴是交通流,因此数据点表示30天内该小时的交通流,k=3 您是否查看了凝聚聚类,然后是改变度量的小节

Scikit learn Scikit学习:\u count\u vocab正在抛出空词汇错误

我正在传递两个字符串,例如:$1-2$$3-4$5-6$&$7-8$$9-10$$10-11$ 在这种情况下,count_vocab函数抛出错误: empty vocabulary: perhaps the document contains only stop words" 那么$symbol有问题吗 不考虑$1-2 $作为令牌吗?< /P> < P>令牌的定义由构造函数: toknyType < /Cord>参数(正则表达式)确定: Regular expression denoting

Scikit learn 将scikit learn中SGDRegressor的预测限制为正值

我正在研究卡格尔的一个知识问题,它的标签是正数。我试着在scikit中使用SGDRegressor来学习训练和测试模型。然而,从所学模型得出的一些预测是否定的 因此,我想知道是否有一种方法可以限制像SGD(在scikit learn中)这样的回归器的预测只有正值。我知道在我得到预测后使用蛮力技术来限制值,但我不喜欢采用这种方法,因为它不能代表真实的模型。你可能想适应z=np.log(y)而不是y:model=SGDRegressor(**params).fit(X_train,np.log(y_

Scikit learn Scikit文档--缺少详细信息还是我找的地方不对?

以下链接中的功能是什么。我想真正了解这个算法是如何工作的。请告知: 我的猜测是,这是第一个参数,因为第一个参数是内核的带宽 编辑:K实际上是一个扁平(统一)内核。不同内核类型的良好图表位于,可能是这样,但文档中称内核是扁平的。这会改变什么吗?你是对的,他们使用的是扁平(统一)内核。

Scikit learn 使用TfidfVectorizer,是否可以使用一个语料库获取idf信息,另一个语料库获取实际索引?

使用sklearn.feature\u extraction.text.tfidf矢量器 我想用一包单词tf idf数据来训练分类器 我有一个大的未标记语料库和一个小的标记语料库 我计划使用标记的语料库构建一个基于tf idf模型的单词包的分类器。 然而,我更喜欢使用完整的语料库(包括未标记的数据)来计算idf统计数据 在使用sklearn时,这可能吗 我想到的一个解决方案是建立所有语料库的模型,然后删除属于未标记数据的行。但是,语料库可能太大,无法存储在ram中。如果我理解正确的话。您可以将T

Scikit learn 随机森林特征重要性:实际使用了多少?

我连续使用射频两次 首先,我使用max\u features='auto'和整个数据集(109 feature)对其进行拟合,以便执行特征选择。 以下是RandomForestClassifier.feature\u importances\u,它正确地为每个feature给了我109分: [0.00118087, 0.01268531, 0.0017589 , 0.01614814, 0.01105567, 0.0146838 , 0.0187875 , 0.0190427 ,

Scikit learn 决策树状态列&;相关数值列

我有一个包含两列的数据,其中一列分类显示特征的状态,另一列数字显示相关值。如下图所示: 我想通过scikit运行一个决策树算法来学习这些数据。我不确定如何处理这两个列,因为从概念上讲,我不知道如何将这些非常相关的特性结合起来。基本上,我们不应该留下空数据,然而,这个数据本质上应该在数字列中为空。如果我们把它设为“0”,它有另一个含义 那么,我应该如何预处理这些数据以使决策树算法正常工作?我的prefossor提供了一个合理的答案,如下所示 首先,用“0”填充空单元格。 如果您将数据插入具有这两

Scikit learn 如何使用GridSearchCV进行一类分类

我尝试使用GridSearchCV,以便为分类器提供最佳参数。我使用的是单类SVM,我的代码是: tuned_parameters = [{'kernel': ['rbf'], 'gamma': [1e-2, 1e-3, 1e-4, 1e-5], 'nu': [0.001, 0.10, 0.1, 10, 25, 50, 100, 1000]}, {'kernel': ['linear'], 'nu': [0.001, 0.10,

Scikit learn 不同结果roc_auc_得分和绘制roc_曲线

我正在训练一个随机分类器(sklearn)来预测信用卡欺诈。然后,当我测试模型并检查rocauc分数时,当我使用roc\u auc\u分数和plot\u roc\u曲线时,我会得到不同的值。roc_auc_分数为0.89左右,曲线图计算auc为0.96,为什么 标签都是0和1,预测也是0或1。 代码: 代码的输出(roc_auc_分数正好在图形上方) 您将预测类而不是预测概率提供给 roc\u auc\u得分 发件人: y\u得分:形状数组(n\u样本)或(n\u样本,n\u类) 目标分数。在二

Scikit learn 具有GroupKFold交叉有效性的优化模型在预测时需要组参数

我使用GroupKFold优化了RandomForest(以防止数据泄漏,因为有些行来自同一个组) 我得到了一个最适合的模型,但是当我对测试数据进行预测时,它说它需要组特性 这有意义吗?奇怪的是,群组功能也是最重要的功能之一 我只是想知道我是不是做错了什么 感谢您在scikit learn Github repo或“group_feature”或任何类似内容上进行搜索,因此我将继续并假设您的数据集中有一个名为“group”的特性,预测模型需要该特性作为输入以生成输出 请记住,预测模型基本上是一个

Scikit learn simpleimputer无法处理我的数据

全部, 我的数据中有np.nans和np.inf。我想用0替换这些,但是当我执行以下操作时,会出现以下错误: imputer = SimpleImputer(missing_values=np.nan, strategy='constant', fill_value=0) features_to_impute = data_fe.columns.tolist() data_fe[features_to_impute] = pd.DataFrame(imputer.fit_transform(d

Scikit learn 随机搜索CV抽样分布

根据随机搜索CV(重点矿山): 参数分布:dict或dict列表 以参数名称(str)作为键和分布的字典或 要尝试的参数列表。分发必须提供rvs方法 用于采样(例如来自scipy.stats.distributions的采样)。如果有一份清单 在给定的条件下,对其进行均匀采样如果给出了DICT列表,则首先 对dict进行均匀采样,然后使用 这句话如上所述。 如果我对上述内容的理解是正确的,则以下示例中的两种算法(XGBClassifier和LogisticRegression)都应以高概率(>9

Scikit learn sklearn:从多项选择特征创建稀疏特征向量

我有如下数据: 20003.0, 20003.1, 20004.0, 20004.1, 34 1, 2, 3, 4, 5 其中以*结尾的列是多选项,它们采用的值是分类的 理想情况下,我将能够将[{'20003':['1','2','20004':['3','4'],'34':5}]传递给DictVectorizer,但这还不受支持 如何加载此数据以创建稀疏特征向量?如果可以对相同列组的值进行汇总: In [63]: df Out[63]: 20003.0 20003.1 20004.

上一页 1 2 ...  7   8   9   10    11   12   13  ... 下一页 最后一页 共 40 页