こんにちは。
セラク・みどりクラウド事業部の技術部門リーダーの植田です。
先日新設された部門である農水産DX研究所配属のメンバーが研修日記を作成してくれたので紹介したいと思います。
セラク・みどりクラウド事業部のデータサイエンティスト(研修生)M・Sです。
はじめに簡単な自己紹介させていただきます。
今まではBIツールを用いたデータの可視化やECサイト構築、ERPパッケージの導入コンサルタントをしておりました。
2015年にalphaGoが出始めた頃からデータサイエンスには興味があったものの、大学時代に確率論専攻(統計学ではない)でしたが、当時は関連分野程度の認識でした。
案件に参画する中で、お客様が望んでいることが実はデータサイエンスも一つの解決手段になるというところで段々と惹かれまして、 この度ご縁があり、1ヶ月ほど前にセラクへ入社しました。
つまるところデータサイエンス未経験者です。
今回は私が研修環境や内容の1つとしてkaggleコンペに挑戦した際のお話をします。
研修環境や内容について
入社から2週間ほどは西新宿にある本社で研修を進めておりましたが、
2022年1月から東京都のコロナ新規感染者が増加したことを受け、現在は全社としてテレワーク推奨となっております。
また、みどりクラウド事業部では人員増加により、2FにあるTech Labを貸していただけることに...! モニターも完備されており、オフィスチェアも座面が可動式になっており、快適なものになってます。
自宅のチェアよりも快適でした。
さて、研修内容に関してです。
未経験者の方と経験者の方ではカリキュラムも異なりますが、
データサイエンティストの研修目標として、業務で行うようなレポート作成・説明が行えるかです。
その前準備として、Pythonによるコーディングや機械学習に関する知識をキャッチアップした後、 アウトプットとしてkaggleコンペに参加する形になっています。
私は未経験者ということもあり、kaggle初心者が取り組む課題の代表例としても挙げられる 下記の住宅価格予測に取り組みました。
https://www.kaggle.com/c/house-prices-advanced-regression-techniques
はじめは大学時代に統計学に触れていた名残から、基本は線形回帰だろうというところで、 簡単にデータの基本統計量や型、Column毎の定義や値を確認して、 前処理もざっくり欠損値を平均値で埋めて、One Hot Encordingを行い、線形回帰モデルを構築し、 ホールドアウト法でモデル評価を行い、いざsubmitしてみると、
だいたい5120チームほど参加している中で、確か4000位くらいでした。
色々と線形回帰で進めていくのも限界に感じ、あらためてOveriewを読んでいると、Practice Skillsの欄に 「Advanced regression techniques like random forest and gradient boosting」と。
Column数が80あるのに、線形回帰で処理しようとした時に前処理だけで大変になってしまい困っていましたが、 調べてみるとGBDT系のモデルなら、一旦予測するだけなら前処理も大して必要なく精度もそこそこ出るらしい。
というわけでGBDTの1つであるxgboostをベースモデルにして再度submitしたところ、(主流はlightGBMらしい)
評価値としては実際の値と予測値とのRMSLEを計算しているので、0に近いほど精度が良いです。
なので、前評判の通り、GBDT系にベースモデルを変更するだけで精度が少し上がりました。
ここから、特徴量エンジニアリングやハイパーパラメータ最適化を行い、現在の最高スコアは、
機械学習をはじめて1ヶ月経たずして上位10%以内に入ることが出来ました。(名前はお恥ずかしいので隠してます) ここから壁が厚く、更なる勉強が必要な部分かと思いますが、 未経験者にしては着実に進めているのかなと自負しています。
長々と記載しましたが、お伝えしたかったことは、 セラクには未経験者でも挑戦でき、成長できる研修制度等の環境が整っていると思います。 データサイエンスにご興味があり、農業等の一次産業を変えたいという方はご応募いただけたらと思います。