DoingMathWithPython

学習目標と内容

  • 数値計算やAIでよくつかわれるpythonを用いて数学の問題を解く手法 および
  • 協同学習の手法を習得する.
    • また,協同学習の手法の習得のため,ペア評価をおこなう.

成績評価

  • 毎回のレポート(60),中間ペア試験(20),発展課題レポートおよび/あるいは最終試験(20)をペアあるいはスリーマンセルで評価する.カッコ内は配点の目安.

前半

  • 好きなペアで
  • 課題を予習
  • グループワークを時間内に解いて提出
  • 中間ペア試験(11/24), なんでも持ち込み可,ネットも
  • 中間ペア試験は対面実施の予定
  • 60点以下のグループは解体(2022年度は実施形態未定)

後半(2022年度は実施形態未定)

  • 基本は3マンセルで
  • 発展課題レポートおよび/あるいは最終試験(20)をペアあるいはスリーマンセルで評価する

教科書

  • 「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
参考資料 pdf
答案 ipynb ( nbviewer ), pdf
  • sympyの初期化をするinit_sessionがうまく動かない.
    • init_printingだけする

結果

score_plot.png

平均:78.63

スキルが身についているかどうかを試すこの(種の)試験では, 得点分布は100点をマックスとする指数分布となります. これは,自動車免許の検定試験と同じです. 学生に順位をつける模試などでは, 正規分布となるように難問(奇問)を混ぜています. 社会人になったら,どちらの類の試験かを分析した上で 準備してください.

12/1, 8, 15, 22 :発展課題レポート

次のどこかの章を読み込んで,実行して,reportを作りなさい. できるだけ,自分の知識定着に役立つレポートに仕上げなさい. 下に挙げているのはサンプルです. これに倣って,独自のレポートを作ってください.

動画リンク リンク
5章(回帰)中原 pdf ipynb nbviewer
6章(分類)堀川 - I pdf ipynb nbviewer
- II pdf ipynb nbviewer
7章(ニューラルネットワーク)後藤 pdf ipynb nbviewer
8章(MNIST) 西谷

最終試験(2022年度は実施しない)

最終試験


  • source "/Users/bob/Desktop/lecture_22f/symbolic_math/symbolic_math.org"
Last modified:2022/12/08 16:38:51
Keyword(s):
References:[LectureNotes]