Hatena::ブログ(Diary)

Yoh Okunoの日記 このページをアンテナに追加 RSSフィード Twitter

2013-12-31

2013年を振り返る

前回の記事から1年が経ちました(振り返り終わり)。日本語でブログを書く意義が失われつつあるので、ここはニュースがあるときだけ更新することにして、普段はメンテナンスモードにしておきます。

2012-12-31

2012年を振り返る

気がつけば日本で2012年が終わろうという時間になっていたので、簡単に近況報告をば。

  • 渡英しました。現在、ロンドンのFinchley Road駅近くのフラットに住んでいます。
  • 転職しました。Swiftkeyというところで働いています。仕事では相変わらずIMEを作っています。
  • 「入門機械学習」を翻訳しました。

今年は色々あって慌ただしくなりましたが、来年は落ち着いて実力をつけたりイギリス生活を楽しんだりしたいですね。

2012-12-22

「入門 機械学習」が発売されました!

萩原さん、水野さん、木下さんとともにオライリー社から本日発売の「入門 機械学習」の翻訳に関わらせて頂きました。

Amazon.co.jp: 入門 機械学習: Drew Conway, John Myles White, 萩原 正人, 奥野 陽, 水野 貴明, 木下 哲也: 本

入門 機械学習

終盤、私自身は渡英と転職を挟んであまり校正に参加できなくなってしまったのですが、萩原さんの頑張りと木下さんのヘルプ、それから編集の赤池さんの粘りによりなんとか年内の発売にこぎつけることが出来ました。関係者一同に感謝とお詫びを申し上げます。

2012-08-08

WTIM 2: テキスト入力ワークショップが開催されます

2012年12月8日〜15日に開催されるCOLING 2012のワークショップとして、テキスト入力ワークショップ(Workshop on Advances in Text Input Methods; WTIM)が開催されます。告知サイト(英語)が公開されましたので、翻訳を行いました。

Second Workshop on Advances in Text Input Methods (WTIM 2) - Microsoft Research

no title


概要

テキスト入力の技術は新しい時代に入りました。母国語の文字を直接タイプして入力できない地域では、コンピュータやモバイルデバイスを利用する人が急増しています。またキーボード以外の方法、例えば音声認識や手書き認識によってテキストを入力することも徐々に一般的になってきました。キーボードを利用する場合でも、数年前とは違った方法で行われます。適応的なソフトウェアキーボード、予測入力、スペル訂正はテキスト入力技術の最近の挑戦における僅かな例でしかありません。この挑戦は今やグローバルでユビキタスなものであり、言語やデバイスや状況を問わず、人々は新しい時代のテキスト入力技術を使わずに入力をしたいとは思いません。

多くのテキスト入力における挑戦は、共通のNLPの問題に直面しています。例えば、質の高い辞書が必要とされていますが、それをどう構築・維持するかはまったく自明ではありません。辞書はまた何らかのデータ構造に格納されますが、その最適な設計は利用方法に依存します。予測入力とスペル訂正はとても賢くなければ非常に迷惑なものになるでしょう。多くのアプリケーションにおいて、ユーザの入力には多くのノイズが含まれます(音声認識や小さなスクリーンでのタイピングを想像してください)。そのため入力メソッドはそのようなノイズに対して頑健でなければなりません。最後に、ユーザ入力体験の定量的な解析に必要な標準のデータセットや評価基準は今のところ存在していませんん。

このワークショップの目的は、世界中のテキスト入力技術に関わる研究者と開発者を集め、異なるアプリケーション・デバイス・モード・そして言語をまたがって新しい技術や研究で得た知見・問題点などを共有することです。私たちはこのワークショップを通してこの分野全体への理解が深まり、そしてそれぞれの応用分野において技術革新が促進されることを願っています。

このワークショップはIJCNLP 2011と共催で開催された第1回テキスト入力ワークショップ(WTIM 1)に続くものです。前回のワークショップにおける多くの反響を受け、私たちはWTIM 2を開催することに決めました。WTIM 2はWTIM 1と同じく世界中の入力メソッドに関わる開発者や研究者を一堂に会し、新技術や新発見、異なる応用やデバイスや言語を超えた問題点を共有することを目的としています。このワークショップがこの分野のさらなる理解とそれぞれのアプリケーション分野における技術革新を推進することを願います。

トピック

