stringtranslate.com

uno-caliente

En los circuitos digitales y el aprendizaje automático , un one-hot es un grupo de bits entre los cuales las combinaciones legales de valores son solo aquellas con un único bit alto (1) y todos los demás bajos (0). [1] Una implementación similar en la que todos los bits son '1' excepto un '0' a veces se denomina one-cold . [2] En estadística , las variables ficticias representan una técnica similar para representar datos categóricos .

Aplicaciones

Circuitos digitales

La codificación one-hot se utiliza a menudo para indicar el estado de una máquina de estados . Cuando se usa binario , se necesita un decodificador para determinar el estado. Sin embargo, una máquina de estados one-hot no necesita un decodificador ya que la máquina de estados está en el enésimo estado si, y sólo si, el enésimo bit es alto.

Un contador de anillo con 15 estados ordenados secuencialmente es un ejemplo de máquina de estados. Una implementación 'one-hot' tendría 15 flip-flops encadenados en serie con la salida Q de cada flip-flop conectada a la entrada D del siguiente y la entrada D del primer flip-flop conectada a la salida Q del decimoquinto flip-flop. . El primer flip-flop de la cadena representa el primer estado, el segundo representa el segundo estado, y así sucesivamente hasta el decimoquinto flip-flop, que representa el último estado. Al restablecer la máquina de estado, todos los flip-flops se restablecen a '0' excepto el primero de la cadena, que se establece a '1'. El siguiente borde del reloj que llega a las chanclas avanza el bit "caliente" al segundo chancla. El bit "caliente" avanza de esta manera hasta el estado 15, después del cual la máquina de estados regresa al primer estado.

Un decodificador de direcciones convierte de representación binaria a one-hot. Un codificador de prioridad convierte de representación one-hot a binaria.

Comparación con otros métodos de codificación.

Ventajas
Desventajas

Procesamiento natural del lenguaje

En el procesamiento del lenguaje natural , un vector one-hot es una matriz (vector) de 1 ×  N que se utiliza para distinguir cada palabra de un vocabulario de todas las demás palabras del vocabulario. [5] El vector consta de 0 en todas las celdas con la excepción de un único 1 en una celda que se utiliza únicamente para identificar la palabra. La codificación one-hot garantiza que el aprendizaje automático no asuma que los números más altos son más importantes. Por ejemplo, el valor '8' es mayor que el valor '1', pero eso no hace que '8' sea más importante que '1'. Lo mismo ocurre con las palabras: el valor "risa" no es más importante que "reír".

Aprendizaje automático y estadística.

En el aprendizaje automático, la codificación one-hot es un método utilizado con frecuencia para tratar datos categóricos. Debido a que muchos modelos de aprendizaje automático necesitan que sus variables de entrada sean numéricas, las variables categóricas deben transformarse en la parte de preprocesamiento. [6]

Los datos categóricos pueden ser nominales u ordinales . [7] Los datos ordinales tienen un orden de clasificación para sus valores y, por lo tanto, se pueden convertir en datos numéricos mediante codificación ordinal. [8] Un ejemplo de datos ordinales serían las calificaciones de una prueba que van de A a F, que podrían clasificarse usando números del 6 al 1. Dado que no existe una relación cuantitativa entre los valores individuales de las variables nominales, el uso de la codificación ordinal puede potencialmente crear una relación ordinal ficticia en los datos. [9] Por lo tanto, la codificación one-hot a menudo se aplica a variables nominales para mejorar el rendimiento del algoritmo.

Para cada valor único en la columna categórica original, se crea una nueva columna en este método. Estas variables ficticias luego se completan con ceros y unos (1 significa VERDADERO, 0 significa FALSO). [ cita necesaria ]

Debido a que este proceso crea múltiples variables nuevas, es propenso a crear un problema de "p grande" (demasiados predictores) si hay muchos valores únicos en la columna original. Otra desventaja de la codificación one-hot es que provoca multicolinealidad entre las variables individuales, lo que potencialmente reduce la precisión del modelo. [ cita necesaria ]

Además, si la variable categórica es una variable de salida, es posible que desee convertir los valores nuevamente a un formato categórico para presentarlos en su aplicación. [10]

En el uso práctico, esta transformación a menudo se realiza directamente mediante una función que toma datos categóricos como entrada y genera las variables ficticias correspondientes. Un ejemplo sería la función dummyVars de la biblioteca Caret en R. [11]

Ver también

Referencias

  1. ^ Harris, David y Harris, Sarah (7 de agosto de 2012). Diseño digital y arquitectura informática (2ª ed.). San Francisco, California: Morgan Kaufmann. pag. 129.ISBN​ 978-0-12-394424-5.{{cite book}}: Mantenimiento CS1: varios nombres: lista de autores ( enlace )
  2. ^ Harrag, Fouzi; Gueliani, Selmene (2020). "Extracción de eventos basada en el aprendizaje profundo en textos árabes sobre peligros alimentarios". arXiv : 2008.05014 . {{cite journal}}: Citar diario requiere |journal=( ayuda )
  3. ^ Xilinx. "Guía de diseño de síntesis HDL para FPGA". sección 3.13: "Codificación de máquinas de estados". Apéndice A: "Acelere las macros FPGA con un enfoque único". 1995.
  4. ^ Cohen, Ben (2002). Diseño y verificación de chips reales mediante Verilog y VHDL . Península de Palos Verdes, CA, EE. UU.: VhdlCohen Publishing. pag. 48.ISBN 0-9705394-2-8.
  5. ^ Arnaud, Émilien; Elbattah, Mahmoud; Gignon, Maxime; Dequen, Gilles (agosto de 2021). Predicción basada en PNL de especialidades médicas al ingreso hospitalario mediante notas de triaje. 2021 IEEE 9.ª Conferencia Internacional sobre Informática Sanitaria (ICHI). Victoria, Columbia Británica . págs. 548–553. doi : 10.1109/ICHI52183.2021.00103 . Consultado el 22 de mayo de 2022 .
  6. ^ Brownlee, Jason. (2017). "¿Por qué codificar datos One-Hot en el aprendizaje automático?". Dominio del aprendizaje automático. https://machinelearningmastery.com/why-one-hot-encode-data-in-machine-learning/
  7. ^ Stevens, SS (1946). "En la teoría de las escalas de medición". Ciencia, nueva serie, 103.2684, págs. 677–680. http://www.jstor.org/stable/1671815.
  8. ^ Brownlee, Jason. (2020). "Codificaciones ordinales y one-hot para datos categóricos". Dominio del aprendizaje automático. https://machinelearningmastery.com/one-hot-encoding-for-categorical-data//
  9. ^ Brownlee, Jason. (2020). "Codificaciones ordinales y one-hot para datos categóricos". Dominio del aprendizaje automático. https://machinelearningmastery.com/one-hot-encoding-for-categorical-data//
  10. ^ Brownlee, Jason. (2017). "¿Por qué codificar datos One-Hot en el aprendizaje automático?". Dominio del aprendizaje automático. https://machinelearningmastery.com/why-one-hot-encode-data-in-machine-learning/
  11. ^ Kuhn, máx. “varas ficticias”. RDocumentación. https://www.rdocumentation.org/packages/caret/versions/6.0-86/topics/dummyVars