タグ

ブックマーク / tech.preferred.jp (11)

  • ニューラルネットの逆襲 - Preferred Networks Research & Development

    岡野原です。Deep Learningが各分野のコンペティションで優勝し話題になっています。Deep Learningは7、8段と深いニューラルネットを使う学習手法です。すでに、画像認識、音声認識、最も最近では化合物の活性予測で優勝したり、既存データ・セットでの最高精度を達成しています。以下に幾つか例をあげます。 画像認識 LSVRC 2012 [html]  優勝チームスライド [pdf], まとめスライド[pdf] Googleによる巨大なNeuralNetを利用した画像認識(認識として有名)[paper][slide][日語解説] また、各分野のトップカンファレンスでDeep Learningのチュートリアルが行われ、サーベイ論文もいくつか出ました。おそらく来年以降こうした話が増えてくることが考えられます。 ICML 2012 [pdf] ACL 2012 [pdf] CVPR

    ニューラルネットの逆襲 - Preferred Networks Research & Development
  • 任意の学習率の式に対する効率的なL1正則化の計算方法 : Preferred Research

    今回はaveraged FOBOSの導出をしてみたのでその話を書こうかと思ったのですが、導出途中に平均化劣勾配法の場合と大差ないと気付いてしまってテンションが下がってしまいました。というわけで、ちょっとネタを変えて、学習率をいい感じに減衰させながら学習するためにはどうしたらいいのか、ありがちな実装テクニックについて書いてみます。 前提知識 前提知識として最適化問題をどう解くかを知っている必要があります。これについては以前に入門記事を書きましたので適宜ご参照下さい。文字数制限の関係で4回目と5回目のみリンクしておきます。 劣微分を用いた最適化手法について(4) やっとFOBOSが出てくる第4回 劣微分を用いた最適化手法について(完) 感動の最終回 問題提起 最近のオンライン学習において重要なテクニックの1つとして、パラメーター更新の遅延(lazy update)があります。これは、正則化の計

    任意の学習率の式に対する効率的なL1正則化の計算方法 : Preferred Research
  • エラー処理を書いてはいけない - Preferred Networks Research & Development

    昨日セミナーとして USTREAM させていただいた資料を公開いたします。 エラー処理を書いてはいけない USTREAMのビデオ タイトルは釣り気味ですが、内容はいたって真面目なのでご安心ください。 概要 やってはいけないシリーズ、の第三弾としての試みです。 リソース管理をしてはいけない ロック処理を書いてはいけない エラー処理を書いてはいけない ← New! タイトルに反して(あるいはタイトル通りに)、正しく長時間動作するプログラムを書くには きちんとエラー処理を行う必要がありますが、 それを何とか抽象化しようという(Haskell界隈での)試みについてのご紹介でございます。 あまり他の人がこういうことを言っているのを聞いたことが無いので、 自分の日々考えていることを世に問うた形になっております。 実際のところ、社内ではC++がメインに使われておりますので、 こういう手法が用いられている

    エラー処理を書いてはいけない - Preferred Networks Research & Development
    Itisango
    Itisango 2011/12/09
  • 文書解析のための簡潔データ構造 - Preferred Networks Research & Development

    岡野原です。 12/1〜12/2に高松で開催されたALSIP2011で文書解析のための簡潔データ構造の最近の進展について話をしてきました。 ここの業界の進展は速く毎年様々な方法が出てきますが、要点だけを上げると – Wavelet Treeがアルファベットサイズが大きい場合のRank/Select操作だけではなく、2D矩形探索、最頻要素列挙など様々な問題を効率的に解けることが分かってきて非常に重要なデータ構造であることが分かってきた。2D探索も、もはや数億 x数億とかでも解けてしまうので2D探索を利用するような様々な手法が全部現実的になった。 – Top-K Queryが盛り上がっている。検索などデータ構造に問い合わせをする際に、該当する結果を全部を列挙することの高速化は理論的にも難しいが、スコアが高い順(例えばterm frequencyやPageRankなど)にk個だけ列挙するだけなら

    文書解析のための簡潔データ構造 - Preferred Networks Research & Development
    Itisango
    Itisango 2011/12/02
  • 研究・企業・生き方について - 情報科学若手の会2011 - Preferred Networks Research & Development

    岡野原です。 2011/9/17〜2011/9/19に熱海で行われた情報科学若手の会2011に参加し、講演をしてきました。 テーマを決めるに当たって、参加者の年齢、興味分野、スキルの幅が非常に広いということもあり、若手の会参加者のみなさんから質問を前もって聞いておき、それについて回答するという形にしました。 自由に質問を集めたのですが、それらは研究・企業・生き方のテーマにまとめられそうだったので、それらのテーマに沿って講演をしました。 研究 : 自然言語処理、機械学習、それらの今後 企業:起業の話、PreferredInfrastructureの話、 研究をビジネスに適用する際の話 生き方:学生、社会人の心境、アドバイス、 モチベーションの話など 何か一つのメッセージを伝えるというよりは様々な考えや体験談、tipsなどを関係なく並べたものになっています。 皆様にとって何か参考になれば幸いで

    研究・企業・生き方について - 情報科学若手の会2011 - Preferred Networks Research & Development
    Itisango
    Itisango 2011/09/19
  • 専門知識の仕入れ方 - Preferred Networks Research & Development

    今日は,普段どのようにして専門知識を仕入れているかについて書いてみようと思います.特に自分が得意でない分野を知りたいと思った時に,どうするかに注目したいと思います.自分の専門の場合は,いくらでも時間を注ぐことが出来るので,世界中のリソースを全て探し当てて勉強すれば良いのですが,ちょっと興味が有るぐらいではそこまでやる時間は取れません.なので出来るだけ効率的に分かった気になるのが目標です. まず,論文を直接読むのはあまり効率的では無いと思います.論文は広い分野の中の或る問題に対して一つの解決方法を書いているだけで,分野全体を俯瞰することは目指していません.論文だけ読んで分野全体を理解するには,最低50ぐらい読む必要が有ると思います.

    専門知識の仕入れ方 - Preferred Networks Research & Development
    Itisango
    Itisango 2011/09/19
  • 乱択アルゴリズム紹介(Color-Coding) - Preferred Networks Research & Development

    吉田です。今まで数解に渡って乱択アルゴリズムを紹介してきました。そろそろ解析やアイデアがシンプルかつ結果が綺麗な乱択アルゴリズムは尽きてきたかと思っていましたが、もう一つとても素敵な手法が有るのを思い出しましたので解説します。Color Codingと呼ばれる手法です。 \(G = (V, E)\)をグラフ、\(s,t\in V\)を\(G\)中の二頂点、\(k\geq 0\)を整数とします。\((s,v,k)\)パスとは、\(s\)と\(t\)を結ぶパスで内点の個数が丁度\(k\)個のものを指します。但しパスは同じ頂点や枝を二度使ってはいけません。例えば以下の図で赤い線で示されているパスは\((s,t,5)\)パスです。

    乱択アルゴリズム紹介(Color-Coding) - Preferred Networks Research & Development
  • STL風に使えるマップ型コンテナの紹介と性能比較 - Preferred Networks Research & Development

    最近スマートフォンに乗り換えました。徳永です。 C++は世に数あるプログラミング言語の中では比較的メモリをわない方ですが、それでもメモリ使用量が問題となる場合はあります。そのような場合の対処方法はいくつか有りますが、手軽に選択できる方法として、今日はSTLのmapやunordered_mapと同じ感じで使えるデータ構造をいくつか紹介したい思います。 以下、計算量の表記をする際には、要素数をnとします。 Loki::AssocVector LokiはModern C++ Designというの作者であるAndrei Alexandrescuが開発したライブラリです。AssocVectorはその中の一つとして提供されているクラスで、vector<pair<key, value> >という型のベクターをkeyでソートした状態で持つ事により、二分探索による要素の探索を可能にしたデータ構造です。こ

    Itisango
    Itisango 2011/07/20
    STL風に使えるマップ型コンテナの紹介と性能比較
  • ソフトな推論Markov Logic Networkの紹介 - Preferred Networks Research & Development

    予約したもののインフォバーを手に入れられない海野です. 人間の高度な知的処理の一つが、推論処理です.今日はその推論を、述語論理と機械学習の組み合わせで模倣したMarkov Logic Networkという手法と、そのOSS実装であるAlchemyの紹介です. 鳥とはなんですか?という質問に対してどう答えるでしょうか.大雑把には、以下のように考えるでしょう. 鳥とは、空を飛ぶ動物です. この回答に対して、「ペンギンは飛ばないよ」と反論する人がいるかも知れません. 鳥とは、くちばしを持った動物です. すると、「カモノハシは鳥じゃないよ」と言われるでしょう.人間は初めて見た生き物が鳥かそうじゃないか判断するとき、どうしているのでしょうか.思うに、少数の規則(飛ぶかどうか.くちばしをもつか)から総合的に判断しているように思われます.人間の推論というのは概ね以下のような特徴を持っているのではないかと

    ソフトな推論Markov Logic Networkの紹介 - Preferred Networks Research & Development
  • dag_vector: ランダムアクセス可能な圧縮配列 - Preferred Networks Research & Development

    こんにちは、この夏はシルキードライで乗り切りたい岡野原です。 今日は最近公開したC++のオープンソースであるdag vectorについて紹介します。 github: dag_vector ライセンスは修正BSDライセンスです。 dag vector (direct accessible gamma code vector) は値を圧縮して格納したまま任意の場所の値を高速に参照可能な配列ライブラリです。しかもデータ末尾への追記が可能です。 dag vectorはstd::vectorのように利用できます。下にいくつか例を見ていきましょう。 dag_vectorの例 #include "dag_vector.hpp" // dag_vectorは0以上の正整数の配列を扱う配列。 dag_vector dv; // 値はいつでも追加可能。追加された値は圧縮して格納される // 正整数xは2lg(

    dag_vector: ランダムアクセス可能な圧縮配列 - Preferred Networks Research & Development
  • Googleの並列ログ解析向け言語「Sawzall」が公開されたので使ってみた | Preferred Research Blog

    Rapidly Realizing Practical Applications of Cutting-edge Technologies

    Googleの並列ログ解析向け言語「Sawzall」が公開されたので使ってみた | Preferred Research Blog
  • 1