---
title: 4选2结构化稀疏算法
description: "AMCT使用的4选2结构化稀疏算法为L1SelectivePrune，通过比较权重的l1值即绝对值来决定保留哪些权重，每4个连续的权重中保留l1值最大的2个权重。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/devaids/amct/atlasamct_16_0398.html
sourcePath: /source/zh/canncommercial/900/devaids/amct/atlasamct_16_0398.html
indexId: a2e282b009b868d1c4e05391577816ad51a7047aa36f03e238c244291dcfcb8565
---
# 4选2结构化稀疏算法

AMCT使用的4选2结构化稀疏算法为L1SelectivePrune，通过比较权重的l1值即绝对值来决定保留哪些权重，每4个连续的权重中保留l1值最大的2个权重。

稀疏配置文件中通过L1SelectivePruner字段（以PyTorch框架为例，参数解释请参见量化感知训练简易配置文件）来控制L1SelectivePrune算法。

- update_freq：更新4选2稀疏的间隔，计算哪些元素被保留的间隔。在重训练的过程中，权重会随着每个训练batch发生改变，对应的l1值排序可能会变化，比如本来保留的是4个元素中的前两个元素，更新之后可能变成第1，第3个元素保留。
  update_freq=0时表示训练时仅在第一个batch计算哪些元素被保留，update_freq=2时，表示训练时每2个batch计算哪些元素被保留，以此类推。默认为0。

- n_out_of_m_type：目前仅支持M4N2，即每4个连续权重中保留2个权重。
