| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[CANNBOT]codecheck扫描修改 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !5907 merge codecheck into master [CANNBOT]codecheck扫描修改 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> codecheck扫描修改 G.EXP.27-CPP 使用恰当的基本类型作为操作符的操作数 G.EXP.36-CPP 控制表达式的结果应是布尔值 G.INC.03-CPP 头文件应该自包含 等规则修改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/3246 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> OBP冒烟:22710 二级冒烟:6340 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5907 | 2 个月前 | |
[CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !5303 merge 0525 into master [CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ┌──────────────────────────────┬────────┬─────────────────────────────────────────────────────────┐ │ 算子 │ 类型 │ 关键公式 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ BNLL │ 激活 │ $\ln(1+e^x)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Celu │ 激活 │ 正区常数 $3\alpha_3$,负区 $\alpha_1(e^{x/\alpha_2}-1)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Relu6 │ 激活 │ $\min(\max(x,0),6)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdadelta │ 优化器 │ 自适应学习率,$\sqrt{accum_update}/\sqrt{accum}$ 缩放 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdaMax │ 优化器 │ Adam 变体,$L_\infty$ 替代二阶矩 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyProximalGradientDescent │ 优化器 │ SGD + L1/L2 近端算子 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyRMSProp │ 优化器 │ 梯度平方滑动平均 + 动量 │ └──────────────────────────────┴────────┴─────────────────────────────────────────────────────────┘ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2884 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> OBP冒烟: 二级冒烟: ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5303 | 2 个月前 | |
[CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !5303 merge 0525 into master [CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ┌──────────────────────────────┬────────┬─────────────────────────────────────────────────────────┐ │ 算子 │ 类型 │ 关键公式 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ BNLL │ 激活 │ $\ln(1+e^x)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Celu │ 激活 │ 正区常数 $3\alpha_3$,负区 $\alpha_1(e^{x/\alpha_2}-1)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Relu6 │ 激活 │ $\min(\max(x,0),6)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdadelta │ 优化器 │ 自适应学习率,$\sqrt{accum_update}/\sqrt{accum}$ 缩放 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdaMax │ 优化器 │ Adam 变体,$L_\infty$ 替代二阶矩 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyProximalGradientDescent │ 优化器 │ SGD + L1/L2 近端算子 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyRMSProp │ 优化器 │ 梯度平方滑动平均 + 动量 │ └──────────────────────────────┴────────┴─────────────────────────────────────────────────────────┘ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2884 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> OBP冒烟: 二级冒烟: ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5303 | 2 个月前 | |
[CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !5303 merge 0525 into master [CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ┌──────────────────────────────┬────────┬─────────────────────────────────────────────────────────┐ │ 算子 │ 类型 │ 关键公式 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ BNLL │ 激活 │ $\ln(1+e^x)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Celu │ 激活 │ 正区常数 $3\alpha_3$,负区 $\alpha_1(e^{x/\alpha_2}-1)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Relu6 │ 激活 │ $\min(\max(x,0),6)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdadelta │ 优化器 │ 自适应学习率,$\sqrt{accum_update}/\sqrt{accum}$ 缩放 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdaMax │ 优化器 │ Adam 变体,$L_\infty$ 替代二阶矩 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyProximalGradientDescent │ 优化器 │ SGD + L1/L2 近端算子 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyRMSProp │ 优化器 │ 梯度平方滑动平均 + 动量 │ └──────────────────────────────┴────────┴─────────────────────────────────────────────────────────┘ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2884 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> OBP冒烟: 二级冒烟: ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5303 | 2 个月前 | |
[CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !5303 merge 0525 into master [CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ┌──────────────────────────────┬────────┬─────────────────────────────────────────────────────────┐ │ 算子 │ 类型 │ 关键公式 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ BNLL │ 激活 │ $\ln(1+e^x)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Celu │ 激活 │ 正区常数 $3\alpha_3$,负区 $\alpha_1(e^{x/\alpha_2}-1)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Relu6 │ 激活 │ $\min(\max(x,0),6)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdadelta │ 优化器 │ 自适应学习率,$\sqrt{accum_update}/\sqrt{accum}$ 缩放 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdaMax │ 优化器 │ Adam 变体,$L_\infty$ 替代二阶矩 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyProximalGradientDescent │ 优化器 │ SGD + L1/L2 近端算子 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyRMSProp │ 优化器 │ 梯度平方滑动平均 + 动量 │ └──────────────────────────────┴────────┴─────────────────────────────────────────────────────────┘ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2884 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> OBP冒烟: 二级冒烟: ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5303 | 2 个月前 | |
[CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Co-authored-by: gcw_YBIAEfqJ<wangweidong15@huawei.com> # message auto-generated for no-merge-commit merge: !5303 merge 0525 into master [CANNBOT]bnll, celu, relu6, apply_adadelta, apply_adamax, apply_proximal_gradient_descent, apply_rms_prop适配Ascend950 Ascendc实现 Created-by: gcw_YBIAEfqJ Commit-by: gcw_YBIAEfqJ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ┌──────────────────────────────┬────────┬─────────────────────────────────────────────────────────┐ │ 算子 │ 类型 │ 关键公式 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ BNLL │ 激活 │ $\ln(1+e^x)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Celu │ 激活 │ 正区常数 $3\alpha_3$,负区 $\alpha_1(e^{x/\alpha_2}-1)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ Relu6 │ 激活 │ $\min(\max(x,0),6)$ │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdadelta │ 优化器 │ 自适应学习率,$\sqrt{accum_update}/\sqrt{accum}$ 缩放 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyAdaMax │ 优化器 │ Adam 变体,$L_\infty$ 替代二阶矩 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyProximalGradientDescent │ 优化器 │ SGD + L1/L2 近端算子 │ ├──────────────────────────────┼────────┼─────────────────────────────────────────────────────────┤ │ ApplyRMSProp │ 优化器 │ 梯度平方滑动平均 + 动量 │ └──────────────────────────────┴────────┴─────────────────────────────────────────────────────────┘ ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/2884 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> OBP冒烟: 二级冒烟: ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5303 | 2 个月前 | |
Modify the aclnn and readme issue Co-authored-by: zhouwenfang<zhouwenfang3@h-partners.com> # message auto-generated for no-merge-commit merge: !6973 merge 9.1.0 into 9.1.0 Modify the aclnn and readme issue Created-by: zhouwenfang Commit-by: zhouwenfang Merged-by: cann-robot Description: ## 描述 Modifying the doc tools scanning error ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3807 ## 测试 NA ## 文档更新 celu_v2/README.md relu6/README.md relu6_grad/README.md softshrink_grad/docs/aclnnSoftshrinkBackward.md swiglu_group_quant_grad/README.md swiglu_group_quant_grad/aclnnSwigluGroupQuantGrad.md group_norm_swish/docs/aclnnGroupNormSwish.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6973 | 1 个月前 |
Relu6
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
功能说明
- 算子功能:激活函数Relu6,按元素对输入张量进行激活计算,将每个元素值限制在
[0, 6]区间内。 - 计算公式:
Relu6(x)=min(max(x,0),6)Relu6(x) = \min(\max(x, 0), 6) Relu6(x)=min(max(x,0),6)
等价于分段函数:
Relu6(x)={0,x<0x,0≤x≤66,x>6Relu6(x) = \begin{cases} 0, & x < 0 \\ x, & 0 \le x \le 6 \\ 6, & x > 6 \end{cases} Relu6(x)=⎩⎪⎪⎨⎪⎪⎧0,x,6,x<00≤x≤6x>6
其中:
- x: 输入张量
参数说明
| 参数名 | 输入/输出 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 公式中的'x',表示Relu6激活函数的输入张量。 | FLOAT16、FLOAT32、INT32、DT_BF16 | ND |
| y | 输出 | 表示x经Relu6计算得到的输出张量,shape和dtype与输入x一致。 | FLOAT16、FLOAT32、INT32、DT_BF16 | ND |
约束说明
- 输入x和输出y的shape必须相同。
- 最高支持8维张量。
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| 图模式(GE IR) | test_geir_relu6.cpp | 通过GE IR图模式方式调用Relu6算子。 |