読者です 読者をやめる 読者になる 読者になる

不定期ML&NLP報#4

最近の機械学習&自然言語処理に関する情報をまとめるコーナーです。前回はこちら。このエントリ忘れてるよというのがありましたら、たれこみフォームから教えてもらえるとうれしいです。 論文 ブログ/勉強会資料 ビジネス 学会/勉強会 NIPS読み会 Kaggle Tok…

不定期ML&NLP報#3

最近の機械学習&自然言語処理に関する情報をまとめるコーナーです。前回はこちら。このエントリ忘れてるよというのがありましたら、たれこみフォームから教えてもらえるとうれしいです。 論文 ブログ/勉強会資料 ビジネス 学会/勉強会 NIPS2016 NL研 coling2…

異常検知本の読書メモ Part 5(密度比推定による変化検出)

前回に引き続き、密度比を直接推定するコーナー。時系列の変化検出や多変数の依存関係の崩れを捉える構造変化検知の手法を密度比推定で解く。 変化検知問題とカルバックライブラー密度比推定法 変化検知問題は第9節で取り扱った。ある時点tを含む前後で分布…

異常検知本の読書メモ Part 4(密度比推定による異常検知)

前回扱った内容を密度比推定により直接的にかっこよく解く。 やりたいこと 正常であると分かっているデータを元に異常が含まれるかもしれないデータの中から異常な標本を見つけ出す 個々に外れ値検出するのではなく、テストデータ全体の確率分布も考える 全…

異常検知本の読書メモ Part 3(疎構造学習による異常検知)

前回の復習 前回のChaper 9では「単一の」「時系列データ」に対し、部分空間法を使った変化検出法を見た。 概要はこんな感じであった。 小さいwindow幅でデータを切って、ベクトルデータにする 過去側と現在側の2つに領域に分割 時刻tにおける過去側と現在側…

異常検知本の読書メモ Part 2(方向データの異常検知と部分空間法による変化検出)

方向データの異常検知 方向データの異常検知は前回スキップしていたところ。部分空間法による変化検出をするときに方向データに関する知識が必要になったので、戻ってきた。 方向データを扱う際にキーになる分布はフォンミーゼスフィッシャー分布。こんな分…

不定期ML&NLP報#2

最近の機械学習&自然言語処理に関する情報をまとめるコーナーです。今回は医療品設計やセキュリティなど、自分があまり知らなかった分野での機械学習適用事例が多く、勉強になるものが多かったです。前回はこちら。 このエントリ忘れてるよというのがありま…

不定期ML&NLP報#1

先日、社内で定期的に行なわれているフロントエンド会にお邪魔してきました(podcastが配信されています)。jser.infoというサイトを参照しながら雑談していたのですが、最近のフロントエンドの動向を知るという目的にはこのサイトなかなかよさそうでした。 機…

自然言語処理の深層学習において転移学習はうまく行くのか?

このエントリはDeep Learning Advent Calendar 2016 5日目のエントリです。EMNLP2016に出ていたHow Transferable are Neural Networks in NLP Applications?を読んだので、それについて書きます。 [1603.06111] How Transferable are Neural Networks in NLP…

異常検知本の読書メモ Part 1

異常検知本を最近読み進めていたので、自分が知らなくて新しく勉強になったところのみメモ。 ホテリングの法による異常検知 異常度はマハラノビス距離で与えることができる サンプル数Nが次元数Mより圧倒的に多い場合はは自由度M、スケール因子1のカイ二乗分…

Visualizing and Understanding Curriculum Learning for Long Short-Term Memory Networksを読んだ

Curriculum Learning(簡単なやつから学習して、難しいのは後のほうがうまく行きそう)の方法をLSTMで試してみた報告っぽい内容。要約は以下の通り。 One-Pass CurriculumとBaby Steps Curriculumの2種類があるけど、Baby Steps Curriculumのほうがお勧めでき…

Google機械翻訳の仕組み&できるようになったこと/まだ難しいことについて、社内の機械学習勉強会で説明します

社内の機械学習勉強会で最近話題になった機械学習関連のエントリを取り上げているのですが、ここ一ヶ月ではGoogle Neural Machine Translation(GNMT)がとても話題になっていました。GNMTで使われているEncoder-Decoderやattentionのような仕組みを直近で使う…

機械学習をプロダクトに入れる際に考える採用基準について

