今、python界でPyBrainが熱い!…わけじゃないですけど、個人的にけっこう注目しているライブラリ。機械学習ライブラリにおける、期待の新人が出てきなような気持ちです。 0.PyBrainとは?PyBrainっていうのはPythonによって動く、モジュール式の機械学習ライブラリです。python界ではいままでにもニューラルネットワークとかSVMなどを扱うライブラリが存在していましたが、PyBrainではそれらをより包括的に扱う、一種の環境としての機械学習ライブラリを目指しているようです。 PyBrainが優れているのはその思想もさることながら、扱っているアルゴリズムの多さにもあります。例えばFeaturesの欄を見てみると、 BackpropRpropPolicy GradientsSupport Vector MachinesEvolution StrategiesCMA-ESCom
タイトルの論文はCommunication of the ACM, 2012のレビュー記事 ドラフトバージョンは下のリンクから読める。 http://homes.cs.washington.edu/~pedrod/papers/cacm12.pdf 割と面白かったのでいくつか内容を紹介 概要 機械学習システムはデータから自動でタスク(スパムフィルタ、レコメンドなど)をどうやって実行するかを見出すことができます。 しかしながら機械学習システムを成功させるには教科書を読んだだけではなかなか見つけづらいお約束事とかがあって、思うようには行かないことが多い。 本文献では機械学習の研究者および実務に携わる人間が知っておくべきである事柄を12個に要約しています。 一般化が重要 機械学習のゴールは訓練データにはないデータに対しても一般化して推定ができるという点になります。単に訓練データのみ分類できればよ
Deep Learning Tutorials¶ Deep Learning is a new area of Machine Learning research, which has been introduced with the objective of moving Machine Learning closer to one of its original goals: Artificial Intelligence. See these course notes for a brief introduction to Machine Learning for AI and an introduction to Deep Learning algorithms. Deep Learning is about learning multiple levels of represen
はじめに Python は、機械学習の分野で広く使用されるスクリプト言語です。SciPy や matplotlib といった、科学計算に特化したライブラリが多数提供されているのが特徴です。 いっぽう、弱点もあります。for ループの速度が遅いこと、並列処理が苦手なことなどです。これらの目的には、C 言語が適しています。 そこで、本記事では、Python と C の相互連携を可能にする boost-python ライブラリを使用して、大規模科学計算を効率的に解く方法を紹介します。題材には混合ガウス分布を使用します。 動作テストは、Fedora 環境で行なっています。Ubuntu でも動くと思います。 準備 はじめに、SciPy、matplotlib、boost ライブラリをインストールしてください。 boost-devel とか色々インストールした記憶がありますが、忘れました… Hello,
隠れマルコフモデルで社内掲示板の1万個弱の書き込みを学習させてみた。 まず初期値について。遷移確率はおおよそ対角行列。それだけだと差別化できないし、確率が0だと遷移が置きなくて面白く無いので対角成分を11、対角線の一つ上を2、それ以外1として確率として正しくなるように正規化した。出力確率はランダム。ただし今回、文末の構造に注目したいので最後の状態だけ句点「。」の出力確率を2倍にした。 図の見方は、一番左が遷移確率の行列の値の大きさを黒四角の大きさで表現したもの。最大値と最小値で正規化しているので黒四角が見えないところは確率0ってわけではなく、小さな値だという意味。中央はその表示を2倍に拡大したもの。小さい確率値がどうしても見づらいのでね。赤く塗ってあるのは2倍にした結果1を超えたことを意味している。一番右はなんとなく黒→赤→緑→白のスケールになっている。まあ最初に作ったのがこれだったんだけ
機械学習の3大有名手法といえばSVM、CRF、LDAではないだろうか(と勝手に思っている)。 SVM(Support Vector Machine)については以前記事を書いたので今回はCRF(Conditional Random Fields)について書いてみたい。 機械学習超入門IV 〜SVM(サポートベクターマシン)だって30分で作れちゃう☆〜 - EchizenBlog-Zwei といっても今回はさくっと読んでもらうのを目的にしているので手法の具体的な解説は行わない。具体的な部分は@uchumik氏の資料がとても詳しい。 uchiumi log: 間違ってるかもしれないCRFの説明 また、実装方法については高村本(言語処理のための機械学習入門)がとても詳しい。 さて、具体的な解説をしないなら何をするの?ということだが、今回はそもそもCRFとは何かという話をする。過去の経験上この、そも
社内で「機械学習とパターン認識」(PRML) の読書会をやっているのだけど、計算がやっぱり難しいようでみんな苦戦中。 そんなこんなで、光成さん(@herumi さん)が PRML の数式を手抜き無しで解説するアンチョコ(虎の巻 / PRML教科書ガイド)をマメに作ってくれている。*1 PRML のための数学(PDF) 内容は PRML の2章から4章と、9章、PRMLでもっとも計算が難しいと評判の10章を対象としている。 たとえば2章のアンチョコでは、2章の中で必要とされる解析や線形代数の道具(積分の変数変換、行列の各種操作)を一通り取り上げた後、ガウス分布の最尤推定における平均や分散による偏微分という、おそらく多くの人がつまづくのだろう計算がきちんと説明されている。 また3章のアンチョコでは、Woodbury の公式やヘッセ行列を解説しつつ、エビデンス関数などを導出しているし、4章になる
最近,通勤時間にはStanford大学のMachine Learningの講義ビデオを見て勉強していますが,教師あり学習において特徴選択を行なう方法が興味深かったのでメモしておきます.Stanford School of Engineering - Stanford Engineering Everywhere (動画はiTunes Uからダウンロードできます) 全探索 全ての特徴量の組合せを全探索する. (全特徴数,選択特徴数)の組合せになるため,計算量が非常に大きく現実には不可能 Forward Search 特徴量が1つもない状態から初めて,まだ追加していない特徴量の中から最も有効な特徴量を追加する ある特徴量が有効かどうかは交差検定などを用いて決定する Backward Search 全ての特徴量を含む状態から初めて,最も不必要な特徴量を削除していく ある特徴量が不必要かどうかは交
モバイルゲーム 物凄い勢いで勃興したモバイルゲーム業界は、いろいろな課題や問題に直面しながらも巨大化し、今日の時点でのスマートフォン向けゲームの市場へと継承されていきます。 モバイルゲームの歴史 2001 Javaアプリと3Dゲームの登場 Javaが利用できるようになったことにより、ダウンロード型のゲームが供給できるようになりました。 2002 携帯電話端末の大容量化・3D化競争 Java搭載携帯電話端末が登場してからごく僅か1年の間に、アプリのサイズに関しては10倍に広大化し、表現方法も2Dから3Dにシフトし始めました。J-PHONEは『ゼビウス』や『スペースハリアー』などといった昔のアーケードゲームを、ドコモはSIMCITYなどパソコンで世界的規模のヒットを飛ばしたゲームを主力商品としていました。 2003 モバイルゲームの一般化 メモリの制限が厳しいJava仮想マシン上ではなく、OS
パターン認識と機械学習 - ベイズ理論による統計的予測† This is a support page for the Japanese edition of "Pattern Recognition and Machine Learning" authored by C. M. Bishop. 本書は,Christopher M. Bishop 著「Pattern Recognition and Machine Learning」の日本語版です.上下2巻の構成です. パターン認識や機械学習の各種のアルゴリズムや背後の考えについて,ベイズ理論の観点から解説した教科書です. 基礎的な線形モデルから,カーネルトリック,グラフィカルモデル,MCMCなどの発展的な話題までをバランス良く収録しています. 数式による形式的な記述だけにとどまらず,豊富なカラーの図による直観的な説明もなされています. 本
機械学習の分野で有名な学会にNIPS(Neural Information Processing System)があります。名前のとおりもとはニューラルネットワークの学会ですが、最近はやや脳科学から離れているとか。NIPS : NIPSそのNIPSの論文を読む会「NIPS2010読む会」がT-PRIMALの方々によって開催されたようです。平日だったので私はいかなかったのですが、スライドが公開されているので読んでみようと思います。【T-PRIMAL公開勉強会】NIPS2010読む会 個人的には岡野原さんのスライドが興味深かったです。LCCC2010:Learning on Cores, Clusters and Cloudsの解説併設された並列処理に関するワークショップから論文を紹介していて、非常に実用的です。 LCCC - NIPS 2010 Workshop on Learning on
最近SVM(Support Vector Machine)周りの復習をしているので有名どころのツールと、それに関連する論文をまとめた。完全に個人用メモなので抜けがあるかも。あくまで参考程度に。 ツールは色々あるけれど使うのが目的なら定番のsvmlightやlibsvmがいい気がする。最近だとliblinearが流行っている。SVMといえばカーネル関数とマージン最大化だけれど、最近ではカーネルは線形でいいやという流れになってきている?個人的にはpegasosがわかり易い線形カーネル+オンライン学習になっていて自分で作って遊ぶには良いと思っている。またsvmsgdは"straightforward stochastic gradient descent"と言っているものの非常に高性能で、それを実現するための様々な工夫が施されていて実装を学ぶ上で大変参考になる。ここには挙げていないけれど、線形カ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く