torch-rb 0.1.3 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/README.md +5 -2
  4. data/ext/torch/ext.cpp +130 -555
  5. data/ext/torch/extconf.rb +9 -0
  6. data/ext/torch/templates.cpp +55 -0
  7. data/ext/torch/templates.hpp +244 -0
  8. data/lib/torch.rb +209 -171
  9. data/lib/torch/inspector.rb +23 -19
  10. data/lib/torch/native/dispatcher.rb +48 -0
  11. data/lib/torch/native/function.rb +110 -0
  12. data/lib/torch/native/generator.rb +168 -0
  13. data/lib/torch/native/native_functions.yaml +6491 -0
  14. data/lib/torch/native/parser.rb +134 -0
  15. data/lib/torch/nn/avg_pool1d.rb +18 -0
  16. data/lib/torch/nn/avg_pool2d.rb +19 -0
  17. data/lib/torch/nn/avg_pool3d.rb +19 -0
  18. data/lib/torch/nn/avg_poolnd.rb +9 -0
  19. data/lib/torch/nn/batch_norm.rb +75 -0
  20. data/lib/torch/nn/batch_norm1d.rb +11 -0
  21. data/lib/torch/nn/batch_norm2d.rb +11 -0
  22. data/lib/torch/nn/batch_norm3d.rb +11 -0
  23. data/lib/torch/nn/bce_loss.rb +13 -0
  24. data/lib/torch/nn/bce_with_logits_loss.rb +15 -0
  25. data/lib/torch/nn/bilinear.rb +38 -0
  26. data/lib/torch/nn/constant_pad1d.rb +10 -0
  27. data/lib/torch/nn/constant_pad2d.rb +10 -0
  28. data/lib/torch/nn/constant_pad3d.rb +10 -0
  29. data/lib/torch/nn/constant_padnd.rb +18 -0
  30. data/lib/torch/nn/conv1d.rb +22 -0
  31. data/lib/torch/nn/conv2d.rb +10 -20
  32. data/lib/torch/nn/conv3d.rb +22 -0
  33. data/lib/torch/nn/convnd.rb +3 -3
  34. data/lib/torch/nn/cosine_embedding_loss.rb +14 -0
  35. data/lib/torch/nn/cosine_similarity.rb +15 -0
  36. data/lib/torch/nn/cross_entropy_loss.rb +14 -0
  37. data/lib/torch/nn/ctc_loss.rb +15 -0
  38. data/lib/torch/nn/dropoutnd.rb +2 -2
  39. data/lib/torch/nn/embedding_bag.rb +34 -0
  40. data/lib/torch/nn/fold.rb +20 -0
  41. data/lib/torch/nn/functional.rb +379 -32
  42. data/lib/torch/nn/group_norm.rb +36 -0
  43. data/lib/torch/nn/gru.rb +49 -0
  44. data/lib/torch/nn/hardshrink.rb +18 -0
  45. data/lib/torch/nn/hinge_embedding_loss.rb +14 -0
  46. data/lib/torch/nn/identity.rb +14 -0
  47. data/lib/torch/nn/init.rb +58 -1
  48. data/lib/torch/nn/instance_norm.rb +20 -0
  49. data/lib/torch/nn/instance_norm1d.rb +18 -0
  50. data/lib/torch/nn/instance_norm2d.rb +11 -0
  51. data/lib/torch/nn/instance_norm3d.rb +11 -0
  52. data/lib/torch/nn/kl_div_loss.rb +13 -0
  53. data/lib/torch/nn/l1_loss.rb +13 -0
  54. data/lib/torch/nn/layer_norm.rb +35 -0
  55. data/lib/torch/nn/leaky_relu.rb +20 -0
  56. data/lib/torch/nn/linear.rb +12 -11
  57. data/lib/torch/nn/local_response_norm.rb +21 -0
  58. data/lib/torch/nn/log_sigmoid.rb +9 -0
  59. data/lib/torch/nn/log_softmax.rb +14 -0
  60. data/lib/torch/nn/loss.rb +10 -0
  61. data/lib/torch/nn/lp_pool1d.rb +9 -0
  62. data/lib/torch/nn/lp_pool2d.rb +9 -0
  63. data/lib/torch/nn/lp_poolnd.rb +22 -0
  64. data/lib/torch/nn/lstm.rb +66 -0
  65. data/lib/torch/nn/margin_ranking_loss.rb +14 -0
  66. data/lib/torch/nn/max_pool1d.rb +9 -0
  67. data/lib/torch/nn/max_pool2d.rb +9 -0
  68. data/lib/torch/nn/max_pool3d.rb +9 -0
  69. data/lib/torch/nn/max_poolnd.rb +19 -0
  70. data/lib/torch/nn/max_unpool1d.rb +16 -0
  71. data/lib/torch/nn/max_unpool2d.rb +16 -0
  72. data/lib/torch/nn/max_unpool3d.rb +16 -0
  73. data/lib/torch/nn/max_unpoolnd.rb +9 -0
  74. data/lib/torch/nn/module.rb +186 -35
  75. data/lib/torch/nn/mse_loss.rb +2 -2
  76. data/lib/torch/nn/multi_label_margin_loss.rb +13 -0
  77. data/lib/torch/nn/multi_label_soft_margin_loss.rb +13 -0
  78. data/lib/torch/nn/multi_margin_loss.rb +17 -0
  79. data/lib/torch/nn/nll_loss.rb +14 -0
  80. data/lib/torch/nn/pairwise_distance.rb +16 -0
  81. data/lib/torch/nn/parameter.rb +2 -2
  82. data/lib/torch/nn/poisson_nll_loss.rb +16 -0
  83. data/lib/torch/nn/prelu.rb +19 -0
  84. data/lib/torch/nn/reflection_pad1d.rb +10 -0
  85. data/lib/torch/nn/reflection_pad2d.rb +10 -0
  86. data/lib/torch/nn/reflection_padnd.rb +13 -0
  87. data/lib/torch/nn/relu.rb +8 -3
  88. data/lib/torch/nn/replication_pad1d.rb +10 -0
  89. data/lib/torch/nn/replication_pad2d.rb +10 -0
  90. data/lib/torch/nn/replication_pad3d.rb +10 -0
  91. data/lib/torch/nn/replication_padnd.rb +13 -0
  92. data/lib/torch/nn/rnn.rb +22 -0
  93. data/lib/torch/nn/rnn_base.rb +198 -0
  94. data/lib/torch/nn/sequential.rb +1 -10
  95. data/lib/torch/nn/sigmoid.rb +9 -0
  96. data/lib/torch/nn/smooth_l1_loss.rb +13 -0
  97. data/lib/torch/nn/soft_margin_loss.rb +13 -0
  98. data/lib/torch/nn/softmax.rb +18 -0
  99. data/lib/torch/nn/softmax2d.rb +10 -0
  100. data/lib/torch/nn/softmin.rb +14 -0
  101. data/lib/torch/nn/softplus.rb +19 -0
  102. data/lib/torch/nn/softshrink.rb +18 -0
  103. data/lib/torch/nn/softsign.rb +9 -0
  104. data/lib/torch/nn/tanh.rb +9 -0
  105. data/lib/torch/nn/tanhshrink.rb +9 -0
  106. data/lib/torch/nn/triplet_margin_loss.rb +18 -0
  107. data/lib/torch/nn/unfold.rb +19 -0
  108. data/lib/torch/nn/utils.rb +25 -0
  109. data/lib/torch/nn/weighted_loss.rb +10 -0
  110. data/lib/torch/nn/zero_pad2d.rb +9 -0
  111. data/lib/torch/random.rb +10 -0
  112. data/lib/torch/tensor.rb +51 -44
  113. data/lib/torch/version.rb +1 -1
  114. metadata +98 -6
  115. data/lib/torch/ext.bundle +0 -0
