ホームページ >バックエンド開発 >Python チュートリアル >ランダム フォレスト アルゴリズムの原理と実際のアプリケーションの Python の例 (完全なコード付き)
ランダム フォレスト アルゴリズムは、複数のデシジョン ツリーと、ブートストラップと集計と呼ばれる手法を使用して回帰および分類タスクを実行できるアンサンブル手法です。この背後にある基本的な考え方は、単一のデシジョン ツリーに依存するのではなく、複数のデシジョン ツリーを組み合わせて最終出力を決定することです。
ランダム フォレストは、多数の分類木を生成します。フォレスト内の各ツリーの下に入力ベクトルを配置し、入力ベクトルに基づいて新しいオブジェクトを分類します。各ツリーにはクラス (「投票」と呼ぶことができます) が割り当てられ、最も多くの票を獲得したクラスが最終的に選択されます。
次の段階は、ランダム フォレスト アルゴリズムがどのように機能するかを理解するのに役立ちます。
ステップ 1: まず、データセットからランダムなサンプルを選択します。
ステップ 2: サンプルごとに、アルゴリズムによってデシジョン ツリーが作成されます。すると、各決定木の予測結果が得られます。
ステップ 3: このステップで予想される各結果について投票が行われます。
ステップ 4: 最後に、最も多くの票を獲得した予測結果を最終予測結果として選択します。
ランダム フォレスト アルゴリズムの主な特徴は次のとおりです:
ランダム フォレストには、基本的な学習モデルとして複数のデシジョン ツリーがあります。データセットから行サンプリングと特徴サンプリングをランダムに実行して、各モデルのサンプル データセットを形成します。この部分はブートストラップと呼ばれます。
import numpy as np import matplotlib.pyplot as plt import pandas as pdステップ 2: データセットをインポートして印刷する
ata=pd.read_csv('Salaries.csv') print(data)ステップ 3: データセットのすべての行と列 1 を x として選択し、すべての行と列 2 を y として選択しますx=df.iloc[:,:-1]#":" はすべての行が選択されることを意味し、":-1" は最後の列が無視されることを意味します y=df.iloc[: , -1:]#":" はすべての行を選択することを意味し、"-1:" は最後の列を除くすべての列を無視することを意味します#「iloc()」関数を使用すると、特定の行を選択できますデータ セットのセル、つまり、データ フレームまたはデータ セット内の値のセットから特定の行または列に属する値を選択するのに役立ちます。 ステップ 4: ランダム フォレスト リグレッサーをデータ セットに適合させる
from sklearn.ensemble import RandomForestRegressor regressor=RandomForestRegressor(n_estimators=100,random_state=0) regressor.fit(x,y)ステップ 5: 新しい結果を予測する
Y_pred=regressor.predict(np.array([6.5]).reshape(1,1))ステップ 6: 結果を視覚化する
#うわー
以上がランダム フォレスト アルゴリズムの原理と実際のアプリケーションの Python の例 (完全なコード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。