@@ -70,6 +70,32 @@ object InputSpec {
70
70
}
71
71
}
72
72
73
+ @ js.native
74
+ @ JSGlobal
75
+ class SymbolicTensor protected () extends js.Object {
76
+ def this (
77
+ dtype : DataType ,
78
+ shape : Shape ,
79
+ sourceLayer : Layer ,
80
+ inputs : js.Array [SymbolicTensor ],
81
+ callArgs : Kwargs ,
82
+ name : String = ??? ,
83
+ outputTensorIndex : Double = ???
84
+ ) = this ()
85
+ def dtype : DataType = js.native
86
+ def shape : Shape = js.native
87
+ var sourceLayer : Layer = js.native
88
+ def inputs : js.Array [SymbolicTensor ] = js.native
89
+ def callArgs : Kwargs = js.native
90
+ def outputTensorIndex : Double = js.native
91
+ def id : Double = js.native
92
+ def name : String = js.native
93
+ def originalName : String = js.native
94
+ def rank : Double = js.native
95
+ var nodeIndex : Double = js.native
96
+ var tensorIndex : Double = js.native
97
+ }
98
+
73
99
@ js.native
74
100
trait NodeConfig extends js.Object {
75
101
var outboundLayer : Layer = js.native
@@ -188,143 +214,14 @@ object Layer extends js.Object {
188
214
def nodeKey (layer : Layer , nodeIndex : Double ): String = js.native
189
215
}
190
216
191
- @ js.native
192
- trait InputLayerConfig extends js.Object {
193
- var inputShape : Shape = js.native
194
- var batchSize : Double = js.native
195
- var batchInputShape : Shape = js.native
196
- var dtype : DataType = js.native
197
- var sparse : Boolean = js.native
198
- var name : String = js.native
199
- }
200
-
201
- @ js.native
202
- @ JSGlobal
203
- class InputLayer protected () extends Layer {
204
- def this (config : InputLayerConfig ) = this ()
205
- var sparse : Boolean = js.native
206
- // TODO until we have real union types aka dotty, we have to stick with the wider type of the base class
207
- // @JSName("apply")
208
- // override def apply(inputs: TensorND | js.Array[TensorND] | SymbolicTensor | js.Array[SymbolicTensor], kwargs: Kwargs = ???): TensorND | js.Array[TensorND] | SymbolicTensor = js.native
209
- override def getConfig (): serialization.ConfigDict = js.native
210
- }
211
-
212
- @ js.native
213
- @ JSGlobal
214
- object InputLayer extends js.Object {
215
- def className : String = js.native
216
- }
217
-
218
- @ js.native
219
- trait InputConfig extends js.Object {
220
- var shape : Shape = js.native
221
- var batchShape : Shape = js.native
222
- var name : String = js.native
223
- var dtype : DataType = js.native
224
- var sparse : Boolean = js.native
225
- }
226
-
227
- @ js.native
228
- trait ContainerConfig extends js.Object {
229
- var inputs : SymbolicTensor | js.Array [SymbolicTensor ] = js.native
230
- var outputs : SymbolicTensor | js.Array [SymbolicTensor ] = js.native
231
- var name : String = js.native
232
- }
233
-
234
- @ js.native
235
- @ JSGlobal
236
- abstract class Container protected () extends Layer {
237
- def this (config : ContainerConfig ) = this ()
238
- var inputs : js.Array [SymbolicTensor ] = js.native
239
- var outputs : js.Array [SymbolicTensor ] = js.native
240
- var inputLayers : js.Array [Layer ] = js.native
241
- var inputLayersNodeIndices : js.Array [Double ] = js.native
242
- var inputLayersTensorIndices : js.Array [Double ] = js.native
243
- var outputLayers : js.Array [Layer ] = js.native
244
- var outputLayersNodeIndices : js.Array [Double ] = js.native
245
- var outputLayersTensorIndices : js.Array [Double ] = js.native
246
- var layers : js.Array [Layer ] = js.native
247
- var layersByDepth : Container .LayersByDepth = js.native
248
- var nodesByDepth : Container .NodesByDepth = js.native
249
- var containerNodes : Set [String ] = js.native
250
- var inputNames : js.Array [String ] = js.native
251
- var outputNames : js.Array [String ] = js.native
252
- var feedInputShapes : js.Array [Shape ] = js.native
253
- protected var internalInputShapes : js.Array [Shape ] = js.native
254
- protected var internalOutputShapes : js.Array [Shape ] = js.native
255
- protected var feedInputNames : js.Array [String ] = js.native
256
- protected var feedOutputNames : js.Array [String ] = js.native
257
- // TODO This is a var in the base class. Unlike TS Scala does not allow to override a var with a def or val in subclasses
258
- // def trainableWeights: js.Array[LayerVariable] = js.native
259
- // def nonTrainableWeights: js.Array[LayerVariable] = js.native
260
- override def weights : js.Array [LayerVariable ] = js.native
261
- def loadWeights (
262
- weightsJSON : JsonDict | NamedTensorMap ,
263
- skipMismatch : Boolean = ??? ,
264
- isNamedTensorMap : Boolean = ???
265
- ): Unit = js.native
266
- def toJSON (unused : js.Any = ??? , returnString : Boolean = ??? ): String | JsonDict = js.native
267
- override def call (
268
- inputs : TensorND | js.Array [TensorND ],
269
- kwargs : Kwargs
270
- ): TensorND | js.Array [TensorND ] = js.native
271
- override def computeMask (
272
- inputs : TensorND | js.Array [TensorND ],
273
- mask : TensorND | js.Array [TensorND ] = ???
274
- ): TensorND | js.Array [TensorND ] = js.native
275
- override def computeOutputShape (inputShape : Shape | js.Array [Shape ]): Shape | js.Array [Shape ] =
276
- js.native
277
- def runInternalGraph (
278
- inputs : js.Array [TensorND ],
279
- masks : js.Array [TensorND ] = ???
280
- ): js.Tuple3 [js.Array [TensorND ], js.Array [TensorND ], js.Array [Shape ]] = js.native
281
- def getLayer (name : String = ??? , index : Double = ??? ): Layer = js.native
282
- override def calculateLosses (): js.Array [Scalar ] = js.native
283
- override def getConfig (): serialization.ConfigDict = js.native
284
- override def stateful : Boolean = js.native
285
- }
286
-
287
- @ js.native
288
- @ JSGlobal
289
- object Container extends js.Object {
290
-
291
- @ js.native
292
- trait LayersByDepth extends js.Object {
293
- @ JSBracketAccess
294
- def apply (depth : String ): js.Array [Layer ] = js.native
295
- @ JSBracketAccess
296
- def update (depth : String , v : js.Array [Layer ]): Unit = js.native
297
- }
298
-
299
- @ js.native
300
- trait NodesByDepth extends js.Object {
301
- @ JSBracketAccess
302
- def apply (depth : String ): js.Array [Node ] = js.native
303
- @ JSBracketAccess
304
- def update (depth : String , v : js.Array [Node ]): Unit = js.native
305
- }
306
- def fromConfig [T <: serialization.Serializable ](
307
- cls : serialization.SerializableConstructor [T ],
308
- config : serialization.ConfigDict
309
- ): T = js.native
310
- }
311
-
312
217
@ js.native
313
218
@ JSGlobalScope
314
219
object Topology extends js.Object {
315
220
type Op = js.Function1 [LayerVariable , LayerVariable ]
316
221
type CallHook = js.Function2 [TensorND | js.Array [TensorND ], Kwargs , Unit ]
317
- def Input (config : InputConfig ): SymbolicTensor = js.native
318
222
def getSourceInputs (
319
223
tensor : SymbolicTensor ,
320
224
layer : Layer = ??? ,
321
225
nodeIndex : Double = ???
322
226
): js.Array [SymbolicTensor ] = js.native
323
- def loadWeightsFromNamedTensorMap (weights : NamedTensorMap , layers : js.Array [Layer ]): Unit =
324
- js.native
325
- def loadWeightsFromJson (
326
- weightsJSON : JsonDict ,
327
- layers : js.Array [Layer ],
328
- skipMismatch : Boolean = ???
329
- ): Unit = js.native
330
227
}
0 commit comments