この記事はClassi Advent Calendar 2019 8日目の記事です。
誰もが自分自身の視野の限界を、世界の限界だと思い込んでいる。
ーーーショーペンハウアー
こんにちは、Classiのプラットフォーム開発をやっている海龍です。
ドイツの哲学者アルトゥル・ショーペンハウアーのこの言葉が好きで、過去の経験や先入観で自分を狭めず、狭められないように、視野を広げる、多くの情報を得るように意識して日々を過ごすようにしています。
特に変化の激しい現在、ますます複雑化になっている社会では、物事を的確に理解する上で、取り掛かる必要があると考えています。課題解決が往々にして別の課題を引き起こしたケースが多いのではないでしょうか。「的確に」っていうと、思考能力や分析能力は大事だろうと言う方はいるかもしれません、まったく賛同です。が、抜け出せない世界に入ってしまう恐れがあり、この記事では、情報収集にとどまり、自分が直近でやった動画学習の一部を振り返リしながら、みなさんにご紹介したいと思います。
動画学習でよく使っているアプリ
- edX
- Youtube
- UdemyforBusiness
- Udemy
データサイエンスの基礎コース
BerkeleyX's Foundations of Data Science
入門レベルだとしても、学校から十数年を離れてもともとそんなに理解していなかった線形代数や統計確率、微分について最低限の理解が必要っていうことを知りながら、そういった前学習は一切せず、このデータサイエンス・機械学習の動画コースに取り掛かりました。
コースは、「Computational Thinking with Python」「Inferential Thinking by Resampling」 「Prediction and Machine Learning」の3部分によって構成され、講義と小テスト、演習があります。基本は平日の朝と土曜日の夜に学習をして週に1日程度の時間で進められます。英語得意な方はもっと早く進められるかと思います。
講義内容にPython
と統計確率の基礎
が含まれているおかげで、自分みたいな初心者でも最後まで学習ができます。大学のときの教科書を読んだり、WikiやYoutubeを見たりして理解に努めていました。特にYutubeのトライイット、高校大学生向けの講義が大変参考になりますが、すぐ忘れることに苦しめられ、最後は勉強した内容を紙に書くことにしました。
回帰、Classificationなどの分析について、分析手順と考え方を中心に実例データを用いながらJupyter Notebook
でコードを交えて、説明はとても丁寧です。また、各セクションの最後にある演習はデータセットや実行に必要なモジュールが用意されていて、ブラウザからJupyter Notebookを起動するだけで取り掛かることができるようになっています。
講義ノートや参考資料はまとめられているので、基本、動画を見てノートを読んで、演習をやれば問題なくコース進められます。講義から出てきた知識点の1つ1つをできるだけ、理解するように心をかけていました。なんで誤差の二乗和を最小にするか?微分とはなにか?のような基本的なところで止めて調べたりして、10分の動画は2、3時間をかかったこともありました。分析方法別で必要な知識が整理できていれば、もうすこし体系的に勉強できたかもしれません。
単回帰分析
の動画スライドです。単回帰分析はシンプルですが、解くには数学や統計の基礎知識が必要です。説明変数Xから目的変数Yを予測するためのモデルで、1次方程式 Y = aX + b
で、変数XとYの関係を表します。aは傾き
、bは切片
と呼び、傾きの計算には標準偏差
分散
共分散
相関
微分
の理解が求められます。
人工知能・機械学習 脱ブラックスボックス
【キカガク】 人工知能・機械学習 脱ブラックスボックス 初級編
【キカガク】 人工知能・機械学習 脱ブラックスボックス 中級編
初級編は中学高校レベルの微分、 線形代数
の基礎概念や演算方法からスタートして、部屋の広さから家賃を予測する単回帰分析をゴールにして講義を進めます。特に微分については、最初に微分は何を求めて何に使えるか
という問から入ってわかりやすかった。
中級編では、ベクトル
、行列演算
、ベクトルで微分
などの線形代数基礎について説明からスタートして、最後は変数を複数にした家賃の予測を行う重回帰分析
の実例をやります。モデル
、評価関数
の決め方や、評価関数の最小化
計算方法、Scikit-learn
での実装を1ステップずつに説明されます。機械学習に興味があって数学が苦手の方でも、いけるかと思います。
モチベーション維持のコツ
- お金を払って自分を追い込む
- すべては丁寧にやらなくても良いマインド
- 1動画ずつ丁寧に取り込むコース
- 飛ばしながら見たいところだけをみるコース
- 並行で違うカテゴリの動画を見る
特に、2番ですが、限られた時間で効率的に進められるようにもなるので、受講しているコースすべては完璧に見ていません。
心にかけていること
疑問を持ち続ける
。「Tensorflow使って画像認識」のようなコース内容では、2、3行のコードで基本統計量取れたり、それらを計算式にいれて計算したりすることをやります。ツールやPythonのメソッドの背後にある、そのもととなる根拠を、できるだけ納得するまで調べる
ようにしています。
このように動画学習をやっていて逆に知らないことが増えた感じもしますが、学生時代の勉強より楽しい。理論と公式ではなく、まずなにができるか、なにに使えそうか想像しながらやるといいでしょう。
以上になります。読んでいただきありがとうございます。
明日の投稿は@kasaharuさんです。お楽しみに。