So-net無料ブログ作成
検索選択
前の10件 | -

普遍文法 [学問]

 日経サイエンスの5月号の特集「言語学の新潮流」で、「チョムスキーを超えて〜普遍文法は存在しない」という記事が掲載されていた。普遍文法は、「人は生得的に言語習得機構、すなわち言語機能(普遍文法)を持っている」という彼の仮説で、過去半世紀近くにわたって理論言語学を支配してきた。コンピュータの発達に伴って、計算論的アプローチを好む学者たちに支持されてきた。

 普遍文法自体も、時代の要請に合わせて、当初のものから→「原理とパラメータのアプローチ」→「計算的回帰性(再帰性)」へと変遷を遂げているが、文法的雛型に単語を当てはめる能力を子供達が生得的に持っているという基本的な考え方は変わらない。普遍文法は、下記の「語用論」も導入しているが、そこでの位置付けはあくまでも文法の脇役にとどまっていた。

 近年、普遍文法に代わる新しい仮説として「用法基盤モデル」と呼ばれるものが登場している。簡単にいうと、「子供は一般的な認知能力や他者の意図を理解する能力を用いて耳にした言葉から文法カテゴリーと規則を作り上げているという見方」。子供達が社会的相互作用の中で、認知処理機構(スキーマ化、習慣化、脱文脈化、自動化、etc)や制限機構(伝達意図推論)によって構文を使う経験を積むことで言語を習得しているとする。上に書いた主従関係が逆転したものとなっている。

  言語の習得が人の新しい脳である大脳新皮質の発達と共に起こったことを考えると、言語はチョムスキーの言うようなハードウエア的なものよりももっとソフトウエア的なものだと思う。チョムスキーは偉大な学者だが、普遍文法仮説はおそらく間違っているように思う。ただ普遍文法は翻訳などの場合、コンピュータでは扱いやすいし、文の意味は理解していなくても、その文法規則にとりあえず当てはめさえすれば訳せてしまうが、一般的には変な訳になってしまう。逆に用法基盤モデルでコンピュータが言語を獲得できるようになった場合、人の子供と同じように、まずはコンピュータがその文の意味を理解できるように学習させることが不可欠になってくると思われる。

 今、全てのコンピュータ言語の中で、一番再帰的な言語といえばLISPになると思うが(LISPでは基本的には繰り返し文は存在せず、再帰で行う。)、言語処理用にLISPをもっと拡張したような言語は作れないものだろうか?(←適当に勝手なことを言っています^^;)いずれにしても、言語はチョムスキーも指摘しているように再帰性が鍵をにぎっているように思う。数年前に大川出版賞を受賞した、田中久美子氏著の「記号と再帰」という本の結語も、「人間の記号系は、再帰的な記号を自然に扱う。・・・今なお、コンピュータは再帰が苦手である。結局、コンピュータの発展は、再帰をどのように機械において扱うかという問題でありつづけるだろう。」というものだった。コンピュータが人間並みに「再帰」を扱えるようになった時、コンピュータは言語を習得していることだろう。

by  チイ

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:学問

凸クラスタリング法の実験 [学問]

 書籍、「続:わかりやすいパターン認識」の第10章p208にある凸クラスタリング法による実験を、実際にpythonで実装して確かめてみました。凸クラスタリングのアルゴリズムは、p206のもの(式(10.36)〜(10.45))を用いています。データは、前のEMアルゴリズムに使ったものと同じものを使っています。iter = 0の初期値は、書籍のものに合わせています。凸クラスタリングには、以下の様な特徴があります。

・ クラスタ数c を未知のまま推定する(メリット)

・ 凸計画問題なので、初期条件に依存せず、大域的最適解(最大点)となる(メリット)

・ 共分散行列σが全てのクラスタで等しく、かつ等方的であるという前提(デメリット)

