| 1 | 1/1 | 返回列表 |
| 查看: 731 | 回復(fù): 0 | ||
| 【懸賞金幣】回答本帖問題,作者yang_12345將贈送您 5 個金幣 | ||
yang_12345新蟲 (初入文壇)
|
[求助]
Tensorflow自伴特征分解不成功,輸入可能無效
|
|
|
Self-adjoint eigen decomposition was not successful. The input might not be valid(Tensorflow自伴特征分解不成功,輸入可能無效) def cca_loss(outdim_size, use_all_singular_values): def inner_cca_objective(y_true, y_pred): r1 = 1e-4 r2 = 1e-4 eps = 1e-12 print("y_pred:",y_pred.shape[1]) o1 = o2 = int(y_pred.shape[1] // 2) print(y_pred) print("aaaa",o1,o2) # unpack (separate) the output of networks for view 1 and view 2 H1 = tf.transpose(y_pred[:, 0 1])H2 = tf.transpose(y_pred[:, o1 1 + o2])m = tf.shape(H1)[1] H1bar = H1 - tf.cast(tf.divide(1, m), tf.float32) * tf.matmul(H1, tf.ones([m, m])) H2bar = H2 - tf.cast(tf.divide(1, m), tf.float32) * tf.matmul(H2, tf.ones([m, m])) SigmaHat12 = tf.cast(tf.divide(1, m - 1), tf.float32) * tf.matmul(H1bar, H2bar, transpose_b=True) # [dim, dim] SigmaHat11 = tf.cast(tf.divide(1, m - 1), tf.float32) * tf.matmul(H1bar, H1bar, transpose_b=True) + r1 * tf.eye( o1) SigmaHat22 = tf.cast(tf.divide(1, m - 1), tf.float32) * tf.matmul(H2bar, H2bar, transpose_b=True) + r2 * tf.eye( o2) D1, V1 = tf.self_adjoint_eig(SigmaHat11) #求特征值 特征向量 D2, V2 = tf.self_adjoint_eig(SigmaHat22) # Added to increase stability posInd1 = tf.where(tf.greater(D1, eps)) D1 = tf.gather_nd(D1, posInd1) # get eigen values that are larger than eps 選出大于eps的特征值 V1 = tf.transpose(tf.nn.embedding_lookup(tf.transpose(V1), tf.squeeze(posInd1))) posInd2 = tf.where(tf.greater(D2, eps)) D2 = tf.gather_nd(D2, posInd2) V2 = tf.transpose(tf.nn.embedding_lookup(tf.transpose(V2), tf.squeeze(posInd2))) SigmaHat11RootInv = tf.matmul(tf.matmul(V1, tf.diag(D1 ** -0.5)), V1, transpose_b=True) # [dim, dim] SigmaHat22RootInv = tf.matmul(tf.matmul(V2, tf.diag(D2 ** -0.5)), V2, transpose_b=True) Tval = tf.matmul(tf.matmul(SigmaHat11RootInv, SigmaHat12), SigmaHat22RootInv) print("use_all_singular_values",use_all_singular_values) if use_all_singular_values: corr = tf.sqrt(tf.trace(tf.matmul(Tval, Tval, transpose_a=True))) else: [U, V] = tf.self_adjoint_eig(tf.matmul(Tval, Tval, transpose_a=True)) U = tf.gather_nd(U, tf.where(tf.greater(U, eps))) kk = tf.reshape(tf.cast(tf.shape(U), tf.int32), []) K = tf.minimum(kk, outdim_size) w, _ = tf.nn.top_k(U, k=K) corr = tf.reduce_sum(tf.sqrt(w)) print("corr:",corr) return -corr return inner_cca_objective |
| 1 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 復(fù)試調(diào)劑 +3 | 呼呼?~+123456 2026-03-08 | 3/150 |
|
|---|---|---|---|---|
|
[考研] A區(qū)一本交叉課題組,低分調(diào)劑,招收機械電子信息通信等交叉方向 +52 | lisimayy 2026-03-04 | 65/3250 |
|
|
[考研] 一志愿蘇大材料工程專碩293求調(diào)劑 +5 | 鋼鐵大炮 2026-03-04 | 5/250 |
|
|
[考研] 0703化學(xué)求調(diào)劑 +3 | 很老實人 2026-03-09 | 3/150 |
|
|
[考研] 求調(diào)劑,數(shù)一英一274分 +3 | 小菲會努力 2026-03-08 | 3/150 |
|
|
[考研] 085701環(huán)境工程專碩求調(diào)劑 +5 | 幼稚園大班打手 2026-03-08 | 5/250 |
|
|
[基金申請] 請問大家,研究風(fēng)險與應(yīng)對措施那里, 大家都怎么寫呢 ? +5 | cauasen 2026-03-02 | 6/300 |
|
|
[考研] 理學(xué)287分求調(diào)劑 +4 | 看看我. 2026-03-05 | 4/200 |
|
|
[考研] 301求調(diào)劑 +11 | 朝天椒的雙馬尾 2026-03-05 | 11/550 |
|
|
[考研] 材料調(diào)劑 +7 | ounce. 2026-03-05 | 15/750 |
|
|
[考研] 085701環(huán)境工程專業(yè),初試305,均過國家A區(qū)線 +7 | 卡卡來了@ 2026-03-07 | 8/400 |
|
|
[考研] 考研一志愿長安大學(xué)材料與化工309分請求調(diào)劑 +4 | dtdxzxx 2026-03-06 | 6/300 |
|
|
[考研] 一志愿南京大學(xué)資源與環(huán)境專業(yè)283分求調(diào)劑 +8 | 追云?? 2026-03-04 | 8/400 |
|
|
[考研] 材料277分求調(diào)劑 +13 | 飯飯星球 2026-03-04 | 14/700 |
|
|
[考研] 紡織、生物、化學(xué)、材料等專業(yè) +3 | Eember. 2026-03-05 | 7/350 |
|
|
[考研] 283求調(diào)劑 +10 | 鹿沫笙 2026-03-02 | 11/550 |
|
|
[考研] 286 +6 | ksncj 2026-03-04 | 6/300 |
|
|
[考研] 281求調(diào)劑 +3 | 我是小小蔥蔥 2026-03-03 | 5/250 |
|
|
[考研] 325求調(diào)劑 +5 | 學(xué)家科 2026-03-04 | 5/250 |
|
|
[考研] 085602化學(xué)工程350,調(diào)劑,有沒有211的 +5 | 利好利好. 2026-03-02 | 9/450 |
|