Layer succesfully added to model for first time

This commit is contained in:
Luis Fernando Molina committed 2021-02-17 09:08:32 +01:00
1 parent 76a6134185
commit 7db1c6886a
4 files changed
+60 -44

No files matched your search

@@ -76,9 +76,9 @@ function newSuperalgosFunctionLibraryLearningSessionFunctions() {
'Conv 1D Layer->Conv 2D Layer->Conv 2D Transpose Layer->Conv 3D Layer->Cropping 2D Layer->Depthwise Convo 2D Layer->Separable Convo 2D Layer->Up Sampling 2D Layer->' +
'Activation Layer->Dense Layer->Dropout Layer->Embedding Layer->Flatten Layer->Permutable Layer->Rrepeat Vector Layer->Reshape Layer->Spatial Dropout 1D Layer->' +
'Elu Layer->Leaky Relu Layer->Prelu Layer->Relu Layer->Softmax Layer->Thresholded Relu Layer->'+
'Dimensionality Units->Activation Functions->Batch Size->Dtype->Trainable->Weights->Tensor->Kernel->Bias->' +
'Kernel Initializer->Kernel Contraint->Kernel Regularizer->' +
'Bias Initializer->Bias Contraint->Bias Regularizer->'
'Dimensionality Units->Activation Function->Batch Size->Dtype->Trainable->Weights->Tensor->Kernel->Bias->' +
'Kernel Initializer->Kernel Constraint->Kernel Regularizer->' +
'Bias Initializer->Bias Constraint->Bias Regularizer->'
let learningSystem = UI.projects.superalgos.functionLibraries.protocolNode.getProtocolNode(node.learningSystemReference.payload.referenceParent, false, true, true, false, false, lightingPath)
@@ -1197,7 +1197,7 @@ function newUiObject() {
answer to the command to stop. In those cases, we will stop execute the onStopped funcion anyways so as to
return the UI to its default state.
*/
setTimeout(returnToDefaultState, 90000)
setTimeout(returnToDefaultState, 15000)
function returnToDefaultState() {
if (wasStopped === false) {
completeStop(callBackFunction, event)
@@ -978,6 +978,13 @@
{
"type": "Dense Layer",
"menuItems": [
{
"action": "Configure",
"label": "Configure",
"iconPathOn": "configuration",
"iconPathOff": "configuration",
"actionFunction": "uiObject.configEditor.activate"
},
{
"action": "Add UI Object",
"disableIfPropertyIsDefined": true,
@@ -1052,6 +1059,12 @@
"actionFunction": "payload.executeAction"
}
],
"editors": {
"config": true
},
"initialValues": {
"config": "{ \n \"codeName\": \"\"\n}"
},
"addLeftIcons": true,
"level": 3,
"attachingRules": {
@@ -98,16 +98,16 @@ exports.newTensorFlowBotModulesTensorFlowLibrary = function (processIndex) {
learningSystem.machineLearningLibrary.typeOfLearning !== undefined &&
learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel !== undefined &&
learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.model !== undefined &&
learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.api !== undefined
learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.model.api !== undefined
) {
switch (learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.api.type) {
switch (learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.model.api.type) {
case 'Layers API': {
tensorFlowAPI = require("@tensorflow/tfjs-layers")
if (learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.api.layersModel === undefined) { return }
if (learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.model.api.layersModel === undefined) { return }
switch (learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.api.layersModel.type) {
switch (learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.model.api.layersModel.type) {
case 'Secuential Model': {
setupSecuentialModel(learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.api.layersModel)
setupSecuentialModel(learningSystem.machineLearningLibrary.typeOfLearning.typeOfModel.model.api.layersModel)
break
}
case 'Functional Model': {
@@ -144,7 +144,7 @@ exports.newTensorFlowBotModulesTensorFlowLibrary = function (processIndex) {
return
}
tensorFlowModel = tensorFlowAPI.sequetial()
tensorFlowModel = tensorFlowAPI.sequential()
for (let i = 0; i < secuentialModel.layers.length; i++) {
let layerNode = secuentialModel.layers[i]
@@ -152,10 +152,10 @@ exports.newTensorFlowBotModulesTensorFlowLibrary = function (processIndex) {
let argsObject = {}
let layerObject
if (layerNode.layerType === undefined) { continue }
if (layerNode.layerType.layer === undefined) { continue }
if (layerNode.typeOfLayer === undefined) { continue }
if (layerNode.typeOfLayer.layer === undefined) { continue }
switch (layerNode.layerType.layer.type) {
switch (layerNode.typeOfLayer.layer.type) {
case 'Dense Layer': {
layersFunction = tensorFlowAPI.layers.dense
break
@@ -166,54 +166,59 @@ exports.newTensorFlowBotModulesTensorFlowLibrary = function (processIndex) {
case ' ': {
break
}
default: {
TS.projects.superalgos.globals.loggerVariables.VARIABLES_BY_PROCESS_INDEX_MAP.get(processIndex).BOT_MAIN_LOOP_LOGGER_MODULE_OBJECT.write(MODULE_NAME,
'[WARN] Layer of type ' + layerNode.typeOfLayer.layer.type + ' not implemented yet.')
continue
}
}
if (layerNode.layerType.layer.dimensionalityUnits !== undefined) {
argsObject.units = layerNode.layerType.layer.dimensionalityUnits.config.value
if (layerNode.typeOfLayer.layer.dimensionalityUnits !== undefined) {
argsObject.units = layerNode.typeOfLayer.layer.dimensionalityUnits.config.value
}
if (layerNode.layerType.layer.activationFunction !== undefined) {
argsObject.activation = layerNode.layerType.layer.activationFunction.config.value
if (layerNode.typeOfLayer.layer.activationFunction !== undefined) {
argsObject.activation = layerNode.typeOfLayer.layer.activationFunction.config.value
}
if (layerNode.layerType.layer.bias !== undefined) {
if (layerNode.typeOfLayer.layer.bias !== undefined) {
argsObject.useBias = true
}
if (layerNode.layerType.layer.kernel !== undefined) {
if (layerNode.layerType.layer.kernel.initializer !== undefined) {
argsObject.kernelInitializer = layerNode.layerType.layer.kernel.initializer.config.value
if (layerNode.typeOfLayer.layer.kernel !== undefined) {
if (layerNode.typeOfLayer.layer.kernel.kernelInitializer !== undefined) {
argsObject.kernelInitializer = layerNode.typeOfLayer.layer.kernel.kernelInitializer.config.value
}
if (layerNode.layerType.layer.kernel.constraint !== undefined) {
argsObject.kernelConstraint = layerNode.layerType.layer.kernel.constraint.config.value
if (layerNode.typeOfLayer.layer.kernel.kernelConstraint !== undefined) {
argsObject.kernelConstraint = layerNode.typeOfLayer.layer.kernel.kernelConstraint.config.value
}
if (layerNode.layerType.layer.kernel.regularizer !== undefined) {
argsObject.kernelRegularizer = layerNode.layerType.layer.kernel.regularizer.config.value
if (layerNode.typeOfLayer.layer.kernel.kernelRegularizer !== undefined) {
argsObject.kernelRegularizer = layerNode.typeOfLayer.layer.kernel.kernelRegularizer.config.value
}
}
if (layerNode.layerType.layer.bias !== undefined) {
if (layerNode.layerType.layer.bias.initializer !== undefined) {
argsObject.biasInitializer = layerNode.layerType.layer.bias.initializer.config.value
if (layerNode.typeOfLayer.layer.bias !== undefined) {
if (layerNode.typeOfLayer.layer.bias.biasInitializer !== undefined) {
argsObject.biasInitializer = layerNode.typeOfLayer.layer.bias.biasInitializer.config.value
}
if (layerNode.layerType.layer.bias.constraint !== undefined) {
argsObject.biasConstraint = layerNode.layerType.layer.bias.constraint.config.value
if (layerNode.typeOfLayer.layer.bias.biasConstraint !== undefined) {
argsObject.biasConstraint = layerNode.typeOfLayer.layer.bias.biasConstraint.config.value
}
if (layerNode.layerType.layer.bias.regularizer !== undefined) {
argsObject.biasRegularizer = layerNode.layerType.layer.bias.regularizer.config.value
if (layerNode.typeOfLayer.layer.bias.biasRegularizer !== undefined) {
argsObject.biasRegularizer = layerNode.typeOfLayer.layer.bias.biasRegularizer.config.value
}
}
if (layerNode.layerType.layer.batchSize !== undefined) {
argsObject.batchSize = layerNode.layerType.layer.batchSize.config.value
if (layerNode.typeOfLayer.layer.batchSize !== undefined) {
argsObject.batchSize = layerNode.typeOfLayer.layer.batchSize.config.value
}
if (layerNode.layerType.layer.dtype !== undefined) {
argsObject.dtype = layerNode.layerType.layer.dtype.config.value
if (layerNode.typeOfLayer.layer.dtype !== undefined) {
argsObject.dtype = layerNode.typeOfLayer.layer.dtype.config.value
}
if (layerNode.layerType.layer.trainable !== undefined) {
argsObject.trainable = layerNode.layerType.layer.trainable.config.value
if (layerNode.typeOfLayer.layer.trainable !== undefined) {
argsObject.trainable = layerNode.typeOfLayer.layer.trainable.config.value
}
if (layerNode.layerType.layer.weights !== undefined) {
if (layerNode.layerType.layer.weights.tensor !== undefined) {
argsObject.weights = layerNode.layerType.layer.weights.tensor.config.value
if (layerNode.typeOfLayer.layer.weights !== undefined) {
if (layerNode.typeOfLayer.layer.weights.tensor !== undefined) {
argsObject.weights = layerNode.typeOfLayer.layer.weights.tensor.config.value
}
}
argsObject.name = layerNode.layerType.layer.name
argsObject.name = layerNode.typeOfLayer.layer.config.codeName
/*
Check if this is the input layer.
@@ -224,8 +229,6 @@ exports.newTensorFlowBotModulesTensorFlowLibrary = function (processIndex) {
}
}
secuentialModel.inputLayer
layerObject = layersFunction(argsObject)
tensorFlowModel.add(layerObject)