実装力を磨くためと学習器への理解を深めるために、パーセプトロンを実装してみた。3時間ぐらいかかった。今のレベルはSVMの赤本に行く前ぐらいのレベル。 コードは以下にある。以下で参考にしたチュートリアルの擬似コードをそのまま実装した。 https://github.com/akkikiki/nlp_tutorial/blob/master/train_perceptron.py 以下のチュートリアルを参考にした。詳しい事はこちらに書いてあるが、概要を述べてみる。 パーセプトロンアルゴリズムと文書分類 ちなみに、自分は昨年の春ぐらいにPRML4章(パーセプトロン含む)を輪読会で発表したのだが、完全に忘れていたうえ、読んだ時も機械学習の全体像(識別関数、生成モデル、識別モデルから成る)が掴めていなかったので、いきなりPRMLを読むのはオススメしない。 今PRML4.1.7節を見たら「すごい、わか
2. 目次 • Deep Learning とは" – 機械学習について" – 従来の NN とのちがい" – Deep Learning のブレイクスルー" • dA (Denoising Autoencoders) をうごかす" – 数理モデルの解説" – Python で実装する前準備" – コードレビュー" – 実行結果" • RBM (Restricted Boltzmann Machines) をうごかす" – 数理モデルの解説" – 実行結果" • まとめ 4. Deep Learning とは • 入力信号からより抽象的な概念を学ぶ・特徴を抽出する 機械学習の手法の集合です " “ニューラルネットとどう違うの?”! • ニューラルネットを多層にしたんです " “従来のニューラルネットワークと何が違うの?”! • ひとつひとつのレイヤー間でパラ
250. Reference "Pattern Recognition and Machine Learning" Christopher M. Bishop Springer; 1st ed. 2006. Corr. 2nd printing edition (October 1, 2007) "Truth and Probability" Frank Plumpton Ramsey (1926) "The physical basis of IMRT and inverse planning" S Webb British Journal of Radiology (2003) 76, 678-689 251. Wikipedia 渡辺慧 http://ja.wikipedia.org/wiki/%E6%B8%A1%E8%BE%BA%E6%85 %A7 『No Free Lunch T
はじめに Python は、機械学習の分野で広く使用されるスクリプト言語です。SciPy や matplotlib といった、科学計算に特化したライブラリが多数提供されているのが特徴です。 いっぽう、弱点もあります。for ループの速度が遅いこと、並列処理が苦手なことなどです。これらの目的には、C 言語が適しています。 そこで、本記事では、Python と C の相互連携を可能にする boost-python ライブラリを使用して、大規模科学計算を効率的に解く方法を紹介します。題材には混合ガウス分布を使用します。 動作テストは、Fedora 環境で行なっています。Ubuntu でも動くと思います。 準備 はじめに、SciPy、matplotlib、boost ライブラリをインストールしてください。 boost-devel とか色々インストールした記憶がありますが、忘れました… Hello,
Andrew Ngの講義で面白いスライドがあったので紹介.研究ではなく様々なアプリケーションへ機械学習を適用するときに実践すべきTipsが3つのトピックに関して語られています.以下は,スライド内で自分が覚えておくべきと思った部分を抽出し,メモ書きしたもの.実サービスやKDD Cup等のコンテストで機械学習を用いる度に,見返してみるのも良いかもしれません. スライド http://see.stanford.edu/materials/aimlcs229/ML-advice.pdf トピック1.Debugging Learning Algorithms 適当な分類器を学習させ,スパムフィルタリングでエラー率20%を達成したら次に何をすべきか? 訓練データを増やしたり,より良い分類器を適用したり,色々な改善策が考えられる… 診断法1 : バイアス-バリアンス分析 現在の分類器のボトルネックはバイ
Twitter でグラフ理論に関する話題が上がっていたので、最近調べている距離学習(distance metric learning)について少しまとめてみる。カーネルとか距離(類似度)とかを学習するという話(カーネルというのは2点間の近さを測る関数だと思ってもらえれば)。 この分野では Liu Yang によるA comprehensive survey on distance metric learning (2005) が包括的なサーベイ論文として有名なようだが、それのアップデート(かつ簡略)版として同じ著者によるAn overview of distance metric learning (2007) が出ているので、それをさらに簡略化してお届けする(元論文自体本文は3ページしかないし、引用文献のあとに表が2ページあって、それぞれ相違点と共通点がまとまっているので、これを見ると非
自然言語処理のときに使う機械学習手法のテクニックをざーっと2時間程度で紹介してほしいとのことだったので今日話してきました。基本的に、そんなに頑張らなくても効果が大きいものを中心に説明(特にパーセプトロンとか)を説明してます。 紹介した手法はパーセプトロン、最大エントロピー、正則化、多クラス分類、系列分類(CRF, Structured Perceptron)などなどです。どれも一かじりする感じで網羅的に見る方を優先してます。個々の詳しい話はそれぞれの文献や実装などを当たってみてください。 スライド [ppt] [pdf] ここで話しているのは線形識別モデルの教師有り学習が中心で教師無し学習(クラスタリングなど)など他の自然言語処理を支える技術は省いてます。 こういうのを使って(使わなくてもいいけど)どんどんアプリケーション作らないといかんね。 Tarot is not used to ma
新はてブ正式リリース記念ということで。もうリリースから何週間も経っちゃったけど。 新はてなブックマークではブックマークエントリをカテゴリへと自動で分類しているが、このカテゴリ分類に使われているアルゴリズムはComplement Naive Bayesらしい。今日はこのアルゴリズムについて紹介してみる。 Complement Naive Bayesは2003年のICMLでJ. Rennieらが提案した手法である。ICMLというのは、機械学習に関する(たぶん)最難関の学会で、採択率はここ数年は30%を切っている。2003は119/371で、32.1%の採択率だったようだ。 Complement Naive Bayesの位置づけは 実装が簡単 学習時間が短い 性能もそこそこよい という感じで、2003年段階にあっても、絶対的な性能ではSVMに負けていた。しかし、学習が早いというのは実アプリケーシ
統計的機械学習入門(under construction) 機械学習の歴史ppt pdf 歴史以前 人工知能の時代 実用化の時代 導入ppt pdf 情報の変換過程のモデル化 ベイズ統計の意義 識別モデルと生成モデル 次元の呪い 損失関数, bias, variance, noise データの性質 数学のおさらいppt pdf 線形代数学で役立つ公式 確率分布 情報理論の諸概念 (KL-divergenceなど) 線形回帰と識別ppt pdf 線形回帰 正規方程式 正規化項の導入 線形識別 パーセプトロン カーネル法ppt pdf 線形識別の一般化 カーネルの構築法 最大マージン分類器 ソフトマージンの分類器 SVMによる回帰モデル SVM実装上の工夫 クラスタリングppt pdf 距離の定義 階層型クラスタリング K-means モデル推定ppt pdf 潜在変数のあるモデル EMアル
LDA とは "Latent Dirichlet Allocation"。文書中の単語の「トピック」を確率的に求める言語モデル。 「潜在的ディリクレ配分法」と訳されていることもあるが、その名前だと「それってなんだっけ?」という人のほうが多そうw。 各単語が「隠れトピック」(話題、カテゴリー)から生成されている、と想定して、そのトピックを文書集合から教師無しで推定することができる。特徴は、果物の apple と音楽の apple とコンピュータ関連の apple を区別することが出来る(ことが期待される)という点。そのために、どのトピックを生成しやすいかという分布を各文章も持つ。細かい話は略。 結果の見方としては、定量的にはパープレキシティを見るし(一般に小さいほどいい)、定性的には各トピックがどのような単語を生成するか、その確率上位のものを見てふむふむする。この「各トピックが生成する単語」
前回に引き続き、井上が書かせていただきます。 GREE Studio 2010 5日目の講義内容はデータマイニングエンジニア、moritaさんによる「データマイニング」。業務のログ解析において用いられるデータマイニングの内容です。前回はレポート形式でしたが、今回はもう少しエンジニアリングブログに近い形で書こうと思って頑張りました。宜しくお願いします。今回のブログの内容は、 データマイニングの基礎知識 大規模データへの挑戦 になります。後で定義しますが、ここでの「データマイニング」とはデータを取得し、集計する作業も含めてこの言葉を指すことにしています。また、解析者とはデータマイニングを行う人のことを指します。(GREEではデータマイニングエンジニアと呼ばれています。)moritaさんの講義で学んだことを自分なりに膨らましてみました。色々誤りがあると思いますが、そういった部分は(優しく)指摘し
1.2.5 曲線フィッティング再訪 1.2.6 ベイズ曲線フィッティング のところを実装してみます。前回は、最小二乗法で曲線フィッティングをしたけど、ベイズ的な方法で解こうって話のようです。この2つの節では、 最尤推定 最大事後確率(MAP)推定 ベイズ推定 という3つのパラメータ推定方法が曲線フィッティングという具体例で説明されてます。他の教科書では抽象的に定式化されていて違いがよくわからなかったけど、この章では曲線フィッティングという具体例に基づいて説明されているのでわかりやすいと感じました。 最尤推定 まず、最尤推定のプログラムです。実は、最尤推定で対数尤度(1.62)を最大化することは、最小二乗法の二乗和誤差関数E(w)の最小化と等価なのでwの求め方は最小二乗法(2010/3/27)とまったく同じです。 最尤推定では、目標値tの予測分布を求めるためもう1個予測分布の精度パラメータ(
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く