Fredit Flow
製品

機械学習のデータクリーニングは、承認したルールから始まる

01

機械学習のデータクリーニングは、書き出したルールに行き着きます。どの値を直すか、どの行を除くか、どの欠損に印を付けるかです。Fredit Flow はそのルールを Python スクリプトにし、実行し、新しいファイルを保存して diff を表示します。各ステップを確認するのはあなたです。

01

クリーニングの前に見る

read_file と Shell は、ルールを書く前に各列の実際の値を表示します。おかしな値はそこに潜んでいます。

02

再実行できるスクリプト

write_file が Python のクリーニングスクリプトを保存するので、次のエクスポートにも、新たな手作業の編集ではなく同じルールが適用されます。

03

編集ごとに diff

edit_file はスクリプトを変更して diff を表示します。Ask first モードでは、適用される前に承認または拒否できます。

エージェントにできること

まず分割し、それから当てはめる

スケーリングや中央値による補完を当てはめる前に、データを学習用とテスト用に分割し、学習用で計算した値をテスト用に適用します。統計値は学習用だけから求めます。

モデル準備のための 2 つの手順例

リークなしで欠けた年齢を補う

機械学習のデータ前処理では、クリーニングのあとにカテゴリのエンコードや数値のスケーリングといった工程が加わり、すべての統計値は学習用だけから求める必要があります。たとえば、ratings.csv の欠けた年齢を中央値で補いたいとします。Fredit Flow は grep で空のフィールドがある行を見つけ、write_file で prepare.py を保存し、Shell であなた自身の Python コマンドを使って実行します。スクリプトは train_clean.csv と test_clean.csv を書き出し、中央値は学習用の行で計算してからテスト用の行に適用されます。ratings.csv には手を触れません。Ask first モードでは書き込みの前にカードが一時停止するので、diff を読み、スクリプトが出力する行数を比べ、新しい各ファイルの 5 行を抜き取り確認します。乱雑な実世界のデータを整えるパイプラインは、このような 1 つのスクリプトから始められます。

範囲と、あり得ない値を確認する

マイナスの年齢やマイナスの価格のようなあり得ない値は、大きなファイルに潜んでいます。ML 用のデータクリーニングに時間の大半を使っているなら、各ルールを一度書き出して、スクリプトに適用させましょう。欠損値、重複、外れ値の処理には、それぞれ別のルールが必要で、スクリプトを実行する前に書き出しておきます。Fredit Flow は read_file で列名を確認し、edit_file でスクリプトに範囲チェックを追加し、Shell で実行して、終了コードと範囲外の行数を報告します。チェックに通らなかった行はレビュー用ファイルに出力されます。何も削除されません。Plan only モードでは、これらのチェックを先に一覧にします。ルールを変更する前に、レビュー用ファイルを 1 行ずつ読んでください。

Fredit Flow がしないこと

Fredit Flow はホスト型サービスでも、他のソフトウェア用のプラグインでもありません。ご自身のファイル、ご自身の PC、使用を許可されたサーバーのためのものなので、作業はご自身のデータ、または処理する権利のあるデータに限ってください。結果を確認するのはあなたです。コードやクリーニングのルールが正しいと約束するものではありません。

Windows 版 Fredit Flow

クリーニングのルールをスクリプトにまとめる

Fredit Flow をダウンロード ↗