DoingMathWithPython
- 学習目標と内容
- 成績評価
- 教科書
- 授業でのQ and A
- 授業計画
- 9/22 注意,及びJupyterNotebook
- 9/29:JupyterNotebook,2020年度問題
- 10/6:対数(log)
- 10/13:微積Calculus
- 10/20:線形代数LA_numpy(Breast Cancer Detect)
- 10/27:線形代数LA_sympy(Google PageRank)
- 11/3:数式変形
- 11/10:数式変形2
- 11/17:試験リハーサル
- 11/24:中間試験
- 12/1, 8, 15, 22 :発展課題レポート
- 最終試験(2022年度は実施しない)
- 最終試験
教科書
- 「Pythonで動かして学ぶ!あたらしい機械学習の教科書 第2版」伊藤 真,翔泳社; 第2 edition (July 18, 2019).
- 今年度もテキストを使います.
- 丁寧にsympy, numpy, jupyternotebookの説明がされています.
- さらに,発展レポートは第5章から第9章の中から自分たちの興味に応じて選んでもらう予定です.
授業でのQ and A
- jupyter notebookでnot foundがでる.-> browserを再起動
- 課題のコメントは? -> cellの属性をmarkdownに変えて入力
- 印刷の集約の方法は? -> Chromeの右上の設定から印刷を選んで,「システムダイアログを使用して印刷」を選んで,「詳細設定」でワンクリック設定アイコンで集約して印刷.
- codeでの印刷 -> latexが入っていればエクスポートからpdfを選択すれば綺麗に出力,入れたくなければ,jupyter notebookで立ち上げてprint previewするのが良さそう.
授業計画
9/22 注意,及びJupyterNotebook
installはお任せ.動作をお見せします.
動画リンク | 動画 |
宿題(次週までの宿題) | |
同意書 | pair_agreement.docx |
install | c1 |
python基本 | c2 |
9/29:JupyterNotebook,2020年度問題
動画リンク | 動画 | |
今週の提出課題 | 20_pair.ipynb | (nbviewer) |
20_pair_ans.ipynb | (nbviewer) | |
宿題(次週までの宿題) | first_leaf.ipynb | (nbviewer) |
10/6:対数(log)
対数に関する問題です.情報の授業ではやたらと対数が出てきますが, 対数にする基本目的は,計算を楽にするためです. そのエントロピーに神は宿ってませんが,対数には神々しい便利さがあります. 参考資料を横目で見ながら,今週の提出課題を仕上げてください. 先週の宿題とともに,LUNAへペアの一人があげてください. 締め切りは今日の夜中の12時です. 正確には,明日の朝0時です.
動画リンク | 動画 | |
今週の提出課題 | gw1_exp_log.ipynb | (nbviewer) |
解答例 | gw1_exp_log_ans.ipynb | (nbviewer) |
参考資料 | equals.ipynb | (nbviewer) |
functions.ipynb | (nbviewer) | |
宿題(次週提出の宿題) | differential.ipynb | (nbviewer) |
integral.ipynb | (nbviewer) |
10/13:微積Calculus
先週は対数(log)を学んでいただきましたが, 今週は指数(exp)を掘り下げます. なんで,eはあんな変な数なんだろうと思いませんでした? その意図を理解してもらいます. わかるとなんてことないですよ. (私は,四十路になるまでわかっていませんでしたが^_^;). 指数の微分ってそういうことなんやと得心いただけると嬉しいです. そこには,神を感じられます. 提出の仕方は先週と同じです.
動画リンク | 動画 | |
今週の提出課題 | gw2_diff.ipynb | ( nbviewer ) |
解答例 | gw2_diff_ans.ipynb | (nbviewer) |
宿題(次週提出の宿題) | linear_algebra_scipy.ipynb | (nbviewer) |
10/20:線形代数LA_numpy(Breast Cancer Detect)
線形代数の応用として,乳がんの自動検出器を作成してもらいます. 少し古いアプローチですが,何をしているのかが,直感的にわかると思われますので, ぜひ理解に努めてください.
動画リンク | 動画 | |
今週の提出課題 | gw3_ex.ipynb | nbviewer |
補足資料 | 乳がん判別器 | nbviewer |
補足資料2 | ファイル操作 | nbviewer |
data | train_A.data, train_b.data,validate_A.data, validate_b.data | |
解答例 | gw3_ex_ans.ipynb | nbviewer |
(次週提出の)宿題 | la_sympy | nbviewer |
10/27:線形代数LA_sympy(Google PageRank)
線形代数の計算を提供するpackageはnumpyだけでなく,sympyもあります. こちらの方が見た目を綺麗にできるので,ちょっとした数学的な事柄を理解するのに重宝します.
動画リンク | 動画 | |
グループ課題 | gw4_page_rank.ipynb | nbviewer |
補足資料 | gw4_pagerank_eigenvect_correct.ipynb | nbviewer |
解答例 | gw4_page_rank_ans.ipynb | nbviewer |
(次週提出の)宿題 | equation_manipulation.ipynb | nbviewer |
11/3:数式変形
いよいよ本格的に数式処理(解析的な解を求める)です. 一番わかりやすいのが,センター試験なので,それを題材にしています. 先週の宿題の最後の二つの課題とかぶってます.そちらを参照して,仕上げてください. 宿題としてやってきていても,再度意味を考えながら打ち込むと理解が深まりますよ.
動画リンク | 動画 | |
グループ課題 | gw5_center_exams.pdf | |
解答例 | gw5_center_ans.ipynb | nbviewer |
(次週提出の)宿題 | PythonOldExamsの中から一つか二つ選んでやってきてください.次週の課題とともに,LUNAへ一部提出. |
11/10:数式変形2
動画リンク | 動画 |
グループ課題 | 予習課題と同じです.合計,3つか4つを今日提出してください. |
宿題 | 試験に備えて,テキストを整理しておいてください. |
11/17:試験リハーサル
問題 | ipynb ( nbviewer ), pdf |
答案 | ipynb ( nbviewer ),pdf |
参考資料 | 21_pair_reference.pdf |
- sympyの初期化をするinit_sessionがうまく動かない.
- init_printingだけする
- 答案間違ってます.2(a)A*B.Tではなく,B.T*Aになってます.ごめんなさい.
- 0758山崎,0761藤井さんらが指摘
11/24:中間試験
問題 | ipynb ( nbviewer ), pdf |
参考資料 | |
答案 | ipynb ( nbviewer ), pdf |
- sympyの初期化をするinit_sessionがうまく動かない.
- init_printingだけする
結果

平均:78.63
スキルが身についているかどうかを試すこの(種の)試験では, 得点分布は100点をマックスとする指数分布となります. これは,自動車免許の検定試験と同じです. 学生に順位をつける模試などでは, 正規分布となるように難問(奇問)を混ぜています. 社会人になったら,どちらの類の試験かを分析した上で 準備してください.
12/1, 8, 15, 22 :発展課題レポート
次のどこかの章を読み込んで,実行して,reportを作りなさい. できるだけ,自分の知識定着に役立つレポートに仕上げなさい. 下に挙げているのはサンプルです. これに倣って,独自のレポートを作ってください.
動画リンク | リンク | ||
5章(回帰)中原 | ipynb | nbviewer | |
6章(分類)堀川 - I | ipynb | nbviewer | |
- II | ipynb | nbviewer | |
7章(ニューラルネットワーク)後藤 | ipynb | nbviewer | |
8章(MNIST) 西谷 |
Keyword(s):
References:[LectureNotes]