Pythonからはじめる数学入門を一応読み終えたので感想を書いてみました
jupyter使いながら進めていったのでかなりはかどりました
レポジトリはこちら
どんな本?
目次をこちらのオライリーのページから引用してくるとこんな感じです
- 1章 数を扱う
- 2章 データをグラフで可視化する
- 3章 データを統計量で記述する
- 4章 SymPyで代数と式を計算する
- 5章 集合と確率を操作する
- 6章 幾何図形とフラクタルを描画する
- 7章 初等解析問題を解く
pythonの基礎的なところから始まり、中盤辺りからsympyを使いながら簡単な数式をグラフで表現したり、集合演算をしたりするような流れでした。
私はsympy全く触ったことなかったですが、使ってみたら数式を表現するのにとても便利でした。
知らなくてもとりあえず、そのまま写経すれば動くのでこの本ほんと気が楽ですw
また、各章の最後にプログラミングチャレンジという項があり、さっき知ったばかりのことを使いながら手を動かせるのでとてもよかったです。
数学の内容としては大学で学ぶようなレベルのものはなく、高校生で習うレベルの数学でした。(今の指導要領でも大丈夫かと。多分… - 2016年10月現在)
最後の7章では微積分がメインだったので数学Ⅱ~Ⅲを思い出しました。
連続性とか懐かしいです。
あの頃やったものをプログラミング言語で表せるということ自体がとても楽しかったです。
読み進め方
冒頭にも書きましたがjupyter notebookを使うのが便利です。
こちらの本自体がreplで進めていく形式なのでjupyterとの相性がとても良いです。
加えて、グラフを埋め込んだり数式もいい感じに出てくれたりするjupyterを使うと色々便利だったのでjupyter最高でした。
こちらは7章の途中のjupyter notebookの様子です。
グラフを描画しつつ数式を解いた結果も見れる。
そしてそれがそのまま見れたりする。
とても便利です。
※こちらで7章をがんばってる様子が見れたりします。
jupyter含め使った依存関係はこちらです。
requirements.txt
jupyter matplotlib matplotlib_venn
この程度しかないのでvirtualenvまたはpyvenvで入れてjupyterで動かせば楽しく学んでいけそうです。
感想
- 数学のレベルは機械学習の本とかに比べればかなり楽だった
- jupyterやsympyを試すにはもってこい!
- 逆に言えば数学のレベルは高くない
- ライブラリに慣れるために使うのには良さそう
- ただ、jupyterやsympyに慣れてるのであればおそらく必要ない
- 数式をpythonで表現するのに抵抗がなくなった
- この後機械学習系の本やその他数学系の本を読んでいける "気がする"
- 次はdeep learningの本を読んでいきたい
- あとは強い意思を持って行列プログラマーを読みたい…