@@ -1,3 +1,3 @@
1
1
  module Torch
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.8"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: torch-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-30 00:00:00.000000000 Z
11
+ date: 2020-01-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rice
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '2.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '2.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -106,27 +106,118 @@ files:
106
106
  - README.md
107
107
  - ext/torch/ext.cpp
108
108
  - ext/torch/extconf.rb
109
+ - ext/torch/templates.cpp
110
+ - ext/torch/templates.hpp
109
111
  - lib/torch-rb.rb
110
112
  - lib/torch.rb
111
- - lib/torch/ext.bundle
112
113
  - lib/torch/inspector.rb
114
+ - lib/torch/native/dispatcher.rb
115
+ - lib/torch/native/function.rb
116
+ - lib/torch/native/generator.rb
117
+ - lib/torch/native/native_functions.yaml
118
+ - lib/torch/native/parser.rb
113
119
  - lib/torch/nn/alpha_dropout.rb
120
+ - lib/torch/nn/avg_pool1d.rb
121
+ - lib/torch/nn/avg_pool2d.rb
122
+ - lib/torch/nn/avg_pool3d.rb
123
+ - lib/torch/nn/avg_poolnd.rb
124
+ - lib/torch/nn/batch_norm.rb
125
+ - lib/torch/nn/batch_norm1d.rb
126
+ - lib/torch/nn/batch_norm2d.rb
127
+ - lib/torch/nn/batch_norm3d.rb
128
+ - lib/torch/nn/bce_loss.rb
129
+ - lib/torch/nn/bce_with_logits_loss.rb
130
+ - lib/torch/nn/bilinear.rb
131
+ - lib/torch/nn/constant_pad1d.rb
132
+ - lib/torch/nn/constant_pad2d.rb
133
+ - lib/torch/nn/constant_pad3d.rb
134
+ - lib/torch/nn/constant_padnd.rb
135
+ - lib/torch/nn/conv1d.rb
114
136
  - lib/torch/nn/conv2d.rb