・パラメータσは、恣意的に決める必要があり、直感に頼るしかない(デメリット)

 凸クラスタリングの実験を、以下の2通りの方法で試してみた。式(10.32)のσ2σ=1とした。なお、p208の図10.6の途中段階のグラフは今回は煩雑になるので掲載していません。一番最後のもの(final)だけを表示してあります。



・ノーマルケース

 全ての500個の点の事前確率πiを最後まで愚直に計算した場合。iter=4000となった時点での、πi > 0.01 の条件で選別して、6個のセントロイドが抽出された。(0, 0)のクラスタが2個のセントロイドとなったので、そのセントロイドの相加平均を求めている。(相加平均を求めたクラスタのσ=1の等方的正規分布は輪郭線を太い黒で示してある。)図final_normalに示すように最終的なクラスタ数はc=5個になり、その最終的な事前確率は式(10.37)で再正規化を行ってπi= [0.396, 0.200, 0.205(注1), 0.100, 0.099] となった。真の値、[0.4, 0.2, 0.2, 0.1, 0.1] に近い値になっている。一方セントロイドPは、P[5][2] = [[-3.014, 2.960], [1.994, 4.030], [0.006, -0.013], [3.991, -2.054], [-2.009, -4.059]]となった。(図でセントロイド位置は赤点で示してある。)


・カットケース

 予め定められた閾値(0.001/samples)以下となったπiは強制的に0に設定し、収束効率の改善を図ったもの。(ここで、samplesはπ≠ 0πi個数で500から徐々に減っていくが、削除される度に式(10.37)で正規化を行っている。これに合わせて、πi = 0のfik(p206のStep2の式)に対応する行も削除されていく。)最終的にiter=4000で、12個のセントロイドが抽出された。samples=12, fik  = (12, 500)となった。(-3, 3)クラスタのセントロイドが4個、(0, 0)クラスタのセントロイドが4個、(-2, -4)クラスタのセントロイドが2個となったので、それぞれのクラスタのセントロイドの相加平均を求めた。(相加平均を求めたクラスタのσ=1の等方的正規分布は輪郭線を太い黒で示してある。)図final_cutに示すように最終的なクラスタ数はc=5個になり、その最終的な事前確率はπ= [0.395(注2),  0.199,  0.206(注2), 0.100, 0.100(注2)]となった。セントロイドPは、P[5][2] = [[-3.014, 2.960], [1.994, 4.030], [0.007, -0.011], [3.991, -2.054], [-2.008, -4.058]]となった。(図でセントロイド位置は赤点で示してある。)


(注1)(0, 0)のクラスタの2個の事前確率を足し算している。(0.1707 + 0.0340)

(注2)(-3, 3)、(0, 0)、(-2, 4)のクラスタの4個、4個、2個の事前確率をそれぞれ足し算している。

initial_cut.png

         推定する共分散行列の分布

final_normal.png  likelihood_normal.png

       final_normal                                     対数尤度(normal)

  final_cut.png likelihood_cut.png

                   final_cut                                           対数尤度(cut) 

by チイ

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:学問