私たちはテキスト入力をカバーする広い範囲のトピックや言語における参加を歓迎します。興味のあるトピックは以下を含みます(ただしこれらに限定はされません)。

  • 発音による入力:ローマ字を元にしない言語における変換に基づくアプローチ
  • ソフトウェアキーボードや制約の大きいハードウェアにおける入力:携帯電話、ゲーム機、タブレットのための入力システム
  • 新しい入力モードについての調査:音声、手書き文字、ジェスチャーによるテキスト入力
  • 予測入力技術:自動補完や次の単語の予測、スペル訂正
  • ユーザーのフィードバックやコミュニティに特有のデータ:ユーザーの理解や、より良い入力体験のための利用
  • モデル:統計的な入力メソッドの研究と実践
  • 評価:テキスト入力におけるユーザ体験を計測する尺度
  • 商用の入力エンジン開発における諸問題:データ圧縮、クラウドベースのIME、ユーザーインターフェース設計

スケジュール

  • 2012/9/30 (11:59pm Samoa time, UTC-11):論文投稿締切
  • 2012/10/31 論文採択通知
  • 2012/11/15 カメラレディ(最終稿)の締切日
  • 2012/12/8,9,15 ワークショップ当日(この日程のうち1日開催。詳しくは審議中)

投稿方法

本ワークショップ(WTIM 2)への論文投稿は * 2012年9月30日まで * にPDFで以下のURLから提出してください

Second Workshop on Advances in Text Input Methods

投稿の方法はCOLINGの論文募集のページに従ってください。

404 Not Found

LatexとWordのスタイルファイルが提供されています。

http://www.coling2012-iitb.org/doc/coling-latex.zip

http://www.coling2012-iitb.org/doc/coling-word.zip

形式はA5で、ロングペーパーは本文14ページ、ショートペーパーは本文6ページまでとなっています。


ちなみに、今回は私はオーガナイザとして名を連ねさせていただいています。前回はPC委員として査読を担当させていただきましたが、前回のオーガナイザだった鈴木久美さんから3月の言語処理学会のときにお話をいただきました。大役ですが頑張りたいと思いますので、よろしくお願いいたします。

テキスト入力のワークショップがあります #IJCNLP2011 - Yoh Okunoの日記

※この翻訳は非公式なものであり、正確な情報は公式サイトをご覧ください。

2012-04-09

NIPS2011読み会で発表しました #nipsreading

Fast and Accurate K-means for Large Datasets by @nokuno

Iterative Learning for Reliable Crowdsourcing Systems @shuyo

Why The Brain Separates Face Recognition From Object Recognition @takmin

Linear submodular bandits and their application to diversified retrieval @tsubosaka

The Kernel Beta Process by Mochihachi-san

  • Latent Feature Model
  • Indean Buffet Process
  • Beta Process: Posterior?
  • Bernoulli Process= IBT

HOGWILD!: A Lock-Free Approach to Parallelizing Stochastic Gradient Descent @sleepy_yoshi

Reconstructing Patterns of Information Discussion from Incomplete Observations @smly

2012-04-07

WSDM2012勉強会で発表しました #wsdm2012

WSDM2012勉強会 : ATND

@nokuno Finding Your Friends and Following Them to Where You Are(Best Paper)


@tsubosaka Finding the right consumer : Optimizing for conversion in display advertising campaigns

WSDM 2012 勉強会資料

@y_benjo Overcoming browser cookie churn with clustering

Overcoming browser cookie churn with clustering in wsdm2012 reading

@smly When Will It Happen? – Relationship Prediction in Heterogeneous Information Networks他

Presentation Not Found // Speaker Deck

@john_a_dreams Correlating financial time series with micro-blogging activity

WSDM2012勉強会 - Correlating Financial Time Series with Micro-Blogging A…

@sleepy_yoshi

WSDM2012読み会: Learning to Rank with Multi-Aspect Relevance for Vertica…

2012-03-31

x86/x64最適化勉強会3に参加・発表してきました #x86opti

というわけでバイナリアンに混じって発表してきました.

x86/x64最適化勉強会3 : ATND

nokuno C++でMicro Thread / Fiber / Coroutineを実装してみた 〜 espを強引に入れ替える〜

久しぶりにゲーム開発の話をしました.楽しかった!


takehiro_t 分岐予測時代のswitch-case

if文は頻度の低いものから検査するほうが速い場合がある?

青木和麻呂 暗号実装最適化 − 暗号実装屋の不毛な戦い

Camellia暗号の開発者 @NTT

no title

  • LEA命令を使った最適化
  • GCD(最大公約数)の最適化

herumi quick search algorithmとstrstr

  • Quick Search: Simplified and Improved Boyer-Moore Algorithm
  • テーブル不要,pcmpistri命令で高速化!

sinya8282 AVX2時代の正規表現マッチング 〜半群でぐんぐん!〜

