動画学習のご紹介

この記事は[Classi Advent Calendar 2019](https://qiita.com/advent-calendar/2019/classi) 8日目の記事です。

>　　　　　　　誰もが自分自身の視野の限界を、世界の限界だと思い込んでいる。
> 　　　　　　　　　　　　　　　　　　　　　　　　　   ーーーショーペンハウアー

　こんにちは、Classiのプラットフォーム開発をやっている海龍です。
　ドイツの哲学者アルトゥル・ショーペンハウアーのこの言葉が好きで、過去の経験や先入観で自分を狭めず、狭められないように、視野を広げる、多くの情報を得るように意識して日々を過ごすようにしています。
　特に変化の激しい現在、ますます複雑化になっている社会では、物事を的確に理解する上で、取り掛かる必要があると考えています。課題解決が往々にして別の課題を引き起こしたケースが多いのではないでしょうか。「的確に」っていうと、思考能力や分析能力は大事だろうと言う方はいるかもしれません、まったく賛同です。が、抜け出せない世界に入ってしまう恐れがあり、この記事では、情報収集にとどまり、自分が直近でやった動画学習の一部を振り返リしながら、みなさんにご紹介したいと思います。
# 動画学習でよく使っているアプリ
- edX
- Youtube
- UdemyforBusiness
- Udemy

# データサイエンスの基礎コース
[BerkeleyX's Foundations of Data Science](https://www.edx.org/professional-certificate/berkeleyx-foundations-of-data-science)

　入門レベルだとしても、学校から十数年を離れてもともとそんなに理解していなかった線形代数や統計確率、微分について最低限の理解が必要っていうことを知りながら、そういった前学習は一切せず、このデータサイエンス・機械学習の動画コースに取り掛かりました。
　コースは、「[Computational Thinking with Python](https://www.edx.org/course/foundations-of-data-science-computational-thinking)」「[Inferential Thinking by Resampling](https://www.edx.org/course/foundations-of-data-science-inferential-thinking-b)」 「[Prediction and Machine Learning](https://www.edx.org/course/foundations-of-data-science-prediction-and-machine)」の３部分によって構成され、講義と小テスト、演習があります。基本は平日の朝と土曜日の夜に学習をして週に1日程度の時間で進められます。英語得意な方はもっと早く進められるかと思います。
　講義内容に`Python`と`統計確率の基礎`が含まれているおかげで、自分みたいな初心者でも最後まで学習ができます。大学のときの教科書を読んだり、WikiやYoutubeを見たりして理解に努めていました。特にYutubeのトライイット、高校大学生向けの講義が大変参考になりますが、すぐ忘れることに苦しめられ、最後は勉強した内容を紙に書くことにしました。
　回帰、Classificationなどの分析について、分析手順と考え方を中心に実例データを用いながら`Jupyter Notebook`でコードを交えて、説明はとても丁寧です。また、各セクションの最後にある演習はデータセットや実行に必要なモジュールが用意されていて、ブラウザからJupyter Notebookを起動するだけで取り掛かることができるようになっています。
　講義ノートや参考資料はまとめられているので、基本、動画を見てノートを読んで、演習をやれば問題なくコース進められます。講義から出てきた知識点の１つ１つをできるだけ、理解するように心をかけていました。なんで誤差の二乗和を最小にするか？微分とはなにか？のような基本的なところで止めて調べたりして、１０分の動画は２、３時間をかかったこともありました。分析方法別で必要な知識が整理できていれば、もうすこし体系的に勉強できたかもしれません。
<img width="300" alt="スクリーンショット 2019-12-04 23.45.02.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/15092/412d3c8e-a8a4-e833-4038-599fc944f219.png"> 　 <img width="300" alt="スクリーンショット 2019-12-04 23.50.23.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/15092/4041294c-1cb7-a59a-0f92-6744df81f43e.png">

`単回帰分析`の動画スライドです。単回帰分析はシンプルですが、解くには数学や統計の基礎知識が必要です。説明変数Xから目的変数Yを予測するためのモデルで、１次方程式 `Y = aX + b` で、変数XとYの関係を表します。aは`傾き`、bは`切片`と呼び、傾きの計算には`標準偏差` `分散` `共分散` `相関` `微分`の理解が求められます。

# 人工知能・機械学習 脱ブラックスボックス
[【キカガク】 人工知能・機械学習 脱ブラックスボックス　初級編](https://www.udemy.com/course/kikagaku_blackbox_1/)
[【キカガク】 人工知能・機械学習 脱ブラックスボックス　中級編](https://www.udemy.com/course/kikagaku_blackbox_2/)

　初級編は中学高校レベルの微分、 `線形代数`の基礎概念や演算方法からスタートして、部屋の広さから家賃を予測する単回帰分析をゴールにして講義を進めます。特に微分については、最初に`微分は何を求めて何に使えるか`という問から入ってわかりやすかった。
　中級編では、`ベクトル`、`行列演算`、`ベクトルで微分`などの線形代数基礎について説明からスタートして、最後は変数を複数にした家賃の予測を行う`重回帰分析`の実例をやります。`モデル`、`評価関数`の決め方や、評価関数の`最小化`計算方法、`Scikit-learn`での実装を１ステップずつに説明されます。機械学習に興味があって数学が苦手の方でも、いけるかと思います。
<img width="300" alt="スクリーンショット 2019-12-07 12.20.54.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/15092/59f67cd8-8804-8d94-ef2b-01e109f93b13.png">　 <img width="300" alt="スクリーンショット 2019-12-07 12.18.29.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/15092/beaaa5f8-563f-6e19-a86b-b980ad3abe2c.png">


# モチベーション維持のコツ
1. お金を払って自分を追い込む
- すべては丁寧にやらなくても良いマインド
 - １動画ずつ丁寧に取り込むコース
 - 飛ばしながら見たいところだけをみるコース
- 並行で違うカテゴリの動画を見る

特に、2番ですが、限られた時間で効率的に進められるようにもなるので、受講しているコースすべては完璧に見ていません。

# 心にかけていること
　`疑問を持ち続ける`。「Tensorflow使って画像認識」のようなコース内容では、２、３行のコードで基本統計量取れたり、それらを計算式にいれて計算したりすることをやります。ツールやPythonのメソッドの背後にある、そのもととなる根拠を、できるだけ`納得するまで調べる`ようにしています。

　このように動画学習をやっていて逆に知らないことが増えた感じもしますが、学生時代の勉強より楽しい。理論と公式ではなく、まずなにができるか、なにに使えそうか想像しながらやるといいでしょう。

以上になります。読んでいただきありがとうございます。
明日の投稿は@kasaharuさんです。お楽しみに。