草庐IT

scikit-bio

全部标签

python - scikit-learn 中文本数据的监督降维

我正在尝试使用scikit-learn对自然语言数据进行一些机器学习。我已经将语料库转换为词袋向量(采用稀疏CSR矩阵的形式),我想知道sklearn中是否有监督降维算法能够获取高维、监督数据和投影它进入一个较低维的空间,保留了这些类之间的差异。高级问题描述是我有一个文档集合,每个文档都可以有多个标签,我想根据文档的内容预测这些标签中的哪些会被贴在新文档上文档。从本质上讲,这是一个使用BoW向量稀疏表示的监督、多标签、多类问题。sklearn中是否有可以处理此类数据的降维技术?人们在scikit-learn中处理受监督的BoW数据时是否使用了其他类型的技术?谢谢!

python - 用 scikit-learn 拟合向量自回归模型

我正在尝试使用scikit-learn中包含的广义线性模型拟合方法来拟合向量自回归(VAR)模型。线性模型具有y=Xw的形式,但系统矩阵X具有非常奇特的结构:它是block对角线的,所有block都是相同的。为了优化性能和内存消耗,模型可以表示为Y=BW,其中B是X的一个block>、Y和W现在是矩阵而不是向量。LinearRegression、Ridge、RidgeCV、Lasso和ElasticNet类很容易接受后一种模型结构。然而,由于Y是二维的,拟合LassoCV或ElasticNetCV失败。我找到了https://github.com/scikit-learn/scikit

python - 如何使用 scikit 的预处理/规范化以及交叉验证?

作为没有任何预处理的交叉验证的例子,我可以这样做:tuned_params=[{"penalty":["l2","l1"]}]fromsklearn.linear_modelimportSGDClassifierSGD=SGDClassifier()fromsklearn.grid_searchimportGridSearchCVclf=GridSearchCV(myClassifier,params,verbose=5)clf.fit(x_train,y_train)我想使用类似的方法预处理我的数据fromsklearnimportpreprocessingx_scaled=prep

python - 在scikit learn中,如何处理数值和标称值混合的数据?

我知道scikit-learn中的计算是基于NumPy的,所以一切都是矩阵或数组。这个包如何处理混合数据(数值和标称值)?例如,产品可能具有属性“颜色”和“价格”,其中颜色是标称值,价格是数字。我注意到有一个名为“DictVectorizer”的模型来计算标称数据。例如,两个产品是:products=[{'color':'black','price':10},{'color':'green','price':5}]'DictVectorizer'的结果可能是:[[1,0,10],[0,1,5]]如果“颜色”属性有很多不同的值,则矩阵会非常稀疏。而且长特征会降低一些算法的性能,比如决策树

python - 将 Pandas 数据集转换为数组,以便在 Scikit-Learn 中建模

我们能否在PandasDataFrames上运行scikit-learn模型,或者我们是否需要将DataFrames转换为NumPy数组? 最佳答案 您可以将pandas.DataFrame与sklearn一起使用,例如:importpandasaspdfromsklearn.clusterimportKMeansdata=[(0.2,10),(0.3,12),(0.24,14),(0.8,30),(0.9,32),(0.85,33.3),(0.91,31),(0.1,15),(-0.23,45)]p_df=pd.DataFrame

python - 将 partial_fit 与 Scikit 管道结合使用

如何在包裹在Pipeline中的scikit-learn分类器上调用partial_fit()()?我正在尝试使用SGDClassifier构建一个可增量训练的文本分类器,例如:fromsklearn.linear_modelimportSGDClassifierfromsklearn.pipelineimportPipelinefromsklearn.feature_extraction.textimportHashingVectorizerfromsklearn.feature_extraction.textimportTfidfTransformerfromsklearn.mul

python - pip install scikit-image 出错

我使用的是Windows8.164位和Python2.7。尝试从shell安装scikit-imagepipinstallscikit-image我遇到了这个错误:命令“pythonsetup.pyegg_info”在c:\users\france~1\appdata\local\temp\pip-buildtksnfe\scikit-image\中失败,错误代码为1下载没问题,但安装失败。这里有什么问题,如何解决?编辑升级我的pip之后python-mpipinstall-Upipsetuptools再试一次,我得到了:命令“pythonsetup.pyegg_info”在c:\us

python - 导入 SciPy 或 scikit-image, "from scipy.linalg import _fblas: Import Error: DLL failed"

我正在导入:fromscipyimportmisc,io但是我得到了这些错误:Traceback(mostrecentcalllast):File"C:\work_asaaki\code\generateProposals.py",line20,infromscipyimportmisc,ioFile"C:\Python27\lib\site-packages\scipy\misc\__init__.py",line47,infromscipy.specialimportcomb,factorial,factorial2,factorialkFile"C:\Python27\lib\s

Python scikit 学习(指标): difference between r2_score and explained_variance_score?

我注意到r2_score和explained_variance_score都是用于回归问题的内置sklearn.metrics方法。我一直认为r2_score是模型解释的百分比方差。它与explained_variance_score有何不同?你什么时候会选择一个而不是另一个?谢谢! 最佳答案 我找到的大部分答案(包括此处)都强调R2之间的区别和ExplainedVarianceScore,即:平均残差(即平均误差)。但是,还有一个重要的问题被抛在脑后,那就是:我到底为什么要考虑均值误差?复习:R2:是决定系数,用于测量(最小二乘)

python - 如何指定 scikit-learn 的朴素贝叶斯的先验概率

我将scikit-learn机器学习库(Python)用于机器学习项目。我使用的算法之一是高斯朴素贝叶斯实现。GaussianNB()函数的属性之一如下:class_prior_:array,shape(n_classes,)我想先手动更改类(class),因为我使用的数据非常倾斜,并且记忆其中一个类(class)非常重要。通过为该类别分配高先验概率,召回率应该会增加。但是,我不知道如何正确设置该属性。我已经阅读了以下主题,但他们的答案对我不起作用。HowcanthepriorprobabilitiesmanuallysetfortheNaiveBayesclfinscikit-lea