ICML2011気になった論文リスト

ICML2011のAccepted paperが公開されています. http://www.icml-2011.org/papers.php個人的に気になった(あとで読みたい)論文リストを以下にまとめていきます. オンライン学習,多クラス分類問題,スパース化,転移学習系の論文が多めです. Efficient S…

Complement NaiveBayesを実装したよ

レッドブルとカレーが美味しい季節になりました. 前回,ナイーブベイズを実装した後, 「どうせならComplement NaiveBayesも実装してしまいなよ.」 という天からの声が聞こえた気がしたので,実装してみました.Complement NaiveBayesとはなんぞや,という…

Twitterの被RT数を増やすには

恒例の現実(論文)から逃避するためのブログ執筆です. WWW2011のBest Poster Awardを受賞した"Predicting Popular Messages in Twitter" [Hong+, 2011] を読んだのでそのメモを書き留めます.結果から言ってしまうと, Follower数を多くすればいいよ! 被R…

今さらないーぶべいず

今週の言語処理のための機械学習入門を読む会(研究室内勉強会)は,ナイーブベイズの章に突入. どうせなら復習ついでにC++で実装しようかな,となんとなく思い立ったので実装してみました. コード GitHub - oiwah/classifier: Online Classification Libr…

Knuth-Morris-Pratt algorithm

例の如く論文執筆に疲れたので,コーディングで息抜きをします. 今回実装したのは,文字列照合アルゴリズムのクヌース-モリス-プラット法(KMP法)です. アルゴリズムの詳細は,Wikipediaへどうぞ( ゚д゚ ) http://en.wikipedia.org/wiki/Knuth%E2%80%93Morri…

Gmail優先トレイ論文メモ

元論文 “The Learning Behind Gmail Priority Inbox”, Douglas Aberdeen, Ondrey Pacovsky, Andrew Slater, LCCC : NIPS 2010 Workshop on Learning on Cores, Clusters and Clouds. http://research.google.com/pubs/archive/36955.pdf Gmail Priority Inbo…

MacBook Air 11インチ欲しい!

MacBook Air 11インチ欲しい! これを機にマカーに….

論文の息抜きにSuffixArray

2月上旬投稿予定の論文を書くのに疲れたので, 息抜きに非常に単純なSuffixArrayをPythonで実装してみました. ソースコード #!/usr/bin/python # -*- coding: utf-8 -*- import sys def createSA(text): """Create Suffix Array""" print "create SuffixArr…

集合知プログラミング5章のサンプルプログラム修正パッチ

4章に続いて5章でも、サンプルプログラムをそのまま起動させるとエラーが発生してしまうので、修正パッチを作成しました。 とはいっても、遺伝的アルゴリズムの部分だけですが…。 diff --git a/ColIntel/chapter5/optimization.py b/ColIntel/chapter5/optim…

集合知プログラミング4章のサンプルプログラム修正パッチ

公開されているサンプルプログラムをそのまま起動させるとエラーが発生してしまったので、 修正パッチを作成しました。 diff --git a/ColIntel/chapter4/nn.py b/ColIntel/chapter4/nn.py index 1eece9a..c19b082 100755 --- a/ColIntel/chapter4/nn.py +++ …

PRML9章の勉強会用スライド

PRML9章(混合モデルとEM)の勉強会用スライドを公開します。 今回のスライドは出来が悪いので参考にはなるとは思えませんが、なにか使い道があればどうぞです。SlideShare上ではスライドのレイアウトが崩れていますが、一度pdfファイルをダウンロードして、手…

FOBOS解説スライドを作成しました

大学院の専攻全体で行われた輪講で、「L1正則化を導入したOnline学習手法」というタイトルで論文紹介を行ないました。 解説スライド FOBOS View more presentations from Hidekazu Oiwa このスライドを制作するにあたり、中川研究室の皆様には校正・アドバイ…

ICML読み会

http://www.r.dl.itc.u-tokyo.ac.jp/study_ml/pukiwiki/index.php?schedule%2F2010-10-21 研究室の機械学習勉強会で、ICML2010の輪読の発表を行ったので、スライドを載せておきます。僕が担当したのは、以下の7論文です。 Online Learning Implicit Online …

Preferred Infrastructureの夏期インターンに行ってきました

8月の上旬から9月の下旬までの2ヶ月間、Preferred Infrastructure(PFI)の夏期インターンに参加してきました。 今回のインターンを振り返りつつ、ブログ記事を書きたいと思います。 PFIでのインターン PFIのインターンでは、インターン生1人1人が各自に定めた…

「言語処理のための機械学習入門」勉強会を開催しました

