タグ

ブックマーク / blog.unnono.net (9)

  • TokyoWebminingで久しぶりに発表しました

    1/24に、フリークアウトで開催されたTokyoWebminingで深層学習系の自然言語処理について話しました。 以前から考えていた、表現力の高いモデルが既存の複雑な規則に基づく自然言語処理手法(例えばHPSGなどの)と同等の規則を学習しているんではないかというという話をしたかったんですが、ちょっと暴走しすぎた感。 深層学習時代の自然言語処理 from Yuya Unno 内容としては、Recurrent Neural Network(とLSTM)とRecursive Neural Networkの話です。 それから、前者とShift-Reuduce型のシーケンシャル手法との関係、後者とPCFG型の大域最適型の手法との関係がどうなってるのか、という問題提起でした。 こういう話をしたのは、例えば仮にRecursiveがHPSGの語彙項目相当の情報をベクトル空間の中に学習できるのであるとするの

  • EMNLP2014読み会で単語の表現学習と語義曖昧性解消を同時に解く論文を紹介しました

    先週の土曜日にPFIで行ったEMNLP2014読み会で、Skip-gramモデル(word2vec)と語義曖昧性解消を同時に解く論文の紹介をしました。 発表スライドはこちら。 単語の表現学習と語義曖昧性解消を同時に解く話は、もう一つ論文がありましたが、なんだかいまいちだったのでこちらになりました。 要点だけ整理します。 Skip-gramモデルは、単語に対するベクトル表現を学習する手法として注目を集めています。 このモデルは、ある単語の出現が周囲の出現単語に影響を与えるため、中心単語のベクトルと周囲の単語のベクトル(word2vecの実装では両者は別のベクトルとして区別します)の内積のexpに比例する確率で、周辺単語が決定されるというモデルを置きます(詳細は以前のスライド参照)。 実データを使って、対数尤度が最大になるようにベクトルを学習します。 ここまでがSkip-gramでした。 この

  • AdaGradが12倍速くなる魔法

    AdaGradは学習率を自動調整してくれる勾配法の亜種で、いろんな人が絶賛しています。 勾配を足し込む時に、各次元ごとに今までの勾配の2乗和をとっておいて、その平方根で割ってあげるだけと、恐ろしくシンプルです。 Adaptive Subgradient Methods for Online Learning and Stochastic Optimization John Duchi, Elad Hazan, Yoram Singer. JMLR 2011. 丁度、 @echizen_tm さんがブログを書いてました。 AdaGrad+RDAを実装しました。 通常のSGDなどは学習率をだんだん減衰させながら勾配を足していくわけですが、どの様に減衰させるかという問題にいつも頭を悩ませます。 AdaGradでは最初の学習率こそ外から与えますが、減衰のさせ方や減衰率といったハイパーパラメータから

  • 今、人工知能研究で何が起こっているのか

    半年前くらいに書いた草稿が、投稿されずに残ってたのでちゃんと書きました。 最近、人工知能という言葉がまた流行しているような印象を受けます。 ブームということの質は2つ有ると思っています。 1つは学術会で、最近良い成果が立て続けに出てきたという側面です。 もう一つは、それに呼応して大きな会社、特にIBMやGoogle、Facebookといった大きなコンピュータ系、インターネット関連企業が力を入れていることが大々的に報道されたことです。 両者はもちろん関係していて、いくつか技術的ブレークスルーがあって、それが企業の投資を呼んでいる、それと呼応するように学術的な成果が企業からでているという、正のスパイラルが生まれている様に見えます。 こうした流れをいち早くとらえた新書として、「クラウドからAIへ」というがあったので読んでみたのですが、一般のビジネスマンを意識して、歴史、現在、未来について大局

    今、人工知能研究で何が起こっているのか
  • 高速な復元抽出の直感的な説明

    先日@niamさんと@tsubosakaさんのつぶやきを見てて,確率{pi}で復元抽出するWalker's alias methodというものを知りました.たまたま,今日,復元抽出する用事があったので,思い出して調べた次第.私も昔同じことをやろうとして,O(log n)でいけるからまぁいいやと思っていたのですが,このアルゴリズムだとO(1)でいけます. 解説はこのあたりのブログを参照. 比較的高速な復元抽出アルゴリズム高速に非復元抽出をするアルゴリズムはないだろうか?(2)さて,私は理解力が足りなくてこのあたりの説明を読んでもなんでこれでいいのかさっぱりわからなかったので,絵に描いて理解しました.確率{pi}で復元抽出するためには,piに比例した面積の図形を壁に貼ってダーツをすればいいのです.{0.1, 0.05, 0.3, 0.1, 0.45}だったとします.するとこんなの. まさか毎回

    高速な復元抽出の直感的な説明
  • absの罠

    こないだ、@kumagiさんがJubatusのクラスタリングのテスト書いたらNaNになるというので、デバッグしてたらabsにハマってたという恐ろしいバグを発見したので書いておきます。 C++で絶対値を求める関数は3つあります。 ::abs Cの関数でintを引数に取る ::fabs Cの関数でdoubleを引数に取る std::abs C++の関数でint引数とdouble引数でオーバーロードされている さて、大事なのは std::abs はオーバーロードされているので、doubleを渡すと::fabs相当の処理をしてくれる、ところが::absはCの関数なのでdoubleを渡してdoubleで結果を受け取ろうとすると、intにキャストして絶対値を計算してからdoubleに戻す、という恐ろしい挙動を示すことです。さて、std::absを呼んでるつもりで、absと書くとどうなるか。usingし

  • unnonouno

    私は仕事柄、「人工知能」とか「AI」というものを扱っていることになっている。ところが、私は「人工知能」や「AI」という言葉をほとんど会話の中で使わない。使うときも極めて選択的な文脈でしか使わない。この業界、こういう人は多いようだ。昨年、知り合いの主催するパネルディスカッションのテーマとして、「人工知能」という言葉についてどう思うかと言った議論を扱い、そこで普段言いたかったことを吐き出したのでこちらにも書いておきたい。 なぜ使わないかといえば、端的に言えば、人によってこの言葉の意味の捉え方が全く違うため、「言葉」として機能しないからだ。

  • Statistical Semantics入門の発表をしました

    先週のPFIセミナーで、Statistical Semantics入門という発表をしました。 主に分布仮説をベースにした、単語の意味を文脈の分布で表現する研究を纏めました。 LSIから始まって、PLSI、LDAと続く言語モデル系、NMFなどの行列分解系、そしてNNLM、RNNLMと来て昨年流行したニューラルネット系の3つでまとめるという形をとっています。 あまり専門的になりすぎず、過去からの歴史や流れを踏まえ、一方で実用面や研究テーマのココロ、問題意識を重視するような内容になるように心がけたつもりではあります。 当初、他の「いわゆる意味論」との比較みたいなスライドもあったのですが、変なコト言うと刺されると思ったので消しましたw ところで、応用の観点でこれらの話をどう考えているか、というような点について触れるのを忘れたな、と思ったのでこちらに書いてみます。 基的に私見ですが。 私自身は、単

  • 構文解析が何に役立つのか

    思いがけずたくさんブックマークしていただいたので,この機会になんで構文解析なんかやるのかというお話を書こうと思います.おそらく,NLP界隈の人には何をいまさらと思われるかもしれませんが,それが当に役立つかというとなかなか一筋縄では行きません.今回興味を持たれた方の多くはNLP分野外の方なんじゃないかな,と勝手に考えてますのでそのつもりで書きます. 構文解析というのは,文の構造を判別する処理のことで,NLP的には単語分割,品詞タグ付け(いわゆる形態素解析)のあとにくる処理です.ソフトウェアで言えばCabochaやKNPがこれにあたります.ここに大変わかり易いチュートリアルがありますw 例えば「値段の高いワイン」が,「値段のワイン」ではなくて,「値段の高い」「高いワイン」であることを認識する技術,と理解していただければ良いと思います.このように,文節間の係り関係を解析することを,係り受け解析

  • 1