DEC 深度编码聚类函数

2. 辅助目标函数

要使用输入 (bt, groups, embed_dim) 计算 DEC 模型的目标分布,关键部分是使用软分配 q ,其形状为 (bt, groups, max_cluster) 。这里, max_cluster 是您要定位的集群数量。当您沿该维度执行聚类时,需要跨 groups 维度计算目标分布。

The process is:其过程是:

  1. 对软分配进行平方 ( q ):这会放大高概率分配并抑制较低概率分配。

  2. 对 groups 维度求和:您对 groups 维度(张量中的索引 1)上的这些平方概率求和,因为您想要捕获每个组在所有集群中的分布批次中的项目。

  3. 归一化:然后对求和值进行归一化,以确保它们形成正确的概率分布。

目标分布计算如下所示:

python 复制代码
def target_distribution(q):
    # Square the probabilities and sum across the 'groups' dimension
    weight = q ** 2 / q.sum(1, keepdim=True)

    # Normalize across the 'max_cluster' dimension
    return (weight / weight.sum(2, keepdim=True))

在这个函数中:

  • q.sum(1, keepdim=True) 对 groups 维度上的概率平方求和,得到形状 (bt, 1, max_cluster) 的张量。
  • weight / weight.sum(2, keepdim=True) 然后在 max_cluster 维度(张量中的索引 2)对这些概率进行归一化,确保每个簇的概率总和为 1。这会产生相同形状的张量如 q ( (bt, groups, max_cluster) )。
  • 目标分布的计算符合数据结构和 DEC 算法的要求。
相关推荐
0 19 分钟前
260401日志
人工智能·深度学习·nlp
是有头发的程序猿16 分钟前
用Open Claw接口做1688选品、价格监控、货源对比
开发语言·c++·人工智能
chools21 分钟前
Java后端拥抱AI开发之个人学习路线 - - Spring AI【第一期】
java·人工智能·学习·spring·ai
IT_陈寒27 分钟前
Vite热更新坑了我三天,原来配置要这么写
前端·人工智能·后端
子兮曰1 小时前
CLI正在吞掉GUI:不是替代,是统治,AI时代的入口争夺战
人工智能·github·命令行
星星也在雾里1 小时前
Dify Agent + FastAPI + PostgreSQL实现数据库查询
数据库·人工智能·fastapi
Maschera961 小时前
openclaw-lark 的 Bot@Bot 跨Bot提及功能 - 开发经验分享
人工智能·node.js
TDengine (老段)1 小时前
以事件为核心 + 以资产为核心:工业数据中缺失的关键一环
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
阿里云大数据AI技术1 小时前
欣和大数据阿里云上升级,打造湖仓一体平台
大数据·人工智能
CC数分1 小时前
大模型时代的数据分析:AI会取代数据分析师吗?
人工智能·数据挖掘·数据分析