Issues with Creating Updatable Neural Network Model in Core ML using coremltools (8.0) #2383
Labels
bug
Unexpected behaviour that should be corrected (type)
NN backend only
Affects only the NN backend (not MIL backend)
🐞Describing the bug
I am encountering persistent issues while trying to create an updatable neural network model in Core ML using the coremltools library. My goal is to develop a model that supports on-device training and updates, but despite following the documented procedures for marking layers as updatable and adding a categorical cross-entropy loss layer, the model consistently fails to be recognized as updatable.
Stack Trace
0 1 WilfriedBernard_19480107 2024-10-04 14:47:49.550 ... 30.188882 Abgebrochen Verbessert
1 2 WilfriedBernard_19480107 2024-10-04 14:46:57.455 ... 30.358008 Abgebrochen Verbessert
2 3 WilfriedBernard_19480107 2024-10-06 12:55:45.496 ... 10.179011 Abgebrochen Verbessert
3 4 WilfriedBernard_19480107 2024-10-06 16:32:36.915 ... 10.248076 Abgebrochen Verbessert
4 5 WilfriedBernard_19480107 2024-10-06 22:04:08.139 ... 89.004450 Abgebrochen Verschlechtert
[5 rows x 11 columns]
Datum zu DateTime konvertiert.
Datum-Features extrahiert.
Features und Zielwerte extrahiert.
Features Beispiel: [[ 0. 15.3258797 0. 0. 0. 30.18888199
4. 0. ]
[ 0. 15.87591185 0. 0. 0. 30.35800803
4. 0. ]
[ 1.7913756 12.65480479 62. 62. 0. 10.17901099
6. 1. ]
[ 1.82481292 15.24270069 62. 67. 5. 10.24807596
6. 2. ]
[ 7.7663508 15.24471629 68. 74. 6. 89.00444996
6. 2. ]]
Zielwerte in numerische Werte umgewandelt: [1 1 1 1 2]
Klassenlabels: ['Unverändert', 'Verbessert', 'Verschlechtert']
Input-Größe: 8, Anzahl Klassen: 3
Neural Network Builder erstellt.
Erste Schicht (fc1) hinzugefügt.
Aktivierungsschicht (relu1) hinzugefügt.
Zweite Schicht (fc2) hinzugefügt.
Softmax-Schicht hinzugefügt.
Klassenlabels gesetzt.
Layer Name: fc1, Type: innerProduct
Layer Name: relu1, Type: activation
Layer Name: fc2, Type: innerProduct
Layer Name: softmax, Type: softmax
Updatebare Layer: ['fc1', 'fc2']
Modell als updatable markiert.
Name: fc2 (Type: innerProduct)
Input blobs: ['relu1_output']
Output blobs: ['fc2_output']
Name: fc1 (Type: innerProduct)
Input blobs: ['input_1']
Output blobs: ['fc1_output']
Now adding input output_true as target for categorical cross-entropy loss layer.
Verlustfunktion gesetzt.
SGD Optimierer gesetzt.
Anzahl der Epochen gesetzt.
Erster Trainingsinput hinzugefügt: name: "input_1"
type {
multiArrayType {
shape: 8
dataType: DOUBLE
}
}
Zweiter Trainingsinput hinzugefügt: name: "output_true"
type {
multiArrayType {
shape: 1
dataType: INT32
}
}
Trainingsinputs definiert:
Name: input_1, Typ: multiArrayType
Name: classLabel, Typ: stringType
Name: input_1, Typ: multiArrayType
Name: output_true, Typ: multiArrayType
spec.neuralNetwork hat layer: []
Das Modell enthält KEINE Update-Parameter.
Updatable Modell als 'UpdatableTrainingEffectModel.mlmodel' gespeichert.
To Reproduce
The text was updated successfully, but these errors were encountered: