投稿

Translate

#61 Section 16 回帰(5) モデルの分析(2)

イメージ
PyCaretでは、『plot_model関数』を使わなくても、下記の『evaluate_model関数』を使うことにより、クリック一つで、様々なモデルの評価を可視化(グラフ化)することができます。 しかも、たった一行! evaluate_model(モデル名) このコードを実行させると、下記のスライドにあるような出力結果が表示されます。 ① は、『Plot Type』と表示されているように、モデルの評価を可視化するグラフのボタンです。実行直後は、『Pipline Plot』が選択され、 ② のように機械学習モデルを構築する際にPyCaretが自動的に行った前処理を視覚的に表現しています。 今回は、このモデルの評価を可視化するグラフグラフを解説していきます。 下記は、 『 plot_model 』関数を使って表示させたグラフです。 PyCaretには、この3つ以外にも多くのグラフを表示させる機能が含まれています。さらに、 ① の各ボタンをクリックすると、コードを書かなくても、様々なグラフが現れます。それを順番に解説していきます。 1. Hyperparameters パラメーター(Parameter)は、モデルが訓練データから自動的に学習し、調整していく重みやバイアスなどの値です。それに対して、 ハイパーパラメータ (Hyperparameter)は、学習前に人手で設定するアルゴリズムの挙動を制御する値です。つまり、 パラメータはモデルが学習によって得たもの 、 ハイパーパラメータはモデルの学習の前に設定 するものとなります。 Hyperparametersでは、PyCaretがハイパーパラメータをどのように設定したかを表示してくれます。 本来、ハイパーパラメータは、分析者が経験等に基づいて決めるものですが、PyCaretはいい感じに決めてくれます。 次スライド以降でハイパーパラメーターの解説をしますが、PyCaretには、このハイパーパラメーターをチューニングして一番結果が良いものを選択してくれる機能(『tune_model』関数)がありますので、こだわって覚える必要はありません。この辺が、PyCaretは『シチズンデータサイエンティスト』にぴったりな分析環境と言える所以です。 次の9枚のスライドは、『Hyperparameters』ボタンをクリックした結果出てき...

教育訓練休暇給付金

イメージ
 2025年10月、「教育訓練休暇給付金」が創設されました。 「資格取得のために会社を休んで通学すると、その間の給料が不安・・・」と思ったことがある方などは、検討すべき制度です。 詳細は、こちらを参照してみてください。 https://www.mhlw.go.jp/content/001543278.pdf 重要なことを、まとめてみました! 1.支給対象者 2.受給期間・給付日数・給付日額 3.「教育訓練休暇給付金」の支給対象となる休暇 4.対象となる講座 教育訓練給付金厚生労働大臣指定教育訓練講座 検索システム https://www.kyufu.mhlw.go.jp/kensaku/

#60 Section 15 回帰(4) モデルの分析(1)

イメージ
 前のSectionでは、『compare_models』関数で評価が高かったモデル『catboost』を『best』と宣言しましたが、今回は、その『best』というモデルを分析していきましょう。 『 plot_model 』関数を使用すると、テストセットにおける学習済みモデルのパフォーマンスをグラフによって分析できます。 plot_model(モデル名, plot='グラフの種類’) plot_modelのグラフの種類についての詳細は、下記の公式ドキュメントの『Examples by module→Regression』を参照してください。 https://pycaret.gitbook.io/docs/get-started/functions/analyze#regression さて、続けてPyCaretの公式チュートリアルを見ていきましょう。 『モデル名』は、「best」を指定しています。 『グラフの種類』には、「 'residuals' 」を指定しています。これにより、『 残差プロット (Residuals Plot)』を出力します。 実行して、出力を見てみましょう、残差プロットが表示されます。 残差 は、 実際の値と予測値の差 のことです。 ● 散布図 (左側)  横軸: モデルによる予測値(Predicted Values)  縦軸: 残差(Residuals、実際の値と予測値の差) この散布図により、予測値の大きさに関わらず残差がランダムに分布しているか(パターンがないか)を確認します。理想的なモデルでは、残差は横軸の0の周りに均等に散らばっています。 ● ヒストグラム (右側) 散布図の残差の分布を示すヒストグラムが表示されます。    回帰分析の基本的な仮定として、残差は正規分布に従うことが望ましいため、ヒストグラムが釣鐘型(正規分布に近い形)になっているかを確認します。 以下の場合、モデルはデータの構造を適切に捉えており、回帰分析の仮定がおおむね満たされていると判断できます。 ・ 残差が0の周りに均等に分散している(散布図) ・ 残差に特定のパターンが見られない(散布図) ・ 残差の分布が正規分布に近い(ヒストグラム) 次は、 『グラフの種類』に「 ‘error’ 」と記入しています。横軸に実際の値、縦軸に予測値をプロ...

#59 Section14 回帰(3)モデルの評価・比較

イメージ
 今回は、「モデルの評価・比較」を体験していきましょう。 『 compare_models 』関数は、ライブラリで使用可能なすべてのアルゴリズム(PyCaretでは『モデル』と言います)を交差検証を用いて訓練し、評価指標を算出して性能を評価します。この関数の出力は、交差検証での平均スコアを含む評価指標一覧(次スライド参照)で、様々なアルゴリズムの性能を比較できます。 『分類』で行ったように、関数型API、オブジェクト指向APIの二つの方法があります。順番にコードを実行しましょう。 また、『compare_models(sort=“評価指標”) 』で、 任意の指標で結果を並べ替えることもできます。 compare_models関数を使った前のスライドのコードを入力すると、下記の結果が出力されます。 表頭には、評価指標がいくつか並んでいます。 また、それぞれのモデルは、デフォルトで決定係数(R2)の降順に表示されます! さて、ここからは、前のスライドに出てきた評価指標を解説していきます。 まずは、 平均絶対誤差 (MAE/Mean Absolute Error) 平均絶対誤差(MAE/Mean Absolute Error)は、各データに対して「予測値と正解値の差(誤差)」の絶対値を計算し、その総和をデータ数で割った値(平均値)を算出したもの。スライドの式で算出されます。 平均絶対誤差に普遍的な目安はありませんが、数値が小さいほど予測精度が高いと評価されます。 平均絶対誤差はあくまで相対的な指標ですから、過去の類似データで比較したり、複数のモデルで比較する等して使用します。 【参考】  https://atmarkit.itmedia.co.jp/ait/articles/2105/19/news022.html 2番目は、 平均二乗誤差 (MSE/Mean Squared Error) 平均二乗誤差(MSE/Mean Squared Error)は、各データに対して「予測値と正解値の差(誤差)」の二乗の総和を計算し、その総和をデータ数で割った値(平均値)を算出したもの。下記のスライドに示す式で算出されます。 平均二乗誤差に普遍的な目安はありませんが、0に近いほど予測値と実測値の差(誤差)が小さいことを示します。誤差を2乗するため、大きな誤差(外れ値)が評価に与...