独立成分分析のソースを表示
←
独立成分分析
ナビゲーションに移動
検索に移動
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
{{No footnotes|date=2023年10月}} {{Expand English|Independent component analysis |date=2024年5月}} '''独立成分分析'''(どくりつせいぶんぶんせき、{{lang-en-short|independent component analysis}}、ICA)は、[[多変量解析|多変量]]の信号を複数の加法的な成分に分離するための計算手法である。各成分は、ガウス的でない信号で相互に統計的独立なものを想定する。これは[[ブラインド信号分離]]の特殊な場合である。 == 概要 == 独立性の仮定が正しいなら、混合信号のブラインドICA分離は非常に良い結果となる。混合信号でなくとも、分析のためにこれを行う場合もある。典型的なICAの応用として、室内で録音された複数の人間の会話から特定の人物の声を抜き出す[[音源分離]]がある。一般に遅延や反響がないと仮定することで問題が単純化される。考慮すべき重要な点として、N個の信号源があるとき、個々を分離するには少なくともN個の観測装置(マイクロフォンなど)が必要となる。 この統計的手法は、予測される成分の統計的独立性を最大化するようにその独立成分(ファクター、潜在変数、信号源など)を見つける。[[中心極限定理]]によると、非ガウス性<ref group="注釈">{{lang-en-short|non-Gaussianity}}</ref>は成分の独立性を測る手法の1つである。非ガウス性は例えば、[[尖度]]や[[ネゲントロピー]]の近似で測ることができる。[[相互情報量]]も信号間の独立性の尺度となる。 ICAの典型的アルゴリズムでは、複雑さを削減するために前段階として、中心化<ref group="注釈">{{lang-en-short|centering}}</ref>、白色化<ref group="注釈">{{lang-en-short|whitening}}</ref>、次元削減(圧縮)<ref group="注釈">{{lang-en-short|dimensionality reduction}}</ref>などを行う。白色化と次元削減は[[主成分分析]]や[[特異値分解]]<ref group="注釈">{{lang-en-short|singular value decomposition}}</ref>などによってなされる。ICAのアルゴリズムとしては、<ruby lang="en">Infomax<rp>(</rp><rt lang="en-Kana">インフォマックス</rt><rp>)</rp></ruby>、<ruby lang="en">FastICA<rp>(</rp><rt lang="en-Kana">ファストアイシーエイ</rt><rp>)</rp></ruby>、<ruby lang="en">JADE<rp>(</rp><rt lang="en-Kana">ジェイド</rt><rp>)</rp></ruby>など様々なものがある。 ICA は[[ブラインド信号分離]]で重要であり、具体的な応用がいくつもある。<!-- factorial code の訳語がわからない(訳者) It is closely related to (or even a special case of) the search for a [[:en:factorial code|factorial code]] of the data, i. e., a new vector-valued representation of each data vector such that it gets uniquely encoded by the resulting code vector (loss-free coding), but the code components are statistically independent. --> == 数学的定義 == 線形独立成分分析はノイズのない場合とノイズのある場合に分けられ、ノイズのない ICA はノイズのある ICA の特別な場合である。非線形 ICA はそれらとは別と考えられる。 === 一般的定義 === データは確率変数ベクトル <math>x=(x_1,\ldots,x_m)</math> と成分の確率変数ベクトル <math>s=(s_1,\ldots,s_n)</math> で表される。すべきことは、線形な統計的変換 <math>s=Wx</math> を使って、観測データ <math>x</math> を独立成分 <math>s</math> に変換することである(独立性は関数 <math>F(s_1,\ldots,s_n)</math> によって表される)。 === 生成的モデル === ==== 線形ノイズなしICA ==== 観測された確率変数ベクトル <math>x=(x_1,\ldots,x_m)^T</math> の成分 <math>x_i</math> は独立成分 <math>s_k</math>, <math>k=1,\ldots,n</math> の次のような総和として生成される。 {{Indent|<math>x_i = a_{i,1} s_1 + \ldots + a_{i,k} s_k + \ldots + a_{i,n} s_n</math>}} すなわち、<math>a_{i,k}</math> でそれぞれの独立成分に重み付けがなされている。 このモデルをベクトルとして表すと {{Indent|<math>x=\sum_{k=1}^{n} s_k a_k</math>}} となり、観測された確率変数ベクトル <math>x</math> が基本ベクトル <math>a_k=(a_{1,k},\ldots,a_{m,k})^T</math> で表される。 基本ベクトル <math>a_k</math> は混合行列<ref group="注釈">{{lang-en-short|mixing matrix}}</ref><math>A=(a_1,\ldots,a_n)</math> の列を形成し、生成式は <math>x=As</math> と表され、このとき <math>s=(s_1,\ldots,s_n)^T</math> である。 モデルと <math>x_1,\ldots,x_N</math> からなる確率変数ベクトル <math>x</math> の標本があるとき、混合行列 <math>A</math> と信号源 <math>s</math> を予測する作業が行われる。これは、<math>w</math> ベクトルを順応的に計算し、計算された <math>s_k = (w^T*x)</math> の非ガウス性を最大化するか、相互情報量を最小化するコスト関数を設定することでなされる。場合によっては信号源の確率分布についての事前の知識をコスト関数に利用する。 信号源 <math>s</math> は観測された信号群 <math>x</math> に混合行列の逆行列 <math>W=A^{-1}</math> (分離行列<ref group="注釈">{{lang-en-short|demixing matrix}}、{{lang|en|separating matrix}}</ref>をかけることで求められる。ここで、混合行列は[[正方行列]]と想定されている。 ==== 線形ノイズありICA ==== 平均がゼロとなる無相関のガウス雑音 <math>n\sim N(0,\operatorname{diag}(\Sigma))</math> を仮定すると、ICAモデルは <math>x=As+n</math> という形式になる。 ==== 非線形ICA ==== 信号源の混合は線形でなければならないわけではない。パラメータ <math>\theta</math> の非線形混合関数 <math>f(\cdot|\theta)</math> による非線形ICAモデルは <math>x=f(s|\theta)+n</math> となる。 === 同定可能性 === 独立成分分析の同定可能性には以下の要素が必要である。 * 信号源のうち高々1つだけ(<math>s_k</math>)がガウス雑音である。 * 混合信号の観測数 <math>m</math> と予測される信号源の数 <math>n</math> について、<math>m \ge n</math> でなければならない。 * 混合行列 <math>A</math> の[[行列の階数]]は最大でなければならない。 ==脚注== {{脚注ヘルプ}} === 注釈 === {{Notelist}} == 参考文献 == * 村田昇:『入門 独立成分分析』、東京電機大学出版局、ISBN 4-501-53750-7 (2004年7月10日). * Aapo Hyvärien, Juha Karhunen:『詳解 独立成分分析:信号解析の新しい世界』、東京電機大学出版局、ISBN 978-4-501-53860-6(2005年2月10日). == 関連項目 == * [[主成分分析]] * [[因子分析]] * [[画像処理]] * [[信号処理]] * [[ブラインド信号分離]] (BSS) * [[ブラインド逆畳み込み積分]] * [[カクテルパーティー効果]] == 外部リンク == * [http://www.cs.helsinki.fi/u/ahyvarin/whatisica.shtml What is independent component analysis?] by Aapo Hyvärinen * [http://www.idsia.ch/~juergen/ica.html Nonlinear ICA, Unsupervised Learning, Redundancy Reduction] by Jürgen Schmidhuber * [ftp://ftp.shef.ac.uk/pub/misc/personal/pc1jvs/papers/ica_encyc_jvs4everrit2005.pdf A Brief Introduction to Independent Component Analysis] by JV Stone, 2005 (7 pages). * [http://www.cis.hut.fi/projects/ica/book/ A. Hyvärinen, J. Karhunen, E. Oja (2001). Independent Component Analysis] という書籍の [http://www.cis.hut.fi/projects/ica/book/intro.pdf Introductory chapter] * [http://www.cis.hut.fi/projects/ica/fastica/ FastICA as a package for Matlab, in R language, C++, and Python] * [http://www.bsp.brain.riken.go.jp/ICALAB/ ICALAB Toolboxes] - Matlab 用。[[理化学研究所]]が開発。 * [http://www.nic.uoregon.edu/hipersat/index.php High Performance Signal Analysis Toolkit] - FastICA や Infomax の C++ による実装。 * [http://jim-stone.staff.shef.ac.uk/ Free software for ICA] by JV Stone. * [http://mole.imm.dtu.dk/toolbox/ ICA toolbox] - Matlab 用。DTUが開発。 * [http://www.cis.hut.fi/projects/ica/cocktail/cocktail_en.cgi Demonstration of the cocktail party problem] * [http://sccn.ucsd.edu/eeglab/ EEGLAB Toolbox] - Matlab による[[脳波]]の独立成分分析ツール。UCSDが開発。 * [http://sccn.ucsd.edu/fmrlab/ FMRLAB Toolbox] - Matlab による[[fMRI]]の独立成分分析ツール。UCSDが開発。 * [http://brandon-merkl.blogspot.com/2005/12/independent-component-analysis.html Discussion of ICA used in a biomedical shape-representation context] {{統計学}} {{DEFAULTSORT:とくりつせいふんふんせき}} [[Category:統計学]] [[Category:信号処理]] [[Category:次元削減]] [[Category:数学に関する記事]]
このページで使用されているテンプレート:
テンプレート:Expand English
(
ソースを閲覧
)
テンプレート:Indent
(
ソースを閲覧
)
テンプレート:Lang-en-short
(
ソースを閲覧
)
テンプレート:No footnotes
(
ソースを閲覧
)
テンプレート:Notelist
(
ソースを閲覧
)
テンプレート:統計学
(
ソースを閲覧
)
テンプレート:脚注ヘルプ
(
ソースを閲覧
)
独立成分分析
に戻る。
ナビゲーション メニュー
個人用ツール
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
ソースを閲覧
履歴表示
その他
検索
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
特別ページ
ツール
リンク元
関連ページの更新状況
ページ情報