如何找到分类器允许的最大训练集?

Posted

技术标签:

【中文标题】如何找到分类器允许的最大训练集?【英文标题】:How to find the largest size of training set that classifier allows? 【发布时间】:2017-03-05 19:43:17 【问题描述】:

我是 Python 和机器学习的新手。我得到了包含 581012 条记录和 54 列的数据集。我正在尝试将数据拆分为 80 20。80% 用于训练,20% 用于测试。我使用 GridSearchCV 进行交叉验证并找到最佳参数。由于数据太大,我执行应用程序超过一天,但无法得到结果。我认为有什么方法可以知道分类器允许的最大训练集大小是多少?下面是我的执行代码

parameters = 'max_depth' :range(1,21)
print parameters 
clf = GridSearchCV(tree.DecisionTreeClassifier(), parameters, cv=10, n_jobs=-1)
clf.fit(X,y)

tree_model = clf.best_estimator_
import pickle
s = pickle.dumps(tree_model)
print(clf.best_score_, clf.best_params_)

【问题讨论】:

【参考方案1】:

我认为您需要在培训之前修剪您的数据库。你也可以试试WEKA工具。 http://www.cs.waikato.ac.nz/ml/weka/documentation.html

【讨论】:

以上是关于如何找到分类器允许的最大训练集?的主要内容,如果未能解决你的问题,请参考以下文章

如何生成混淆矩阵并找到朴素贝叶斯分类器的错误分类率?

如何使用 R 中经过训练的分类器预测新数据集?

大数据集的最大熵分类器

如何在 python 的朴素贝叶斯分类器中对用户输入测试集进行分类?

我应该如何在包含文本的训练集上使用机器学习分类器?

如何将 tf-idf 应用于整个数据集(训练和测试数据集),而不是仅在朴素贝叶斯分类器类中训练数据集?