137
+ - lib/torch/nn/conv3d.rb
115
138
  - lib/torch/nn/convnd.rb
139
+ - lib/torch/nn/cosine_embedding_loss.rb
140
+ - lib/torch/nn/cosine_similarity.rb
141
+ - lib/torch/nn/cross_entropy_loss.rb
142
+ - lib/torch/nn/ctc_loss.rb
116
143
  - lib/torch/nn/dropout.rb
117
144
  - lib/torch/nn/dropout2d.rb
118
145
  - lib/torch/nn/dropout3d.rb
119
146
  - lib/torch/nn/dropoutnd.rb
120
147
  - lib/torch/nn/embedding.rb
148
+ - lib/torch/nn/embedding_bag.rb
121
149
  - lib/torch/nn/feature_alpha_dropout.rb
150
+ - lib/torch/nn/fold.rb
122
151
  - lib/torch/nn/functional.rb
152
+ - lib/torch/nn/group_norm.rb
153
+ - lib/torch/nn/gru.rb
154
+ - lib/torch/nn/hardshrink.rb
155
+ - lib/torch/nn/hinge_embedding_loss.rb
156
+ - lib/torch/nn/identity.rb
123
157
  - lib/torch/nn/init.rb
158
+ - lib/torch/nn/instance_norm.rb
159
+ - lib/torch/nn/instance_norm1d.rb
160
+ - lib/torch/nn/instance_norm2d.rb
161
+ - lib/torch/nn/instance_norm3d.rb
162
+ - lib/torch/nn/kl_div_loss.rb
163
+ - lib/torch/nn/l1_loss.rb
164
+ - lib/torch/nn/layer_norm.rb
165
+ - lib/torch/nn/leaky_relu.rb
124
166
  - lib/torch/nn/linear.rb
