目次:
- 機能を作成する必要性を理解する
- 多項式展開では、フィーチャ間のインタラクションを自動的に作成するだけでなく、フィーチャの作成(フィーチャの四角形の計算など)も自動的に行います。インタラクションはフィーチャの乗算に依存します。乗算を使用して新しいフィーチャを作成すると、フィーチャの全体的な振る舞いを把握するのに役立ちます。したがって、特殊な状況を示唆する機能間の複雑な関係をマップすることができます。
ビデオ: NNCチュートリアル:画像分類用データセットを作成するには 2024
さまざまなソースから取得した生データに機械学習タスクを実行するために必要な機能がないことがあります。このような場合は、目的の結果を得るために独自のフィーチャを作成する必要があります。フィーチャを作成しても、薄い空気からデータを作成するという意味ではありません。既存のデータから新しいフィーチャを作成します。
機能を作成する必要性を理解する
機械学習アルゴリズムの大きな制限の1つは、使用している機能と応答をリンクできる数式を推測することができないことです。場合によっては、利用可能な情報(適切な情報がないことを意味します)を使用してレスポンスをマッピングすることができないため、推測できない場合があります。他のケースでは、提供された情報は、アルゴリズムが適切に学習するのに役立ちません。
<!例えば、不動産の価格をモデリングしている場合、土地の表面はかなり予測的です。なぜなら、物件が大きくなるほど、物件のコストが高くなるからです。しかし、表面の代わりに、機械の学習アルゴリズムに土地の辺の長さ(隅の緯度と経度の座標)を指定すると、アルゴリズムはあなたが提供した情報をどうするかを知ることができません。いくつかのアルゴリズムは、機能間の関係を見つけることができますが、ほとんどのアルゴリズムはそうではありません。<! - 2 - >
この問題に対する答えは、フィーチャ作成です。フィーチャ作成は、既存のフィーチャを創造的に混合することに人間が介入することを意味するため、科学よりも芸術と見なされる機械学習の一部です。このタスクは、加算、減算、乗算、および比率を使用して実行され、オリジナルよりも予測力の高い新しい派生フィーチャを生成します。問題をよく知り、人間がそれをどのように解決するかを考え出すことは、フィーチャ作成の一部です。したがって、前の例に接続すると、土地面が不動産価格につながるという事実はよく知られています。プロパティの値を推測しようとするときにサーフェスがフィーチャにない場合は、既存のデータからそのような情報を復元することができます。そうすることで、予測のパフォーマンスが向上します。
<!あなたが常識、常識、または専門知識に頼っているかどうかにかかわらず、まずどの情報が問題に最も適しているか把握してから、マシンアルゴリズムを多用することができます。それを利用可能にするか、あなたの機能の中からそれを派生させてください。
機能を自動的に作成するいくつかの新しい機能を自動的に作成することができます。自動フィーチャ作成を実現する1つの方法は、多項式展開を使用することです。 RとPythonの両方で自動的にフィーチャを作成できるように、多項式展開を行うための特別な方法があります。当面は、多項式展開の背後にある概念を把握する必要があります。
多項式展開では、フィーチャ間のインタラクションを自動的に作成するだけでなく、フィーチャの作成(フィーチャの四角形の計算など)も自動的に行います。インタラクションはフィーチャの乗算に依存します。乗算を使用して新しいフィーチャを作成すると、フィーチャの全体的な振る舞いを把握するのに役立ちます。したがって、特殊な状況を示唆する機能間の複雑な関係をマップすることができます。
相互作用の大きな例は、車から放出される騒音と車の価格です。消費者は、スポーツカーを購入しない限り、騒々しい車を気にしません。その場合、エンジンの騒音は、車のパワーの所有者を思い起こさせるプラスです。また、傍観者はクールな車に気付くので、騒音は確かに他の人の注意を引き付けるので、騒音は大きな影響を与えます。一方、家族の車を運転するときの騒音は、それほど冷たいものではありません。機械学習アプリケーションでは、ある自動車の嗜好率を予測しようとすると、騒音や車の価格などの特徴自体が予測的である。しかし、2つの値を乗算してそれらをフィーチャのセットに追加することで、ターゲットがスポーツカーであることを学習アルゴリズムに明白に示唆することができます(高騒音レベルを高い価格で乗算する場合)。
特定の状況を暗示する、応答と特徴との間に非線形の関係を作り出すことによって、力が助けられる。
別の例として、年次経費を予測する必要があるとします。人々が年をとって成熟するにつれて、生活や家族の状況も変化するため、年齢は良い予測因子です。生徒は貧しい人々から始まり、仕事を見つけて家族を築くことができます。一般的な観点からは、経費は特定の時点まで増加する傾向があります。退職は通常、経費が減少する傾向がある点を示します。年齢にはそのような情報が含まれていますが、それは成長する傾向があり、その成長に費用を関連付けることは、特定の年齢で起こる逆転を説明するのには役立ちません。
二乗機能を追加すると、老化自体の影響を小さくすることができます。これは、最初は小さく、年齢とともに急速に成長します。最終的な効果は放物線であり、特定の年齢の経費のピークとその後の減少を特徴とする初期成長があります。
先に述べたように、そのようなダイナミクス(騒音やスポーツカー、消費、年齢など)を事前に知ることで、適切な機能を作成するのに役立ちます。しかし、これらのダイナミクスを事前に知らなければ、多項式展開は自動的にそれらを作成します。これは、特定の順序が与えられると、その順序の相互作用と力を作り出すからです。順序は、既存の機能に適用する乗算の数と最大パワーを指し示します。したがって、次数2の多項式展開は、すべての特徴を2乗に上げ、すべての特徴を他のすべての特徴と乗算する。 (2つのフィーチャのすべての組み合わせの乗算が得られます)数値が高いほど新しいフィーチャが作成されますが、その多くは冗長化され、機械学習アルゴリズムのデータオーバーフィットに貢献します。
多項式展開を使用する場合は、作成するフィーチャの爆発に注意する必要があります。電力は直線的に増加するので、5つのフィーチャがあり、2次の展開が必要な場合は、各フィーチャが2番目のパワーまで上げられます。 1つの順番を増やすだけで、元の機能ごとに新しいパワー機能が追加されます。代わりに、その順序までのフィーチャの組み合わせに基づいてインタラクションが増加します。実際には、5つの特徴および次数2の多項式展開により、特徴の結合の10個の固有の組合せがすべて作成される。順序を3に増やすには、2つの変数と3つの変数の固有の組み合わせ、つまり20個の機能のすべての固有の組み合わせを作成する必要があります。