首页 > 解决方案 > 如何从 Python 中预处理的 ML 数据集中受益?

问题描述

我正在研究 NLP 上的机器学习

我必须尝试不同大小的数据集。

我的数据集有 50,000 条记录,但我必须尝试这些大小

100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000

问题是即使对于小型数据集,拟合过程也需要很长时间(小时)

但我想知道是否有一种方法可以从以前的数据集大小中受益。

我的意思是对于 2000 条记录的 ML,我可以在 1000 条记录的 ML 之上建立

对于 1000 条记录,我可以在 500 条之上建立等等

或者处理整个 50,000 并且当 ML 过程 100 给出结果并同时继续进行直到达到处理 200 并给出结果等等

这可能吗?

这是我的代码

for i in [100,200,500,1000,2000,5000,10000,20000,50000]:

    df = df_all[(df_all["RepID"]<i)]
    multilabel_binarizer = MultiLabelBinarizer()
    multilabel_binarizer.fit(df['Code'])
    y = multilabel_binarizer.transform(df['Code'])
    X = df[df.columns.difference(["Code"])]

    
    xtrain, xval, ytrain, yval = train_test_split(X, y, test_size=0.2, random_state=1013)
    mdl = LogisticRegression()
    clf = OneVsRestClassifier(mdl)
    y_pred = cross_val_predict(clf, X, y, cv=10, n_jobs=-1)

    F1 = f1_score(y, y_pred, average="micro")
    print(F1)

标签: python

解决方案


推荐阅读