6

[66k、56k] サイズ (行、列) の csv ファイルがあります。疎行列です。numpy がそのサイズの行列を処理できることはわかっています。皆さんの経験に基づいて知りたいのですが、scikit-learn アルゴリズムが快適に処理できる機能はいくつありますか?

4

2 に答える 2

15

見積もり業者によります。そのサイズでは、線形モデルは依然として良好に機能しますが、SVM のトレーニングにはおそらく永遠に時間がかかります (ランダム フォレストは疎行列を処理しないため、忘れてしまいます)。

私は個人的に を使用LinearSVCLogisticRegressionておりSGDClassifier、サイズが約 300k × 330 万のスパース行列を問題なく使用しています。当面の仕事に適した推定器を選択するには、 @amueller のscikit-learn チート シートを参照してください。

完全な開示: 私は scikit-learn コア開発者です。

于 2013-05-01T21:23:17.250 に答える
1

モデルを頻繁にトレーニングする必要がある場合は、おそらく線形モデル (回帰、SGD、ベイズ) が最適です。

モデルを実行する前に、次のことを試すことができます

1) 機能削減。簡単に削除できるデータの特徴はありますか? たとえば、データがテキスト ベースまたは評価ベースの場合、多くの既知のオプションを利用できます。

2) 学習曲線分析。モデルをトレーニングするためにデータの小さなサブセットのみが必要な場合があります。その後は、データに適合するか、精度がわずかに向上するだけです。

どちらの方法でも、必要なトレーニング データを大幅に削減できます。

于 2013-05-02T07:43:23.210 に答える