Robotics
Transformers
ONNX
PyTorch
ballnet
metaball
multimodal
custom_code
han-xudong commited on
Commit
0be4aac
·
1 Parent(s): 26abecd

modified: .gitattributes

Browse files

new file: __init__.py
new file: config.json
new file: model.onnx
new file: modeling.py

Files changed (5) hide show
  1. .gitattributes +1 -1
  2. __init__.py +1 -0
  3. config.json +15 -0
  4. model.onnx +3 -0
  5. modeling.py +52 -0
.gitattributes CHANGED
@@ -32,4 +32,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
32
  *.xz filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
- *tfevents* filter=lfs diff=lfs merge=lfs -text
 
32
  *.xz filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
__init__.py ADDED
@@ -0,0 +1 @@
 
 
1
+ from .modeling import FingerNet, FingerNetConfig
config.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "asRobotics/fingernet",
3
+ "architectures": ["FingerNet"],
4
+ "model_type": "fingernet",
5
+ "x_dim": [6],
6
+ "y_dim": [6, 1800],
7
+ "h1_dim": [100, 1000],
8
+ "h2_dim": [100, 1000],
9
+ "torch_dtype": "float32",
10
+ "layer_norm": false,
11
+ "use_activation": "relu",
12
+ "auto_map": {
13
+ "AutoModel": "modeling.FingerNet"
14
+ }
15
+ }
model.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1138bf9e90c36e6e7e68e397dc8d109c444d96e95f3e8c45d65e5c3b756528c1
3
+ size 15815554
modeling.py ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import torch
2
+ import torch.nn as nn
3
+ from transformers import PreTrainedModel, PretrainedConfig
4
+
5
+ class FingerNetConfig(PretrainedConfig):
6
+ model_type = "fingernet"
7
+
8
+ def __init__(
9
+ self,
10
+ x_dim=[6],
11
+ y_dim=[6, 1800],
12
+ h1_dim=[100, 1000],
13
+ h2_dim=[100, 1000],
14
+ **kwargs,
15
+ ):
16
+ super().__init__(**kwargs)
17
+ self.x_dim = x_dim
18
+ self.y_dim = y_dim
19
+ self.h1_dim = h1_dim
20
+ self.h2_dim = h2_dim
21
+
22
+
23
+ class FingerNet(PreTrainedModel):
24
+ config_class = FingerNetConfig
25
+
26
+ def __init__(self, config):
27
+ super().__init__(config)
28
+ self.x_dim = config.x_dim
29
+ self.y_dim = config.y_dim
30
+ self.h1_dim = config.h1_dim
31
+ self.h2_dim = config.h2_dim
32
+
33
+ # build sub-networks
34
+ self.branches = nn.ModuleList()
35
+ for i in range(len(self.y_dim)):
36
+ net = nn.Sequential(
37
+ nn.Linear(self.x_dim[0], self.h1_dim[i]),
38
+ nn.ReLU(),
39
+ nn.Linear(self.h1_dim[i], self.h2_dim[i]),
40
+ nn.ReLU(),
41
+ nn.Linear(self.h2_dim[i], self.y_dim[i]),
42
+ )
43
+ self.branches.append(net)
44
+
45
+ # initialize weights
46
+ self.post_init()
47
+
48
+ def forward(self, x):
49
+ if isinstance(x, (list, tuple)):
50
+ x = torch.tensor(x, dtype=torch.float32)
51
+ outputs = [branch(x) for branch in self.branches]
52
+ return tuple(outputs)