24小时热门版块排行榜    

查看: 734  |  回复: 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[:, 01])
        H2 = tf.transpose(y_pred[:, o11 + 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
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yang_12345 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 304求调剂(085602一志愿985) +8 化工人999 2026-03-09 8/400 2026-03-10 15:21 by houyaoxu
[考研] 278求调剂 +8 Gale1314 2026-03-06 8/400 2026-03-10 14:18 by Linda Hu
[基金申请] PDF在线压缩软件 10+3 haxia 2026-03-08 4/200 2026-03-10 13:44 by lfy8008
[考研] 接受26届调剂生 +21 猪猪猪毛 2026-03-06 21/1050 2026-03-10 13:39 by Jack_333
[考研] 一志愿清华深研院材料专硕294分,专业课111分,本科中南大学材料,有六级,有工作经验 +4 H14528 2026-03-04 4/200 2026-03-10 11:03 by dj19940201
[考研] 数二英二309分请求调剂 +3 dtdxzxx 2026-03-09 4/200 2026-03-09 19:56 by yuningshan
[考研] 一志愿苏大材料工程专硕293求调剂 +5 钢铁大炮 2026-03-04 5/250 2026-03-09 09:49 by EBSD
[考研] 301求调剂 +11 朝天椒的双马尾 2026-03-05 11/550 2026-03-08 21:50 by 知足常乐的乐
[考研] 286求调剂 +12 Faune 2026-03-06 14/700 2026-03-08 14:54 by hmn_wj
[考研] 求调剂,不管什么专业,我是可塑造的人才一枚,希望遇到知己老师捞捞我 +4 13102137290 2026-03-06 5/250 2026-03-07 21:21 by lissomchan
[考研] 一志愿211 085600 280数二英二求调剂 +3 月山斜 2026-03-06 3/150 2026-03-07 18:56 by houyaoxu
[考研] 材料专硕323求调剂 +5 李白26 2026-03-07 5/250 2026-03-07 16:46 by njzyff
[考研] 276求调剂 本科天津工业大学 一志愿北京化工大学0855 +4 路lyh123 2026-03-06 6/300 2026-03-07 11:37 by shdliugang
[考研] 材料专硕290求调剂 +8 杰尼龟aaa 2026-03-04 8/400 2026-03-06 16:06 by @飒飒飒飒
[考研] 085600材料与化工(高分子)290分求调剂 +9 wengyujian 2026-03-04 9/450 2026-03-06 15:59 by 聪明的大松鼠
[考研] 08工科求调剂 +3 隆LLL 2026-03-06 4/200 2026-03-06 15:26 by 隆LLL
[考研] 求调剂 +5 danyyyy 2026-03-04 5/250 2026-03-06 08:16 by Leeding1356
[考研] 271求调剂 +7 月色c 2026-03-05 8/400 2026-03-05 19:51 by wangjihu
[考研] 材料调剂 +4 L9370 2026-03-05 4/200 2026-03-05 19:36 by caszguilin
[考研] 一志愿985材料与化工 326分求调剂 +3 Hz795795 2026-03-04 3/150 2026-03-04 20:54 by wutongshun
信息提示
请填处理意见