ブックマーク / www.yasuhisay.info (29)

  • lgammaの差を早く計算したい - yasuhisa's blog

    ベイズを使った研究ではよく多項分布とディリクレ分布を使い、パラメータを積分消去したりするので、ポリヤ分布が頻出する。ポリヤ分布のcomponentはガンマ関数からなっており、普通は対数を取って計算することが多いので、ガンマ関数の対数の差(lgammaの差と以後書く)をよく計算することになる。collapsed LDAのようなケースでは対数尤度を計算するときだけこのlgammaの差が登場するが(sampling時には特に関係ないということ)、普通はここでボトルネックになることは少ない。しかし、例えばnested Chinese Restaurant Process(nCRP)のようなケースではパスのサンプリング式の一部で というような式が登場し、サンプリングの度にlgammaの比を計算しなければならない(サンプリングのlogsumexpを使う関係で対数を取っている)。サンプリングの計算はMC

    lgammaの差を早く計算したい - yasuhisa's blog
    murawaki
    murawaki 2011/09/24
  • #24 Sparse Additive Generative Models of Text - yasuhisa's blog

    明日のICML読み会で読む論文。id:tsubosakaさんが紹介してくれている資料もあるし、明日はこの資料で手抜きをさせてもらおうかなと考えているのですが(ぇ)、自分の理解のためにメモも書いておきます。考え方はstraightforwardだし、実装も簡単そうだし、結果もいい感じなのでいい論文なんだと思います。 Icml2011 reading-sage View more presentations from tsubosaka 何やってる論文か LDAとかテキストに出てくるような潜在変数モデルは潜在変数毎に単語の多項分布を学習しちゃってる "the"とか"a"はトピック毎にそんなに変わらんのやから、backgroundになるようなモデルを一個考えてあげて、差分だけ学習してあげりゃいいやん 差分になるようなところはほぼ大体が0になるようなsparseなモデル化をしてあげると、持っておか

    murawaki
    murawaki 2011/09/12
  • #32 Word Features for Latent Dirichlet Allocation - yasuhisa's blog

    休憩がてらにざっと読む(なのでいつも以上にちゃんと読んでない)。 LDAに色々なfeatureを付っこむという話。"Germany"とか"politics"とかは表層こそ違うものの、政治とかそういうトピックにまとまって欲しい。LDAでもそういう風に持っていくことはできるが、featureとしてそういうのがまとまってくれるように工夫したい。また多言語をつっこんだときでも"democracy"と"democracia"はLexical Similarityのようなものを使えば似たトピックにいるというのが分かりそうなので使いたい。 どうやってやるか。単語の多項分布に対応する側のハイパーパラメータをいじる。βがが相関を持つように頑張る。似たような話にトピック間に相関を持たせる話があるが、これは単語毎に持たせるようなのでちょっと違う(この時もpriorをいじってVBに持っていくが、共役性が崩れるので

    #32 Word Features for Latent Dirichlet Allocation - yasuhisa's blog
    murawaki
    murawaki 2011/08/31
  • #35 A Nonparametric Bayesian Model of Multi-Level Category Learning - yasuhisa's blog

    AAAIのセッション中によく分からなくて質問したやつの論文。Nested CRPとどう違うんやという付近がよく分からなかったのだが、論文を普通に読んだら分かった。Nested CRPは完全に教師なし学習でtreeを作っていくが、この論文(tree-HDPと彼等は呼んでいる)では「このインスタンスがどのクラスに所属しているかは分かっている。しかし、クラス間の階層的な関係はunknownなので、それを教師なしで学習しよう」ということのようだ。どのインスタンスにどういうラベルが付いているかは、例えばflickrのタグとか使えるので、そういうタグ間の階層関係が教師なしで自動で作れるというイメージか。他にどう役に立つのかと言われれば正直よく分からないが、secondにGriffithsさん(認知とかそういう関係?)がいるので、こういう階層的なカテゴリの学習をできるような生成モデルを作りたかった、とい

    #35 A Nonparametric Bayesian Model of Multi-Level Category Learning - yasuhisa's blog
    murawaki
    murawaki 2011/08/26
  • #33 Towards Large-Scale Collaborative Planning: Answering High-Level Search Queries Using Human Computation - yasuhisa's blog

    コード書きに疲れたので休憩がてら読んだ。数式が全く出てこないし難しいことはしていない。が、方向性として割と(?)新しい系の論文。 情報検索のタスクを考える。(IRのほうは全く追っていないので変なことは言えないが、少なくとも)現状の検索エンジンでは"I want to live a more healthy life"のようなqueryをまともに処理することはできない。そこで、AAAI2011のチュートリアルでもあっていたHuman Computationという技術を使う。早い話が難しいタスクは人間様に相談するのである。そういう意味でなりふり構わない感じではある。 この論文ではCrowPlanという手法を提案していて(人間様にやっていただくところは「人間:」と書いてある) 人間: 抽象的で難しそうなタスクを具体的なgoalにdecompose。goalに関係ありそうなqueryに書き変える

    #33 Towards Large-Scale Collaborative Planning: Answering High-Level Search Queries Using Human Computation - yasuhisa's blog
    murawaki
    murawaki 2011/08/15
  • チュートリアル2日目 - yasuhisa's blog

    チュートリアルの前に杉山研の山田さんと少しお話。今やられている研究の話を聞いたりする。共変量シフト(covariate shift)と転移学習の関係が共変量シフト転移学習であることを知る(今さら)。あの付近は違う名前でも同じような内容だったり、同じ名前でも分野が違うと違うものを指していたりする場合があるのでややこしい。 さて、今日の午前中はHal Daume IIIのチュートリアル。結構楽しみにしていたものの一つです。 MA3: From Structured Prediction to Inverse Reinforcement Learning, Hal Daume III 資料 後半のInverse Reinforcement Learning自体と前半とそれとの関連がいまいち分かりませんでした。分かったというよりは前半は知識量でカバーしたけど、後半は知らないことが多かったので知識量

    チュートリアル2日目 - yasuhisa's blog
    murawaki
    murawaki 2011/08/10
  • #25, #26, #27, #28, #29 ICML2011読み会を行ないました - yasuhisa's blog

    数理情報からは竹之内先生と林さんが発表で聴講の方も何人か参加されてICML2011読み会を行ないました。発表者、質問してくださった方々ありがとうございました。全体で12-13(?)人前後くらいの人数。僕の発表はこの辺です。 #24 Sparse Additive Generative Models of Text - yasuhisa's blog 全部の感想を書いていると大変なので、自分が興味持った付近を中心に書いていきます。 GoDec: Randomized Low-rank & Sparse Matrix Decomposition in Noisy Case 個人的に一番面白かった。といっても技術的なことはほとんど追いきれなかったのですがw。この論文が、というよりrobust PCAというもの自体を知らなかったので、それが面白いなぁと思ったというのが正確か。 普通のPCAだと元の

    #25, #26, #27, #28, #29 ICML2011読み会を行ないました - yasuhisa's blog
  • #30 A class of Submodular Functions for Document Summarization - yasuhisa's blog

    id:syou6162が常時ベイジアンだと思うなよ、ということでsubmodularな論文。去年のACLにもsubmodularを使って要約のdecodeをやるという論文が出ていたが、同一著者によるこれの発展研究。しっかりしていていい論文だと思う。スライドもある。この著者らのページを見に行ってみると、今年のACLでもう一submodularを使った論文を通していて、こっちはword alignmentに使ったらしい(あとで読みたい)。 さて、去年の内容をざっと復習すると 要約のdecoding部分は制約付き最適化問題として定式化されることが多い よく線形計画問題(ILP)として落とし込まれていたが、最適化にめっちゃ時間がかかる*1 この論文では目的関数がmonotoneかつsubmodularという形式をしていればgreedyなアルゴリズム(実装がめっちゃ簡単!!)で最悪ケースの保証がで

    murawaki
    murawaki 2011/07/21
  • #22 Adaptive Sparseness for Supervised Learning - yasuhisa's blog

    ICML2011にSparse Additive Generative Models of Textという論文が出ていて、あちこちで筋がよさそうな感じじゃね?と紹介されている(こことかこことか)。 Motivation肝となるアイデアはsparsenessで、LDAのような生成モデルだと単語毎にどの多項分布を選んでくるか決めるため、トピック毎に多項分布が生成され、どこのトピックでも"the"とか"of"のような単語は確率が高いというのを学習してきてしまって無駄が多い(論文中ではoverparametrizationと書いてある)。もちろん、Dirichlet分布のパラメータをいじってあげることでsparsenessをinduceすることは可能だが、そうすると逆に精度が落ちてしまったりということもある。そんなわけでICML2011の論文ではbackgroundになるようなモデルと他のトピック

    #22 Adaptive Sparseness for Supervised Learning - yasuhisa's blog
    murawaki
    murawaki 2011/07/15
  • #21 Grammatical Error Correction with Alternating Structure Optimization - yasuhisa's blog

    言語教育勉強会にてtoshikazu-tが紹介。文法的な誤り(ここでは冠詞と前置詞の誤りに限定)を直すのに、非学習者(つまり母語話者)の書いたテキストを使って誤り訂正をやるという方法がよく取られていたが、最近では学習者の書いたテキストも誤り訂正に寄与するってことが分かってきた。しかし、その両方を使う研究というのはあまりないので、この論文ではASOという補助問題を使って解く形式の手法を採用。全体の内容はACL HLT 2011 最終日: 自然言語理解の研究がおもしろい - 武蔵野日記が詳しいので、補助問題の作り方とかASOの他の分野への応用についてメモしておきたいと思う。 ASOの補助問題の作り方はあまり直感的じゃないので好きじゃないのだが 学習者と非学習者の文をfeatureにしたものから、1つfeatureを除く 残りのfeatureを使って取り除いたfeatureを線形識別器を使って予

    #21 Grammatical Error Correction with Alternating Structure Optimization - yasuhisa's blog
    murawaki
    murawaki 2011/07/08
  • DMPにおけるハイパーパラメータのサンプリングの仕方 - yasuhisa's blog

    ハイパーパラメータの決め方Collapsed Gibbs samplingなどではパラメータは積分消去されることからハイパーパラメータが通常のパラメータの役割を果たすことが少なくありません。そういうわけで通常だと割と適当に「えいやっ!!」と決めてしまうようなハイパーパラメータをベイジアンな人たちは頑張って決める。LDAのときとかは経験ベイズっぽく最適化したり、DPMのハイパーパラメータのようなものはハイパーパラメータに事前分布(つまり、ハイパーハイパーパラメータが導入されるということである...)をかけて、ハイパーパラメータもサンプリングしてしまうのが普通らしい。どこまで事前分布を置くのが適切なのかは色々あるんだろうけど、とりあえずやり方だけは把握しておくことにする。 "Hyperparameter estimation in Dirichlet process mixture model

    DMPにおけるハイパーパラメータのサンプリングの仕方 - yasuhisa's blog
    murawaki
    murawaki 2011/04/29
  • Multinomial DPMを実装してみた - yasuhisa's blog

    ちょっと前に実装してたんだけど、メモを書くがてら公開してみる。やりたいこととしてはnested Chinse Restaurant Processまで行きたいんだけど、ノンパラベイズ初心者なので一番取りかかりやすいであろうDirichlet Process Mixture(DPM)を文書モデルでやってみたという感じです。HDPではなくDPMとしてコーパスをモデル化するので、いくつ文書があろうがそれらは全部一つの文書として取り扱います(というか、そういう形でしか取り扱えません。扱いたかったらHDPの世界へ行こう)。 目的 やってみようと思った理由はいくつかあって 実際に自分で把握できるミニマムな*1ノンパラベイズのプログラムをgetする 実際に書いてみることでノンパラベイズのプログラムではまりやすいところを知る コード書く段階までやってみないと分かったつもりになっていることが多い などなどで

    murawaki
    murawaki 2011/04/27
    テストセットのperplexity
  • #10 Sharing clusters among related groups: Hierarchical Dirichlet processes - yasuhisa's blog

    Hierarchical Dirichlet processes(HDP)の元論文。Group化されたようなデータに対してDPをそのまま使うとグループ間での特徴を共有できないので、どうにかしたい(ノンパラのいいところはそのままにしつつ)。テキストで考えると分かりやすいので、今後はグループのことをdocument、それより大きい単位のをコーパスで考えることにする。 HDPでの生成過程は以下のようになっている。 ここで重要なのは「H、、がそれぞれどういう分布なのか?」というのを理解すること。 Hは連続な分布(大抵の場合は事前知識がないので平坦なものを考えることが多い。連続データに対して考えるならNormal-Inverse-Wishart分布のようなものだし、離散ならDirichlet分布がHとなることが多いだろう) はと書き表わすことができるという事実が知られており、これからはHと同じ定義域

    #10 Sharing clusters among related groups: Hierarchical Dirichlet processes - yasuhisa's blog
    murawaki
    murawaki 2011/04/16
  • Hierarchical Dirichlet Processに関するメモ - yasuhisa's blog

    自分用メモ。例によってすげー基っぽいことを書いていく。HDPの前のDP関係は昔ちょっとメモ書きを書いている。 www.yasuhisay.info 全体的なこと 客はdocument levelでCRPしていく 料理はcorpus levelでCRPしていく(!) HDPはこの2段階(というか2つ)のCRPで構成される document levelだけではコーパス間の情報を共有できないが、料理はcorpus levelなのでこれを使って共有できる もちろんdocument levelのものもあるので「このdocumentではこういう単語が出やすい」という風なLDA風のこともやっている document内のクラスタリングとdocument横断でのクラスタリングを同時に走らせているようなイメージ(あまり自信はない) 生成過程こんなイメージ。HDPの元論文にある通り(P13の3つ目のやり方)、

    Hierarchical Dirichlet Processに関するメモ - yasuhisa's blog
    murawaki
    murawaki 2011/04/13
  • FOBOSを使ってL1正則化SVM + L1正則化ロジステック回帰を実装しました - yasuhisa's blog

    というか一ヶ月前くらいに実装してたんですけど、コード公開してなかったというだけです。 GitHub - syou6162/fobos news20のデータ使って遊んでみたりしていて、元々は100万次元以上あったものを正則化かけまくって次元を1000くらいに落としても精度はほとんど変わらなくてすげーというのを実感するためだけに書いたような(自己満足的な)コードでした。前にも書いたけど、何かのアプリケーションにこういう機械学習が必要なときに乗っけやすいかなと思います、たぶん。 言語処理のための機械学習入門 (自然言語処理シリーズ) 作者: 高村大也,奥村学出版社/メーカー: コロナ社発売日: 2010/07メディア: 単行購入: 13人 クリック: 235回この商品を含むブログ (42件) を見る

    FOBOSを使ってL1正則化SVM + L1正則化ロジステック回帰を実装しました - yasuhisa's blog
    murawaki
    murawaki 2011/04/01
  • #9 Multi-document summarization via budgeted maximization of submodular functions - yasuhisa's blog

    NIPSが機械学習の最前線だとするなら、その中でもhotなsubmodularは機械学習の中でもhotなトピックなはず。NLPは離散最適化とかなり密接に関係している分野なので、submodularが進展すればNLPもちょっとづつ進展、ということで今回はsubmodularを使った要約のお話。submodularについてはICMLやIJCAIといった機械学習人工知能系学会のトップカンファレンスでチュートリアルが開かれているので、そちらを見ていただきたい。 submodularity.org: Tutorials, References, Activities and Tools for Submodular Optimization submodularity.org: Tutorials, References, Activities and Tools for Submodular O

    #9 Multi-document summarization via budgeted maximization of submodular functions - yasuhisa's blog
    murawaki
    murawaki 2011/03/20
  • 言語処理学会年次大会2011本会議3日目 - yasuhisa's blog

    この日にはもう自分の発表も就活の面接も終わっていたので、のびのびと聞けた。朝から晩まで面白い発表目白押しで終わった頃にはぐったりしていた(苦笑)。この日はいくつか質問もできたのでよかった。自分が聞いていた発表で面白いと思ったものはこんな感じ。知り合いバイアスは取り除いたはずなんだががが。 L1正則化特徴選択に基づく大規模データ・特徴集合に適した半教師あり学習 半教師ありを使うと素性数が膨大になってしまうのでL1を使ってsparseにしましょうというお話。質問もしたが、教師ありのところと半教師ありの素性のところでL1とL2を使い分けるとどうなるかとかは知りたいところなので今後の実験にも注目したい id:mamorukさんが質問されていた「trainingのときにはfeatureが膨大なのは変わらないのではないか?」というのは確かにその通りだと思うのだが、FOBOSみたいな形でL1かませていく

    言語処理学会年次大会2011本会議3日目 - yasuhisa's blog
    murawaki
    murawaki 2011/03/13
  • #5 Hierarchical topic models and the nested Chinese restaurant process - yasuhisa's blog

    今さら感あるかもしれないけど読む。DPはデータの複雑度に応じてクラスタ数を決めるようなノンパラなモデルだが、普通の(flatな)クラスタの構造しか学習できない。それに対し、この論文で説明されるNest Chinise Restaurant Process(nCRP)とかHierarchical Latent Dirichlet Allocation(hLDA)はflatではなく階層的な関係を学習できる。Figure 5の単語の階層概念みたいなものがどういうことができるかぱっと見で分かりやすい。階層型のクラスタリングは色々あるが、treeのbranchの数がいくつがよさそうとかtreeの深さはいくつがよさそうとかそういったものもデータの複雑さに応じて決められるのが特徴的である(NIPS 2003では深さはLでfixedされているが、2010とかでは深さも固定しないでできるモデルで書かれている

    #5 Hierarchical topic models and the nested Chinese restaurant process - yasuhisa's blog
    murawaki
    murawaki 2011/02/17
  • #6 A hybrid hierarchical model for multi-document summarization - yasuhisa's blog

    去年のACLの自動要約に関する論文。最終的な要約を出力するまでを2つのstepに分けて考えている。 nCRPをsentence-levelで考えて、文の抽象度合い、具体化度合いのようなものを得る 要約文にきやすいような文はtreeの上のほうにあるだろう、という仮定から treeのどのレベルにいるか、という付近を使って文の類似度をはかり、類似度を回帰するようなモデルを作成、テスト文でそのスコアを計算し、要約文を構築 という流れ。2 step目はまあよくあるかなぁという感じなんだが、最初のstepが新しい、かつ直感に合うような気がしていいなぁと思った(そういうわけでnCRPの論文とかをひっくりかえして読んでいた)。全体でやっていることはFigure 3が分かりやすい。nCRPを理解してから読むとすっきり読めてよいかと思う(あんまり理解しないで読んでたらもやもやしてしまった)。 「自動要約系の話

    #6 A hybrid hierarchical model for multi-document summarization - yasuhisa's blog
    murawaki
    murawaki 2011/02/17
  • FOBOSを使ってSVMやロジステック回帰を実装しよう!!! - yasuhisa's blog

    原稿も出したし、次のネタのために論文読んでたけど全然分からないし(ダレカタスケテ!!!)、3連休だし、現実逃避したい!!!ということでFOBOSの論文を読んだりしていました。なんでFOBOSかっていうと、就活の面接のときに「SVMとか(使った、じゃなくって)実装したことがありますか?」と聞かれてNoとは答えられないので...とかいうのは嘘ですが、PFIのBlogでid:tkngさんがFOBOSを紹介する記事を書かれていたからでした*1。 劣微分を用いた最適化手法について(1) | Preferred Research 劣微分を用いた最適化手法について(2) | Preferred Research 劣微分を用いた最適化手法について(3) | Preferred Research 劣微分を用いた最適化手法について(4) | Preferred Research 劣微分を用いた最適化手法につい

    FOBOSを使ってSVMやロジステック回帰を実装しよう!!! - yasuhisa's blog
    murawaki
    murawaki 2011/02/14