- AIでデータ分析-ハイパーパラメータチューニング:SVMで従業員の離職を予測する
- 用いるデータの紹介
- まずはPythonで実装する
- AIの活用:ChatGPTで実行する
- まとめ
AIでデータ分析-ハイパーパラメータチューニング:SVMで従業員の離職を予測する
このノートは、分析においてAIを使って何ができて何ができないかを検証するために、実際に試した結果をまとめたノートです。
今回はSVMで従業員の離職を予測することに加えて、ハイパーパラメータをチューニングしていきたいと思います。
その際、AIとどっちが高い精度を得られるのか、試してみたいと思います。AIを用いることでいかに効率化できるのか、体験していただければと思います。
所要時間は20分ほどとなっています。
それでは、さっそく始めていきましょう!
データの紹介
今回検証に用いるデータのサンプルデータは従業員データです。サンプルデータはこちらからダウンロードできます。
1行が従業員1人のデータになっています。列情報としては年齢、性別、婚姻ステータス、部署、職種、給料などがあります。
まずはPythonで実装する
アルゴリズムSVMを用いてPipelineを構築→グリッドサーチCVを実行し、最適パラメータとスコアを確認→テストデータでaccuracyを計算→混同行列の作成をPythonで実装します。
結果を確認します。
最適パラメータは C : 10, gamma : scale , kernel : linear
テストデータでのaccuracy(正解率)が約0.960、混同行列は図の通りになりました。
AIの活用:ChatGPTで実行する
次にAIを使って同じことをするため、chatGPTに従業員データをアップロードし、
「添付のデータを使って下記を実行して。 1、離職の列を目的変数、他の列を説明変数としてデータフレームを切り分ける 2、訓練データ7割、テストデータ3割に分割する 3、データの前処理としてデータタイプが数値型の列は標準化して、object型の列にはOneHotEncodingする 4、モデルはSVMを使い、GridsearchCVでハイパーパラメータチューニングを実行する 5、最適なパラメータとスコアを表示する 6、テストデータでaccuracyを計算し表示する 7、混同行列を作成し表示する(目的変数である離職列のYesが0、Noが1に対応するように混同行列のラベルを調整する)」と入力し、実行します。
結果を確認します。
出力されたPythonコードを実行します。
結果を確認します。
最適パラメータは C : 0.1, kernel : linear
テストデータでのaccuracy(正解率)が約0.952、混同行列は図の通りになりました。
AIによる分析の所要時間は10分でした。
まとめ
今回はSVMで従業員の離職を予測するにあたり、2つの方法で最適なハイパーパラメータの探索を行いました。
1つ目の方法はPythonを用いた方法と、もう1つはAI(chatGPT)を用いた方法です。
結果は自身でハイパーパラメータの探索範囲を設定した方が、accuracyは高い数値を得ることができ
AIに任せたからといって最高の精度のモデルを作れるわけではないことを
確認することができました。また別の機会に他の指標でもどうなるか試していきたいと思います。
AIでできることとできないことを把握し、うまく活用することで、データ分析もかなり効率化できそうですね!
AIでデータ分析-ハイパーパラメータのチューニング:SVMで従業員の離職を予測する は以上となります!









