在一个稀疏 MOE 模型中,有 n 个专家顺序编号为 0…n-1,这些专家被平均分布到 m 张 NPU 卡上,每张卡上一组,且同组专家编号连续。为降低跨卡通信,现将路由目标限制在最多 p 张 NPU 上: 1) 先对每组求组内概率最大值及其专家编号,作为该组的代表值; 2) 把所有组按“代表概率”从高到低排序,若概率相同则组号小的在前,取前 p 个组; 3) 仅在上述 p 个组包含的所有专家里,按“概率降序、编号升序”挑选前 k 位的专家编号作为最终路由目标。 约束与异常 - 若 n 不能被 m 整除,则无法平均分组,输出 error。 - 若 pm,输出 error。 - 设每组大小 g=nm,若可选专家总数 p·g
输入描述:
第一行:四个整数 n m p k(1≤n,m,p,k≤10000) 第二行:n 个浮点数,依次为专家 0…n-1 的概率,均在 (0,1) 内
输出描述:
若发生异常,输出 error 否则输出 k 个专家编号,升序,空格分隔(行尾无空格)
示例1
输入
6 3 2 2
0.3 0.1 0.05 0.6 0.4 0.2
说明
分组:g=6/3=2。组0=[0,1]→代表(0.3,idx0),组1=[2,3]→代表(0.6,idx3),组2=[4,5]→代表(0.4,idx4)。
选组:按代表概率降序取前 p=2 个,得到组1与组2。
选专家:在{2,3,4,5}中按概率降序取前 k=2,依次为 idx3(0.6)、idx4(0.4);最后升序输出 3 4。
示例2
输入
6 4 2 2
0.1 0.2 0.3 0.4 0.5 0.6
说明
因为 n=6、m=4,n 必须能被 m 整除才能把专家平均分到每张 NPU 上(组大小 g=n/m 为整数)。这里 6%4≠0,g=1.5 不是整数,无法等分成 4 组,所以按规则直接输出 error。
备注:
本题由牛友@Charles 整理上传
加载中...