· 3分で読了

MITオープンコースウェア - Juliaを使った計算思考入門の感想

# レビュー
この記事は中国語から自動翻訳されたものです。翻訳によりニュアンスが失われている場合があります。

私は皆さんにこのMITの公開講座 Introudtion to computational thinking をぜひ見ていただきたいと思います。すべての講義動画や宿題はウェブサイト上で見ることができます。最初は3B1Bが講師として参加していたので一緒に視聴しましたが、内容が想像以上に面白かったです。

コースは一見すると内容が雑多に見えますが、データサイエンス、気候変動モデリング、Ray Tracing、偏微分、統計、image processingなど、実際にはすべて計算(computation)に関連しています。このようなアプローチは、コンピュータを使って問題を解決する能力を鍛えるのに役立つと思います。

例えば、最初の2回の講義ではimage convolutionを教えてくれ、問題を行列の乗算に分解する方法を学びます。その後の宿題では、簡単なガウスぼかしを実装します。convolutionの概念は、エッジ検出やフーリエ変換など、さらに応用できることがあります。見た目には難しい問題を一歩ずつ数学的に表現できる形に分解し、他の領域に応用する方法を教えてくれるのは、私が素晴らしい学習法だと思う点であり、多くの人が欠けているスキルでもあります。

次にseam carvingについて話します。これは画像の比率を変更できるが、「奇妙に見えない」手法です。一般的に画像の比率を変更する際、ある次元が伸びたり圧縮されたりするため、見た目が不自然になります。このアルゴリズムは、画像の中で重要でない部分を見つけ出し、それを取り除くことで、全体の画像が自然に見えるようにします。

データの処理方法については、COVID-19を例に挙げるのが時事的にも適していると思います。実際のケーススタディを通じて学ぶことができます。また、PCAによる次元削減や特異値分解が持つ意味についても触れ、統計の概念を再確認することができます。

後半の講義はあまり興味がなかったため、自分が怠けてしまい、ざっとしか見ていませんが、アウトラインを以下に示しますので参考にしてください:

  • Random walks
  • 離散数学
  • 偏微分方程式
  • 気候変動モデリング

個人的には、どれも非常に実用的な概念だと感じていますので、時間があればこのコースを追い続けたいと思っています。

この講座では、主にJuliaがプログラミング言語として使用されていますが、私自身は書きやすいと感じており、今後簡単な行列運算やデータ分析を行う際にはJuliaを使うことになると思います。経験豊富なエンジニアにとっては、すぐに習得できるはずで、Plutcoを使用すればウェブ上でプログラムを書くことができ(Jupyter notebookに似ています)、リアルタイムで結果を見ることができます。

p.s: Grant Sandersonの話し方と動画は本当に丁寧で、教員の中でも質が最も高いと思います。