タグ

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

  • DNN推論用ライブラリ「Menoh」リリースについて - Preferred Networks Research & Development

    Python以外も使いたくないですか?  特にDeepLearning界隈で. Menoh開発者の岡田です.この記事ではMenohの紹介と開発に至った動機について説明します. Menohのレポジトリ: https://github.com/pfnet-research/menoh Menoh(メノウ)は学習済みのDNNモデルをONNX形式から読み込んで動作させる推論専用のライブラリです.実装はC++で書きましたが,C言語のインターフェースを持たせて,他の言語用からもその機能を呼び出しやすくしてあります.リリース時点でC++版ラッパーとC#版ラッパー,Haskell版ラッパーがあり,Ruby版ラッパーとNodeJS版ラッパー,Java(JVM)版ラッパーが開発中です.バックエンドにはIntelの開発しているMKL-DNNを採用し,GPUが無くてもIntel CPUが使える環境で高速にモデルの

    DNN推論用ライブラリ「Menoh」リリースについて - Preferred Networks Research & Development
    rti7743
    rti7743 2018/06/21
    最近PHP拡張を誰も作らないから悲しい
  • 「コンピューターサイエンスのすべての分野に精通していること」という応募資格に込めた想い | Preferred Research

    ※PFNの募集要項は、ブログの内容をふまえ、適切に意図が伝わるよう一部更新しました PFN代表の西川です。 今回は、SNS上でもたびたび話題(炎上?)になっているPFNの応募資格について、改めてご紹介したいと思います。 PFNの採用募集ページに書かれたリサーチャーの条件には、「コンピュータサイエンスのすべての分野に精通していること」という一文があります。この条件は、PFIの時から、リサーチャーの応募資格として常に掲げてきました。 その背景にある想いは、コンピュータサイエンスの研究をする上では、一つの分野だけでなく、幅広い分野について深い知見を有することが極めて重要である、ということです。たとえば、データベースの研究をする上では、トランザクション処理の理論や関係代数について詳しく知っているだけではなく、データベースを動かすコンピュータアーキテクチャ、ストレージ、また、今では分散データベース

    「コンピューターサイエンスのすべての分野に精通していること」という応募資格に込めた想い | Preferred Research
    rti7743
    rti7743 2018/02/28
    PFNのリサーチャーの募集要件なんだからまあ当然だろう。
  • 分散深層強化学習でロボット制御 - Preferred Networks Research & Development

    新入社員の松元です。はじめまして。 “分散深層強化学習”の技術デモを作成し、公開いたしました。ロボットカーが0から動作を学習していきます! まずはこの動画を御覧ください。 以下で、動画の見どころと、使っている技術を紹介します。 動画の見どころ Car 0(○の付いている車)が右折カーブの手前で減速する様子(右画面の白いバーのところが、ブレーキのところで赤くなっている。ニューラルネットはブレーキが最も多く報酬が得られると推測していることがわかる)。速い速度ほど報酬は大きいが、カーブを曲がりきれず壁にぶつかってしまうので学習が進むとカーブ手前でのみ減速するようになる。 目の前に車がいるときは一時停止して、いなくなってから加速する。 エチオピアには当にこのような交差点があるらしい。 ぎりぎりですれ違う2台。学習途中ではすれ違いきれずにぶつかって倒れてしまうこともある(早送りシーン中に人が写って

    分散深層強化学習でロボット制御 - Preferred Networks Research & Development
    rti7743
    rti7743 2015/06/10
  • ニューラルネットの逆襲 - 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
  • 高速な安定ソートアルゴリズム "TimSort" の解説 - Preferred Networks Research & Development

    先日、TimSortというソートアルゴリズムが話題になりました。TimSortは、高速な安定ソートで、Python(>=2.3)やJava SE 7、およびAndroidでの標準ソートアルゴリズムとして採用されているそうです。 C++のstd::sort()よりも高速であるというベンチマーク結果1が話題になり(後にベンチマークの誤りと判明)、私もそれで存在を知りました。実際のところ、ランダムなデータに対してはクイックソート(IntroSort)ほど速くないようですが、ソートというシンプルなタスクのアルゴリズムが今もなお改良され続けていて、なおかつ人々の関心を引くというのは興味深いものです。 しかしながら、オリジナルのTimSortのコードは若干複雑で、実際のところどういうアルゴリズムなのかわかりづらいところがあると思います。そこで今回はTimSortのアルゴリズムをできるだけわかりやすく解

    高速な安定ソートアルゴリズム "TimSort" の解説 - Preferred Networks Research & Development
    rti7743
    rti7743 2011/10/27
    めも
  • モダン並列・並行プログラミング ~ Concurrent Revisions による実装と現実 ~ - Preferred Networks Research & Development

    日社内向けのTechTalkにて、並列・並行プログラミングに関する話を行いました。 昨今、プログラムの並列化はなくてはならないものとなっています。しかし、そのプログラミング環境は依然としてロックを用いたものが主流です。今回の発表の主張を端的に申し上げますと、 “Locks must go!” ということになります。並列プログラミングに銀の弾丸はありません。しかし、ロックは別の何らかの安全性を確保したプログラミングモデルで置き換えられなければいけません。そうでなければ、再現しにくいバグに苦しめられ、終電を逃す日々と決別することはできないでしょう。また、ロックによるプログラミングの抱える質的問題にも言及しています。 この界隈の最新の動向として、去年OOPSLA’10にて発表されたConcurrent Revisionsについての解説も行なっております。また、弊社研究開発において、先日Con

    モダン並列・並行プログラミング ~ Concurrent Revisions による実装と現実 ~ - Preferred Networks Research & Development
    rti7743
    rti7743 2011/10/21
    めも
  • 専門知識の仕入れ方 - Preferred Networks Research & Development

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

    専門知識の仕入れ方 - Preferred Networks Research & Development
    rti7743
    rti7743 2011/09/19
    英語さんが立ちはだかる。
  • twitterで自然言語処理 - Preferred Networks Research & Development

    勢い余ってスイカを買ったら、毎日べるハメになってしまいました。海野です。 どんな業界もそうだと思いますが、世の中の流行りものの論文が増えるという面が自然言語処理界隈にもあります。Web、blog、と来て、最近のトレンドはやはりtwitterに代表されるmicro blogでしょうか。今年の言語処理学会の年次大会でtwitterセッションは大盛況でしたが、国際会議でもtwitterを題材として発表が増えています。 数えてみたら、重要国際会議であるACLで6件、EMNLPでも3件、twitterをタイトルに含む発表が今年ありました。ちなみに2010年の会議では1件もありませんでした。そんなわけで、私も今日はそんな流行りに乗っかって、twitter言語処理関連の論文を3つ紹介します。 Cooooooooooooooollllllllllllll!!!!!!!!!!!!!! UsingWord

    twitterで自然言語処理 - Preferred Networks Research & Development
  • MapReduce以外の分散処理基盤BSP, Piccolo, Sparkの紹介 - Preferred Networks Research & Development

    どうも,実は今年から開発チームにjoinしていた中川です.可愛い犬の写真がなかったので,可愛いマスコットの画像を貼っておきます. 最近MapReduceとかその実装であるHadoopとかをよく聞くようになりました.これはつまり,それだけ大量のデータをなんとか処理したいという要望があるからだと思います.しかし当たり前ですが,MapReduceは銀の弾丸ではありません. ということで,最近気になっているMapReduceとは違ったアプローチを取っている分散処理基盤について,社内のTechTalkで話した内容を簡単にまとめて紹介したいと思います. Bulk Sychronous Parallel このアルゴリズム自体は1990年に誕生したものです.長いのでBSPと書きます.さて,グラフから最短経路を求める時,MapReduceは使えるでしょうか?このような論文が出るくらいですから出来ないことはあ

    MapReduce以外の分散処理基盤BSP, Piccolo, Sparkの紹介 - Preferred Networks Research & Development
  • MinHashによる高速な類似検索 - Preferred Networks Research & Development

    年が明けてもう一ヶ月経ちましたね.岡野原です. 今日はMinHashと呼ばれる手法を紹介します.これは特徴ベクトルの高速な類似検索に利用することができます(クローラーの文脈だとShingleとして知られている). 今や世の中のあらゆる種類のデータが,高次元のバイナリベクトルからなる特徴ベクトルで表されて処理されるようになってきました.例えば文書データであれば文書中に出現する単語やキーワードの出現情報を並べた単語空間ベクトル(Bag of Words)で表し,画像データも,SIFTをはじめとした局所特徴量を並べた特徴ベクトル(とそれをSkecth化したもの)として表せます.行動情報や時系列データも特徴量をうまく抽出する.グラフデータもFast subtree kernels[1]と呼ばれる方法で非常に効率的に特徴ベクトルに変換することができ,グラフの特徴をよく捉えることができるのが最近わかっ

    MinHashによる高速な類似検索 - Preferred Networks Research & Development
  • wat-array : wavelet木を利用した高速配列処理ライブラリ - Preferred Networks Research & Development

    こんにちは岡野原です。もう年末になりましたが、私の今年はこれからです。 wat-arrayというC++ライブラリを公開しました。 google code:wat-array wat-arrayはフリーソフトウェアであり、修正BSDライセンスに基づいて利用できます. wat-arrayはwavelet木と呼ばれるデータ構造を利用することにより、配列上の様々な処理を効率的に行うことができるC++ライブラリです。 例えば、 – 任意の連続した範囲内にある最大値 /最小値 / k番目に大きい値, またそれらの出現位置、頻度 – 任意の連続した範囲内にある指定した文字cの出現回数、c未満/より大きい文字の出現回数 – 任意の文字のi番目の出現位置 といったものを求めることが全て範囲長、入力長に対して定数時間で行うことができます。 例えば長さ10億、値の範囲が0から1000万であるような配列A中のA[

    wat-array : wavelet木を利用した高速配列処理ライブラリ - Preferred Networks Research & Development
  • 1