サービスに機械学習技術(例えばSVM)を入れる際に、「この機械学習技術は本番サービスに投入しても大丈夫なものか?」を考える基準がまとまっていると人に説明するときに便利だなとふと思ったのでまとめてみました。散々言われ尽くされている話だとは思います…

機械学習ランチ会を始めたので雑談用エントリを集めてくれるslack botを作りました

4行概要 最近社内で機械学習勉強会(ランチ会)をやっている 紹介するエントリを毎回頑張って探すのは大変 spreadsheet上で教師データを作り、機械学習モデルを学習、おすすめエントリをslackに投稿 砂場ができて便利! Google Spreadsheet上でみんなでわいわい…

実タスクで能動学習を試してみた

実タスクで簡単な能動学習を試してみました。結論としては、1200件で到達できる精度に400件程度のアノテーションでも到達でき、それによりアノテーションに要する時間をかなり削減できそうということが分かりました*1。今後、アノテーションを必要とする機械…

Precision/Recallのいずれかを重視したい場合にどのように事例を追加するか

当たり前の話かもしれないけど、自分は経験したことがなかったのでメモがてら書いてみる。絶対これで行けるというわけではないと思うが、ある程度一般性はあるんじゃないかと。 状況設定 機械学習の評価を考える際に複数の指標がトレードオフの関係にあると…

はてな社内の勉強会で構造学習について発表しました

