Enhorabuena a los ganadores. iterm es super útil, un gran trabajo de @Dmitry Maslennikov
Añado la respuesta que me han dado en el community en inglés:
Hola Kurro!
Gracias por tu artículo y por probar IntegratedML. Con suerte, le indicaremos la dirección correcta:
1. IntegratedML no es "solo redes neuronales", sino más bien una canalización de autoML (consulte la Guía de AutoML) que primero prueba varios métodos de ML en un subconjunto de datos y luego realiza una ejecución de entrenamiento utilizando los datos completos utilizando el método de ML (redes neuronales). , regresión logística, bosques aleatorios, etc.) que obtuvieron mejores resultados en el subconjunto de datos. De hecho, de forma predeterminada, para problemas de regresión como este, solo usamos XGBRegressor, por lo que en este caso el método que utiliza IntegratedML no es una red neuronal en absoluto.
2. Solo es necesario llamar al "TRAIN MODEL" una vez por conjunto de datos de entrenamiento. El bucle sobre los ejemplos se maneja dentro de esa llamada.
3. Este es potencialmente un conjunto de datos demasiado pequeño para producir resultados confiables. IntegratedML divide los datos internamente en subconjuntos de entrenamiento y prueba, por lo que probablemente obtendrá mejores resultados si tiene al menos 100 ejemplos aleatorios.
Atentamente,
tomás
Nota: Hemo hecho el siguiente código para capturar el error nativo... pero es un poco código chapucero.
// run the query Set tSC = ..Adapter.ExecuteUpdateParmArray(.nrows,SQL,.param) // Check if there is any error If $$$ISERR(tSC) { Set msgError = $System.Status.GetErrorText(tSC) // Check here if the native error code is 2601 (Cannot insert duplicate key row into object 'MYPATIENTS' with unique index 'UQ_UNIQUE_INDEX') if $FIND(msgError, "[2601]") > 0 { // This is a insert/update that violates the unique code // remove duplicate record quit $$$OK } else { // Generic error... thow excepction quit tSC } }