AVX2時代の正規表現マッチング 〜半群でぐんぐん!〜

w_o GCCの-mtuneは何やってるか(仮)

GCC -mtune 何やってるか

感想:闇の軍団怖い

2012-02-26

第9回自然言語処理勉強会@東京を開催しました #TokyoNLP

TokyoNLPも第9回となり,息の長い勉強会になってきました.今回は飛び入りでLT発表枠もできて,アドリブ感あふれる回になったと思います.

第9回自然言語処理勉強会 #TokyoNLP : ATND

座席表 by @さん

no title

Jubatusの分散レコメンデーション by @unnonounoさん

  • 自己紹介
  • Jubatusの紹介
  • Jubatusの統計処理
    • 正確な平均は「合計」と「個数」を内部状態として持っておけばオンラインで更新できる
  • レコメンデーションとは?
    • 近傍探索:類似度(コサイン類似度やJaccard係数など)の大きい k 件を返す
    • 転置インデックス:疎行列と疎ベクトルの内積を高速・効率的に計算できる
    • LSH (Locality Sensitive Hashing):コサイン類似度に比例する確率でヒット
    • MinHash:Jaccard係数に比例する確率でヒット
    • 重み付きMinHash:重み付きJaccard係数
    • アンカーグラフ:k-meansで求めたアンカーを介して類似度を計算
  • Jubatusでの実装
    • オンライン化:新しいデータの追加,変更,検索
    • 分散化:Consistent Hashingで分散
    • 転置インデックス:mixiのタイミングで差分を通知
    • LSH:ハッシュ関数は不変なので,分散化は容易
    • アンカーグラフの分散?→オリジナルデータを持たないと無理!
  • まとめ
    • Jubatusの紹介:MIX操作によるゆるい同期計算モデル
    • レコメンドの手法
    • Jubatusの実装
  • 質疑応答

CountMinスケッチを実装してみた by @s5yataさん

Groonga - Count-Min Sketch のライブラリを公開しました

Count-Min Sketch Library - Madoka


  • 自己紹介
    • 矢田晋
    • 未来検索ブラジル
    • 辞書検索ライブラリ:marisa-trie
  • なぜ数えるのか?:文字,単語,N-gram,共起,…の頻度を数える
  • メモリが足りなくなった場合の対処法
    • 低頻度のアイテムを捨てる(カウントベース)
    • ハッシュで頻度を数える(スケッチベース)
  • 初めてのCount Min Sketch
    • ハッシュ表:キー(アイテム)とバリュー(頻度)のペアの集合
    • キーを持たない,ハッシュ表を複数持つ
    • 最小の値を持つハッシュ表を使う
    • パラメータ:depth, width
    • トレードオフ:効率優先←→精度優先
    • 誤差は増える方にしか出ない
  • 続・初めてのCount Min Sketch
    • 実装してみたら「つかえねーよこんなもん」
    • メモリ使用量を固定できるのが強み
    • マルチスレッド非対応(そもそも近似だし…)
    • 欠点:アイテムを取り出せない
  • 誤差を小さくする手法
    • Conservative Update:最小値だけをインクリメントする(常に大きい方の誤差にならない)
    • Lossy Conservative Update:低頻度アイテムの推定値を下げる
    • Approximate Counting: 確率的にインクリメント
    • Hierarchical CM Sketch: 低頻度,中頻度,高頻度のスケッチを用意する
  • プログラミング CountMin Sketch
    • ハッシュ関数:Murmur hashを使った(128ビット)
    • パラメータ:depth >= 3 が実用的,width はユースケース次第
    • Conservative Updateはそのまま採用,他は改良
    • Lossy Conservative Updateはオプションとして提供
    • Approximate Counting: 固定小数点数を採用(指数5ビット仮数14ビット)
    • 余ったビットを使ってインクリメント禁止フラグを入れた
    • 分岐なしで確率的インクリメント
    • Hierarchical CM Sketch:パラメータが複雑,オプションとして提供
  • 他の機能
    • 内積を推定できる(スケッチを素性として使える)
    • 分散してカウントおいて後で合成できる
    • 拡大はできないが縮小はできる(割り切れる場合のみ)
  • 評価してください
    • Zipfの法則に従うアイテム列を自動生成
    • 異なり数は1M,総数は14M

@さんによる紹介資料

Approximate Scalable Bounded Space Sketch for Large Data NLP

日本語入力を支える技術とMCMCについての基礎的な実験 @tkngさん

