タグ

ブックマーク / aidiary.hatenablog.com (6)

  • 線形予測分析(LPC) - 人工知能に関する断創録

    Pythonで音声信号処理(2011/05/14)の第20回目。 以前、ケプストラム分析(2012/12/21)のところで声道の特性を意味するスペクトル包絡を求めた。今回は、線形予測分析(Linear Predictive Coding)という別の手法でスペクトル包絡を求めてみた。この方法で求めたスペクトル包絡は、LPCスペクトル包絡(LPC Spectral Envelope)と呼ばれるとのこと。 線形予測分析 以下の説明は、 Linear Prediction and Levinson-Durbin Algorithm (PDF) の資料を参考にしました。ここでは、詳しい導出は省いて、プログラミングできる結果だけをまとめています。 線形予測分析では、過去の信号から未来の信号を以下の式で予測する。 この式は、時刻nの信号の予測値は、過去k個の信号値に重み係数 a_i で重み付けして足し合

    線形予測分析(LPC) - 人工知能に関する断創録
    yanbe
    yanbe 2017/10/09
  • ケプストラム分析 - 人工知能に関する断創録

    Pythonで音声信号処理(2011/05/14)の第18回目。 今回は、音声の特徴量としてよく使われるMFCC(Mel-Frequency Cepstrum Coefficients: メル周波数ケプストラム係数)抽出に向けた第一歩としてケプストラム分析を試しました。Wikipediaでケプストラムの定義を見てみると。 ケプストラムは1963年、Bogertらの論文で定義された。ケプストラムの定義は以下の通り。 口語的定義: (信号の)ケプストラムとは、(信号の)フーリエ変換の対数(位相アンラッピングを施したもの)をフーリエ変換したものである。スペクトルのスペクトルとも呼ばれる。 数学的定義: 信号のケプストラムは FT(log(|FT(信号)|)+j2πm) である。ここで m は、複素対数関数の虚数成分または角度の位相アンラッピングを正しく行うのに必要とされる整数である。 アルゴリズ

    ケプストラム分析 - 人工知能に関する断創録
    yanbe
    yanbe 2017/10/03
  • メル周波数ケプストラム係数(MFCC) - 人工知能に関する断創録

    Pythonで音声信号処理(2011/05/14)の第19回目。 今回は、音声認識の特徴量としてよく見かけるメル周波数ケプストラム係数(Mel-Frequency Cepstrum Coefficients)を求めてみました。いわゆるMFCCです。 MFCCはケプストラム(2012/2/11)と同じく声道特性を表す特徴量です。ケプストラムとMFCCの違いはMFCCが人間の音声知覚の特徴を考慮していることです。メルという言葉がそれを表しています。 MFCCの抽出手順をまとめると プリエンファシスフィルタで波形の高域成分を強調する 窓関数をかけた後にFFTして振幅スペクトルを求める 振幅スペクトルにメルフィルタバンクをかけて圧縮する 上記の圧縮した数値列を信号とみなして離散コサイン変換する 得られたケプストラムの低次成分がMFCC となります。私が参考にしたコードは振幅スペクトルを使ってたけど

    メル周波数ケプストラム係数(MFCC) - 人工知能に関する断創録
    yanbe
    yanbe 2017/08/27
  • 人工知能を実現する学習アルゴリズムに必要な能力 - 人工知能に関する断創録

    今年は、Deep Learningを研究する予定(2014/1/4)だったのだけれど、多層パーセプトロンまで到達した(2014/2/5)ところで少々(?)足踏みしている。Deep Learningの構成要素であるボルツマンマシンを理解するのに手間取っているためだ。ボルツマンマシンの理解には、マルコフ確率場やMCMCの理解が必要なことがわかったので少し廻り道してモンテカルロ法を先に勉強(2014/6/20)していたというわけ。 ただ、そればかりでは少々退屈になってきたので少し先回りして Deep Learning の先駆者のBengioさんが書いた論文 Learning Deep Architectures for AI を勉強している。示唆に富む見解が多いのであとで振り返られるように記録しておきたい。 まずは、1.1節のDesiderate for Learning AIの部分。人工知能

    人工知能を実現する学習アルゴリズムに必要な能力 - 人工知能に関する断創録
  • ライフゲームの世界 - 人工知能に関する断創録

    ニコニコ動画の複雑系コミュニティの発起人のはむくんがライフゲームの世界というとても面白い動画を投稿されています。Twitterでは何度かツイートしてたけど完結したのでブログでも紹介させていただきます。 ライフゲームの世界1 John Horton Conwayが提案したライフゲーム(Conway's Game of Life)の基的なルールを解説しています。また頻繁に現れる4種の物体(ブロック、蜂の巣、ブリンカー、グライダー)を紹介しています。最後の作品紹介は、P416 60P5H2V0 gunというすさまじいパターンが出てきます。グライダー銃から発射したグライダーたちが滑走路を通ります。グライダーの集合先では、発射された複数のグライダーが合体して宇宙船が組み立てられます。 ライフゲームの世界2 いろんな振動子(パルサー、タンブラー、銀河)が鑑賞できます。作品紹介では大量の振動子が勢揃い

    ライフゲームの世界 - 人工知能に関する断創録
    yanbe
    yanbe 2013/01/05
  • N本腕バンディット問題 - 人工知能に関する断創録

    をプログラムして実験してみた。簡単に言うと、目の前にNレバーがあるとする。各レバーを引くとお金がもらえるのだが、レバーによってもらえる量にばらつきがある。このとき、どのような方法を取れば最も多くお金がもらえるかという問題。 まずとっさに思いつくのは各レバーを一回ずつ引いて、どのレバーが最もお金をもらえるか調べ、後はずっとそのレバーを引きまくる方法だと思う。これは貪欲法という。でもこの方法には問題点がある。レバーを引くたびにもらえるお金は正規分布に従っていて、ばらつきがあるからである。例えば、レバー3が最も多くもらえると思っていても、実際は、たまたまその一回だけ多かっただけで実際の平均値は少ないかも知れないのだ。 では、どうしたらよいのか。それは、たまに他のレバーをランダムに選んでみればよい。もしかしたら、そのレバーは今まで一番いいと思っていたレバーより、さらに良いものかも知れないからだ。

    N本腕バンディット問題 - 人工知能に関する断創録
  • 1