K-means法によるクラスタリングの実験 [学問]

 書籍、「続:わかりやすいパターン認識」の第10章p197にあるK-means法によるクラスタリングの実験を、実際にpythonで実装して確かめてみました。K-meansのアルゴリズムは、p194~195(式(10.3)と式(10.19))を用いています。データは、前のEMアルゴリズムに使ったものと同じものを使っています。iter = 0の初期値は、書籍のものに合わせています。K-meansはEMアルゴリズムでσ^2 → 0の極限になっていて、実装自体はEMアルゴリズムに比べれば全然簡単です。

 しいて言えば、K-means法による決定境界(ボロノイ図)を描くのがちょっと面倒くさいくらいです。下記の図では、ボロノイ図は各クラスタの領域を色分けして示しています。これらの境界線は、5個の各クラスタのプロトタイプP(重心)の中から任意の2個を選んで引いた垂直二等分線(5C210本になります。のどこかになります。10本の中で何本か使わない線もあります。5個のプロトタイプPの位置の関係で、どの直線のどの部分を使うかや使う本数が決まってきます。

 下記の図では、各クラスタ(ボロノイ図)に含まれる点も識別できるように色分けした違った形のマーカーで示してあります。最終的(iter=9)には、P[5][2] = [[-2.063, -4.202], [-3.018, 2.930], [0.118, 0.175], [3.942, -2.184], [2.228, 4.221]](推定値は、 [[-2, -4], [-3, 3], [0, 0], [4, -2], [2, 4]])に、π[5] = [0.100, 0.386, 0.218, 0.100, 0.196](推定値は、 [0.1, 0.4, 0.2, 0.1, 0.2])となった。

 また、K-meansは一般的には、局所的最適解になります。下記の例では、大域的最適解になっていますが、初期値の取り方や、パターンのばらつきなどによっては、局所的最適解に収束してしまいます。図で、収束状況を確認するなり、量子化誤差でエラー量が本当に最小になっているかどうかなど確認する必要があります。

 K-meansは直感的にも非常に分かりやすいので、「鶏が先か、卵が先か?」といったような哲学的な「概念の循環参照」に対する機械学習のひとつの答えにもなっています。局所的最適解に収束してしまったものの多くは死滅してしまったかもしれませんが、たまたま大域的最適解に落ち着いたものがその後繫栄した可能性は十分にあります。


 test0_cut.png  test1_cut.png

        iter = 0                                             iter = 1

 test2_cut.png   test3_cut.png

                      iter = 2                                             iter = 3

 test5_cut.png   test9_cut.png

                      iter = 5                                             iter = 9

 q_error_cut.png

                   量子化誤差


by  チイ

nice!(1)  コメント(0)  トラックバック(0) 
共通テーマ:学問

受験は忖度の文化だと思う [社会]

 最近、森友問題で、今年の流行語が「忖度」という言葉になりそうな気配だが、考えてみれば日本の受験制度はまさに忖度そのものだなと思う。出題者が文科省の意向を忖度し、受験生が出題者の意向を忖度しようと懸命になる。受験の中でも受験生が一番苦しめられる、難関校の理系の数学や算数の応用問題は、その良い例だと思う。たとえば、大学受験の東大や京大の数学の問題は、出題者がチャート式のBやCの問題を勉強している受験生が解けないような問題を作って出題します。

 つまり、東大や京大に合格したいなら、そうした出題者の意図を忖度して、その手の問題を効率良く、沢山解く必要があるわけです。それは一般的にはその難関大学別の赤本を買って、過去何年か分の傾向と対策をやって自分で忖度するか、自分で忖度できない人はZ会のようなものに入会して、その手の良質の問題を作ってくれる人が忖度した問題を沢山解く必要があるわけです。

 私なんか、この年になってもおそらく東大や京大の数学の問題で合格点を取ることは難しいと思うのだが、最近年を重ねて、色々と分かってきたことも多々ある。大学入試の数学で一番難しいというか、差がつきやすいのは以外にも数Ⅰの数論だったりする。何故、そんなことになるかといえば、数Ⅰや数ⅡBでは三角関数の使い方みたいな工学的なものはかなりの時間をかけて教えるが、数論はほとんど教えないからだ。(この状況は中学で代数を習う前の小学校の算数の鶴亀や植木算の応用問題が難しいのとよく似ている。)

 しかし数論は「数学の女王」と言われるくらい重要な分野であり、出題者がそのことを知っていて、文科省の範囲ぎりぎりのところであの手この手の問題を作ってしまう。数Ⅰの数論の範囲では、たとえばブルーバックスの数論に書かれているような内容すら教えていません。結局中高6年一貫校の受験校みたいな学校で、学校側がこのことを忖度して受験で出そうなところを効率良く教えるか、数学マニアで自分でどんどん先を勉強しているような人でないと解けないということになってしまう。

 本当は受験でこれらの問題が解けた解けないで、一喜一憂するよりはもっと重要なことがあるように思う。たとえば大学の理学部に進学を考えているような人は、高校の1年間を丸々数論に充てて、きちんと学ぶような範囲の選択の仕方もあっていいと思う。素数などの問題も、ゼータ関数の前あたりまでのブルーバックスの素数の数論に書いてあるような内容は知っておくべきだと思う。高校くらいの年齢になると、工学系に進む人と理学系に進む人で数学で学ぶ範囲が違ってくるのはある意味当然だと思うし、またその方が学びの多様性があって面白いと思う。

 もっと言えば、現行の範囲で、これらの問題を忖度して解けるようになるより、高校数学の学ぶ範囲を現在の大学の一般教養課程くらいまで広げて、その範囲でチャート式のBやCの問題が解けた方がずっといいようにも思う。というのも、これらの問題はどんどん先を勉強していくことによって、ほとんどが必然的に解けるようになってくるからです。私がいまの受験制度が罪だなと思うのは、受験生をその範囲の中に留めてしまって、先に行こうとする力を奪ってしまうからです。(青色発光ダイオードの中村修二は、これらの受験問題のことを、「超ウルトラクイズ」と呼んでいた。)

 私が高校の時、私の高校は進学校だったので数学の授業は教科書は半分くらいの時間で終わらせて、後の半分はチャート式のBやCの問題演習をやるというのが日課だった。数学の授業の時、演習問題をやりながら、「こんなもん、数学でもなんでもないからね~」といつも大声でが鳴っている教諭がいた。その当時はこの教諭は何故こんなことを言うんだろ~な?と不思議に思っていたが、それ以上深く考えることはなかった。この年になって、何故この教諭がそんなことを言っていたのかが理解できるようになった。


by チイ


nice!(2)  コメント(0)  トラックバック(0) 
共通テーマ:学校

トランプの背後にはキッシンジャーの存在があるらしい [社会]

 トランプ大統領誕生のきっかけは、大統領選途中でヘンリー・キッシンジャーがヒラリーからトランプへ鞍替えしたことが大きいと言われているようです。キッシンジャーがヒラリーのベンガジ事件やメール問題で戦争屋のヒラリーに見切りをつけ、トランプを支持したことが選挙戦の行方を決定したようです。(キッシンジャーはヒラリーが政権を取ると、本当に第3次世界大戦が起こってしまうと考えていたようです。)

 今回の北朝鮮問題の背後にもキッシンジャーの存在があると言われています。武力行使をちらつかせながら、中国に北朝鮮問題を本気で解決させようというのは、キッシンジャーとトランプの戦略のようです。この手の話は、おそらく知っている人は知っているのでしょうけど、表立って報道されることはほとんどありません。また、これらの件に関しては、私には真意のほどは調べようがありませんが、おそらく本当なのだろうなと思っています。

 トランプの娘イバンカの夫(娘婿)のクシュナー氏は、ハーバード大学を首席で卒業したユダヤ人です。イバンカは結婚後、キリスト教からユダヤ教に改宗しています。最近、政権内でトランプ側近のバノン氏とクシュナーの意見が対立することが多くなって、バノン氏は更迭されたようです。今回の米のシリア攻撃に関しても、クシュナーが大きく関わっていることは容易に推察されます。

 ユダヤ人は世界で一番人を評価する能力が高いと言われています。メンデルスゾーンは作曲家としての評価はそんなに高くありませんが、彼の一番の功績はバッハを復活させたことです。バッハは歴史の中で何度か忘れ去られ2回ほど復活しています。当のドイツ人でさえ忘れてしまっていたバッハを復活させたことは、後のドイツ黄金期の最上の文化を滅茶苦茶になってしまったドイツに代わってユダヤ人が引き継いだことにも繋がっています。そう考えると、キッシンジャーが支持しているトランプは、世間で言われているような愚か者ではないと思います。

 逆に、世界で一番人を評価する能力が低いのは日本人です。日本人は駄目ユダヤ人を引っ張ってくる名人です。ソニーは盛田さんのコンテンツとソフトウエアを混同した路線を出井さんがそのまま引き継いで、お門違いのストリンガーを引っ張ってきてしまいました。そしてそれは今のリッジ平井にまで続いています。平井さんはおそらくCのプログラミングを1行も書いたことがないでしょう。

 日銀は、経済学者として疾っくの昔にピークを過ぎて、マスコミに露出する回数の増えたクルーグマンのリフレ理論に乗っかって、にっちもさっちも行かないような状態に陥ってしまっています。当のクルーグマン本人は、その理論の間違いを既に認めてしまっています。(私が日本政府だったら、同じユダヤ人でもスティグリッツ氏に顧問をお願いすると思います。彼の方がよっぽど誠実で、人間的にも信頼できる人柄だと思います。)

 日本のように世界的なプレゼンスがなく、金儲けだけに勤しんでいるような国に、世界の叡智が来てくれるはずもありません。優秀なユダヤ人を引っ張って来たいなら、まだ若くて無名の時代にその才能を発掘して大金をはたいて連れてくるようなことをしない限り無理だと思います。せめて、それくらいのリスクは負うべきです。


 by チイ

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:blog

忖度のジョーク [社会]

  安倍総理夫人の「安倍昭恵」さんの顔って、昔あったお菓子の「ペコちゃん」に似てませんか?昭恵夫人は森永製菓の令嬢で、お父様が自分の娘をモデルにしてペコちゃんのキャラクターを作ったそうです。なんか昭和のはじめ頃の日本人女性の面影を残していて、見ていて落ち着きませんか?

th.jpg ペコちゃん

 少し遅れてしまいましたが、これはエイプリルフールです。ペコちゃんは、森永製菓ではなくて、不二家のキャラクターです。

 by チイ


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:日記・雑感

EMアルゴリズムによる混合正規分布のパラメータ推定 [学問]

 書籍、続・わかりやすいパターン認識(石井健一郎・上田修功共著、オーム社)の第9章「混合分布のパラメータ推定」のp183~186に例題として出ている2次元の混合正規分布のパラメータ推定の実験を、実際にpythonで実装して確かめてみました。

 左上の5クラスターの2次元混合正規分布が推定する分布で、それをEMアルゴリズムで、iter=0〜20の繰り返しでパラメータ推定を行っています。下図では、その中のiter = 0(初期状態)、1、5、10、20(最終回)での分布の様子を示してあります。iter=0の初期状態のパラメータ設定などは、書籍の内容に合わせて行っています。iter=20回目では、元の左上の混合正規分布の形をかなり正確に推定できていることが分かります。

 左下の図は各クラスターの混合比(合計500データ)の推移を示したもので、初期状態の各20%から最終的には推定すべき(40%,20%,20%,10%,10%)に収束していっているのがわかります。右下の図は、対数尤度の推移を示したもので、繰り返し回数を決める目安になります。図中、折れ線で表示してあるのが対数尤度で、●はEMアルゴリズムのQ関数(対数尤度の隠れ変数の期待値を事後確率で置換したもの)を計算しています。

 EMアルゴリズムの式は、p180〜181の式(9.56)〜(9.59)を使っています。この本に出ている例題では、正規分布が1次元と2次元の場合だけですが、pythonにこの式を落とす場合には、一般にD=任意の次元でも対応できるように実装しておいた方が後々いいと思います。(もっともこのアルゴリズムはかなり有名なものなので、scikit-learnやOpenCVを探せば多分あると思います。)
 
 現在、人工知能の機械学習では統計学の知識は必須です。私は、統計学の教科書としては上に書いた、
「続・わかりやすいパターン認識」とその姉妹本の「わかりやすいパターン認識」の2冊を使っています。この2冊に関してはその数学的な記述や説明に関しては申し分ないのですが、如何せん実際のプログラミングの例題の記述は全くありません。この2冊の各章末に出ている例題をpython(注)で実際に実装したコードを掲載していてくれたらな〜と本当に思ってしまいます。
 
 そういうわけで、私はこれらの章末の例題で面白そうで、かなり難しそうなものを選んで、pythonで実装してみて確認しています。これをやると、実際のpythonのプログラミングの力はつきますが、でも時間がかかりすぎて全部やるのはとても無理です。人工知能は計算機科学です。数学が分かっただけではダメで、それを必ずプログラミングのコードに落とす必要があります。計算できることが正義、計算できてなんぼの世界なんですね。

(注)一般向けに、何のコードで実装するかの問題はあります。RやMATLABなどの統計学専用の言語を使うことも考えられますし、JavaやC++などのコンパイル言語を使っても良いのですが、現在はグーグルも使っていて、その開発環境も充実しているスクリプト言語のpythonで記述するのが、最も汎用性がありベストだと思います。

test_cut.pngtest0_cut.png

      2次元混合正規分布            iter = 0

test1_cut.pngtest5_cut.png

                   iter = 1                                            iter = 5

test10_cut.pngtest20_cut.png

                   iter = 10                                          iter = 20

figure_1_cut.pngfigure_2_cut.png

               事前確立の変化                                     対数尤度の変化

by チイ


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:学問

もうすぐ桜の季節ですね!! [風物]

 今年も、もうすぐ「桜」の季節ですね。日本人で、桜の嫌いな人っていないんじゃないでしょうか?

 昔、植民地だった東南アジアの人が、

・白人は海岸に鎮座する巨大な岩で、波や風にもびくともしない。(とても排除することができない。)

・華僑は、その岩に生えているコケだ。(それ自体弱い存在だが、そこに根ずいて排除することができない。)

・日本人は、海岸の砂利だ。(調子のいい時は徒党を組んでやって来て、調子が悪くなると人っ子一人いなくなってしまう。)

 と言ったそうです。

 良くも悪くも「桜」は、そんな「一発屋」の日本人を象徴する花だと思います。少し早いですが、下記の曲で桜を満喫してください。



by  チイ


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:日記・雑感

私のチューリング・テスト [音楽]

 あなたは下記のキース・ジャレットの曲(Hymn of remembrance)を、もしロボット(アンドロイド)が即興で演奏したとしたら、そのマシンは知能を持っていると認めますか?

 この曲は、ジャレットが子供の頃にどこかの教会で聴いたhymn(賛美歌)なのかもしれないし、子供の頃に聴いた多くの賛美歌のエッシェンシャルな部分だけが残って、それを元に即興演奏しているのかもしれない。シンプルで誰が聴いても分かり易いモチーフ(パターン)で、これくらいの質でマシンが即興演奏を出来る様になれば、私としてはそのマシンは知能を持った存在として認めてもいいように思う。
 
 チューリングは、そのマシンが知能を持っているかどうかを判定するのに「チューリング・テスト」というものを考えました。隔離された部屋に、人間とコンピュータがいて、質問者がテキストベースで、人間とコンピュータに質問をして会話を行い、その返答内容で判定者が人間とマシンの区別ができなかったら、そのマシンはチューリング・テストに合格したことになります。(つまり、そのマシンは知能を有していると判断される。)

 上に書いた様なことは、もうDeep Learningの手法を使えば可能かもしれません。マシンがそのマシンの個性(偏り)に応じて、それまでにそのマシンが聴いてきた曲の種類に応じて、エッシェンシャルなパターンを抽出して、それを元に、即興で音楽理論に基づいて和声付けを行って演奏するアンドロイドは、もうすぐ完成するかもしれません。

 そういったマシンがいつ出現したとしても困らない様に、各人がそれぞれの「チューリング・テスト」の基準を持っていることは、これからの時代必要になってくるかもしれません。





by  チイ


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:音楽
前の10件 | -