タグ

ブックマーク / d.hatena.ne.jp/nokuno (18)

  • Google技術講演会@東大に行ってきました - nokunoの日記

    id:tsubosakaに教えられて東大へ。Web上での告知は工藤さんのつぶやきだけだったのですが、最後に挙手をしてもらっていたのを見るに、他にも他大学や社会人の方がいらしていたようです。内容的には1/30に行われた大阪での講演と同じもので、詳しいレポートも上がっているのですが、自分の目で見て話を聞くとやっぱり情報量が違うな、ということが分かりました。 の虫: Google日本語入力技術講演会Google Tech Talk in Osaka に出るために梅田まで - 生駒日記以下、適当なメモ。 IMの一般的な紹介 キーバインドとかやたら多いというのは、私もSocial IMEの開発を初めてから知りました‥ 堅牢な設計について 大事なことなので3回言いますといって「IMEはクラッシュしてはならない」と6回言った(笑) 従来法は単一のDLLに実装されていた…? MS-IMEやATOKは別

  • NLTKで日本語コーパスを扱う方法 - nokunoの日記

    オライリーの「入門自然言語処理」の12章はHTML版がWebで公開されています.Python による日語自然言語処理というわけで,NLTKで日語でコーパスを扱う環境を整えました. NLTKのインストール公式サイトを見ながらインストールする.最新版はNLTK2.0で,オライリーの書籍のときと比べてChasen形式のパーザなどが追加されています.Download - Natural Language ToolkitMac OSXの場合はPortでもインストールできるらしいのですが,うまくいかなかったのでパッケージをダウンロードしました. コーパスのダウンロードnltk.download()を実行して必要なコーパスをダウンロードします.$ python>>> import nltk>>> nltk.download()jeitaとknbcをダウンロード NLTKを日語コーパスで使う場合の注

  • 過学習を避けるにはどうすればいいか? - nokunoの日記

    この前のエントリに関連してQuoraで質問したところ、非常に質の高い回答が集まったので翻訳したいと思います。 オーバーフィットについて考える - nokunoの日記How can I avoid overfitting? - Quora 回答1まず自分のデータをランダムに訓練集合とテスト集合に分割します。テスト集合は評価のためだけに使い、訓練に使ってはいけません。もし訓練セットに対する性能が向上しても、テスト集合に対してはそうでない場合は過学習を起こしています。そのためそうなる前に訓練を止める必要があります。 回答2過学習は信号に対するノイズに誤って適応することで引き起こされます。線形回帰の文脈なら、AIC(赤池情報量規準)をチェックして下さい。それは適用するのが非常に簡単なテストです。モデルの推定に最尤推定を用いるなら、BIC(ベイズ情報量規準)が好まれます。それはShwartz基準とも

  • 協調フィルタリングのグラフィカルモデル - nokunoの日記

    協調フィルタリングとはAmazonのお勧めのように「この商品を購入した人はこんな商品も購入しています」という情報を用いて推薦をする手法です。グラフィカルモデルはベイジアンネットワークとも呼ばれ、最近一部で流行している機械学習の手法です。今回は、協調フィルタリングをグラフィカルモデルで表現したらどのようになるだろう、と考えて思いついたアイデアを紹介します。 今、ユーザuとアイテムiの組{u,i}のデータが大量に与えられているとします。例えばソーシャルブックマークならユーザとブックマークしているページの組み合わせ、E-commerseならユーザと購入した商品の組み合わせ、などです。ここではSBMを例に考えるので、はてブと同様にユーザはマイナスの評価を付けることはできないものとします。 このときユーザuに対してお勧めのページを推薦することを考えると、ユーザuがまだブックマークしていないページiに

  • 第9回自然言語処理勉強会@東京を開催しました #TokyoNLP - nokunoの日記

    TokyoNLPも第9回となり,息の長い勉強会になってきました.今回は飛び入りでLT発表枠もできて,アドリブ感あふれる回になったと思います. 第9回自然言語処理勉強会 #TokyoNLP : ATND座席表 by @synbooさん第9回TokyoNLPの座席表 - sekicoco [セキココ] Jubatusの分散レコメンデーション by @unnonounoさんJubatusのリアルタイム分散レコメンデーション View more presentations from Yuya Unno 自己紹介 Jubatusの紹介 Jubatus : Distributed Online Machine Learning Framework — Jubatus 0.2.0-beta documentationJubatus 0.2.0 をリリースしました — Jubatus documentat

    satojkovic
    satojkovic 2012/04/25
    全ての人に機械学習を!
  • サンプルコードがPythonで書かれた自然言語処理・データマイニングの書籍 - nokunoの日記

    サンプルコードがPythonで書かれた自然言語処理・データマイニングの書籍についてまとめました.オライリー社から出版されているものが多いですね.日語だと,以下のが有名です.Amazon.co.jp: 集合知プログラミング: Toby Segaran, 當山 仁健, 鴨澤 眞夫: Amazon.co.jp: 入門 自然言語処理: Steven Bird, Ewan Klein, Edward Loper, 萩原 正人, 中山 敬広, 水野 貴明: Amazon.co.jp: ビューティフルデータ: Toby Segaran, Jeff Hammerbacher, 堀内 孝彦, 真鍋 加奈子, 苅谷 潤, 小俣 仁美, 篠崎 誠: 実は他にもこの手のは洋書で色々と出版されています.Amazon.co.jp: Mining the Social Web: Matthew A. Rus

  • mixi Engineers' Seminar #3 に参加しました #mixi_engineers - nokunoの日記

    mixi Engineers’ Seminar #3 : ATND 機械学習の基礎と評判分析 by 高村大也 自己紹介 東工大のすずかけ台キャンパスにいます! 「すずかけ台には良い教授がたくさんいる」はポジティブと評判分析 著書:Amazon.co.jp: 言語処理のための機械学習入門 (自然言語処理シリーズ): 高村 大也, 奥村 学: 概要 コンテンツを入手→前処理→分類器→出力 前処理:形態素解析→品詞フィルタ,ストップワード削除 「すずかけ台には良い教授がたくさんいる」→すずかけ台 良い 教授 たくさん 分類器 ポジティブかネガティブか ナイーブベイズ分類器 確率的生成モデル 140文字制限は無視 ツイートの長さを決める(単語数) ポジティブかネガティブか決める 単語を選ぶ作業を長さ分だけ繰り返す P(ツイート,ポジ) > P(ツイート,ネガ) ならポジティブ,逆ならネガティブ

  • Google Code Jam Japan 2011 予選 - nokunoの日記

    参加しました.Google Code Jam Japan 2011 カードシャッフルカードそのもののリストを作ると計算量的に厳しいので,カードの範囲のリストを作る.めんどい.しかもカードのカットって最初意味が分からなくてWikipediaで調べてやっと理解した.small/largeともに解けた. #!/usr/bin/env python import sys def search_position(cards, pos): current = 0 for i in xrange(len(cards)): old = current current += cards[i][1] - cards[i][0] + 1 if current >= pos: return i, pos - old - 1 def update_card_list(cards, A, B): # search s

    satojkovic
    satojkovic 2011/10/02
    他の人の考え方、コードを読むのは大変参考になります
  • Evernoteのアーキテクチャ概要 - nokunoの日記

    みなさん、Evernoteは使っていますか? Evernoteは「全てを記憶する」が合言葉のメモアプリで、クラウド上にデータを保存してWin/Mac/iPhone/Webから共通のデータにアクセスしたり同期したりできるのが特徴の便利なサービスです。開発元はシリコンバレーの会社ですが、日人のユーザも非常に多いそうで、Evernoteの使い方についての記事は日語でも星の数ほどありますのでここでは触れません。 今回は、そのEvernoteの裏側のシステム概要を解説する記事が今月開設されたばかりの技術ブログに公開されていましたので、翻訳してみました。Architectural Digest | Evernote Tech Blog はじめにこのブログの手始めとして、Evernoteの構築について大雑把な概要を述べる。ここではそれぞれのコンポーネントの詳細に踏み込むことはしない。それらについての

    satojkovic
    satojkovic 2011/05/29
    AIR = Advanced Imaging and Recognitionか
  • Hadoopを使ってTwitterやFacebook上での「影響力」を数値化するには - nokunoの日記

    Hadoopを使ってTwitterやFacebook上での「影響力」を数値化しているKloutというサービスがあるそうです。大変興味深かったので翻訳してみました。元記事のCloudera社とKout社の許可を頂いて掲載しています(@shiumachiさん、ありがとうございます!) Using Hadoop to Measure Influence | Apache Hadoop for the Enterprise | Cloudera ソーシャルメディア上の影響力測定サービス「Klout」とはKlout | The Standard for InfluenceKloutのゴールは影響力の数値化の分野でのスタンダードになることだ。近年のソーシャルメディアの普及により、多くの測定可能な友達関係に関する情報が手に入るようになってきている。Facebookユーザには、平均して130人の友達がいる

  • C++を鍛え直す - nokunoの日記

    関数全体をtryで囲む int main() try { // 関数内のすべての例外をキャッチできる ... } catch () { ... } 無名名前空間C言語ではグローバル変数にstaticを付けるとファイル内変数になりましたが、C++では無名名前空間を使うことで同じ事を明示的に書くことができます。 namespace { // この中の変数は他のファイルから参照できない int i; } newのバリエーションデフォルトのnew演算子はメモリ確保に失敗するとstd::bad_alloc型の例外を投げるようになっていますが、std::nothrowを使うとNULLを返すようにできます。これは便利! int* p = new(std::nothrow) int; delete p; ※Effective C++によると、nothrow型のnewはメモリ確保に失敗しても例外を投げないも

  • doxygen+graphvizでC++のソースコードを可視化する - nokunoの日記

    オープンソースのソフトウェアはソースコードを読むことができるのが大きな魅力ですが、大規模なプロジェクトでは全体を見通すのに時間がかかってしまいます。そんなとき、C++プロジェクトにはdoxygenとgraphvizを使ってソースコードからドキュメントを自動生成することができます。doxygenは、元々はJavaJavadocを参考にC++のソースコードを解析しているので、継承関係や包含関係などのオブジェクト指向な構造を可視化するのに向いています。来なら専用のフォーマットに従ってコメントを入れておくとドキュメントに含めてくれるのですが、ソースコードリーディングの補助として使う場合には気にしなくて構いません。DoxygenHome | Graphviz - Graph Visualization Software インストール CentOSyumを使うsudo yum install g

  • 論文の探し方 - nokunoの日記

    ふと論文の探し方について書こうと思ったのですが、既にいろいろな方が書かれているのでそちらをまとめます。 自然言語処理 自然言語処理の学会: DO++no titleOverlasting::Life / 2009-11-04自然言語処理のトップカンファレンス - 生駒日記 機械学習 いろんな学会: DO++機械学習/機械学習の論文を探す - とうごろうぃきMeeting - 機械学習の「朱鷺の杜Wiki」 学会名が分かっている場合はそのサイトから、そうでない場合はアーカイブを検索することが多いです。ACL AnthologyACM Digital Library自然言語処理や機械学習の分野については、ひとまず基的な調べ方は分かってきた気がします。ただ、これらの手法を実際に適用しようとするとより効率的な実装が必要となる事が多いので、アルゴリズムやデータ構造、データ圧縮の分野についても論文や

  • 【これはすごい】Twitter検索を3倍高速化した記事の翻訳 - nokunoの日記

    これはすごい! というわけでTwitter検索を3倍高速化したという記事を翻訳してみました。Twitter Engineering: Twitter Search is Now 3x Faster2010年春。Twitterの検索チームは、我々の増え続けるトラフィックに対応し、エンドユーザにとっての遅延を減らし、我々のサービスの可用性を向上させ、新しい検索の機能を素早く開発できるようにするため、検索エンジンを書きなおす作業を始めた。 その努力の一部として、我々は新しいリアルタイム検索をリリースし、検索のバックエンドをMySQLからLuceneのリアルタイム版に変更した。そして先週、我々はRuby-on-Railsに取って代わるフロントエンドをローンチした。我々がBlenderと呼ぶJavaサーバーである。我々はこの変更によって検索のレイテンシが3分の1になり、検索機能の開発を促進できるよう

  • Hadoop Conference Japanに参加しました #hcj2011 - nokunoの日記

    というわけでHadoop Conference Japanに参加しました。Hadoop Conference Japan 2011会場は豊洲のNTTデータ社で、初めて来たのですが駅前の広場が楽天のある品川シーサイドと全く同じでびっくりしました。 『Hadoop on クラウド / Amazon Elastic MapReduceの真価』(Amazon Web Services, Jeff Barr) Introduction AWS: 2002-Twitter: @jeffbarr What is Big Data Doesn't refer just to volume Big Data Tool EMR Overview Hadoop Hosting Framework Launch and monitor job flows: Web, CUI, REST Upload data

  • Quoraを支える技術 - nokunoの日記

    勉強になる記事を見つけたので気になったところを翻訳してみました。Quora’s Technology Examined | Phil Whelan's Blog はじめにQuoraはハイテク起業家の世界を体現しており、問題を見つけるのが難しいほどなめらかなシステムを提供している。この巧妙なシステムは回答者と質問者だけに支えられているわけではなく、よく練られたバックエンドシステムによっても支えられている。それは共同創業者がFacebookで磨きをかけた技術でもある。さほど驚くべきことでもなく、賢い人々は良く考えられたたくさんの賢い道具を使う。NoSQL信者たちはこう言って頭をかかえる:「なぜQuoraはCassandraやMongoDBやCouchDBのようなNoSQLではなく、MySQLをデータストアとして使うのか?」このエントリではQuoraについての技術的な情報をまとめ、考察を行う。彼

  • 「かんたん特許検索」がすごい件 - nokunoの日記

    サポート掲示板で特許関係の書き込みがあり、それは勘違いだったので良いのですが、特許検索システムを探していて凄いヤツを見つけてしまったので、紹介します。 かんたん特許検索 | 無料・簡単操作で特許検索これまでの特許検索は専門家向けの難しいものでした。もっと誰でも気軽に使えるようにしたい!そこで「もっと簡単に」「もっと身近に」をコンセプトに生まれたのが「かんたん特許検索」です。まるでグーグルのようなトップページ。 検索結果。要約もうまく抽出できます。 あるキーワードに関する出願人の出願数ランキングもあります。 出願件数の推移もわかりやすくグラフ化できます。 2年前に未踏で調べたときはこんな便利なものなかったぞ! というわけで日語処理関係をちょっと調べてみました。マイクロソフトのIMEに関する特許(PDF)従来のユニグラムへのバックオフがもたらす品質の低下を防止することができる言語モデルを作成

  • 予測変換APIを公開しました! - nokunoの日記

    Social IMEではWeb APIを公開していますが、昨年11月に公開したかな漢字変換APIに続き、予測変換APIを公開しました。 このAPIを使うと、たとえば次のような予測変換ができます。「はてな」で予測変換はてな はてなブックマーク はてなブック はてなダイアリー (以下略) ローマ字入力の途中での予測を行うと、このように展開されます。「わt」で予測変換私 私は 私の 私も 私が(以下略) また、長文を入力したときのかな漢字変換候補との統合にも対応しています。「きょうのてんきはは」で予測変換今日の天気は晴れ予測変換にはWebから抽出された大規模な統計量(Google提供)が用いられています。APIを活用したクライアントを開発されている方は、ぜひご利用ください。

  • 1