Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

RegressionLinear Predict

Predecir respuestas usando el modelo de regresión lineal

Desde R2023a

  • RegressionLinear Predict Block Icon

Bibliotecas:
Statistics and Machine Learning Toolbox / Regression

Descripción

El bloque RegressionLinear Predict predice respuestas usando un objeto de regresión lineal (RegressionLinear).

Importe un objeto de regresión entrenado en el bloque especificando el nombre de una variable del espacio de trabajo que contenga el objeto. El puerto de entrada x recibe una observación (datos predictores) y el puerto de salida yfit devuelve respuestas pronosticadas para la observación.

Puertos

Entrada

expandir todo

Datos predictores, especificados como un vector fila o vector columna de una observación.

Las variables en x deben tener el mismo orden que las variables predictoras que entrenaron el modelo especificado por Seleccione el modelo de machine learning entrenado.

Tipos de datos: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Salida

expandir todo

Respuesta pronosticada, devuelta como un escalar. Para obtener más información, consulte el argumento YHat de la función del objeto predict.

Tipos de datos: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Parámetros

expandir todo

Principal

Especifique el nombre de una variable del área de trabajo que contenga un objeto RegressionLinear.

Cuando entrena el modelo con fitrlinear, se aplican las siguientes restricciones:

  • Los datos predictores no pueden incluir predictores categóricos (logical, categorical, char, string o cell). Si proporciona datos de entrenamiento en una tabla, los predictores deben ser numéricos (double o single). Además, no puede utilizar el argumento nombre-valor de CategoricalPredictors. Para incluir los predictores categóricos en un modelo, procéselos con dummyvar antes de ajustar el modelo.

  • La propiedad Lambda (fuerza del término de regularización) del modelo entrenado debe ser un escalar numérico. Si Lambda es un vector numérico, debe seleccionar el modelo correspondiente a una fuerza de regularización usando selectModels.

Uso programático

Parámetro de bloque: TrainedLearner
Tipo: variable del área de trabajo
Valores: objeto RegressionLinear
Valor predeterminado: 'linearMdl'

Tipos de datos

Parámetros operativos de punto fijo

Especifique el modelo de redondeo para operaciones de punto fijo. Para obtener más información, consulte Rounding (Fixed-Point Designer).

Los parámetros de bloque siempre se redondean al valor representable más cercano. Para controlar el redondeo de un parámetro de bloque, introduzca una expresión en el campo de máscara usando una función de redondeo de MATLAB®.

Uso programático

Parámetro de bloque: RndMeth
Tipo: vector de caracteres
Valores: "Ceiling" | "Convergent" | "Floor" | "Nearest" | "Round" | "Simplest" | "Zero"
Valor predeterminado: "Floor"

Especifique si los desbordamientos saturan o se adaptan.

AcciónJustificaciónImpacto en los desbordamientosEjemplo

Seleccionar esta casilla (on).

Su modelo tiene un posible desbordamiento y quiere protección frente a saturación explícita en el código generado.

Los desbordamientos saturan el valor mínimo o máximo que el tipo de datos puede representar.

El valor máximo que el tipo de datos int8 (indicado como un valor entero de 8 bits) puede representar es 127. Cualquier resultado de una operación de bloque superior a este valor máximo provoca el desbordamiento del entero de 8 bits. Con la casilla de verificación seleccionada, el bloque de salida se satura en 127. De manera similar, la salida del bloque se satura en el valor de salida mínimo de -128.

Desmarcar esta casilla (off).

Desea optimizar la eficacia de su código generado.

Quiere evitar explicar excesivamente cómo maneja un bloque las señales fuera de rango. Para obtener más información, consulte Troubleshoot Signal Range Errors (Simulink).

Los desbordes se adaptan al valor apropiado que el tipo de datos puede representar.

El valor máximo que el tipo de datos int8 (indicado como un valor entero de 8 bits) puede representar es 127. Cualquier resultado de una operación de bloque superior a este valor máximo provoca el desbordamiento del entero de 8 bits. Con la casilla de verificación desmarcada, el software interpreta el valor que causa el desbordamiento como int8, que puede producir un resultado no intencionado. Por ejemplo, un resultado de bloque de 130 (en binario 1000 0010) expresado como int8 es –126.

Uso programático

Parámetro de bloque: SaturateOnIntegerOverflow
Tipo: vector de caracteres
Valores: "off" | "on"
Valor predeterminado: "off"

Seleccione este parámetro para evitar que las herramientas de punto fijo anulen el tipo de datos que especifica para el bloque. Para obtener más información, consulte Use Lock Output Data Type Setting (Fixed-Point Designer).

Uso programático

Parámetro de bloque: LockScale
Tipo: vector de caracteres
Valores: "off" | "on"
Valor predeterminado: "off"
Tipo de datos

Especifique el tipo de datos para la salida yfit. El tipo puede heredarse, especificarse directamente o expresarse como un objeto de tipo de datos como Simulink.NumericType.

Cuando seleccione Inherit: auto, el bloque utiliza una regla que hereda un tipo de datos.

Para obtener más información acerca de los tipos de datos, consulte Control Data Types of Signals (Simulink).

