mots quotidiens.
Daichi Mochihashi (持橋大地) daichi <at> ism.ac.jp by hns, version 2.10-pl1.

先月 2024年05月 来月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

2014年02月08日() [n年日記]

#1 Nitamogy.js

雪で研究所に行けず, 時間があったので(?), 前から気になっていた, 増井さんの Nitamogy のJavascript化をやってみました。
ブラウザのアドレスバーに javascript:〜 で始まる1行を入れて使うブックマーク レットは非常に面白く, たとえば次の行をアドレスバーに入れてリターンキーを押すと, ひらがなを全部消すことができます。 (似非中国語化)
javascript:document.body.innerHTML=document.body.innerHTML.replace(/[\u3040-\u309f]+/g,'').replace(/[\u30a0-\u30ff]+/g,'');focus();

この方法で, 現在見ているWebページを動的に変更できるのは自然言語処理的にはとても 興味深いのですが, ただし, ブックマークレットでは最大長にも制限があり, 簡単な 処理しか書けないという欠点があります。
nitamogyはもう少し複雑なので, 何とかならないかと思っていたところ, 少し調べると, 次のように書くと, ブックマークレットから外部のjavascriptのソースを読んで実行することができることを知りました。 (ソース)

javascript:(function(){var%20url='http://xxxx/yy.js';var%20d=document;var%20e=d.createElement('script');e.src=url;d.getElementsByTagName('head')[0].appendChild(e);})();
http://xxxx/yy.js のところに, 任意のJavascriptを置いて使います。 これは, <script src="..">をhead要素にオンラインで挿入したことに相当しています。 こうすれば, 後は document.innerHTML を変更するJavascriptのソースを書けば, Webページを動的に変更する複雑なjavascriptを実現できます。 人工知能学会の査読でもらった5千円の図書券を有効活用して「Javascript 第6版」を 買ったので, 後は書くだけです。

というわけで, NitamogyをJavascript化してみました。 下のURLを今見ているWebページのアドレスバーに入力してリターンキーを押すと, テキストが微妙に変わります。

javascript:(function(){var%20url='http://chasen.org/~daiti-m/etc/nitamogy.js';var%20d=document;var%20e=d.createElement('script');e.src=url;d.getElementsByTagName('head')[0].appendChild(e);})();
Javascriptで表面を変えているので, 文字コードの問題もなく, FacebookやGmailなどの Javascriptで動的に生成されたページにも使えるのが特徴です。 このページで今すぐ試したい方は こちら

これで複雑な処理も現在のWebページに適用できるようになったので, *1 自然言語処理的には非常に可能性があるのではないかと感じています。 たとえば, 言葉をトピックで色分けしたり, javascriptでオンラインで形態素解析した りすることができそうです。生成もできるので, カーソルで説明や要約, 翻訳を出せる ようになるなどすると, 愉快だなと思います。


*1: nitamogy.jsはそれほど複雑なことをしている訳ではありません。

2007年02月08日(木) [n年日記]

#1 Reconstructing Macroeconomics

10日ほど有休を使って休暇を取っているので, 前から気になっていた, Masanao Aoki and Hiroshi Yoshikawa, "Reconstructing Macroeconomics : A perspective from Statistical Physics and Combinatorial Stochastic Processes", Cambridge University Press, 2006 [amazon] を買って, 最初の方を読んでみた。 これは前に 菅原さん とメールのやり取りをしていた時に出てきた本で, 今季の東大経済の 講義 のテキストにもなっているようだ。

二人分のPrefaceを読んで, 1章のIntroduction(20数ページぐらい)が10章分のまとめ になっているので, 数日かけて読んでみた。 内容が凝縮されている上, 経済の専門用語に慣れていないので, 読むのに時間がかかる。 上のページで, p.10くらいまでのExcerptが読めます [PDF] 。 とても面白いのですが, 結構色々考えたことがあるので, 以下にまとめ。

