挫折する気しかしない。
勉強に時間を割きまくっているのに、全く知識が定着していない気がする。
挫折を回避する方法が知りたい。
本記事の内容
機械学習を学ぶ際に挫折する方が多い理由
機械学習を勉強する際に挫折を回避する方法
機械学習は挫折率が高い事実への思考法
← 逆にモチベーションを上げるべき
これまで数名の方にPythonや機械学習についてメンタリングを行なってきました。
そこで感じたことは、レベルに差はあれどわりと挫折率が高い気がしています。
僕がプログラミングスクールに通学していた時の担当メンターは他の会社のスクールのメンターにも所属しており、「AIコースで10人通学してきても結局最後の課題まで終了するのは2-3割程度といった印象」と言っていました。(挫折率高すぎです。)
折角やる気を持って勉強を始めたのにも関わらず、途中で辞めてしまうのは非常にもったいないです。
また、僕自身も挫折しかけたこともありました。
その様な方のために、なるべく今まで僕自身が経験してきたことを元にして、機械学習をこれから学ぶ方に向けて、為になる記事をまとめていきます。
機械学習で挫折しやすい【理由と予防法を解説】
書籍によって学習の方法が様々で混乱しやすい【派閥多すぎ問題】
機械学習に関する書籍はあまりにも多いです。そのため、何から手を付ければ良いのか分からないケースが多々あります。
特に世の中に出回っている書籍の執筆者の方達は、今まで学習してきた過程や方法が全く異なるため、書籍に記載されている内容が異なる事もあります。
ある方にとっては分かり易い書籍が、他の方にとってはわかりにくい場合があるわけです。
特にAIや機械学習関連の学習を始めたばかりの方にとっては、この情報量の多さは非常に混乱を招く原因となっています。
予防策としては、まず「機械学習とはどの様なものか」全体像を掴むのが良いと思います。
全体像を掴む → 細かく学習する内容を把握する
という流れで学習する事をおすすめします。
機械学習〜ディープラーニングまでの全体像を把握する為に有益な書籍はこちら。[itemlink post_id="19085"]
機械学習の基本的な内容から、ニューラルネットワーク、自然言語処理までを網羅的に把握する事が可能です。
なお、アルゴリズムの解説 → Pythonでの実装例が細かく解説されており、Pythonの基礎知識が既にあるという方は、この書籍で機械学習〜ディープラーニングの全体像を把握することをおすすめします。
数学や統計学など学習すべき範囲が広い
機械学習を勉強する上では数学的な知識が必須となります。特に高校時代に学習した内容に加えて、大学で学習する範囲も必要です。
例えば以下の項目。
- アルゴリズム
- 行列の計算
- 統計学
- 情報工学
- 量子力学
おそらく初学者の方にとっては、学習量の多さに困惑する事もあるかと思います。
とはいえ僕の経験を踏まえると、文系出身者などでこれらの知識が最初はなくても、不安に思う必要ナシです。
理由としては理系出身とはいえ、上記の知識が0の自分自身が約3ヶ月程度で学習した(1日平均6時間の学習)と言うこともあります。
これは事前に色々な学習方法をリサーチした結果なので、再現性はあるかとお思います。
まず書籍で理解するのも良いですが、動画講座で理解したいという方のために、とっかかりとしてはUdemyの講座であるキカガクさんの【キカガク流】人工知能・機械学習 脱ブラックボックス講座で、上記項目のうち、線形代数や行列の項目など大学で履修する数学の知識を修得する事が可能です。
そのほか、機械学習を始める上で初学者にとって有益な書籍はこちらです。
[itemlink post_id="19058"]
図をわりと多めに用いた解説で、初学者目線のわかり易い内容となっています。機械学習の基本的な内容からディープラーニング(畳み込みニューラルネットワーク)まで網羅しています。
Python未修の方でもExcelで機械学習を学べる様に解説している項があり、非常に興味深い内容です。
[itemlink post_id="19059"]
こちらはKindle版がおすすめです。著者はAidemyを創設された先生で、東京大学の松尾豊教授も推薦している初心者向けの書籍です。数学が苦手な方は必需品です。
[itemlink post_id="19061"]
人工知能を構成するアルゴリズムを基礎から解説してくれており、文系で数学知識がなく、他の入門書に挫折した人にもおすすめ。
全体像にも詳しくなれる、初心者向けの入門書です。
機械学習で挫折する人・挫折しない人の特徴
機械学習で挫折しやすい人の特徴
結局は毎日継続した方が最終的に結果を出しています。どの業界でも同じだと思いますが、最適な環境に身をおき、あとは継続した努力を続ける。挫折しやすい方に共通した思考は以下かなと思っています。
挫折の最大の原因は『出来ない』という思い込み。
『出来ない』と勝手に決めつけてはいけません。効率良く学習する為の環境が整っていると必ず良い方向へと進む事ができます。その様な環境とは以下です。
努力を継続できる環境 = 「良質な学習環境」「良質なコンテンツ」のある環境
結局は『出来ない』という諦めの思考を排除しつつ、努力を継続できる環境に身を置く事が最も重要かなと思います。
僕の場合には、最初は独学で学習していましたが、スクール(techacademy, キカガク)に通いつつ、メンターをお願いし、『出来ない』という思い込みを一切排除しました。
機械学習で挫折しにくい人
これはプログラミングを学習する際にも重要な事ですが、効率よく学習するためには以下の3項目が必須事項です。
効率良く学習する為の3つの条件
良質な学習環境
良質なコンテンツ
本人の努力の継続
この3つが効率よく学習するためには必須事項であり、挫折予防の観点からは「良質な学習環境・コンテンツ」が重要となります。
特に挫折予防の観点からは「良質な学習環境・コンテンツ」が重要となります。
機械学習で挫折率が高い事はチャンスである件
機械学習を学ぶのは難しいです。しかし果たしてこれはビビることでしょうか。答えは「No」です。
以下、僕のモットーです。
マイノリティこそ進むべき道。
要は、挫折しやすい人が多い領域や、皆が嫌がる(めんどくさがる)領域にこそ需要チャンスが広がっているわけです。
挫折者が多い ← 逆にチャンスと捉えるべし
こちらは海外のAIエンジニアの給与の表になりますが、AIエンジニアは基本的には給与が高いです。(年収約1000万円ほど)
その理由としては「挫折者」が多く人材不足で、かつ知的労働であるため。
アメリカ大統領の自由勲章を授与された、社会学者教授のピーター・ドラッカーは21世紀は知的労働者「ナレッジワーカー」の時代であることを予見していましたが、それは22世紀でも通用することですね。単純労働の価値は低下していき、逆に専門化された「知的労働者」の知識を利用した労働が成功すると言うことです。
プログラマーだけでも挫折者が多いのですから、機械学習エンジニアは なおさらですよね。
世の中的には不幸であるかもしれない『機械学習で挫折者が多い』事が逆に高給を保ちやすくしています。
挫折回避のためのモチベーションの上げ方
もし機械学習を勉強中に挫折しそうになったら、「あ、ここで誰かが挫折するんだな。逆にチャンス!がんばろう!」と思えばオッケイ。
マインドセットして勉強のモチベーションに変えましょう。
機械学習で挫折する予防策
機械学習が挫折率が高い理由と、それが逆にチャンスである事が分かったところで、具体的に挫折を予防する方法について見ていきましょう。
何度も言いますが、機械学習にしろ、プログラミングにしろ、効率よく学習する為には重要な3つの条件があります。
効率良く学習する為の3つの条件
良質な学習環境
良質なコンテンツ
本人の努力の継続
この3つが効率よく学習するためには必須事項であり、挫折予防の観点からは「良質な学習環境・コンテンツ」が重要となります。
良質な学習環境・コンテンツ
次のとおり。
プログラミングスクールに入る
教育系企業に勤める←実例あり
サイト+メンターを利用する
プログラミングスクールに通う
一番無難です。プログラミングスクールに通うと、当たり外れはありますがメンターが付きまし、良質なコンテンツもある程度担保されています。分からない箇所の質問対応だけではなく、精神的サポートにもなります。
プログラミングスクールは検索してみると沢山ありますが、僕が良質な学習環境とコンテンツとして、おすすめしているスクールは〜〜にまとめています。
個人的にはオンラインであればAI特化型のAidemy Premium Planがおすすめです。
実際にAiエンジニアに転職された方もいますし、無料で1週間相談や講義の受けれます。
学習につまづいて時間を持て余しているなら、その時間に無料相談をする事をおすすめします。
教育系企業に勤める ← 実例あり
僕の友人で木村恵輔さんという方がおり、文系出身の方ですが、実際に教育系AIベンチャー企業であるキカガクさんに採用が決まった方がいます。
Twitterの投稿内容を見て頂ければ分かりますが、採用が決定してからも日々努力をしており、非常に効率よく学習されています。
おはようございます☀️
— 木村 恵輔 Keisuke Kimura (@Keisuke_Kimura_) February 6, 2020
今日のノルマ
・Udemy【キカガク流】脱ブラックボックス講座-中級編-視聴
・Python基礎文法練習
・CrossFit🏋️♂️
今日も一日頑張りましょう!
※ 【余談】この「今日のノルマ」というのは僕が朝のTwitterで自分を戒める為に始めたことです。
使って頂いている方が増えて個人的には同士の様な気持ちでTwitterを見ています。
また木村恵輔さんが、プログラミングの知識が0の状態から独学で勉強してAI・機械学習エンジニアとして転職されるまでの経緯を「これから挑戦する方へのメッセージ」も込めてインタビューとしてお聞きしてきました。
勉強方法も含めて是非参考にしてください。
元ラグビー選手の未経験者が独学でAIエンジニアとして転職した方法
続きを見る
また、同じ企業にはなりますが、都築先生という方がnoteを記載されています。
僕が講座を受講した際の講師の先生ですが、講義は非常に分かりやすかったですし、知識も豊富でした。まさか文系出身とは思ってもいませんでした。
以下のnoteは特に文系出身の方には必見です。必ず希望は持てるはず。
» プログラミング経験ゼロの私が2ヶ月間でAI、機械学習を教えられるようになった理由。
サイト+メンターを利用する
無料で機械学習を学べるサイトは機械学習入門の為のサイトは、ほぼ無料である件【保存版】にまとめています。ですが、重要なのは挫折の予防です。
すなわち、「無料のサイト利用+自分でメンターを雇う」という事です。メンターは挫折予防には非常に効果的な予防策ですので、是非使用されることをおすすめします。
挫折予防に使えるメンターサイト一覧
terateil → 初心者向け。わりとフランクに聞く事が可能ですが、スルーされる事もあり。
- Menta → いわゆるオンライン版の家庭教師。最近ではそこそこ利用者も多い。
Stack overflow → 英語です。世界規模のサイトです。メンターにガチ勢も多いので安直に質問すると怒られます。質問の仕方には注意しましょう。
ココナラ → オンライン版の家庭教師。わりとレベルが高く、質問しやすい雰囲気の講師が多い。自分の都合に合わせて質問するにはおすすめです。
まとめ|機械学習は挫折しやすいが、回避する方法はある。
以下、この記事で記載したまとめになります。
機械学習の挫折を回避する方法
- 機械学習は挫折しやすいが、適切な環境に身を置く事で挫折予防が可能
- 機械学習で挫折しそうになったときのセーフティーネットを作る
- 機械学習で挫折思想なポイントは飛ばして、まずは全体像を掴む。つまづいたポイントは遠慮なく以下のメンターサイト等を利用して学習する
- Progateなど初心者レベルの事を繰り返さない。重要なことはある程度学習したらKaggleなどで挑戦してみる。挑戦することで、実際に必要なレベルが見えてくると言うもの
挫折予防に使えるメンターサイト一覧
terateil → 初心者向けです。わりとフランクに聞く事が可能ですが、スルーされる事もあり。
- Menta → いわゆるオンライン版の家庭教師です。最近ではそこそこ利用者も多い。
Stack overflow → 英語です。世界規模のサイトです。ガチ勢も多いので安直な質問は怒られます。
ココナラ → オンライン版の家庭教師ですが、レベルが高く、質問しやすい講師が多い。講師の評価も分かる。
今回はこれで以上です。皆さんの学習の参考になれば幸いです。