見出し画像

「線形代数の半歩先」をPythonで写経 ~ 序章 Python写経、はじめました

書籍の著者 大久保 潤 先生


この記事は、書籍「線形代数の半歩先」と Python写経活動の動機 のご紹介 です。


書籍「線形代数の半歩先」のご紹介


このシリーズは、書籍「線形代数の半歩先 データサイエンス・機械学習に挑む前の30話」(講談社サイエンティフィク、「半歩先」と呼びます)の Python 写経の実践を通じて得た個人的な知見を書きます。

「半歩先」は、2025年3月に発売され、副題「データサイエンス・機械学習に挑む前」のとおり、線形代数とデータサイエンスの橋渡し的存在の数学書です。
著者の先生によると、想定読者は次のような人です。
(「半歩先」の「はじめに」より引用)

  • 線形代数の先にどんな世界が広がっているのかを知りたい、すべての人

  • データサイエンスや機械学習を学び始めたい人

  • 微分方程式や偏微分方程式を使って、ものごとの時間的な変化を記述する世界を扱いたい人

  • 大規模な行列の扱いに困っている人⋯⋯

GitHub に「半歩先」のサポートページが開設されています。

数学者のイラスト:「いらすとや」さんより

「半歩先」の実践で感じたこと


私が「半歩先」を手にとったのは、別の数学書を実践していたときでした。
その数学書は「機械学習のための数学」(以下、「機械学習数学」と呼びます)です。

こちらは機械学習の数学ということで、ベクトルを扱う線形代数に焦点を当てています。
ただ、数学的記述色が強くて、特に前半は「とても抽象的な」線形代数の世界を取り扱っています。
数学的素養のない私にとって「???」の連続でした。

勉強が分からない男の子のイラスト:「いらすとや」さんより

そんな中、「半歩先」のページをめくってみると「機械学習数学」に書いてあったことは「実はそういうことだったのか!」という事態が連発したのです。
「半歩先」は、カラーの数式とグラフを多用して「線形代数の直感的な理解」と「データサイエンスとの接続点」を明快に記述しています。
また、数式の導出についても「割と」細かく書かれています。
データサイエンス・機械学習の文脈で数式的なものに「多少」触れてきた人が、本格的に数学・線形代数を学ぼうとするときに、とてもよいガイドになるのではないか、と感じています。
私自身は、線形代数とデータサイエンスを結ぶ「半歩先」に近づけた気がします!

本を読んで閃いた人のイラスト(男性):「いらすとや」さんより

Python 写経の道へ


そうは言っても、やはり「半歩先」は数学書です。
つまり、データサイエンスを現実世界で実践するためのPyhon等のコードは全く無いのです!
「半歩先」のグラフはほぼ matplotlib.pyplot で描かれているだろうと、容易に想像できるのですが、コードはありません!
数式がデータをどのように操作しているのかを「プログラミング」を通じて理解を深める Python 信者の私にとって、これは由々しき事態なのです!!!

そこで私は 「半歩先」掲載の数式や図表を Python で書く「寄り道写経」をすることにしました。
ただし、先行して実践した「機械学習数学」でよく似た数式・図表の Python 化を実践済みでしたので、「半歩先」からは個人的主観で選択したテーマをコード化しています。
(注)「機械学習数学」もブログ化する予定です。

その結果、「半歩先」に通底する「行列・作用素とベクトル・関数(時間発展を含む)の定式化」の核心にはほとんど触れず、データサイエンス実装が主役となって数式と戯れる内容になっています。。。
(著者の先生、こんな理解の仕方でごめんなさい。。。)

ちなみに「半歩先」の数学的側面の理解を促進する目的で、ChatGPTと対話して、直感的なガイドの取得とコード生成を積極的に行いました
ChatGPTによるガイドやコードもブログに取り入れてまいります!

AIと話す人のイラスト(女性):「いらすとや」さんより

引用表記


このシリーズの各記事は、出典に記載の書籍に掲載された数式、文章、図表を引用し、適宜、改変して書いています。
【出典】
「線形代数の半歩先 データサイエンス・機械学習に挑む前の30話」
第1刷、著者 大久保 潤、講談社サイエンティフィク

記事中のイラストは、「かわいいフリー素材集いらすとや」さんのイラストをお借りしています。
ありがとうございます!

目次



シリーズの記事

次の記事

ブログの紹介


note で7つのシリーズ記事を書いています。
ぜひ覗いていってくださいね!

1.のんびり統計

統計検定2級の問題集を手がかりにして、確率・統計をざっくり掘り下げるブログです。
雑談感覚で大丈夫です。ぜひ覗いていってくださいね。
統計検定2級公式問題集CBT対応版に対応しています。
Python、EXCELのサンプルコードの配布もあります。

2.実験!たのしいベイズモデリング1&2をPyMC Ver.5で

書籍「たのしいベイズモデリング」・「たのしいベイズモデリング2」の心理学研究に用いられたベイズモデルを PyMC Ver.5で描いて分析します。
この書籍をはじめ、多くのベイズモデルは R言語+Stanで書かれています。
PyMCの可能性を探り出し、手軽にベイズモデリングを実践できるように努めます。
身近なテーマ、イメージしやすいテーマですので、ぜひぜひPyMCで動かして、一緒に楽しみましょう!

3.実験!岩波データサイエンス1のベイズモデリングをPyMC Ver.5で

書籍「実験!岩波データサイエンスvol.1」の4人のベイジアンによるベイズモデルを PyMC Ver.5で描いて分析します。
この書籍はベイズプログラミングのイロハをざっくりと学ぶことができる良書です。
楽しくPyMCモデルを動かして、ベイズと仲良しになれた気がします。
みなさんもぜひぜひPyMCで動かして、一緒に遊んで学びましょう!

4.楽しい写経 ベイズ・Python等

ベイズ、Python、その他の「書籍の写経活動」の成果をブログにします。
主にPythonへの翻訳に取り組んでいます。
写経に取り組むお仲間さんのサンプルコードになれば幸いです🍀

5.RとStanではじめる心理学のための時系列分析入門 を PythonとPyMC Ver.5 で

書籍「RとStanではじめる心理学のための時系列分析入門」の時系列分析をPythonとPyMC Ver.5 で実践します。
この書籍には時系列分析のテーマが盛りだくさん!
時系列分析の懐の深さを実感いたしました。
大好きなPythonで楽しく時系列分析を学びます。

6.データサイエンスっぽいことを綴る

統計、データ分析、AI、機械学習、Pythonのコラムを不定期に綴っています。
統計・データサイエンス書籍にまつわる記事が多いです。
「統計」「Python」「数学とPython」「R」のシリーズが生まれています。

7.Python機械学習プログラミング実践記

書籍「Python機械学習プログラミング PyTorch & scikit-learn編」を学んだときのさまざまな思いを記事にしました。
この書籍は、scikit-learnとPyTorchの教科書です。
よかったらぜひ、お試しくださいませ。

最後までお読みいただきまして、ありがとうございました。

いいなと思ったら応援しよう!

ネイピア DS 応援ありがとうございます。これからもがんばって記事を作成します!