2010/8/6,7の2日間を用いて、「言語処理のための機械学習入門」を輪読する勉強会を開催しました。 発表者の皆様、お疲れ様でした。 以下、現時点で公開されている発表スライドを掲載します。 (発表資料に問題等あれば、TwitterのDMなどで御連絡ください。サ…

SRM476

250を解いて550を考えていたら、いつの間にか朝でした。 寝落ちは初体験。 250 Badgers barger数をKに固定したときに、hunger+greed*(K-1)が小さい順にbargerをK個選択すれば、bargerがK個の時に必要な最小食料が導出されます。この最小食料をtotalFoodと比…

SRM401 Div1 250

DP。カタラン数。境界線を超えてはいけない経路の数。 DPやカタラン数の良い演習問題。 countDiagrams class FIELDDiagrams { public: long long countDiagrams(int fieldOrder) { long long partition[45][45] = {0}; for(int i=1; i<=fieldOrder; i++){ pa…

SRM405 DIV1 250

日課消化。Unixの相対パスの記述問題。特に難しいところはありません。 というか問題文が長すぎていて読んでない…。テストケースだけで問題を類推しているので、間違いがあるかも。 makeRelative class RelativePath { public: string makeRelative(string p…

Codeforces #23

A,Bは直ぐに解法が出たけど、Cの解法が全然出なかった…。 どんな状態でも"Yes"になるのは間違いなくて、あとはappleやorangeを適当に大きい順に並べればいいのかな、とか考えてました。 A - You're Given a String... 愚直に部分文字列比較。 #include <algorithm> #inc</algorithm>…

SRM475

Div1にさっさと行くことが出来たので、良しとしましょう。 今回はうさぎ祭り。 RabbitVoting 計算するだけ。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string> #include <vector> using namespace std; #define FOR(i,s,e) for (int i = int(</vector></string></sstream></set></numeric></map></iostream></algorithm>…

Member SRM 474

コードだけ。講義中だったのと、MediumのN+1にすべきところをNにしていて気づかなかったのが敗因。 PalindromesCount #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string> #include <vector> using namespace std; #define FOR(i,s,e) for (int </vector></string></sstream></set></numeric></map></iostream></algorithm>…

TheMoviesLevelOneDivOne

日課消化。row,seatの数の大きさに始めは戸惑うが、すでに予約されたシートが1つ埋まることで、とりうるペアシートがいくつ減るかを考えれば、特に難しくない。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string> #include <vector> using na</vector></string></sstream></set></numeric></map></iostream></algorithm>…

NewCoins

日課消化。Div1の450。DPで解いたけど、メモ化再帰の方が計算時間は短いかも。 このコードだけ見ても、やってること分かりにくいかもです。 各整数の余りの処理をDPで最適化するアルゴリズムになっています。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #incl</numeric></map></iostream></algorithm>…

TurretPlacement

日課消化。頭悪いコード。たぶん、点を20も30も用意されたらアウト。 丸め誤差が発生するので、点Mと点Nの距離を求めるのにdouble(つまりsqrt)は使えない。幸い各点は-10000〜10000の格子点座標上にしか発生しないから、距離はint形式でも二乗のまま…

SRM 473

登録時間に間に合いませんでした。 一応、div1の250だけ解いてみました。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string> #include <vector> using namespace std; #define FOR(i,s,e) for (int i = int(s); i != int(e); i++) #define FOR</vector></string></sstream></set></numeric></map></iostream></algorithm>…

KnightsTour

日課消化。始めから綺麗にコードが書けるようになりたい。 問題自体は難しくない。実装が面倒なだけ。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string> #include <vector> using namespace std; #define FOR(i,s,e) for (int i = int(s); i </vector></string></sstream></set></numeric></map></iostream></algorithm>…

TheTriangleBothDivs

日課消化。ちょっと手こずった。 2通りの解法があった時にどちらを選択すべきか、の判断がまだまだ甘い。 class TheTriangleBothDivs { private: bool check(string a, string b){ for(unsigned int i=0; i

expectedBounces

日課消化。いつもこういう綺麗な解法が見つかればいいんですけどね。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string> #include <vector> using namespace std; #define FOR(i,s,e) for (int i = int(s); i != int(e); i++) #define FORIT(i</vector></string></sstream></set></numeric></map></iostream></algorithm>…

Codeforces Beta Round #17

途中から初参加。 Noldbach problem 解もprimerじゃなきゃいけないって条件を見落としていて、何故ExampleBがNoになるのか終了ギリギリまで分からなかった。 英語読解の問題だなー。 #include <algorithm> #include <iostream> #include <map> #include <numeric> #include <set> #include <sstream> #include <string></string></sstream></set></numeric></map></iostream></algorithm>…

DigitMultiples

日課消化。部分文字列比較アルゴリズムの良い勉強になりました。 class DigitMultiples { private: struct node { int value; node *next; node(int value, node *next) : value(value), next(next) { } }; #define index_of(as, x) \ distance(as.begin(), …