MCPcopy Create free account
hub / github.com/MotrixLab/insactor / __init__

Method __init__

diffplanner/models/transformers/actor.py:16–77  ·  view source on GitHub ↗
(self,
                 max_seq_len=16,
                 njoints=None,
                 nfeats=None,
                 input_feats=None,
                 latent_dim=256,
                 output_dim=256,
                 condition_dim=None,
                 num_heads=4,
                 ff_size=1024,
                 num_layers=8,
                 activation='gelu',
                 dropout=0.1,
                 use_condition=False,
                 num_class=None,
                 use_final_proj=False,
                 output_var=False,
                 pos_embedding='sinusoidal',
                 init_cfg=None)

Source from the content-addressed store, hash-verified

14@SUBMODULES.register_module()
15class ACTOREncoder(BaseModule):
16 def __init__(self,
17 max_seq_len=16,
18 njoints=None,
19 nfeats=None,
20 input_feats=None,
21 latent_dim=256,
22 output_dim=256,
23 condition_dim=None,
24 num_heads=4,
25 ff_size=1024,
26 num_layers=8,
27 activation='gelu',
28 dropout=0.1,
29 use_condition=False,
30 num_class=None,
31 use_final_proj=False,
32 output_var=False,
33 pos_embedding='sinusoidal',
34 init_cfg=None):
35 super().__init__(init_cfg=init_cfg)
36 self.njoints = njoints
37 self.nfeats = nfeats
38 if input_feats is None:
39 assert self.njoints is not None and self.nfeats is not None
40 self.input_feats = njoints * nfeats
41 else:
42 self.input_feats = input_feats
43 self.max_seq_len = max_seq_len
44 self.latent_dim = latent_dim
45 self.condition_dim = condition_dim
46 self.use_condition = use_condition
47 self.num_class = num_class
48 self.use_final_proj = use_final_proj
49 self.output_var = output_var
50 self.skelEmbedding = nn.Linear(self.input_feats, self.latent_dim)
51 if self.use_condition:
52 if num_class is None:
53 self.mu_layer = build_MLP(self.condition_dim, self.latent_dim)
54 if self.output_var:
55 self.sigma_layer = build_MLP(self.condition_dim, self.latent_dim)
56 else:
57 self.mu_layer = nn.Parameter(torch.randn(num_class, self.latent_dim))
58 if self.output_var:
59 self.sigma_layer = nn.Parameter(torch.randn(num_class, self.latent_dim))
60 else:
61 if self.output_var:
62 self.query = nn.Parameter(torch.randn(2, self.latent_dim))
63 else:
64 self.query = nn.Parameter(torch.randn(1, self.latent_dim))
65 if pos_embedding == 'sinusoidal':
66 self.pos_encoder = SinusoidalPositionalEncoding(latent_dim, dropout)
67 else:
68 self.pos_encoder = LearnedPositionalEncoding(latent_dim, dropout, max_len=max_seq_len)
69 seqTransEncoderLayer = nn.TransformerEncoderLayer(
70 d_model=self.latent_dim,
71 nhead=num_heads,
72 dim_feedforward=ff_size,
73 dropout=dropout,

Callers 1

__init__Method · 0.45

Calls 3

build_MLPFunction · 0.85

Tested by

no test coverage detected