コードを書きながら Pycaret を学習する

PyCaret の概要

PyCaret は、Python 機械学習ワークフローを簡素化するためのオープンソース ライブラリです。 機械学習プロセスのさまざまな側面を自動化するための高レベルのローコード インターフェイスを提供します。これにより、データ サイエンティストやアナリストによる構築と分析が容易になります。機械学習モデルをデプロイします。 PyCaret の主な機能と用途には次のようなものがあります。

1. 自動機械学習 (AutoML): PyCaret は、データの前処理など、機械学習における退屈で時間のかかる多くのタスクを自動化できます。 、機能の選択、ハイパーパラメーターの調整、モデルの選択と評価。

2. 簡素化されたワークフロー: 一貫性があり組織化されたワークフローを提供し、ユーザーはわずか数行のコードで実行できます。 一般的な機械学習タスク。

3. モデルの選択: PyCaret はさまざまな機械学習アルゴリズムをサポートしており、ユーザーが特定のタスクに最適なモデルを迅速に比較して選択できるようにします。 。

4. ハイパーパラメータ調整: ハイパーパラメータ調整のプロセスを自動化し、ユーザーがモデルの最適なハイパーパラメータを見つけるのに役立ちます。

5. モデル評価: PyCaret は、ユーザーがモデルのパフォーマンスを理解し、情報に基づいた意思決定を行うのに役立つ、包括的なモデル評価および比較指標を提供します。意思決定。

6. データ前処理: 欠損値の代入、カテゴリカル エンコード、特徴スケーリングなどのデータ前処理ステップを自動化します。

7. 視覚化: PyCaret は、ユーザーがデータを探索し、モデルのパフォーマンスを理解し、データに基づいた意思決定を行うのに役立つさまざまな視覚化ツールを提供します。 。

8. モデルのデプロイメント: ユーザーは機械学習モデルを実稼働環境に簡単にデプロイできるため、エンドツーモデルの構築に適しています。機械学習の組み立てラインを終わらせる。

9. 異常検出: PyCaret には、データセット内の外れ値の検出に役立つ異常検出機能も含まれています。

10. 自然言語処理 (NLP): 自然言語処理タスクをサポートし、さまざまな機械学習アプリケーションに適しています。

PyCaret は、ステップごとに大量のコードを作成することなく、さまざまな機械学習モデルや手法をすばやく試したいデータ サイエンティストやアナリストにとって特に役立ちます。機械学習モデルの構築とデプロイに必要な時間と労力を削減するように設計されており、データ サイエンスおよび機械学習コミュニティにおける貴重なツールとなっています。

サンプルコード(分類)

1.セットアップ

この関数はトレーニング環境を初期化し、変換パイプラインを作成します。 setup 関数は、他の関数を実行する前に呼び出す必要があります。それには、data と target という 2 つの必須パラメータが必要です。他のパラメータはすべてオプションです。

import pandas as pd
from pycaret.datasets import get_data

pd.set_option('display.max_columns', None)
data = get_data('diabetes')

PyCaret 3.0 には 2 つの API があります。好みに応じていずれかを選択できます。この関数は実験結果と一致しています。

機能API

from pycaret.classification import *
s = setup(data, target = 'Class variable', session_id = 123)

OOP API

from pycaret.classification import ClassificationExperiment
s = ClassificationExperiment()
s.setup(data, target = 'Class variable', session_id = 123)

2. モデルの比較

この関数は、相互検証を使用して、モデル ライブラリで利用可能なすべての推定器のパフォーマンスをトレーニングおよび評価します。この関数の出力は、平均相互検証スコアを含むスコアリング グリッドです。 CV 中に評価されたメトリクスには、get_metrics 関数を使用してアクセスできます。カスタム メトリックは、add_metric 関数とremove_metric 関数を使用して追加または削除できます。

# functional API
best = compare_models()

# OOP API
best = s.compare_models()

3. モデルの分析

この関数は、テスト セット上でトレーニングされたモデルのパフォーマンスを分析します。場合によっては、モデルの再トレーニングが必要になる場合があります。

# functional API
evaluate_model(best)

# OOP API
s.evaluate_model(best)

Evaluate_model は ipywidget を使用するため、Notebook でのみ使用できます。また、関数plot_modelを使用してプロットを個別に生成することもできます。

# functional API
plot_model(best, plot = 'auc')

# OOP API
s.plot_model(best, plot = 'auc')

# functional API
plot_model(best, plot = 'confusion_matrix')

# OOP API
s.plot_model(best, plot = 'confusion_matrix')

4. 予測

この関数はデータにスコアを付け、予測されたクラスの予測ラベルと予測スコアの確率を返します。データが None の場合、テスト セット (関数のセットアップ中に作成される) のラベルとスコアを予測します。

# functional API
predict_model(best)

# OOP API
s.predict_model(best)

評価指標はテスト セットに基づいて計算されます。 2 番目の出力は、テスト セットの予測を含む pd.DataFrame です (最後の 2 つの列を参照)。表示されていない (新しい) データセットにラベルを生成するには、Predict_model 関数の data パラメーターにデータセットを渡すだけです。

# functional API
predictions = predict_model(best, data=data)
predictions.head()

# OOP API
predictions = s.predict_model(best, data=data)
predictions.head()

スコアは、予測されたクラス (陽性クラスではない) の確率を表します。予測ラベルが 0 で予測スコアが 0.90 の場合、クラス 0 の確率が 90% であることを意味します。両方のクラスの確率を確認したい場合は、predict_model 関数に raw_score=True を渡すだけです。

# functional API
predictions = predict_model(best, data=data, raw_score=True)
predictions.head()

# OOP API
predictions = s.predict_model(best, data=data, raw_score=True)
predictions.head()

5. モデルを保存する

# functional API
save_model(best, 'my_best_pipeline')

# OOP API
s.save_model(best, 'my_best_pipeline')

6. モデルを環境にロードして戻すには、次の手順を実行します。

# functional API
loaded_model = load_model('my_best_pipeline')
print(loaded_model)

# OOP API
loaded_model = s.load_model('my_best_pipeline')
print(loaded_model)

エラーが発生しました

1. Mac コンピュータで、pycaret をインストールするときに問題が発生しました。「pyproject.toml ベースのプロジェクトのインストールに必要な lightgbm 用のホイールをビルドできませんでした」 a>pyproject.toml ベースのプロジェクトのインストールに必要な lightgbm 用のホイールを構築できませんでした。」

  : このエラーはサブプロセスに起因しており、pip の問題ではない可能性があります。

  エラー: lightgbm のホイールの構築に失敗しました

lightgbmのビルドに失敗しました

エラー: pyproject.toml ベースのプロジェクトのインストールに必要な lightgbm 用のホイールを構築できませんでした

解決

まず brew install libomp を実行し、次に pip install pycaret をインストールします。

2.lib_lightgbm.so' (mach-o ファイルですが、互換性のないアーキテクチャです ((x86_64) があり、(arm64e) が必要です)

解決:

conda install \
   --yes \
   -c conda-forge \
   'lightgbm>=3.3.3'

Python - LightGBM は Mac M1 で利用できますか? - スタックオーバーフロー

おすすめ

転載: blog.csdn.net/keeppractice/article/details/133826184