scikit-learn相关内容
我已经创建了一个TF-IDF矩阵,但现在我想检索顶部2个字的每个文档.我想通过文件ID,它应该给我顶2个字. 现在,我有这样的示例数据: from sklearn.feature_extraction.text import TfidfVectorizer d = {'doc1':"this is the first document",'doc2':"it is a sunny d
..
我正在使用scikit库来使用svm.我有大量无法阅读的数据,无法提供给fit. 有没有一种方法可以一一训练它(手段可能类似于对训练数据的每个输入模式调用fit. 解决方案 支持向量机(至少是在scikit-learn所包装的libsvm中实现的)从根本上说是一个批处理算法:它需要访问所有一次将数据存储在内存中.因此它们是不可扩展的. 相反,您应该使用支持通过partial_fit
..
我尝试在scikit-learn中使用GradientBoostingClassifier,它的默认参数可以正常工作.但是,当我尝试用其他分类器替换BaseEstimator时,它不起作用,并给了我以下错误, return y - np.nan_to_num(np.exp(pred[:, k] - IndexError: too many indices 您对此问题有任何解决办法吗?
..
我已经开始将sckikit-learn用于我的工作.因此,我正在研究教程,它提供了加载某些数据集的标准过程: $ python >>> from sklearn import datasets >>> iris = datasets.load_iris() >>> digits = datasets.load_digits() 但是,为了方便起见,我尝试通过以下方式加载数据: In
..
我想存储TF-IDF矩阵,所以我不必一直重新计算它.我正在使用scikit-learn的TfIdfVectorizer.将它腌制或存储在数据库中是否更有效率? 某些情况:我正在使用k均值聚类来提供文档推荐.由于经常添加新文档,因此我想存储文档的TF-IDF值,以便重新计算聚类. 解决方案 酸洗(尤其是使用 joblib.dump )适用于短期存储,例如在交互式会话中保存部分结果或将模
..
我正在尝试从文本语料库中获取最多信息.从这个得到很好回答的问题我知道可以按以下步骤完成此任务: def most_informative_feature_for_class(vectorizer, classifier, classlabel, n=10): labelid = list(classifier.classes_).index(classlabel) featu
..
我有一个分类问题,我想测试所有可用的算法以测试其在解决问题上的性能. 如果您知道除下面列出的分类算法以外的任何分类算法,请在此处列出. GradientBoostingClassifier() DecisionTreeClassifier() RandomForestClassifier() LinearDiscriminantAnalysis() LogisticRegression()
..
我正在使用Scikit-Learn(sklearn)来对一所有Logistic回归分类器.我有一个很大的数据集,它太慢了,无法一次全部运行.我也想随着训练的进行研究学习曲线. 我想使用批量梯度下降来训练我的分类器,例如500个样本.有什么方法可以使用sklearn来做到这一点,还是应该放弃sklearn并“自己动手"? 这是我到目前为止所拥有的: from sklearn.lin
..
我需要为文本分类计算超过1万个文档中超过10万个功能的信息增益得分.下面的代码可以正常工作,但是整个数据集非常慢-在笔记本电脑上需要一个多小时的时间.数据集是20newsgroup,我正在使用scikit-learn, chi2 (该功能在scikit中提供)非常快速. 有什么想法可以更快地为此类数据集计算信息增益吗? def information_gain(x, y):
..
我试图从sklearn python模块中了解如何使用kfolds交叉验证. 我了解基本流程: 实例化模型,例如model = LogisticRegression() 拟合模型model.fit(xtrain, ytrain) 预测例如model.predict(ytest) 使用例如交叉val得分以测试拟合模型的准确性. 我很困惑的地方是使用带有交叉val得分的skle
..
我正在使用sklearn.pipeline.Pipeline链接特征提取器和分类器.有没有一种方法可以并行组合多个要素选择类(例如,来自sklearn.feature_selection.text的要素选择类)并加入其输出? 我的代码现在如下所示: pipeline = Pipeline([ ('vect', CountVectorizer()), ('tfidf',
..
从我的研究中,我发现了三个相互矛盾的结果: SVC(kernel="linear")更好 LinearSVC更好 没关系 有人可以解释何时使用LinearSVC与SVC(kernel="linear")吗? 似乎LinearSVC比SVC稍好,而且通常更挑剔.但是,如果scikit决定花时间在实现线性分类的特定情况下,为什么LinearSVC不会胜过SVC? 解决方案
..
对于每个样本,我拥有权重不同的数据.在我的应用程序中,重要的是在估计模型和比较替代模型时要考虑这些权重. 我正在使用sklearn估计模型并比较其他超参数选择.但是此单元测试表明GridSearchCV不适用于sample_weights来估计分数. 有没有办法让sklearn使用sample_weight评分模型? 单元测试: from __future__ import
..
我已经知道"xgboost.XGBRegressor是XGBoost的Scikit-Learn Wrapper界面." 但是它们还有其他区别吗? 解决方案 xgboost.train 是用于通过梯度增强方法训练模型的低级API. xgboost.XGBRegressor和xgboost.XGBClassifier是准备DMatrix并传递相应目标函数和参数的包装器(如他们称其为
..
我遇到了一个问题,我的svm.SVC()的超参数太宽,以致GridSearchCV()从未完成!一种想法是改为使用RandomizedSearchCV().但是同样,我的数据集相对较大,因此500次迭代大约需要1个小时! 我的问题是,为了避免浪费资源,在GridSearchCV(或RandomizedSearchCV)中有什么好的设置(就每个超参数的值范围而言)? 换句话说,如何决定是
..
我正在尝试检测数据集的异常值,并且找到了sklearn的有人可以向我解释它的工作原理并提供示例吗? 我怎么知道异常值是“真实的"异常值? 调整参数? 这是我的代码: clf = IsolationForest(max_samples=10000, random_state=10) clf.fit(x_train) y_pred_train = clf.predict(x_t
..
我有一些不太了解的机器学习结果.我正在使用python sciki-learn,具有2个以上的14个功能的百万个数据. “精确度"曲线上"ab"的分类看起来很差,但是Ab的ROC看起来和大多数其他组的分类一样好.有什么可以解释的? 解决方案 类不平衡. 与ROC曲线不同,PR曲线对不平衡非常敏感.如果针对不平衡数据优化分类器以获得良好的AUC,则很可能会获得较差的精度调用结果.
..
我想使用scikit-learn的 GridSearchCV import pandas as pd train = pd.DataFrame({'date': pd.DatetimeIndex(['2012-1-1', '2012-9-30', '2013-4-3', '2014-8-16', '2015-3-20', '2015-6-30']), 'feature1': [1.2, 3.
..
我正在使用Python scikit-learn对从csv获得的数据进行简单的线性回归. reader = pandas.io.parsers.read_csv("data/all-stocks-cleaned.csv") stock = np.array(reader) openingPrice = stock[:, 1] closingPrice = stock[:, 5] prin
..
我使用Scikit学习的文本分类.我要计算的信息增益用于在(稀疏)文档术语矩阵相对于每个属性的一类. 信息增益被定义为H(类) - H(类|属性),其中H是熵. 使用weka可以通过 InfoGainAttribute实现.但是我还没有发现这一措施在scikit学习. 然而,它已经建议该公式对于以上信息增益是相同的措施,因为互信息.此比赛也维基中的定义. 是否可以使用特定的设置相
..