2

csv ファイルに非常に大きなデータセットがあります (1,700,000 個の raw と 300 個のスパース フィーチャ)。・欠損値が多い。- データは数値とカテゴリ値の間で異なります。- 従属変数 (クラス) はバイナリ (1 または 0) です。- データが大きく歪んでおり、肯定的な回答の数が少ない。

今、私に求められているのは、このデータに回帰モデルとその他の機械学習アルゴリズムを適用することです。

私はこれが初めてで、助けが必要です.. -回帰モデルの場合、カテゴリデータをどのように扱うのですか? 欠損値はそれにあまりにも多くの影響を与えますか? - このような大規模でまばらな歪んだデータに対して試すことができる最良の予測モデルは何ですか? - どのプログラムを使用するようアドバイスされていますか? Weka を試してみましたが、それほど多くのデータを開くことさえできません (メモリ障害)。ファイルを開くことができるようにするには、欠損値を代入する必要があることに加えて、matlab は数値 csv またはカテゴリ csv を混在させずに開くことができることを知っています。Rのことを少し知っています。

  • Excel、Access、Perl スクリプトを使用してデータを操作しようとしています。その量のデータでは非常に困難です。Excel はほぼ 100 万件を超えるレコードを開くことができず、アクセスは 255 列を超える列を開くことができません。なにか提案を。

事前に助けてくれてありがとう

4

1 に答える 1

2

まず第一に、回帰ではなく分類について話している- 分類では固定セット (0 または 1 など) から値を予測でき、回帰では実際の数値出力 (0、0.5、10.1543 など) を生成できます。また、いわゆるロジスティック回帰と混同しないでください。これも分類器であり、その名前は線形回帰に基づいていることを示しています。

このような大量のデータを処理するには、帰納的な(更新可能な) モデルが必要です。特に、Weka では、分類セクションの下にそのようなアルゴリズムが多数あります (たとえば、Naive Bayes Updatable、Neutral Networks Updatable など)。誘導モデルを使用すると、データを部分ごとにロードし、適切な方法でモデルを更新できます (Weka の場合、使用方法の詳細については、ナレッジ フロー インターフェイスを参照してください)。

一部の分類器はカテゴリ データで機能する可能性がありますが、それらから更新可能なものを思い出すことができないため、おそらくカテゴリ データを数値に変換する必要があります。ここでの標準的な解決策は、指標属性を使用することです。つまり、すべてのカテゴリ属性をいくつかのバイナリ指標に置き換えます。たとえば、day-of-week7 つの可能な値を持つ属性がある場合、7 つのバイナリ属性 ( 、 など) で置き換えることSundayMondayでき1ます0

欠損値の重要性は、データの性質によって異なります。事前にニュートラルな値に置き換える価値がある場合もあれば、分類器の実装自体がそれを行う場合もあります (詳細については、アルゴリズムのマニュアルを確認してください)。

最後に、非常に歪んだデータの場合は、精度の代わりにF1 (または単にPrecision / Recall ) 測定を使用します。

于 2012-04-18T03:14:55.397 に答える