草庐IT

scikits-learn

全部标签

python - 如何在不使用 imageio 或 scikit 图像的情况下将图像读入脚本?

我正在尝试在python中读取png图像。scipy中的imread函数是deprecated他们建议使用imageio库。但是,我宁愿将外部库的使用限制为scipy、numpy和matplotlib库。因此,使用imageio或scikitimage对我来说不是一个好的选择。python或scipy、numpy或matplotlib中是否有任何方法可以读取图像,这些方法不会被弃用? 最佳答案 你可以使用matplotlib(如matplotlibdocumentation所示)importmatplotlib.pyplotaspl

python - LogisticRegression.predict_proba 的 scikit-learn 返回值

LogisticRegression.predict_proba函数究竟返回什么?在我的示例中,我得到如下结果:[[4.65761066e-039.95342389e-01][9.75851270e-012.41487300e-02][9.99983374e-011.66258341e-05]]从其他计算中,我知道,使用sigmoid函数,第二列是概率。documentation说,第一列是n_samples,但那不可能,因为我的示例是评论,是文本而不是数字。文档还说,第二列是n_classes。这当然不可能,因为我只有两个类(即+1和-1),并且该函数应该是关于计算样本真正存在的概率

python - scikit-learn 适合大数据任务吗?

我正在处理一项涉及使用机器学习技术的TREC任务,其中数据集包含超过5TB的网络文档,计划从中提取词袋向量。scikit-learn有一组不错的功能,似乎符合我的需要,但我不知道它是否能很好地扩展以处理大数据。例如,HashingVectorizer是否能够处理5TB的文档,并行化是否可行?此外,对于大规模机器学习任务,还有哪些替代方案? 最佳答案 HashingVectorizer如果您将数据迭代地分block成批处理,例如适合内存的10k或100k个文档,那么HashingVectorizer将起作用。然后您可以将这批转换后的文

python - 为 Scikit-Learn 向量化 Pandas 数据框

假设我在Pandas中有一个如下所示的数据框:>my_dataframecol1col2AfooBbarCsomethingAfooAbarBfoo其中行表示实例,列输入特征(不显示目标标签,但这将用于分类任务),即我试图构建X出my_dataframe.我怎样才能有效地使用例如矢量化它?DictVectorizer?我是否需要先将DataFrame中的每个条目都转换为字典?(这就是上面链接中的示例中完成的方式)。有没有更有效的方法来做到这一点? 最佳答案 首先,我不知道您的示例数组中的哪些位置是特征,以及观察值在哪里。其次,Dic

python - scikit 学习输出 metrics.classification_report 为 CSV/制表符分隔格式

我正在Scikit-Learn中进行多类文本分类。该数据集正在使用具有数百个标签的多项朴素贝叶斯分类器进行训练。这是ScikitLearn脚本的摘录,用于拟合MNB模型from__future__importprint_function#Read**`file.csv`**intoapandasDataFrameimportpandasaspdpath='data/file.csv'merged=pd.read_csv(path,error_bad_lines=False,low_memory=False)#defineXandyusingtheoriginalDataFrameX=m

python - 使用 scikit-learn 的 Web 应用程序

我在本地训练了一个sklearn分类器,我必须创建一个简单的Web应用程序来演示它的使用。我是网络应用程序开发的完全菜鸟,我不想浪费时间使用不支持我正在使用的模块的框架创建网络应用程序。您认为什么是完成这项任务的好方法?我应该使用什么网络应用开发框架(如果有的话)?我是否需要深入研究Heroku、django等内容,或者对于简单的科学演示是否有更简单、更快捷的解决方案?我的想法是获取我训练的分类器,在服务器上对其进行腌制和取消腌制,然后从服务器运行classify,但我不知道从哪里开始。 最佳答案 如果这只是为了演示,请离线训练您的

python - Scikit-learn:如何在一维数组上运行 KMeans?

我有一个介于0和1之间的13.876(13,876)个值的数组。我想仅将sklearn.cluster.KMeans应用于此向量,以查找对这些值进行分组的不同集群.但是,KMeans似乎适用于多维数组而不是一维数组。我想有一个技巧可以让它工作,但我不知道如何。我看到了KMeans.fit()接受"X:array-likeorsparsematrix,shape=(n_samples,n_features)",但它希望n_samples大于一我尝试将我的数组放在np.zeros()矩阵上并运行KMeans,但随后将所有非空值放在类1上,其余的放在类0上。谁能帮助在一维数组上运行这个算法?

python - 将 scikit-learn 向量化器和词汇表与 gensim 一起使用

我正在尝试使用gensim主题模型回收scikit-learn矢量化器对象。原因很简单:首先,我已经有大量的矢量化数据;其次,我更喜欢scikit-learn矢量化器的界面和灵active;第三,即使使用gensim进行主题建模非常快,但根据我的经验计算其字典(Dictionary())相对较慢。之前有人问过类似的问题,especiallyhere和here,桥接解决方案是gensim的Sparse2Corpus()函数,它将Scipy稀疏矩阵转换为gensim语料库对象。但是,这种转换没有使用sklearn矢量化器的vocabulary_属性,该属性保存单词和特征ID之间的映射。为了

python - 结合 NLTK 和 scikit-learn 中的文本词干提取和标点符号删除

我正在使用NLTK和scikit-learn的CountVectorizer的组合来进行词干提取和标记化。以下是CountVectorizer的简单用法示例:fromsklearn.feature_extraction.textimportCountVectorizervocab=['Theswimmerlikesswimmingsoheswims.']vec=CountVectorizer().fit(vocab)sentence1=vec.transform(['Theswimmerlikesswimming.'])sentence2=vec.transform(['Theswim

python - 如何将 Scikit-Learn-Keras 模型保存到持久性文件 (pickle/hd5/json/yaml)

我有以下代码,使用KerasScikit-LearnWrapper:fromkeras.modelsimportSequentialfromsklearnimportdatasetsfromkeras.layersimportDensefromsklearn.model_selectionimporttrain_test_splitfromkeras.wrappers.scikit_learnimportKerasClassifierfromsklearn.model_selectionimportStratifiedKFoldfromsklearn.model_selectionim