マガジンのカバー画像

Pythonによる最適化

249
最適化やデータ解析はPythonを使うと瞬時にできるよ,という話です.
運営しているクリエイター

2018年12月の記事一覧

gitでColabを公開しました

Google Colabは,そのままgitで公開することができ,さらに自動的に Open in colabボタンが追加される.

fastaiの基本のキだけだが,作ってみたので公開する.

そのうち講義ビデオがアップされたら,もう少し本格的なものを作成しよう.

学習率の調整

深層学習で最も重要なパラメータは,学習率(learning rate: lrと略される)である.深層学習とは,重み調整のために非線形最適化をいいかげんに行うだけの反復法であり,要は勾配に適当なステップサイズを乗じて現在の値から減じる操作を繰り返す.この非線形最適化におけるステップサイズのことを,学習率と呼んでいるだけなのだ.

これをチューニングするために,fastaiでは学習器オブジェクト にl

もっとみる

Google Colabでfastai

最先端の深層(機械)学習を実務家が気軽に適用できるようにするための仕組みとしてfastaiがある.「AIをもう一度uncoolに」を標語にしているように,専門家でなくても(Pythonを知っていれば)ある程度(というか数年前の世界新記録程度)の深層学習を使うことができる.

問題はインストールが面倒なことだ.GPUつきのlinuxが必要で,それ上にPyTorchを入れた後でインストールする必要があ

もっとみる

定義

本の序文では言葉の定義をだらだらと書かなければならないので面倒だ.そこで,簡単な定義を考えてみた.

ニューラルネット:単なる関数近似器.

機械学習:(教師ありに限定だが)入力データと出力データから,モデルのパラメータを調整する方法.

深層学習:単なる多次元分散型関数近似器.

fast.ai:PyTorchのラッパー

fast.aiで協調フィルタリングとか埋め込みによる表データ処理について

もっとみる

協調フィルタリング

協調フィルタリング(collaborative filtering)とは,推奨システム(recommender system)の一種で,ユーザーとアイテムの両方の潜在因子を考慮して,レーティングを決める手法だ.

推奨システムでよく見かけるのは,「この商品を買った人はこの商品も買っています」とか「最も良く売れているのはこの商品です」などの猿でもできるタイプのものだ.このような単純なものではなく,あ

もっとみる

fast.ai version 1.x

fast.aiはバージョン0.7の講義ビデオで勉強している人が多い.(日本語に翻訳されているのは,ほとんどがDLのLesson1で挫折している :-).

fastai 0.7はドキュメントも悪く,講義もだらだらなので敬遠していたが,version 1.x になったらだいぶすっきりした.

SCMで使うのは,定型の表形式データが多いので,それ関係を簡単に紹介する.元はこちら.

表形式データの基本

もっとみる

Excelによる深層学習の学習

深層学習はPythonでするものだと思いこんでいたが,教育用には(みんな得意な)Excelを使う方が良いことに気づいた.

たとえば,畳み込みニューラルネットのフィルターやソフトマックスの概念などの深層学習の基本は,小さな例題ならExcelの計算式で表現可能だ.

さらにExcelには簡単な非線形最適化ソルバーがついているので,協調フィルタリングは簡単に実装できる.潜在因子行列を変数にして,行列の

もっとみる

バイアスとバリアンス

監修していたMITのテキストの翻訳を直していて気づいたのだが,バイアスとバリアンスの訳と解釈が,混乱を招いていると思われる.

ほとんどの教科書でバイアスは「的からずれていること」,バリアンス(分散と訳される)は「的の中心からのばらつきが大きいこと」と説明されている.さらに,これらはトレードオフ関係にあるので,片方を良くしようとすると,もう片方が悪くなると説明している.この説明をもとに機械学習の精

もっとみる

似非研究者

前回の自称データサイエンティストに続いて,AIブームに便乗した偽物を見分ける方法について考察してみた.

偽物:
・すぐにシンギュラリティとか言う.

・他の人が作った資料の切り貼りばかりの講演をする.

・よく分からないものをすべてAIと言う.

・元々の専門が全然違う(物理の博士とか).

・補助金の額を自慢したり,(逮捕された)スパコン業者を持ち上げていた.

・この手法(もしくはこの計算機

もっとみる