evinceでuimが使えない問題を解決する

いつごろからか、evinceで日本語が入力できなくなっていておかしいなと思っていたのだが、最近になってAppArmorが原因であることに気づいた。 ubuntuで AppArmor を使ってセキュアな環境を構築する を参考にしてevinceでuimを使えるようにすることができた。…

SVMの正則化項がマージン最大化のために必要な理由

ラージマージンとマージン最大化について2回ほど書いてきた。 あの後もSVMとマージンパーセプトロンについてうだうだと考えていたのだが、もうちょっとシンプルな説明を思いついた。 SVMの特徴はヒンジロスを採用している点と、正則化項があるところである。…

sshを使いこなすための7つの設定

ssh

五月病が抜け切らないIT系新入社員に贈るシリーズ第1段。 ~/.ssh/configにはいろいろな設定が書けるが、周囲を見渡した限り、あまり活用されているようには見受けられない。そこで、今回は便利な設定をいくつか集めてみた。 長いホスト名に短い名前をつける …

emacsのマウスホイールでのスクロールを1行単位でかつホイールのあるところを動かす

emacs24は字句的スコープが導入されるらしい。4/1にlexcal scopeブランチがマージされたそうだ。デフォルトだとDynamic Bindingのままで、-*- lexical-binding: t -*-って書いたファイルだけがlexical bindingになるみたい。 emacsではmwheel-follow-mouseを…

パーセプトロンはマージン最大化の夢を見るか?

前回の記事は長くなりすぎたので、長文を読みたくない人のために、まず三行であらすじをまとめる。 ソフトマージンSVMがマージン最大化してるって言うけど、ちゃんと理解するの結構難しくない? なんか自分の中で議論を進めると、正則化項つきパーセプトロン…

SVMのマージン最大化についてしつこく考えてみる

SVMの説明というと、よく出てくるのはマージンの最大化である。しかし、実装を行う場合には、どちらかというと目的関数をどうやって最小化しようかな、というところの方が重要(注:主形式を勾配法で最適化する場合の話です)で、この間にある微妙なギャップ…

FirefoxのGCまわり

なんとなくちょっとだけ読んでみた。Firefoxにおいて、JSが使うメモリはコンパートメント、チャンク、アリーナの順に分解される。コンパートメントがどうも一番大きな区切りらしく、通常はこの単位でGCが呼ばれる。コンパートメントはホスト単位で確保される…

日本語は不自由だ

こないだ、「難しい」を敬体にするときに、「難しいです」はなんだか恥ずかしいし、「困難です」は実現可能性の低さが「難しい」よりもかなり低い気がしてしまうし、「難しゅうございます」は丁寧すぎるし、どうすればいいんだ、という話をTwitterで書いた。…

TIMEDOMAIN lightを買った

これまで、スピーカーはBOSEのMediaMateを使っていたのだが、低音はボンボン出るけれど、どうも細かい音が聞こえない気がするので買い換えることにした。 新しいスピーカーはいくつか調べた結果TIMEDOMAIN lightにした。TIMEDOMAIN理論というものに基づくら…

NLP2011に参加してきました

もう一ヶ月以上も前の話になりますが、2011年の言語処理学会年次大会で、かな漢字変換について発表をしてきました。 日本語入力についてのテーマセッションが用意されているということで、発表申し込みをしようかどうか迷った挙句、仕事が忙しいからあきらめ…

clangでソフトウェアをビルドしC++を知る

clangというのはllvm向けのC/C++/Obj-Cのためのフロントエンドで、最近はGoogle ChromeとかFirefoxもコンパイルできるレベルにまで成熟してきているらしい。 いくつかのブログで紹介されているのを見ても、ふーん、ぐらいにしか思っていなかったのだが、あん…

統計学を拓いた異才たちを読んだ

2月ぐらいに、ナイチンゲールが統計学を始めたとか始めないとかtwitterでなんか盛り上がっていた(らしい)ことがあって、そこで"統計学を拓いた異才たち"というタイトルの本がおすすめされていたので読んでみることにした。そもそも、統計学についてはあま…

地震

自分用に記録しておく。 当日は、会社のオフィスで仕事をしている最中に地震に遭った。最初はちょっと「お?」と思う程度だったが、段々と揺れが強くなるにつれて会社全体がちょっとしたパニック状態に。自分はThinkPadを持って机の下に潜り込んでtwitterに…

たくさんタブを開く人にとってFirefox 5は福音となる…かも

現在のウェブアプリはHTMLとJavaScriptで構成される。一般的なデスクトップアプリで言うツールキットの部分に相当するのがHTMLである。しかし、この組み合わせでは、デスクトップアプリと比べて取れないイベントが多く、setIntervalで定期的にハンドラを呼び…

Firefoxへの疑問

新しいタブを開いてバックグラウンドでロードしているときに、UI全体が一瞬とても重くなる。 textareaに日本語の入力している間、preeditが追従できていない時間が長い。一文をまるまる入力すると、ほぼ確実に0.5〜1秒ぐらいは固まる。 タブを常時100個以上…

