Re: [問題]關於svd後結果為負值
您好
SVD我小有研究
以您的代號
test=TSD'
T跟D有負值是合理的
假設您的test是方陣
T裏面的column vector正或負都算對只是D要有對應的變化
也就是由T來決定D
S*T*Test=D'
同理可證我們可先決定D才決定T
原因是T的column vector 是test*test'的eigen vector(經過單位化)
不知您記不記得eigen vector是不唯一的,加個負號一樣是解
因為"通常"其為一維的null vector,例如[1c 2c 3c]
c為正或負都是"解"哦,然後單位化此eigen vector後,就只差正負號了
結論是SVD其T與D不唯一,T跟D差個負號還是"解",只要我們TSD'能重建test即可
如果你有不瞭解的地方,歡迎回到此版並回到我信箱,謝謝
※ 引述《Jolinda (Jolinda)》之銘言:
: 想請問各位大大
: 小妹我在matlab跑svd,語法如下:
: [T,S,D]=svd(test,0);
: 產生的T和D矩陣內有負值
: 請問有任何的涵意嗎?
: 還是純粹是與原始Term-document矩陣近似值的誤差呢?
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.96.40.165
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章