経済の議論というと, すぐゲーム理論に持ち込んで, "Equilibria, equilibria, equilibria, ..."と言っているという印象があるのですが(偏見), ミクロ経済にはそれが役立つ場面があるにしても, マクロ経済はそれでは駄目だろう, というのが基本姿勢。 これまでのマクロ経済は, 集団を代表する "Representative agent" がいうのがいて, その振る舞いを記述するという方法だったらしいが, それが誤っているのは明らかで, むしろ多数の, それぞれに確率的に異なった行動を行うagentの集団の aggregate dynamics が, あるマクロ的振る舞いを示すという考えに切り替える必要があるという 主張が繰り返されていて, 僕はきわめてまともな主張だと思う。
実際, ある鋸型/|/|/|の景気循環etc.が繰り返されている場合, 1つの"Representative Agent"の行動が集団全体で共通していて, 全く同じ時期に 同じ影響を受けている, というのはどう考えてもおかしくて, むしろ 異なるagentからなる集団全体で, ある種のsyncronizationが起きていると考えるのが 普通だと思う。(ここで, 僕は例によって BZ反応 とかを思い出したわけですが..。)

何度も強調されているのは, 個体はそれぞれ異なった生産性, 目的関数, 確率的ショック, ..などの "idiosyncrasy" を持っているが, それが集団としては統計力学的な 分布に従う, ということ。従来のように, ある空間での「点」に「最適化」の結果と して漸近的に近付く, というようなモデルではなく,

というようなこと。 すぐに均衡解(Equilibria)を持ち出す議論に僕は前から異和感を持っていたのですが, 著者も, そもそも外部条件が変化すると均衡解に意味がないのではないか, という ように言っていて, 共感できる点が多い。また, 最終的に均衡解に行くにしても, 実際にはその行き方に意味があることも多い。 このためのツールとして使われているのは, Gibbs分布やMarkov過程などの道具と, ポアソン-ディリクレ過程のようなどっかで見たような *1 組み合わせ的な確率過程。後ろの実際の議論をパラパラ見てみると, まあそうだろうなーという感じで, ごく自然に感じられる。 (ちなみに, 少し前に標準的な教科書であるらしい Hayashi "Econometrics" とかも買ってしまったりしているわけですが, 正直全然面白いとは思えなかった。)

・ -

もう少しメタ的に言うと, この本で著者が主張しているのは, 経済学は von Neumann的ミクロ最適化の呪縛を解いて, Wiener的確率マクロモデル で考えるべきではないか, ということではないかと思う。
NeumannとWienerの思想が対立的に考えられるというのは有名ですが, Neumannがゲーム理論を作ったせいで, マクロ経済までもミクロ的な考えでこれまで 無理矢理解釈しようとしていたが, マクロには真にマクロに値する, 別の考え方が あるということではないか, と思う。 *2
もう少し言うと, ミクロ経済の方にも, こうした考え方を取り入れる余地が本当は あるのではないか, とも思える。

R&Dに対するReturnが, パラメータλのPoisson Processに従うとか, 面白いマクロな 話が一杯で, 専門は経済ではないにしても面白いなあ, と思う。 *3 日本語で"経済"というと, ついお金に関係したことだと思ってしまうわけですが, 読んでいてこれはまさに "Economy" のモデルなんだなあ, と思って, 非常に面白かった。


*1: 注: 2-パラメータPoisson-Dirichlet過程のことを, ごく最近の機械学習では短く Pitman-Yor過程と呼んでいる。
*2: 僕はもちろん Wiener のファンなわけですが, ちなみに, 機械学習について言うと, 判別の人はNeumann的な系譜に立っている 一方, ベイズの方はWiener的思想の系譜に立っていて, それに根本的な思想の違い があると前から思っている。 ここでその理由を詳細に展開する余裕はないですが..。
*3: 実際には技術開発は時間一定のパラメータに従っているわけではなくて, ある種の "burstiness" を持っていると考えられるので, そう考えると単なるポアソン 過程ではなくて, ..とか考えると, 面白そうだと思う。

2 days displayed.
タイトル一覧
カテゴリ分類
 なかのひと
Powered by hns-2.10-pl1, HyperNikkiSystem Project