推しアイデア
SKLearnにあるすべての回帰を試して、最適な回帰を選定した。
SKLearnにあるすべての回帰を試して、最適な回帰を選定した。
このインターンに参加した背景を書こうと思います。このチームは三人とも機械学習を時間をかけて学習したことがなく、勉強したいと思っていたところ、ハックツハッカソンでエキサイトさんが機械学習のインターンを行うことを知り、参加しました。
Three.jsを使用し、立体感のあるTOPページを作成しました。FastAPIを用いて、爆速でAPIサーバを構築しました。
Path : "/" TOPページ
Path: "/input" データ入力・出力ページ
method : POST , path : "/learn" 機械学習用
{ "sales": { "variable_cost": int #変動費 "fixed_cost": int #固定費 } "sga_expenses": { "variable_cost": int #変動費 "fixed_cost": int #固定費 "workers_linked_expenses": int #人員連動費 "investment": int #投資 } "year_month": date #年月 }
{ "total_sales": int }
今回は、重回帰分析をメインに分析を行いました。
与えられたデータセットから、年、月、売上原価の固定費、変動費など必要なデータをPandasを用いて、CSVから抜き取る。
抜き取ったデータを会社のIDでソートを行い、一つのCSVにする。
以下の計算方法で計算を行う。
説明変数と目的変数に分割する
トレーニング用とテスト用データを7:3に分割し、説明変数に正規化を適用する。
学習を行い精度を測る。
何度かテストモデルの提出を行い、その中で一番結果の良かったリッジ回帰を採用しました。
MAE : 55899422.4375 RMSE : 73794467.18013684
SKlearnの用意してくれている、リッジ回帰のクラスには、alphaというパラメータがあり、その設定の仕方でも予測値が変わってくる。(今回alphaの値は15)そのため、最適なalphaの値を決めることができれば、より良い精度になると思う。