先週末、はてな社内の勉強会で構造学習、特に実装が簡単な構造化パーセプトロンについて発表しました。発表資料と説明用にサンプルで書いたPerlの品詞タグ付けのコードへのリンクを張っておきます。 今日からできる構造学習(主に構造化パーセプトロンについ…

lgammaの差を早く計算したい

ベイズを使った研究ではよく多項分布とディリクレ分布を使い、パラメータを積分消去したりするので、ポリヤ分布が頻出する。ポリヤ分布のcomponentはガンマ関数からなっており、普通は対数を取って計算することが多いので、ガンマ関数の対数の差(lgammaの差…

logsumexpを使って乱数生成 + X^2検定

空港で暇にしていたので書いてみる(出発時間が遅れた)。takanori-i君がベイジアンHMMを作っているらしく、相談に乗る。確率の積が入ってきて、数値計算で死んでしまうときがあるとのことだったので、logsumexpについて教える。logsumexpについては高村本が分…

Dual Decompositionチュートリアル

M1のryo-ko君がDual Decomposition(双対分解)のチュートリアルをやってくれた。DMLAメンバーで適当に持ち回って不定期に開催している。Dual DecompositionとはTheoremの証明とか細かいところはいくつか分からなかったが、例えばCFGとHMMのdecodeを一緒にやる…

#32 Word Features for Latent Dirichlet Allocation

休憩がてらにざっと読む(なのでいつも以上にちゃんと読んでない)。LDAに色々なfeatureを付っこむという話。"Germany"とか"politics"とかは表層こそ違うものの、政治とかそういうトピックにまとまって欲しい。LDAでもそういう風に持っていくことはできるが、f…

面白そうと思いつつ読めてない論文達

自分用メモ。今は読んでる場合じゃないのだけれど(誰か紹介して)、どっかにメモっとかないと忘れる論文。"かなり"重要そうなのをピックアップしてある。 Painless Unsupervised Learning with Features (pdf, presentation) Parsing Natural Scenes and Natu…

テンソル分解と生成モデル

ICML読み会でテンソル分解の論文が出てきたが、行列分解系はどうもなじみがないので理解しにくい部分があったり。NMFはPLSIと対応が取れるという話もあったりするし、テンソル分解もそういう確率モデルとの対応がないのかな、と思ってカーネル輪講が終わった…

#24 Sparse Additive Generative Models of Text

明日のICML読み会で読む論文。id:tsubosakaさんが紹介してくれている資料もあるし、明日はこの資料で手抜きをさせてもらおうかなと考えているのですが(ぇ)、自分の理解のためにメモも書いておきます。考え方はstraightforwardだし、実装も簡単そうだし、結果…

#23 Infinite Latent Feature Models and the Indian Buffet Process

DMLAにてtakuo-h君が紹介。途中から何をやっているか分かってきたが、できることとしては(Bayesian)sparse PCA + DPという感じ。latent featureというのが(PRMLとかに書いてあるような)Bayesian PCAでいうところのzに対応していて、そこの次元数がDPによって…

#22 Adaptive Sparseness for Supervised Learning

ICML2011にSparse Additive Generative Models of Textという論文が出ていて、あちこちで筋がよさそうな感じじゃね?と紹介されている(こことかこことか)。Motivation肝となるアイデアはsparsenessで、LDAのような生成モデルだと単語毎にどの多項分布を選んで…

カーネル輪講で発表しました

福水さんのカーネル法入門の3章、カーネルPCA、カーネルCCA、カーネルLDA(ベイズじゃないよ!!!)のところを担当しました。せっかくなので資料をアップロードしておきます。 Kernel20110619 View more presentations from syou6162 数理情報学講座(機械学習の…

head-to-head

今日からDMLAの輪講開始(今年はMacKayのInformation Theory, Inference, and Learning Algorithmsを読むのです)。今日は松本先生とid:mrcarrot君の担当。id:mrcarrot君は普通に読めてて素晴しい。途中で弁明現象の例が出てきたので、PRMLでいうところのhead-…

マルコフブランケット

HMMのGibbs Samplingを考えるとき、マルコフブランケットの変数のみを考えればよいのだがなんでだっけとかアホなことを考えたりしたのでメモ。なんでマルコフブランケットだけ考えればいいかについてはパターン認識と機械学習 下 - ベイズ理論による統計的予…

DMPにおけるハイパーパラメータのサンプリングの仕方

ハイパーパラメータの決め方Collapsed Gibbs samplingなどではパラメータは積分消去されることからハイパーパラメータが通常のパラメータの役割を果たすことが少なくありません。そういうわけで通常だと割と適当に「えいやっ!!」と決めてしまうようなハイパ…

Gamma分布からのサンプリング

自分用メモ。DPMにおいてハイパーパラメータのサンプリングをする必要がある場合、Gamma分布からサンプリングしてこなければならない。「Boostさんにお願いしてどうにかしてもらおう...」と思っていたところ、BoostさんはGamm分布の1変数のバージョンでしかA…

Multinomial DPMを実装してみた

ちょっと前に実装してたんだけど、メモを書くがてら公開してみる。やりたいこととしてはnested Chinse Restaurant Processまで行きたいんだけど、ノンパラベイズ初心者なので一番取りかかりやすいであろうDirichlet Process Mixture(DPM)を文書モデルでやっ…

DPMがなんだかよく分からなくなってきたのでメモ

分かったのは俺がよく分かってなかったってこと。相変わらず自分にしか分からないメモ。タイプするのが面倒なので紙のメモをスキャンしたものをアップしておく。はパラメータの次元上のK個棒が立っているようなものを考えて、その棒が立っている位置によって…

Hierarchical Dirichlet Processに関するメモ

自分用メモ。例によってすげー基本っぽいことを書いていく。HDPの前のDP関係は昔ちょっとメモ書きを書いている。 www.yasuhisay.info全体的なこと 客はdocument levelでCRPしていく 料理はcorpus levelでCRPしていく(!) HDPはこの2段階(というか2つ)のCRPで…

FOBOSを使ってL1正則化SVM + L1正則化ロジステック回帰を実装しました

というか一ヶ月前くらいに実装してたんですけど、コード公開してなかったというだけです。 GitHub - syou6162/fobos news20のデータ使って遊んでみたりしていて、元々は100万次元以上あったものを正則化かけまくって次元を1000くらいに落としても精度はほと…

ノンパラベイズのあれこれ

自分用メモ。超基礎的なこと。書くのが躊躇されるレベルだが、書かないと忘れる。全部は書かない、自分が必要なところだけ。ディリクレ過程(Dirichlet Process; DP)を使ったようなモデルを自分で実装する必要が出てきた。今までは必要でなければ必ずしもDP使…

#5 Hierarchical topic models and the nested Chinese restaurant process

今さら感あるかもしれないけど読む。DPはデータの複雑度に応じてクラスタ数を決めるようなノンパラなモデルだが、普通の(flatな)クラスタの構造しか学習できない。それに対し、この論文で説明されるNest Chinise Restaurant Process(nCRP)とかHierarchical L…

FOBOSを使ってSVMやロジステック回帰を実装しよう!!!

原稿も出したし、次のネタのために論文読んでたけど全然分からないし(ダレカタスケテ!!!)、3連休だし、現実逃避したい!!!ということでFOBOSの論文を読んだりしていました。なんでFOBOSかっていうと、就活の面接のときに「SVMとか(使った、じゃなくって)実装…

練習がてらC++でHMMのコードを書いた

いわゆるお勉強的なコードなので特に新しいところはないです。HMMをベースにしたモデルを作る必要が(たぶん)出てきそうなんですが、そういえばHMMの前向き後ろ向きアルゴリズムの付近とか実装したことねぇやべぇと思ったので書いてみました*1。系列の長さが1…

論文100本ノックの感想&独断と偏見に満ち溢れた今年読んだ中で面白かった論文紹介

100本いってないじゃん!! いつまで高見の見物してるんですか??? 目を通してるConference その他 LDA関係 LDA自体について LDAをベースにした応用モデル 形態素解析、分かち書き ノンパラベイズ その他 クラスタリング 最適化 教師なし学習 今年の1月1日から…

#73 Correlated topic models

David M. Blei and John Lafferty, In Lawrence K. Saul, Yair Weiss, and L´eon Bottou, editors, Advances in Neural Information Processing Systems 17, Cambridge, MA, 2005. MIT Press.今日のDMLAにて紹介。LDAのトピック間に相関を入れたようなモデル…

HMMのスケーリング係数

HMMを実装する上で考えなければならない問題点HMMにおけるパラメータ推定はフォワードバックワードによって効率的に計算される。しかし、実際に計算機上でこのアルゴリズムを動かそうとすると気を付けなければならないことがある。再帰式 の右辺のそれぞれの…

#69 Crouching Dirichlet, Hidden Markov Model: Unsupervised POS Tagging with Context Local Tag Generation

Taesun Moon, Katrin Erk, Jason Baldridge, Proceedings of EMNLP-2010.言語によらず単語には機能語と内容語のようなものが存在するが、教師なしpos taggingでよく使われるHMMではこのような機能語、内容語の違いを捉えられない。このモデル(CDHMMとHMM+)で…

#67 Joint Training and Decoding Using Virtual Nodes for Cascaded Segmentation and Tagging Tasks

Xian Qian, Qi Zhang, Yaqian Zhou, Xuanjing Huang, Lide Wu, in Proc. of EMNLP 2010, Massachusetts, USA.Joint Learningでword segmentationとNERを一緒にやる話。既存手法にDynamic Conditional Random Fields(DCRFs)というものがあるが、Figure 1のよ…

Polya分布のパラメータ最適化

Polya分布とは多項分布の共役事前分布にディリクレ分布を取って、ディリクレ分布のパラメータを積分消去するとPolya分布が出てくる。Latent Dirichlet Allocation(LDA)に代表されるトピックモデルでよく登場する確率分布。ガンマ関数を使って綺麗に書きくだ…

ディリクレ分布、ディガンマ関数、指数分布族、十分統計量

東京ではPRML読書会の最終回があっていたらしいですが、こちらはすごく初歩的な話。LDAのinferenceをGibbs samplingでやる話とかを紹介したので、こちらは変分ベイズでやるほう(というか元論文)を読んでいた。変分ベイズはいいんだけど、途中で出てくる (つ…

経験ベイズと周辺尤度

経験ベイズは以前勉強したことがあったので、前よりは余裕を持って聞けた。 www.yasuhisay.info 「経験ベイズは何をするものか?」ということに一言で答えようとすると、「よりよいハイパーパラメータを決定するために周辺尤度最大化を用いる手法」ということ…

前向きアルゴリズム、Vitebiアルゴリズム

Viterbi書くの何回目だろ。。。週末にはバウムウェルチ(Baum-Welch)のアルゴリズムこと前向き後ろ向きアルゴリズムを書きたいところ。 www.yasuhisay.info # -*- coding: utf-8 -*- # 確率的言語モデル(東京大学出版)第4章(隠れマルコフモデル) require 'pp'…

変分ベイズ

natural conjugate priorと変分ベイズが一緒に出されてどっちも初めての人はついていけるのだろうかと思いつつ(授業的にはどっちかが分かってくれるといいなくらいだろうか)。エレベータで論生の人が「他の研究室の人たちはついていけるんだろうか」と話して…

情報幾何学応用

セミパラメトリック推定がメインの話。双対平坦な統計モデル 2種類の接続 e接続 m接続 最尤推定はm射影をやっている モデルがExponential Familyなら一意に決まる 高次推定理論 平坦でないモデルは曲率とかの高次の項を見ないといけない emアルゴリズムセミ…