Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
因子分析(仮)
Search
Ringa_hyj
January 06, 2021
Science
0
130
因子分析(仮)
因子分析について
変数の背景に別の関係性があることを仮定して推定する方法
Ringa_hyj
January 06, 2021
Tweet
Share
More Decks by Ringa_hyj
See All by Ringa_hyj
DVCによるデータバージョン管理
ringa_hyj
0
25
deeplakeによる大規模データのバージョン管理と深層学習フレームワークとの接続
ringa_hyj
0
22
Hydraを使った設定ファイル管理とoptunaプラグインでのパラメータ探索
ringa_hyj
0
31
ClearMLで行うAIプロジェクトの管理(レポート,最適化,再現,デプロイ,オーケストレーション)
ringa_hyj
0
22
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
810
多次元尺度法MDS
ringa_hyj
0
260
階層、非階層クラスタリング
ringa_hyj
0
98
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
400
深層学習をつかった画像スタイル変換の話と今までの歴史
ringa_hyj
0
390
Other Decks in Science
See All in Science
All-in-One Bioinformatics Platform Realized with Snowflake ~ From In Silico Drug Discovery, Disease Variant Analysis, to Single-Cell RNA-seq
ktatsuya
0
300
事業会社における 機械学習・推薦システム技術の活用事例と必要な能力 / ml-recsys-in-layerx-wantedly-2024
yuya4
4
290
証明支援系LEANに入門しよう
unaoya
0
630
いまAI組織が求める企画開発エンジニアとは?
roadroller
2
1.4k
Pericarditis Comic
camkdraws
0
1.5k
20分で分かる Human-in-the-Loop 機械学習におけるアノテーションとヒューマンコンピューターインタラクションの真髄
hurutoriya
5
2.8k
応用心理学Ⅰテキストマイニング講義資料講義編(2024年度)
satocos135
0
100
(論文読み)贈り物の交換による地位の競争と社会構造の変化 - 文化人類学への統計物理学的アプローチ -
__ymgc__
1
170
論文紹介: PEFA: Parameter-Free Adapters for Large-scale Embedding-based Retrieval Models (WSDM 2024)
ynakano
0
210
創薬における機械学習技術について
kanojikajino
16
4.9k
SciPyDataJapan 2025
schwalbe10
0
130
The Incredible Machine: Developer Productivity and the Impact of AI
tomzimmermann
0
530
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
The Cult of Friendly URLs
andyhume
78
6.2k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Docker and Python
trallard
44
3.3k
Navigating Team Friction
lara
183
15k
Code Review Best Practice
trishagee
67
18k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Site-Speed That Sticks
csswizardry
4
380
Transcript
因子分析 相関というよりも、潜在因子を説明する・見つける方法
多次元のデータを少数次元へと変換する 主成分分析と同じような気持ち 発端となる手法は「共通因子分析モデル」であるところがPCAとの違い (思想は同じで発達が違う。ネアンデルタール人とホモサピエンスのような関係)
分析に使う変数はすべて0~1に正規化されたデータであるという前提を置く = ′ − ഥ ′ ′ 2 1 =
1 + 1 因子分析は(正規化された)データを以下のように変形させる。 添え字 iはデータ点ごとのインデックスである あるクラスの期末試験の点数一覧があるなら iさんの科目1の点数である 科目1のテストの難しさをa1で表現する 科目ごとのノイズeも足す ※個人の能力 fi と表し、これはほかの科目でも共通であるため、添え字はiだけである。
a j を因子負荷量 f i を共通因子 (別名:因子得点 独立であるという前提時には直交因子とも呼ぶ。 相関を含む場合には斜交因子と。) e
ij は独自因子 共通因子はデータ点ごとの固有の値であるが、分解して増やすこともできる。 その場合a jが増えるので解釈は難しくなる
データの相関の計算 ノイズであるeは独立であるはず e*e = 0 ノイズと共通因子は独立であるはず e*f = 0 以上の独立の過程を元に、相関を計算すると、
= − ҧ − ҧ 1 1 − ҧ 2 1 σ 1 − ҧ 2 正規化したデータであるため、平均は0である 残った部分を因子分析のモデルに当てはめるならば以下のようになる 1 1 = 1 1 + +
これは展開によって計算できる (AX+B)(CX+D) = AC X^2 + ADX + BCX +
BD ここで、ノイズの期待値が0ならば、B,Dの関わる項は0になる。 のこるはAC X^2 共通因子であるf もまた、平均0,分散1であるので ← X^2は分散となり、1である。 AC * 1 = aj * av が残る 1 1 = 1 1 + +
ノイズは期待値0であり、分散をtと仮定する この場合、自己相関 r jj は aj ^2 + t j
^2 = 1 となる。 ← 分散共分散行列は 1 12 13 21 1 23 31 32 1 1 2 + 1 2 1 2 1 3 2 1 2 2 + 2 2 2 3 3 1 3 2 3 2 + 3 2 = = 1 2 2 2 3 2 + 1 2 0 0 0 2 2 0 0 0 3 2 1 2 3 1 2 3 + diag 1 22 23 2 = 因子負荷量(列ベクトル) ↑ 独自因子
行列形式で簡便に記述すると以下のようになる = + 行列形式で簡便に記述すると以下のようになる 以降から、特に因子負荷量である列ベクトルAをΛ(らむだ) として記述する 多因子を考えたい場合(aを増やしたい)、因子負荷量ベクトルは、 変数j × 共通因子i
の行列となる。
因子負荷量の求め方 rank(ΛΛ^t) = 1 であるので ΛtΛ の二次小行列式が0である。 ← 1 2
1 2 2 1 2 2 1 2 2 2 − 1 2 2 1 = 0 = ΛΛ^t の列和を t +i 総和をt ++ として表現する + = , +2 + 3 ++ = , +2 + 3 2 = + + + これらを使うと、因子負荷量は以下のように表現(計算)できる 重心法(セントロイド法)
あ
そもそも、サーストンの多因子モデルは、多因子(行列) になっただけ。 = + AでもΛでもどっちでもいい AA^t はランクmである この対角要素を「共通性」として扱う Tの対角要素を「独自性(固有性)」として扱う j番目の変数xjの変動のうち、
f ik は共通因子で説明できる量のことである。 fをいくつにするか(k=1 or more ?) という問題は、経験的に決めるか、仮説があってからkを決める。
あ
主因子法 = + AA^t = R – T ここで左式の対角成分が「共通性」であるのだから、 右辺の対角成分である、1-t^2
たちを計算することで求まるはず この右辺を「縮約相関係数行列」 とよぶ
p次元データにm因子(fがm個) を当てはめて求める場合を考える 以下、 R = pの相関行列 p*p L = 因子負荷量行列
p*m Φ = 対角が分散Φiである対角行列 p*p (共通因子で説明できないばらつき・特異性・独自性) 尤度関数はg(L,Φ)であり、これの最大化を考える
まずΦを求める 1-共通性によってノイズ行列 T が求まるはず 因子負荷量行列 L は、固有値・固有ベクトルとして求まる
主因子法 step 1 ΛΛ^t の相関行列の最大値を見つける。 最大値のある列をj列とする ΛΛ^t のjj成分として代入する 他の成分はそのまま step2
step 1で得た対角行列の固有値と固有ベクトルを計算する。 このとき、√固有値 * 固有ベクトル = 因子負荷量 ak である 得られたakによる行列をΛ_hat とする。 (akはp*mの行列であるはず) step3 独自因子の分散は T = 1 – Σ ak^2 である 求めたTをΛ_hat Λ_hat ^t の対角行列に代入し、再び固有値・固有ベクトルを求める Tの変化量が少なくなったら(二乗ノルムが0.0001以下とか) 止める。
あ
因子負荷量を解釈する 共通因子=2と仮定してモデルを作ったとする Λ = 2*3行列だったならば、これをΘだけ回転を加える。 cosΘ –sinΘ sinΘ cosΘ という行列をかける。
逆方向(-Θ)に開店させる場合 計算略 cosΘ sinΘ -sinΘ cosΘ
さらに、 G^t G = I となることから、直交行列であることが分かる つまり、ΛをG行列で回転させて得た時の Λ*G = Λ_hat
もまた、Λの推定量である。 では、どのような回転が最も良いのか? 理屈は不明だが、 バリマックス回転が良い回転であることが知られている。 が最大となるように回転角度を決める方法 = ා =1 1 2 2 − 1 2 2
あ
f の推定 =1~ − −1 − これを最小化するには、 = −1
−1−1 ※ Tは独自因子の分散行列である