Kaggleはデータサイエンティストへの最速の近道。そして一攫千金も。
Kaggle(カグル)は企業や研究者がデータを投稿し、それに対して、統計家やデータ分析家がその最適モデルを競い合う、予測モデリング・分析手法のプラットフォームで、2010年に設立。そして2017年にはGoogleが数百億円で買収しました。
目次
【動画講座】ゼロからはじめる機械学習講座「Kaggleに挑戦」
40万人のカグラーが一攫千金を求めてカグルに登録
カグルの仕組みは、企業や政府などの組織がコンペを開催、それに対して、データサイエンティストや機械学習エンジニアが最適モデルを提案。賞金と引き換えに最も制度の高い分析モデルを買い取るという「クラウドファンディング」の仕組みです。
現在、開催されいるコンペを見てみると、賞金は250万円から1000万円ぐらいまでのコンペがひしめいていますが、3億円の賞金のコンペもあったようです。
https://www.kaggle.com/competitions
コンペの分野はさまざまで、HIV研究、チェス格付け、交通量予測、空港のセキュリティなどなど。
日本企業の例ですと、メルカリが販売者が投稿した情報を基に「適正な販売価格」を予測するチャレンジを開催しました。
Kaggleの中でも特に有名な課題として「タイタニック号:災害からの機械学習)」があります。
なお、コンペ参加費用は無料で、企業から提供されているトレーニング用のデータセットを利用して、モデルの訓練を行います。
チャンスは1日5回。リアルタイムで評価スコアがわかる!!
各データセットには、他のユーザーが構築した予測モデルのコードや説明が公開されています。
それは「Kernels(カーネル)」という機能で閲覧できます。
また、「Discussion(ディスカッション)」はカグラーたちのコミュニティ機能で、そこで質問したり、情報交換をすることができます。
データの投稿は、予測されたデータのファイル(CSV形式)だけのときや、モデルのコードのカーネルの提出が必要な時があります。
予測データの投稿後は、リアルタイムで評価がつきます。
このスコアをあげていき、コンペを勝ちあがりましょうということになります。
なお、予測データの投稿は1日5回までです。
初心者の方でもカーネルで公開されている処理コードを読むことで、最先端のデータサイエンティストに近くことができますので、Kaggleは機械学習の勉強の場としても有意義です。
爆速でデータサイエンティストになるためにはKaggleが近道
Kaggleをやることでデータサイエンティストになるために必要なスキルを身に付けることができます。
データサイエンティストになるには、機械学習の理論や数学・統計に関する学習、データを見極めたり、モデルを作成する作業、そしてコーディングスキルが必要とされています。
しかしながら、Kaggleを始めるだけならそれは不要で、プログラミング言語を始めるのと同じ感覚で、他のカグラーの分析手法を見ていれば、自ずと上記のスキルが身につくようです。
プログラミング経験がない人でも、カグルをやって3ヶ月で「ソロゴールド」という称号を得た人もいます。
機械学習の勉強歴が半年の初心者で、Kaggleで銅メダルを取得した方のブログによると、注目した視点は、入力データを改変する“前処理”と、他者が提案したモデルを良いとこ取りする“モデルの流用”とのことです。
これを読む限りでも、カグラー同士でマッシュアップされていく世界観が彷彿とされており、カグルの最大の魅力といえましょう。
Kaggleのチュートリアルから見える機械学習のフローとは?
1. データ把握
まずは、学習データを確認します。
たとえば定性・定量データか連続・離散なのか。
また、ヒストグラムや統計データを使い、性質を把握します。
2. データ修正
次に学習データの欠損値を確認します。
大抵のデータは完璧に揃っていません。データを保管したり、クラスであれば数字を割り当てます。また、One-hot-vectorの形にするケースもあります。
3. 特徴量抽出
どの特徴量を使って予測をするかを考え、予測すべきものと相関がありそうなのを選びます。
また、教師なし学習の場合は、2次元に変換するPCAの作業が必要です。
4. モデル適用
解析するモデルをプログラミングしていきます。
どのようなアルゴリズム・手法を使ってモデルを作っていくかを決めて、実装します。解決したい問題により、回帰・クラス分類なのか、とるべき手法を選んでいきます。
5. データ出力(予測結果の提出)
モデルのパラメータを定義し、学習と予測をしていきます。
Kaggleの指定に沿って提出用のCSVファイルを出力します。
テックジム AIエンジニア養成コースでは、「kaggleへの挑戦」もカリキュラムで取り扱っております。
【動画講座】ゼロからはじめる機械学習講座「Kaggleに挑戦」
もっとも効率的なスキル習得「テックジム方式」とは?
「テックジム方式」とは、基礎知識なしでも、座学なしでプログラミングに専念できるように設計されたプログラミングのカリキュラムメソッドです。
優れたエンジニアの多くは、職業訓練学校や研修スクールで学ぶような学び方をしません。 作りたいものを作っていたら、自然に習得できているのです。そして、優れた指導者(メンターや師匠)との出会いがエンジニアとしてのプロフェッショナル性を高めます。
この自発性とプロフェッショナル性を兼ね備えたのが「テックジム方式」です。 授業を聞いたりテキストを読むことで失う時間を、純粋にプログラミング時間に向けることで、習得効率は飛躍的に向上し、モチベーションも維持できます。 その時点で知らなくていい知識や概念を可能な限り削ぎ落とし、知るべきタイミングが訪れた時にはすでに課題を通じて覚えているようなスキル習得の自動化を図ります。
講座で用いるサンプルソースや課題は、最も効率よく学べるように細部に渡って設計されています。 まるで魔法にかかったようにプログラミンスキルが習得できるのが「テックジム方式」の醍醐味です。
現在はPython基礎コースのみご用意しております。 こちらは初学者からプログラミング歴3年未満の方を対象にしたコースです。 今後は、機械学習やディープラーニング、AIなど、Pythonならではの特性を活かした専門性の高いコースをご用意していきます。
【無料】ゼロからはじめるPython入門講座
オープン講座では、講義&実習スタイルで、テックジムの自習教材を体験していただきつつ、Pythonの初歩を学んでいただきます。
【オンライン/無料】ゼロからはじめるPythonプログラミング入門講座(毎週・水・木・土開催)
すでに何らかのプログラミングをやっている方や、 プログラミング学習への決意度が高い人は、 どんどんカリキュラムを進んでいける「Python基礎コース体験会」の方がオススメです。
どんなレベルからでも、自分のペースではじめられますし、テキストを受け取りにくるだけでもOKです。
【テックジム】AIエンジニア養成コース・体験会(平日19:00-22:00)途中参加・途中退席OK
いつでも通える! どんなレベルでもOK!
ジム型プログラミング塾「テックジム:TechGYM」
いつでも参加でき、ずっとスキルを磨き続けることのできる「ジム」の要素が「TechGYM(テックジム)」の大きな特徴です。
月額2万円の「プログラミングライフ」をお楽しみください。
【東京本校】テックジムPython基礎コース・体験会「自習で学ぶ高速プログラミング」(平日19:00-22:00)
【東京本校】テックジムAIエンジニア養成コース・体験会「自習で学ぶ高速プログラミング」(平日19:00-22:00)