Amazon CAPTCHA

  • 日本語入力を支える技術について
    • 制作の裏側を話します
    • 社内セミナーで日本語入力の話をしたら技評の編集さんの目に止まった
    • セミナーがGoogle日本語入力の公開と同日だった
    • 2010年,IME関連の書籍を書かないかというお誘い(Web+DBに雑誌記事を書いた時の担当)
    • モチベーション:日本語入力,機械学習,データ構造について書きたかった
    • 執筆中:平日2時間,休日8時間のペース
    • 2年間で22万字程度,細かい推敲で100万字くらい
    • 書いてる最中を振り返って:辛かった,いいことは何もない
    • 書き上がってからは:「もう書かなくていい」ことが嬉しい,買ったよっていう一言が嬉しい
    • 執筆の道具:gitで原稿を管理,PDFを生成してページ数をカウント,校正ではdocdiff
  • MCMCについて
    • 確率とは
    • サンプリングとは
    • サイコロからのサンプリング→すぐに分かる
    • 正規分布からのサンプリング→意外と難しい
    • 棄却サンプリング:一様分布を棄却してつくる(提案分布は省略)
    • MCMC
      • 適当な初期値からランダムにちょっとずつ移動
      • 移動先と移動元の確率比に応じて棄却する
      • 確率が高くなる方向へは無条件で移動,確率が低い方向へはたまに移動
      • 最初の方のサンプルは捨てるといい(burn-in)
      • Rubyによる実際のコードで説明
  • 他の手法
    • メトロポリス法:今回紹介したもの
    • メトロポリス・ヘイスティング法:移動に関して非対称な分布を使う
    • ギブスサンプラー:多次元の分布をある次元(パラメータ)ごとにサンプリング
    • Collapsed Gibbs Sampler: パラメータを積分消去して隠れ状態だけをサンプリング
  • 実験結果
    • MCMCで1次元の正規分布のサンプリング,ヒストグラムで可視化
    • 100,000くらいで釣鐘型っぽくなる
  • 考察
    • 高次元のデータから効率的にサンプリングできる
    • ベイズの定理と組み合わせると,パラメータをサンプリングできる
    • データが与えられた元での確率の高いパラメータをサンプリングできる
  • 参考文献:計算統計2

LT

Introduction to Machine Transliteration by @nokuno

2012-02-19

第9回自然言語処理勉強会を開催します #TokyoNLP

下記要項に従い,次回TokyoNLPを2月25日(土)に開催します.参加される方はご登録をお願いします.

第9回自然言語処理勉強会 #TokyoNLP : ATND

概要

自然言語処理(Natural Language Processing, NLP)に関する勉強会です。

理論と実践の両面から深く学び、発表と議論を通じて共有していくことを目的としています。

発表内容

第9回の発表内容です。今回もいつも通り濃い内容となっておりますので、気合を入れて勉強しましょう!

発表者 発表タイトル
ippei_ukaiさん 機械翻訳ー自動評価と最適化、まとめ
unnonounoさん Jubatusの新機能 〜リアルタイム分散レコメンデーション〜
s5yataさん Count-Min Sketch を実装してみた
tkngさん 日本語入力を支える技術についてとMCMCについての基礎的な実験
nokuno Introduction to Machine Transliteration(仮)

会場は渋谷のVOYAGE GROUPさんです.@ajiyoshiさん,いつもありがとうございます!

懇親会では@tkngさんによるIME本サイン会を行います.興味のある方はぜひお越しください.


Amazon.co.jp: 日本語入力を支える技術 ~変わり続けるコンピュータと言葉の世界 (WEB+DB PRESS plus): 徳永 拓之: 本


よろしくお願いします.

2012-02-08

「日本語入力を支える技術」本日発売! #ステマ

id:tkngさんによる「日本語入力を支える技術」が本日2月8日に発売となりましたので,宣伝させて頂きます.

Amazon.co.jp: 日本語入力を支える技術 ~変わり続けるコンピュータと言葉の世界 (WEB+DB PRESS plus): 徳永 拓之: 本

今見たら,Amazonのコンピュータのベストセラーランキングで2位でした! おめでとうございます!

f:id:nokuno:20120208180326p:image

追記:後日1位を獲得したようです.


ちなみにステマじゃないよ! 堂々と宣伝って言ってるよ! レビューしたからといって1円ももらってないけどね!

なお,まだ正式な告知はしていませんが,2月25日(土)に開催される第9回自然言語処理勉強会(TokyoNLP)ではid:tkngさんのサイン会が行われる予定です.興味の有る方は,書籍をお持ちになってお越しください.

第9回自然言語処理勉強会 #TokyoNLP : ATND