データ前処理
機械学習のためのデータ前処理をマスターしましょう。モデルの精度とパフォーマンスを向上させるために、クリーニング、スケーリング、エンコーディングなどのテクニックを学びます。
データの前処理は、機械学習パイプラインの重要な初期段階であり、生データをアルゴリズムに適したきれいな形式に変換する。
アルゴリズムのためにクリーンで理解しやすい形式に変換する。実世界のデータは多くの場合、不完全で一貫性がなく、エラーや異常値に満ちている。
エラーや異常値にまみれている。もしモデルがそのような欠陥のある入力で学習された場合、結果として得られるのは
予測モデリングは不正確な結果をもたらす可能性が高い。
ガベージ・イン、ガベージ・アウト "と呼ばれる現象である。体系的に
前処理は、これらの問題に体系的に対処することで
最適なモデルの精度と安定性を達成するために不可欠である。
最適なモデルの精度と安定性を達成するために不可欠です。
前処理のコア・テクニック
前処理に含まれる具体的なステップは、テキスト、画像、表データなど、データの種類によって異なるが、一般的には次のようないくつかの基本的なタスクが含まれる。
一般的にはいくつかの基本的な作業が含まれる。
-
データのクリーニング:これには以下が含まれる。
欠損値の処理、ノイズの多いデータの修正、矛盾の解決。テクニックとしては
のようなツールを使って、統計的手段で欠損項目を埋め込んだり、破損したレコードを完全に削除したりする。
Pandas.
-
正規化とスケーリング:
特徴量のスケールが大きく異なる場合(例えば、年齢と収入など)、アルゴリズムの性能はしばしば低下する。正規化
は、数値列を0から1といった共通のスケールに調整し、大きな値が勾配降下プロセスを支配するのを防ぎます。
勾配降下プロセス。スケーリング戦略については
を参照してください。
のドキュメントを参照してください。
-
エンコード:機械学習モデルは通常、数値入力を必要とする。カテゴリーデータ(例えば
「赤」「緑」「青」のような)を数値に変換する必要がある。
ワンホットエンコーディングやラベル
エンコーディング。
-
次元削減:次のような手法
主成分分析(PCA)
入力変数の数を減らし、最も重要な情報のみを保持することで、オーバーフィッティングを防ぎ
オーバーフィッティングを防ぎ、学習を高速化します。
-
画像のリサイズ
コンピュータビジョン(CV)では、画像は多くの場合
CNN(畳み込みニューラルネットワーク)の入力レイヤーに合わせるために、画像は一定の寸法(例えば640x640ピクセル)にリサイズされなければならないことが多い。
畳み込みニューラルネットワーク(CNN)の入力層と一致させるために。
実際のアプリケーション
データの前処理は、信頼性の高いAIシステムのバックボーンとして、業界を問わずいたるところで行われている。
-
医療画像解析:
MRIやCTスキャンで異常を検出する場合、前処理が不可欠である。生のスキャン画像は、コントラストや解像度が
が異なります。前処理は、ピクセルの強度を正規化し、画像のサイズを変更することで、AIエージェントが画像から病変の特徴に焦点を当てるのではなく、病変の特徴に焦点を当てるようにします。
AIエージェントは、技術的なアーチファクトではなく、病理学的な特徴に焦点を当てる
技術的アーチファクトに焦点を当てる。例えば
YOLO11 腫瘍検出に使用し
を使用して診断精度を向上させています。
-
金融詐欺の検出銀行セクターでは、取引ログはしばしば乱雑で不均衡である。
前処理には、タイムスタンプのエラーを除去し、取引金額を正規化することが含まれる。また、重要な点として
データセットのバランスをとることである。
異常検知モデルが効果的に
を効果的に識別できるようにする。IBMは、データ準備
これらのビジネス・クリティカルな分析をサポートします。
Ultralytics YOLO前処理
最近のフレームワークは、前処理パイプラインのかなりの部分を自動化することが多い。そのため
YOLO11を使用する場合、画像のリサイズ、ピクセル値のスケーリング、ラベルのフォーマットなどのタスクは、学習プロセス中に内部で処理される。
のようなタスクは、学習プロセス中に内部的に処理される。このため、開発者はモデルの評価や展開など、より高度なタスクに集中することができます。
モデルの評価とデプロイメントのような、より高度なタスクに集中することができます。
次の例は、YOLO11 自動的に imgsz 議論
トレーニング中に
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model on the COCO8 dataset.
# The 'imgsz' argument triggers automatic preprocessing to resize inputs to 640px.
model.train(data="coco8.yaml", epochs=5, imgsz=640)
関連概念の区別
機械学習のワークフローにおいて、データの前処理を類似の用語と区別することは有用である:
-
対データ拡張:データ補強:前処理がデータを使えるようにフォーマットする(サイズ変更)のに対し
前処理がデータを使えるようにフォーマットする(例:サイズ変更)のに対して、補強は既存のデータに新たな合成バリエーション(例:回転、反転)を作成することで、データセットの多様性を増やし、データセットを拡張する。
データセットの多様性とロバスト性を高めるために、既存のデータを新たに合成する(回転、反転など)。
ロバスト性を高める。詳しくは
ガイドをご覧ください。
-
対フィーチャーエンジニアリング:
前処理は、生データのクリーニングと整形に重点を置く。フィーチャーエンジニアリングは、より創造的なステップである。
例えば、「価格」と「面積」から「1平方フィートあたりの価格」を計算する。
「を計算するなど)。
モデルのパフォーマンスを向上させる。
-
対データラベリング:ラベリングとは
手作業または自動化されたデータの注釈付けのプロセスである。
バウンディングボックスの描画など)を行う手動または自動化されたプロセスである。
前処理は、これらのラベル付けされた画像と注釈をニューラルネットワークのために準備する。
ニューラルネットワークのために準備します。
データの前処理をマスターすることで、エンジニアはAIプロジェクトを成功させるための基礎を築くことができます。
AIプロジェクトを成功に導く土台を築く。
モデル YOLO11や近々発表されるYOLO26のような高度なモデルが、その潜在能力をフルに発揮できるようにするのです。そのために
データセットを管理し、これらのワークフローを自動化するために
Ultralytics Platformは、Ultralytics データから展開されたモデルまでの流れを合理化する統合環境を提供します。
生データからデプロイされたモデルまでの道のりを合理化します。