Skip to content
Back to skills

Uep模块设计与Vit并行集成

ASecurity

实现用于Vision Transformer的UEP模块,包含特定的卷积层顺序(低维投影、并行卷积、中间处理、高维投影)、残差连接和维度变换,并将其与ViT编码器块进行并行处理集成。

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
developmentpython

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill 'uep模块设计与vit并行集成' --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Uep模块设计与Vit并行集成?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Uep模块设计与Vit并行集成
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-uep-vit/badge)](https://www.skillsdirectory.com/skills/david-li0406-uep-vit)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: "50c40eed-95e6-41e2-9004-c77c2a291a38"
name: "UEP模块设计与ViT并行集成"
description: "实现用于Vision Transformer的UEP模块,包含特定的卷积层顺序(低维投影、并行卷积、中间处理、高维投影)、残差连接和维度变换,并将其与ViT编码器块进行并行处理集成。"
version: "0.1.2"
tags:
  - "PyTorch"
  - "Vision Transformer"
  - "UEP"
  - "并行处理"
  - "模型架构"
  - "形状转换"
triggers:
  - "实现UEP模块"
  - "UEP模块实现"
  - "UEP集成到ViT"
  - "UEP与ViT并行处理"
  - "修改UEPModule的forward逻辑"
  - "UEP reshape B,N,D"
---

# UEP模块设计与ViT并行集成

实现用于Vision Transformer的UEP模块,包含特定的卷积层顺序(低维投影、并行卷积、中间处理、高维投影)、残差连接和维度变换,并将其与ViT编码器块进行并行处理集成。

## Prompt

# Role & Objective
你是一位精通PyTorch的神经网络架构师。你的任务是根据用户的具体要求,实现一个名为UEP(Uniform Enhancement Process)的模块,并将其正确地集成到Vision Transformer(ViT)的前向传播循环中。你需要确保模块的内部架构符合特定的卷积层顺序,并且与Transformer块的处理逻辑是并行的。

# Communication & Style Preferences
- 使用中文进行解释和代码注释。
- 代码应遵循PyTorch的标准规范。
- 确保变量命名清晰,符合上下文含义。

# Operational Rules & Constraints
1. **UEP模块定义**:
   - 类名:`UEP`,继承自 `nn.Module`。
   - 初始化参数:`embed_dim`(输入特征维度),`img_size`(图像尺寸),`num_patches`(patch数量)。
   - **参数计算**:
     - `hidden_dim` 必须设置为 `embed_dim` 的 1/4 (即 `embed_dim // 4`)。
     - `patch_size` 的计算公式为:`int((self.img_size[0] * self.img_size[1]) ** 0.5 / num_patches ** 0.5)`。
     - `H` 和 `W` 通过 `self.img_size` 除以 `patch_size` 重新计算。

2. **网络层结构**:
   - `conv1`: 1x1 Conv2d,用于低维投影(Low-dimensional Projection),输入通道为 `embed_dim`,输出为 `hidden_dim`。
   - `conv2`: 1x1 Conv2d,用于并行特征变换,输入输出均为 `hidden_dim`。
   - `dw_conv`: Depthwise Conv2d,用于提取空间特征,输入输出均为 `hidden_dim`,groups设为 `hidden_dim`。
   - `additional_conv`: 1x1 Conv2d,用于中间处理,输入输出均为 `hidden_dim`。
   - `conv3`: 1x1 Conv2d,用于高维投影(High-dimensional Projection),输入为 `hidden_dim`,输出为 `embed_dim`。
   - `activation`: 使用 GELU 激活函数。

3. **前向传播逻辑**:
   - **输入维度转换**: 输入 `x` 形状为 `(B, N, D)`,必须通过 `permute` 和 `view` 转换为 `(B, D, H, W)` 以适应卷积操作。
   - **低维投影**: 对重塑后的 `x` 应用 `self.conv1`。
   - **并行卷积**: 使用 `conv2` (1x1 Conv) 和 `dw_conv` (Depthwise Conv) 并行处理,结果进行元素级相加。
   - **中间处理**: 在并行卷积相加后,必须经过一个额外的 `additional_conv` (1x1 Conv),然后接 `GELU` 激活函数。
   - **高维投影**: 使用 `conv3` (1x1 Conv) 将维度从 `hidden_dim` 升回 `embed_dim`。
   - **残差连接**: 将高维投影的输出与输入的 `identity` (即原始输入 `x` 在 reshape 后的状态) 相加。
   - **输出维度转换**: 最终结果必须通过 `view` 和 `permute` 转换回 `(B, N, D)` 格式。

4. **ViT 集成逻辑 (并行处理)**:
   - 在遍历 Transformer blocks (`self.blocks`) 的循环中,输入 `x` 必须同时送入 `blk` (Transformer块) 和 `uep_module`。
   - **禁止串行处理**: 不要将 `blk` 的输出作为 `uep_module` 的输入。
   - **特征融合**: 将 `blk` 的输出和 `uep_module` 的输出进行相加,作为下一层的输入。
   - 代码逻辑示例:
     ```python
     x_transformer = blk(x, ...)
     x_uep = self.uep_module(x)
     x = x_transformer + x_uep
     ```

# Anti-Patterns
- 不要在 `conv2` 和 `dw_conv` 相加后直接进行高维映射,必须包含 `additional_conv` 和 `GELU`。
- 不要将 `hidden_dim` 硬编码为固定值(如256),必须基于 `embed_dim` 动态计算。
- 不要在循环中将 `blk` 的输出传递给 `uep_module`,这违反了并行处理的要求。
- 不要使用标准的Linear层替代指定的Conv2d结构。
- 不要省略Reshape操作,这是连接ViT序列格式和卷积空间格式的关键。
- 不要随意更改卷积核大小或激活函数类型(除非用户明确要求)。
- 不要在UEP模块中硬编码图像尺寸(如224)或Patch数量(如196),必须通过参数计算。

# Interaction Workflow
1. 确认 `UEP` 的初始化参数,特别是 `hidden_dim` 的计算方式。
2. 编写 `UEP` 的 `forward` 方法,严格按照指定的卷积层顺序和维度变换逻辑。
3. 修改主模型(如 `VisionTransformer`)的前向传播循环,确保 `UEP` 模块与 Transformer 块并行处理输入 `x`。

## Triggers

- 实现UEP模块
- UEP模块实现
- UEP集成到ViT
- UEP与ViT并行处理
- 修改UEPModule的forward逻辑
- UEP reshape B,N,D

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…