#71 Section 26 クラスタリング(7)モデルの保存・再利用

-- Views

March 03, 26

スライド概要

クラスタリングの最後は、構築したモデルを保存し、いつでも再利用できるようにする方法を解説します。

1. モデルの保存
save_model関数を使用し、前処理を含むパイプライン全体を「pickle形式(.pkl)」で保存します。これはPythonのデータ構造をそのまま書き出せるバイナリ形式で、後から元のオブジェクトを完全に復元できるのが利点です。ただし、テキストデータではないため、Googleドライブ等の検索エンジンで内容をキーワード検索することはできません。実行時には、処理ステップやハイパーパラメータ、ファイル名などの詳細が出力されます。

2. モデルの再利用
保存したモデルはload_model関数で簡単に読み込めます。読み込み時の出力には、保存時と同様にパイプラインの構成やモデルの種類が詳細に表示されるため、どのような処理を経て構築されたモデルかを正確に把握した上で活用できます。

これらの手順により、一度評価したモデルを資産として効率的に管理・運用することが可能になります。

profile-image

すべてのビジネスパーソンが意思決定プロセスにデータを活用する思考を身につけるため、まずは、データサイエンスの分析を体験していきましょう。SECIモデルの最初の段階、共同化(Socialization)からはじめていきます。 下記のブログで、ここにアップしたスライド、動画を随時、公開中です。 【ブログ】https://tutorial4datascience.blogspot.com/ 【Youtubeチャンネル】https://www.youtube.com/@DataScience_for_everyone 【Kindle】そして、このブログをまとめて書籍にしました!   https://amzn.to/4ryVppn   https://amzn.to/4pGgFb1

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

4th STEP 機械学習 Section 26 クラスタリング(7) モデルの保存・再利用 Setup Create Model Assign Model Analyze Model データサイエンス チュートリアル Prediction Save Model 1

2.

4th STEP 機械学習 Section 26 クラスタリング(7)モデルの保存・再利用 モデルの保存 クラスタリングの最後は、save_model関数を使用します。今まで前処理を行って評価してきたモデルをディスクに保存すること ができます。 save_model(選択したモデルの名前, '保存するモデルの名前') 今回は、モデル『kmeans』を『kmeans_pipeline』という名前で保存します。 『kmeans_pipeline』は、現在の作業ディレク トリに、モデルのIDに *.pkl の拡張子が付いたファイル(*pickle形式)として保存されます。これは、後でいつでも利用するこ とができます。 *pickle形式:Pythonのメモリ上にあるデータ構造(例えば、リスト、辞書、クラスのインスタンス、そしてPyCaretの学習済みモデルなど)を、ファイルに書き込 んで保存できる形式のことです。そして、保存したファイルから元のPythonオブジェクトを復元できます。 pickle形式のファイルは、path引数で指定した場所、または今回のようにpath引数を省略した場合は現在の作業ディレクト リに保存されます。関数の出力や、ファイルシステムを直接確認することで、保存場所を特定できます。ただし、 pickleファイル はテキスト形式ではなく、コンピュータが効率的にデータを読み書きするためのバイナリ形式で保存されています。そのため、 Googleドライブの検索エンジンでは、ファイルの内容をテキストとして解析することが難しく、キーワードで検索することが 2 できません。 データサイエンス チュートリアル

3.

4th STEP 機械学習 Section 26 クラスタリング(7)モデルの保存・再利用 モデルの保存 出力 save_model関数を実行すると、その出力には、個々の処理ステップの詳細と、最終的な学習済みモデルの種類とハイ パーパラメータ、そして保存されたファイルの名前が出てきます。 データの変換(Transformation)プロセスと学習済みモデルが セットになった「パイプライン」が、無事に保存されました。 Age(年齢)や Savings(節約額)などの数値データに欠損 値(空欄)があった場合、自動的に埋めるステップです。 カテゴリーデータの欠損値を埋めるステップです。今回は対象と なる列が無い(include=[])なので、何もせず通過します。 学習させたモデルは、「4つのクラスタに分けるK-Meansモデル」で、 「乱数の発生パターンを固定するためのマジックナンバーが123」で あることを示しています。 保存されたファイル名 データサイエンス チュートリアル 3

4.

4th STEP 機械学習 Section 26 クラスタリング(7)モデルの保存・再利用 モデルの利用 下記のload_model関数を使うと、保存されたモデルを読み込む(ロードする)ことができます。 load_model(‘保存したモデル名‘) データサイエンス チュートリアル 4

5.

4th STEP 機械学習 Section 26 クラスタリング(7)モデルの保存・再利用 モデルの利用 出力(1) load_model関数を使うと保存されたモデルを読み込むことができますが、その出力には、個々の処理ステップの詳細と、最終 的な学習済みモデルの種類とハイパーパラメータ、そして保存されたファイルの名前が記載されています。 この情報があれば、保存されたパイプラインがどのような処理を行い、どのようなモデルを含んでいるかを正確に把握することがで きます。 印をつけた の部分をクリックす ると詳細を表示することができます。 データサイエンス チュートリアル 5

6.

4th STEP 機械学習 Section 26 クラスタリング(7)モデルの保存・再利用 モデルの保存 出力(2) 展開していくと、save_model関数の出力と同様 な内容になっています。 データサイエンス チュートリアル 6