草庐IT

learning-locker

全部标签

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

python - 如何正确使用 scikit-learn 的高斯过程进行 2D 输入、1D 输出回归?

在发帖之前,我做了很多搜索,发现thisquestion这可能正是我的问题。但是,我尝试了答案中提出的建议,但不幸的是,这并没有解决它,我无法添加评论以请求进一步解释,因为我是这里的新成员。无论如何,我想在Python中使用带有scikit-learn的高斯过程,从一个简单但真实的案例开始(使用scikit-learn文档中提供的示例)。我有一个名为X的2D输入集(8对2个参数)。我有8个对应的输出,收集在一维数组y中。#Inputs:8pointsX=np.array([[p1,q1],[p2,q2],[p3,q3],[p4,q4],[p5,q5],[p6,q6],[p7,q7],[

python - 使用 scikit-learn PCA 找到具有最高方差的维度

我需要使用pca来识别某组数据中方差最大的维度。我正在使用scikit-learn的pca来执行此操作,但我无法从pca方法的输出中确定我的数据中方差最大的组件是什么。请记住,我不想消除这些维度,只是识别它们。我的数据被组织成一个包含150行数据的矩阵,每行有4个维度。我的做法如下:pca=sklearn.decomposition.PCA()pca.fit(data_matrix)当我打印pca.explained_variance_ratio_时,它会输出从最高到最低排序的方差比数组,但它没有告诉我它们对应的数据中的哪个维度(我试过改变矩阵上列的顺序,得到的方差比数组是相同的)。打

python - scikit-learn 中聚类超参数评估的网格搜索

我正在对大约100条记录(未标记)的样本进行聚类,并尝试使用grid_search来评估具有各种超参数的聚类算法。我正在使用silhouette_score进行评分,效果很好。我的问题是我不需要使用GridSearchCV/RandomizedSearchCV的交叉验证方面,但是我找不到简单的GridSearch/RandomizedSearch。我可以自己编写,但ParameterSampler和ParameterGrid对象非常有用。我的下一步将是继承BaseSearchCV并实现我自己的_fit()方法,但我认为值得询问是否有更简单的方法来做到这一点,因为例如通过向cv参数传递一

python - 使用 Dill 序列化 scikit-learn/statsmodels 模型的陷阱是什么?

我需要序列化​​scikit-learn/statsmodels模型,以便将所有依赖项(代码+数据)打包在一个人工制品中,并且该人工制品可用于初始化模型并进行预测。使用picklemodule不是一个选项,因为这只会处理数据依赖性(代码不会被打包)。所以,我一直在用Dill进行实验。.为了使我的问题更准确,以下是我构建模型并将其持久化的示例。fromsklearnimportdatasetsfromsklearnimportsvmfromsklearn.preprocessingimportNormalizerimportdilldigits=datasets.load_digits(

python - 用于回归的 Scikit-learn 交叉验证评分

如何使用cross_val_score进行回归?默认评分似乎是准确度,这对于回归来说意义不大。假设我想使用均方误差,是否可以在cross_val_score中指定?尝试了以下两种但不起作用:scores=cross_validation.cross_val_score(svr,diabetes.data,diabetes.target,cv=5,scoring='mean_squared_error')和scores=cross_validation.cross_val_score(svr,diabetes.data,diabetes.target,cv=5,scoring=metri

python - Scikit-learn 交叉验证分数 : too many indices for array

我有以下代码fromsklearn.ensembleimportExtraTreesClassifierfromsklearn.cross_validationimportcross_val_score#splitthedatasetfortrainandtestcombnum['is_train']=np.random.uniform(0,1,len(combnum))ET:{1})".format(label_columns,et_score))检查数组的形状:features.shapeOut[19]:(43069,34)和labels.shapeOut[20]:(43069,1

python - scikit-learn 中的 "fit"方法有什么作用?

关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭5年前。Improvethisquestion您能否解释一下scikit-learn中的“fit”方法的作用?为什么有用? 最佳答案 简而言之:拟合等于训练。然后,经过训练后,模型就可以用来进行预测了,通常使用.predict()方法调用。详细说明:将模型拟合(即使用.fit()方法)训练数据本质上是建模过程的训练部分。它找到通过所使用的算法指定的方程的系数(例如上面的umutto's线性回归示