167
+ - lib/torch/nn/local_response_norm.rb
168
+ - lib/torch/nn/log_sigmoid.rb
169
+ - lib/torch/nn/log_softmax.rb
170
+ - lib/torch/nn/loss.rb
171
+ - lib/torch/nn/lp_pool1d.rb
172
+ - lib/torch/nn/lp_pool2d.rb
173
+ - lib/torch/nn/lp_poolnd.rb
174
+ - lib/torch/nn/lstm.rb
175
+ - lib/torch/nn/margin_ranking_loss.rb
176
+ - lib/torch/nn/max_pool1d.rb
177
+ - lib/torch/nn/max_pool2d.rb
178
+ - lib/torch/nn/max_pool3d.rb
179
+ - lib/torch/nn/max_poolnd.rb
180
+ - lib/torch/nn/max_unpool1d.rb
181
+ - lib/torch/nn/max_unpool2d.rb
182
+ - lib/torch/nn/max_unpool3d.rb
183
+ - lib/torch/nn/max_unpoolnd.rb
125
184
  - lib/torch/nn/module.rb
126
185
  - lib/torch/nn/mse_loss.rb
186
+ - lib/torch/nn/multi_label_margin_loss.rb
187
+ - lib/torch/nn/multi_label_soft_margin_loss.rb
188
+ - lib/torch/nn/multi_margin_loss.rb
189
+ - lib/torch/nn/nll_loss.rb
190
+ - lib/torch/nn/pairwise_distance.rb
127
191
  - lib/torch/nn/parameter.rb
192
+ - lib/torch/nn/poisson_nll_loss.rb
193
+ - lib/torch/nn/prelu.rb
194
+ - lib/torch/nn/reflection_pad1d.rb
195
+ - lib/torch/nn/reflection_pad2d.rb
196
+ - lib/torch/nn/reflection_padnd.rb
128
197
  - lib/torch/nn/relu.rb
198
+ - lib/torch/nn/replication_pad1d.rb
199
+ - lib/torch/nn/replication_pad2d.rb
200
+ - lib/torch/nn/replication_pad3d.rb
201
+ - lib/torch/nn/replication_padnd.rb
202
+ - lib/torch/nn/rnn.rb
203
+ - lib/torch/nn/rnn_base.rb
129
204
  - lib/torch/nn/sequential.rb
205
+ - lib/torch/nn/sigmoid.rb
206
+ - lib/torch/nn/smooth_l1_loss.rb
207
+ - lib/torch/nn/soft_margin_loss.rb
208
+ - lib/torch/nn/softmax.rb
209
+ - lib/torch/nn/softmax2d.rb
210
+ - lib/torch/nn/softmin.rb
211
+ - lib/torch/nn/softplus.rb
212
+ - lib/torch/nn/softshrink.rb
213
+ - lib/torch/nn/softsign.rb
214
+ - lib/torch/nn/tanh.rb
215
+ - lib/torch/nn/tanhshrink.rb
216
+ - lib/torch/nn/triplet_margin_loss.rb
217
+ - lib/torch/nn/unfold.rb
218
+ - lib/torch/nn/utils.rb
219
+ - lib/torch/nn/weighted_loss.rb
220
+ - lib/torch/nn/zero_pad2d.rb
130
221
  - lib/torch/optim/adadelta.rb
131
222
  - lib/torch/optim/adagrad.rb
132
223
  - lib/torch/optim/adam.rb
@@ -139,6 +230,7 @@ files:
139
230
  - lib/torch/optim/rmsprop.rb
140
231
  - lib/torch/optim/rprop.rb
141
232
  - lib/torch/optim/sgd.rb
233
+ - lib/torch/random.rb
142
234
  - lib/torch/tensor.rb
143
235
  - lib/torch/utils/data/data_loader.rb
144
236
  - lib/torch/utils/data/tensor_dataset.rb
@@ -162,7 +254,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
162
254
  - !ruby/object:Gem::Version
163
255
  version: '0'
164
256
  requirements: []
165
- rubygems_version: 3.0.3
257
+ rubygems_version: 3.1.2
166
258
  signing_key:
167
259
  specification_version: 4
168
260
  summary: Deep learning for Ruby, powered by LibTorch
Binary file