読者です 読者をやめる 読者になる 読者になる

室村日記

日々、試行錯誤したことを備忘録的にまとめていきます

Pythonの改行と手書き数字

1.はじめに

今回も途中で詰まった部分を書き散らかしていきます.

2.Pythonの改行

なんでかよくわかんないけど,Pythonでは1行に書いていい文字数が決まっていて,それは79文字であるらしいです.
これを超えてしまうと,E501 line too longというエラーが出たり出なかったりします.
これをさけるために文章の途中で改行を行うのだが,サンプルコードを見たときに最初改行してあることに気づかず混乱したのでメモしておきます.

具体的には

(var_1, var_2), (var_3, var_4) = function(condition1 = hogehoge, condition2 = fugafuga, condition3 = piyopiyo)

みたいに一度に宣言したり,引数指定が長すぎたりするとあっさり79文字を超えてしまうため,適当なところでバックスラッシュで区切ってあげると良いようです.
こんな感じ

(var_1, var_2), (var_3, var_4) = \
    function(condition1 = hogehoge, condition2 = fugafuga, condition3 = piyopiyo)

3.手書き文字認識

MNIST.松尾先生の「人工知能は人間を超えるか」にも出てきていた手書き文字認識.
まったくの門外漢なのでこういう専門の事例でよく使われているデータを扱えるだけで気分が盛り上がる.
(とはいえRのirisとかは使ったことなかったなあ)

4.勾配法と学習率

学習効率を高め,かつある程度正しい解にたどり着くためには学習率というハイパーパラメーターが大切であるとのことでした.
この学習率の決め方については,確か前に覗いたGPS論文の中で,grid adjacentという名前で紹介されていた気がする.
後で確認しないと.