我可以用Python內核PCA工作,我有原始數據投射到主components.I後找到的值,用公式2個numpy數組的點乘和正常乘法結果是否相同?
fv = eigvecs[:,:ncomp]
print(len(fv))
td = fv.T * K.T
其中K爲維度的核心矩陣(150×150), ncomp是主要組件的數量。當fv有尺寸(150x150)時,代碼工作得很好。但是當我選擇ncomp爲3時,fv將以(150x3)爲尺寸,出現錯誤,說明操作數無法一起廣播。我提到的各種鏈接,並嘗試使用點產品,如 td=np.dot(fv.T,K.T).
我現在沒有得到任何錯誤。但我不知道檢索的值是否正確或不...
plz幫助...
是'fv'和'K''numpy'數組還是'matrix'子類? – hpaulj 2015-03-25 17:52:36
fv和K是numpy數組...我得到作爲打印fv和K類型時的類型。 –
Pooja
2015-03-25 18:17:21
不知道更多關於潛在任務,我們真的不能說是否逐元素乘法或點(矩陣乘積)是正確的。第一個要求匹配所有的維度,第二個匹配最後一個維度和第一個維度。 – hpaulj 2015-03-25 20:20:56