GPUCodeForces/S1/uucoco_#54/SoftplusGLU_torch.py

23 lines
587 B
Python

import torch
import torch.nn as nn
import torch.nn.functional as F
class Model(nn.Module):
def __init__(self, beta=1.0, threshold=20.0):
super().__init__()
self.beta = beta
self.threshold = threshold
def forward(self, x: torch.Tensor) -> torch.Tensor:
gate, act = x.chunk(2, dim=-1)
return F.softplus(gate, beta=self.beta, threshold=self.threshold) * act
batch_size = 128
feature_dim = 512
def get_inputs():
x = torch.randn(batch_size, feature_dim, dtype=torch.float32)
return [x]
def get_init_inputs():
return [1.0, 20.0]