TokyoNLPで発表したConfidence WeightedによるLearning to Rankの資料を公開しました

めんどうなのでずっと避けてたんですが、3ヶ月ぐらい前に勉強会で発表した資料を公開しました。埋めこむとページが重くなるので、リンクを貼るだけにしておきます。 → http://www.slideshare.net/tkng/confidence-weighted Learning to RankでPairwiseの学習…

emacsで別のホストにある違うユーザーが所有するファイルを編集する

お仕事で作業をしていると、踏み台サーバの裏側のマシンにあるスクリプトをいじってデータの統計をとって結果を見る、というようなことをやらないといけないことがよくある。 ややこしい作業であれば小さなデータを手元に用意してそこでスクリプトを作って、…

サルでも分かる多段ssh

仕事をしていると、お客さんの環境にログインするため、 踏み台マシンを経由する必要がある 踏み台マシンへのログインすら、特定範囲のIPアドレスからしか受け付けてくれない といった厳しい条件を満たさなければならない場合があり、多段にsshをしなければ…

【Firefox】JSONViewは神拡張【Google Chrome】

JSONViewを知らない人が社内でいっぱいいたので、これは宣伝すると他にも幸せになれる人がたくさん居るだろう、ということで宣伝してみる。 近年、JSON形式でウェブAPIを作成する機会が増えてきた。しかし、JSONで出力された場合、日本語の文字列はエスケー…

劣微分を使った最適化手法を紹介しました

新年明けましておめでとうございます、というのもはばかられるような時期になってしまいましたが、今年もこんな感じでのんびりとやっていきたいと思います。よろしくお願いします。 会社ブログの方で、劣微分を使った最適化手法として、FOBOSを紹介しました…

2010年面白かった漫画

最近、ブログを書くという点に関しては会社ブログで手一杯なので、こちらにはあまり大したことは書けそうにない。 このままだと12月は1回も書けそうにないので、2010年に読んだ漫画で面白かったやつを紹介してみる。順位とか付けるほどたくさん読んでないの…

rm twitterでウザいあいつのツイートを非表示にする

twitter、便利ですよね。実は私も、今の会社に転職したきっかけはtwitterでした。(もちろん、それだけで転職したわけではありませんが…。)それぐらい便利なサービスですので、みなさんもガンガン使っておられることと思います。 しかし、twitterを使ってい…

Firefox 4 betaを入れてみた

Firefox4 beta7から、コンパートメントという機構が導入されるらしい。これは、GCするメモリ空間をタブ単位に分ける仕組みで、これによってGCが効率化される。以前から、Firefoxはタブを大量に開いたときにパフォーマンスの低下が著しく、その一因にGCがある…

識別モデルと識別学習

"Discriminative models, not discriminative training", Tom Minka, 2005 (pdf) を久々に読み返してみた。完全に理解したとは言えないけど、それほど難しい内容でもなかった…ような気がする。 この論文(?)の主張は2つある。まず、あるモデルに対する最尤解…

emacs初心者の設定いろいろ

emacsを使い始めて早7年、初心者を名乗るのもなんだかなぁという感じではあるが、積極的に勉強せずにここまできてしまったので、未だに初心者レベルのことしかできない。しかし、初心者なりにいろいろと.emacsには便利な設定がたまってきたので、ここではそ…

google-glogに潜むトリックを解明する

google-glogは非常に有名なロギングライブラリであり、その名前からわかる通りgoogleの人々によって開発されている。使い方は簡単で、 LOG(INFO) << "this is not a drill"; みたいな感じで、LOG()が返すオブジェクトoperator なぜLOG()はマクロなのか まず…

はてブの非表示機能は結構すごい

最近気づいたのだが、はてなブックマークの非表示機能は結構すごい。 非表示機能というのはなにかというと、「この人のブックマークやコメントは見えなくする」という機能である。 ソーシャルブックマークというのは他の人がブックマーク時に残したコメント…

計算機シミュレーションのための確率分布乱数生成法を買った

Dirichlet分布からのサンプリングを実装するときに使おうと思って、echizen_tmさんのところで大プッシュされていた計算機シミュレーションのための確率分布乱数生成法を買った。 結局、Diriclet分布からのサンプリングについてはガンマ分布からのサンプリン…

Re: Re: Sinatra 1.1 出た

yharaさんから反応を頂いたので、もう少し詳しく書いてみます。 お客さんの環境はいろいろで、大抵はRHEL, CentOS, Ubuntuのどれか データ規模は数万件なんだけど、トランザクションが欲しいのでRDBMSを使いたい→手軽なSQLiteが一番良い データベース本体は…

Sinatra 1.1 出た

1.0がでた時はエントリを書きそこねたので、忘れないうちに書いておく。 リリースノート http://www.ruby-forum.com/topic/304901 リリースノートの日本語訳 http://d.hatena.ne.jp/tagomoris/20101026/1288073194 変更点の中で自分が嬉しいのは before/afte…