Haga clic en el botón Show data type assistant para mostrar el Data Type Assistant, que le ayudará a configurar los atributos de tipo de datos. Para obtener más información, consulte Specify Data Types Using Data Type Assistant (Simulink).

Uso programático

Parámetro de bloque: OutDataTypeStr
Tipo: vector de caracteres
Valores: "Inherit: auto" | "double" | "single" | "half" | "int8" | "uint8" | "int16" | "uint16" | "int32" | "uint32" | "int64" | "uint64" | "boolean" | "fixdt(1,16,0)" | "fixdt(1,16,2^0,0)" | "<data type expression>"
Valor predeterminado: "Inherit: auto"

Especifique el valor más bajo del intervalo de salida yfit que Simulink® comprueba.

Simulink utiliza el valor mínimo para realizar:

Nota

El parámetro Output data type Minimum no satura ni reduce la señal yfit real. Para hacerlo, use la función Saturation (Simulink) en su lugar.

Uso programático

Parámetro de bloque: OutMin
Tipo: vector de caracteres
Valores: '[]' | escalar
Valor predeterminado: '[]'

Especifique el valor más alto del intervalo de salida yfit que Simulink comprueba.

Simulink utiliza el valor máximo para realizar:

Nota

El parámetro Output data type Maximum no satura ni reduce la señal yfit real. Para hacerlo, use la función Saturation (Simulink) en su lugar.

Uso programático

Parámetro de bloque: OutMax
Tipo: vector de caracteres
Valores: '[]' | escalar
Valor predeterminado: '[]'

Especifique el tipo de datos para el término del producto interior de la respuesta pronosticada. El tipo puede heredarse, especificarse directamente o expresarse como un objeto de tipo de datos como Simulink.NumericType.

Cuando selecciona Inherit: Inherit via internal rule, el bloque usa una regla interna para determinar el tipo de datos del producto interior. La regla interna elige un tipo de datos que optimiza la precisión numérica, el rendimiento y el tamaño del código generado, teniendo en cuenta las propiedades del hardware objetivo integrado. El software no siempre puede optimizar la eficiencia y la precisión numérica al mismo tiempo.

Para obtener más información acerca de los tipos de datos, consulte Control Data Types of Signals (Simulink).

Haga clic en el botón Show data type assistant para mostrar el Data Type Assistant, que le ayudará a configurar los atributos de tipo de datos. Para obtener más información, consulte Specify Data Types Using Data Type Assistant (Simulink).

Uso programático

Parámetro de bloque: InnerProductDataTypeStr
Tipo: vector de caracteres
Valores: "Inherit: Inherit via internal rule" | "double" | "single" | "half" | "int8" | "uint8" | "int16" | "uint16" | "int32" | "uint32" | "int64" | "uint64" | "boolean" | "fixdt(1,16,0)" | "fixdt(1,16,2^0,0)" | "<data type expression>"
Valor predeterminado: "double"

Especifique el valor más bajo del intervalo del término del producto interior que Simulink comprueba.

Simulink utiliza el valor mínimo para realizar:

Nota

El parámetro Inner product data type Minimum no satura ni reduce el valor del término del producto interior real.

Uso programático

Parámetro de bloque: InnerProductOutMin
Tipo: vector de caracteres
Valores: "[]" | escalar
Valor predeterminado: "[]"

Especifique el valor más alto del intervalo del término del producto interior que Simulink comprueba.

Simulink utiliza el valor máximo para realizar:

Nota

El parámetro Inner product data type Maximum no satura ni reduce el valor del término del producto interior real.

Uso programático

Parámetro de bloque: InnerProductOutMax
Tipo: vector de caracteres
Valores: "[]" | escalar
Valor predeterminado: "[]"

Características del bloque

Tipos de datos

Boolean | double | fixed point | half | integer | single

Paso directo

Señales multidimensionales

no

Señales de tamaño variable

no

Detección de cruce por cero

no

Más acerca de

expandir todo

Funcionalidad alternativa

Puede utilizar un bloque MATLAB Function con la función de objeto predict de un objeto de regresión lineal (RegressionLinear). Para ver un ejemplo, consulte Predict Class Labels Using MATLAB Function Block.

Cuando decida si utilizar el bloque RegressionLinear Predict en la biblioteca Statistics and Machine Learning Toolbox™ o el bloque MATLAB Function con la función predict, considere lo siguiente:

  • Si utiliza el bloque de biblioteca Statistics and Machine Learning Toolbox, puede utilizar la herramienta de punto fijo (Fixed-Point Designer) para convertir un modelo de punto flotante en uno de punto fijo.

  • La compatibilidad con los arreglos de tamaño variable debe activarse para un bloque de funciones de MATLAB con la función predict.

  • Si utiliza un bloque de funciones de MATLAB, puede utilizar las funciones de MATLAB para procesar previa o posteriormente después o antes de las predicciones del mismo bloque de funciones de MATLAB.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante Simulink® Coder™.

Conversión de punto fijo
Diseñe y simule sistemas en punto fijo mediante Fixed-Point Designer™.

Historial de versiones

Introducido en R2023a