草庐IT

$sklearn

全部标签

python - 你如何从 sklearn.cluster.ward_tree 可视化病房树?

在sklearn中,实现了一种凝聚聚类算法,即ward方法最小化方差。通常sklearn有很多很好的用法示例,但我找不到如何使用此功能的示例。基本上我的问题是根据数据的聚类绘制树状图,但我不理解函数的输出。documentation说它返回子节点、组件数、叶子数和每个节点的父节点。然而,对于我的数据样本,结果没有任何意义。对于已使用连接矩阵聚类的(32,542)矩阵,这是输出:>>>wt=ward_tree(mymat,connectivity=connectivity,n_clusters=2)>>>mymat.shape(32,542)>>>wt(array([[16,0],[17

python - 用于改变 X 和 y 的 sklearn 管道的自定义转换器

我想创建自己的转换器以与sklearnPipeline一起使用。我正在创建一个同时实现fit和transform方法的类。转换器的目的是从矩阵中删除具有超过指定数量的NaN的行。我面临的问题是如何更改传递给转换器的X和y矩阵?我认为这必须在fit方法中完成,因为它可以访问X和y。由于python通过赋值传递参数,一旦我将X重新分配给行数较少的新矩阵,对原始X的引用就会丢失(当然对y也是如此)。是否可以维护此引用?我正在使用pandasDataFrame轻松删除包含太多NaN的行,这可能不是我用例的正确方法。当前代码如下所示:classDropna():#threshismaxnumbe

python - sklearn 问题 : Found arrays with inconsistent numbers of samples when doing regression

这个问题之前似乎有人问过,但我似乎无法评论以进一步澄清已接受的答案,而且我无法弄清楚所提供的解决方案。我正在尝试学习如何使用sklearn处理我自己的数据。我基本上只是得到了过去100年中两个不同国家GDP的年度百分比变化。我现在只是想学习使用单个变量。我基本上想做的是使用sklearn来预测国家A的GDP百分比变化将给定国家B的GDP的百分比变化。问题是我收到一条错误消息:ValueError:Foundarrayswithinconsistentnumbersofsamples:[1107]这是我的代码:importsklearn.linear_modelaslmimportnum

python - sklearn MiniBatchKMeans 中的弃用警告

vectors=model.syn0n_clusters_kmeans=20#moreforvisualization100betterforclusteringmin_kmeans=MiniBatchKMeans(init='k-means++',n_clusters=n_clusters_kmeans,n_init=10)min_kmeans.fit(vectors)X_reduced=TruncatedSVD(n_components=50,random_state=0).fit_transform(vectors)X_embedded=TSNE(n_components=2,p

python - 属性对 Python 中特定目标的预测能力,使用 Sklearn 中的特征选择

Scikit-Learn(或一般算法)中是否有任何特征选择方法可以赋予属性的能力/预测能力/重要性以预测特定目标的权重?例如,fromsklearn.datasetsimportload_iris,对4个属性权重中的每一个进行排序以分别预测3种鸢尾花,但对于具有~1k-10k属性的更复杂的数据集。我正在寻找类似于RandomForestClassifier中的feature_importances_的东西.但是,RandomForestClassifer为整个预测过程的每个属性赋予权重。权重不需要相加,但我想找到一种方法将特定属性子集与特定目标相关联。首先,我尝试“过度拟合”模型以丰富

python - 如何在 Sklearn Pipeline 中进行 Onehotencoding

我正在尝试对我的Pandas数据框的分类变量进行oneHotEncode,其中包括分类变量和连续变量。我意识到这可以使用pandas.get_dummies()函数轻松完成,但我需要使用管道以便稍后生成PMML文件。这是创建映射器的代码。我想要编码的分类变量存储在名为“dummies”的列表中。fromsklearn_pandasimportDataFrameMapperfromsklearn.preprocessingimportOneHotEncoderfromsklearn.preprocessingimportLabelEncodermapper=DataFrameMapper

python - 为什么 sklearn LatentDirichletAllocation 的 fit 和 partial_fit 返回不同的结果?

奇怪的是,fit和partial_fit的代码似乎完全一样。您可以在以下链接中查看代码:https://github.com/scikit-learn/scikit-learn/blob/c957249/sklearn/decomposition/online_lda.py#L478 最佳答案 不完全相同的代码;partial_fit使用total_samples:"total_samples:整数,可选(默认值=1e6)文档总数。仅在partial_fit方法中使用。”https://github.com/scikit-learn

python - sklearn cross_val_score 的准确性低于手动交叉验证

我正在研究一个文本分类问题,我是这样设置的(为了简洁起见,我省略了数据处理步骤,但它们会生成一个名为data的数据框包含X和y列):importsklearn.model_selectionasmsfromsklearn.feature_extraction.textimportTfidfVectorizerfromsklearn.ensembleimportRandomForestClassifiersim=Pipeline([('vec',TfidfVectorizer((analyzer="word",ngram_range=(1,2))),("rdf",RandomForest

python - sklearn LabelEncoder 和 pd.get_dummies 有什么区别?

我想知道sklearnLabelEncoder与pandasget_dummies之间的区别。为什么会选择LabelEncoder而不是get_dummies。使用一个比另一个有什么优势?缺点?据我所知,如果我有A级ClassA=["Apple","Ball","Cat"]encoder=[1,2,3]和dummy=[001,010,100]我是不是理解错了? 最佳答案 这些只是方便的功能,自然地属于这两个库分别倾向于做事的方式。第一个通过将事物更改为整数来“压缩”信息,第二个“扩展”允许(可能)更方便访问的维度。sklearn.p

python - Sklearn 尝试将字符串列表转换为 float

我正在尝试使sklearn.svm.SVC(kernel="linear")算法工作。我的X是一个由[misc.imread(each).flatten()foreachinfilenames]组成的数组,我的y2是一个由字符串组成的列表的一部分,例如["A","1","4","F"..]。当我尝试clf.fit(X,y2)时,sklearn尝试将我的字符串列表转换为float但失败,抛出ValueError:couldnotconvertstringtofloat。我该如何解决这个问题?编辑:将sklearn升级到0.15解决了问题。 最佳答案