ES2714152T3 - Capas de normalización por lotes - Google Patents
Capas de normalización por lotes Download PDFInfo
- Publication number
- ES2714152T3 ES2714152T3 ES16704121T ES16704121T ES2714152T3 ES 2714152 T3 ES2714152 T3 ES 2714152T3 ES 16704121 T ES16704121 T ES 16704121T ES 16704121 T ES16704121 T ES 16704121T ES 2714152 T3 ES2714152 T3 ES 2714152T3
- Authority
- ES
- Spain
- Prior art keywords
- layer
- neural network
- output
- outputs
- batch
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000010606 normalization Methods 0.000 title claims abstract description 123
- 238000013528 artificial neural network Methods 0.000 claims abstract description 173
- 238000012549 training Methods 0.000 claims abstract description 76
- 238000000034 method Methods 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 14
- 230000001537 neural effect Effects 0.000 claims description 9
- 230000001052 transient effect Effects 0.000 claims description 2
- 230000001131 transforming effect Effects 0.000 claims 2
- 230000008569 process Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 2
- 238000001994 activation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Facsimile Image Signal Circuits (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Sistema de red neuronal (100) implementado por uno o más ordenadores, comprendiendo el sistema de red neuronal: una capa de normalización por lotes (108) entre una primera capa de red neuronal (104) y una segunda capa de red neuronal (112), donde la primera capa de red neuronal genera primeras salidas de capa presentando una pluralidad de componentes, y donde la capa de normalización por lotes está configurada para, durante el entrenamiento del sistema de red neuronal con un lote de ejemplos de entrenamiento: recibir una primera salida de capa respectiva para cada ejemplo de entrenamiento del lote; calcular una pluralidad de estadísticas de normalización para el lote a partir de las primeras salidas de capa; normalizar cada componente de cada primera salida de capa utilizando las estadísticas de normalización para generar una respectiva salida de capa normalizada para cada ejemplo de entrenamiento del lote; generar una respectiva salida de la capa de normalización por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capas normalizadas; y proporcionar la salida de la capa de normalización por lotes como entrada a la segunda capa de red neuronal; donde la pluralidad de componentes de primera salida de capa se indexan por dimensión, y donde calcular una pluralidad de estadísticas de normalización para las primeras salidas de capas comprende: calcular, para cada una de las dimensiones, una media de los componentes de la primera salida de capa en la dimensión; y calcular, para cada una de las dimensiones, una desviación estándar de los componentes de las primeras salidas de capa en la dimensión.
Description
DESCRIPCION
Capas de normalizacion por lotes
ANTECEDENTES
[0001] Esta memoria se refiere al procesamiento de entradas a traves de las capas de redes neuronales para generar salidas.
[0002] Las redes neuronales son modelos de aprendizaje automatico que emplean una o mas capas de unidades no lineares para predecir una salida para una entrada recibida. Algunas redes neuronales incluyen una o mas capas ocultas ademas de una capa de salida. La salida de cada capa oculta se utiliza como entrada para la siguiente capa de la red, es decir, la siguiente capa oculta o la capa de salida. Cada capa de la red genera una salida a partir de una entrada recibida de conformidad con los valores actuales de un respectivo conjunto de parametros. En Gulcehre at al: "Knowledge Matters: Importance of Prior Information for Optimization", 13 julio 2013, http://arxiv.org/pdf/1301.4083v6.pdfse describio el uso de la normalizacion en la capa de salida de una red neuronal para fomentar activaciones dispersas.
SUMARIO
[0003] En general, un aspecto innovador del objeto descrito en la presente memoria puede estar incorporado en un sistema de red neuronal implementado por uno o mas ordenadores que incluye una capa de normalizacion por lotes entre una primera capa de red neuronal y una segunda capa de red neuronal, en el que la primera capa de red neuronal genera primeras salidas de capa presentando una pluralidad de componentes, donde la capa de normalizacion por lotes esta configurada para, durante el entrenamiento del sistema de red neuronal con un lote de ejemplos de entrenamiento: recibir una respectiva primera salida de capa para cada ejemplo de entrenamiento del lote; calcular una pluralidad de estadfsticas de normalizacion para el lote a partir de las primeras salidas de capa; normalizar cada componente de cada primera salida de capa utilizando las estadfsticas de normalizacion para generar una respectiva salida de capa normalizada para cada ejemplo de entrenamiento del lote; generar una respectiva salida de la capa de normalizacion por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capa normalizadas; y proporcionar la salida de la capa de normalizacion por lotes como una entrada a la segunda capa de red neuronal.
[0004] Para un sistema de uno o mas ordenadores, estar configurado para realizar operaciones o acciones concretas significa que el sistema ha instalado en el software, firmware, hardware, o una combinacion de estos que en funcionamiento hacen que el sistema lleve a cabo las operaciones o acciones. Para uno o mas programas informaticos, estar configurado para realizar operaciones o acciones concretas significa que el uno o mas programas incluyen instrucciones que, cuando son ejecutadas por un aparato de procesamiento de datos, hacen que el aparato realice las operaciones o acciones.
[0005] Los modos de realizacion concretos del objeto descrito en la presente memoria pueden implementarse a fin de alcanzar una o mas de las siguientes ventajas. Un sistema de red neuronal que incluye una o mas capas de normalizacion por lotes puede entrenarse mas rapidamente que una red neuronal por lo demas identica que no incluya ninguna capa de normalizacion por lotes. Por ejemplo, al incluir una o mas capas de normalizacion por lotes en el sistema de red neuronal, pueden mitigarse los problemas causados por la distribucion de salidas de una capa concreta que cambian durante el entrenamiento. Esto puede permitir que se utilicen de manera efectiva ritmos de aprendizaje mas altos durante el entrenamiento y pueden reducir el impacto de como se inicializan los parametros en el proceso de entrenamiento. De forma adicional, durante el entrenamiento, las capas de normalizacion por lotes pueden actuar como un regularizador y pueden reducir la necesidad de que otras tecnicas de regularizacion, como el dropout, se empleen durante el entrenamiento. Una vez entrenado, el sistema de red neuronal que incluye una capa de normalizacion puede generar salidas de red neuronal que son tan precisas, si no mas, que las salidas de red neuronal generadas por el sistema de red neuronal por lo demas identico.
[0006] Los detalles de uno o mas modos de realizacion del objeto de esta memoria se exponen en los dibujos adjuntos y en la siguiente descripcion. Otras caractensticas, aspectos, y ventajas del objeto de la invencion resultaran evidentes a partir de la descripcion, los dibujos y las reivindicaciones. La invencion esta definida por las reivindicaciones adjuntas. Los modos de realizacion que no estan dentro del alcance de las reivindicaciones no describen parte de la presente invencion.
BREVE DESCRIPCION DE LOS DIBUJOS
[0007]
La FIG. 1 muestra un sistema de red neuronal de ejemplo.
La FIG. 2 es un diagrama de flujo de un proceso de ejemplo para procesar una entrada utilizando una capa de normalizacion por lotes durante el entrenamiento del sistema de red neuronal.
La FIG. 3 es un diagrama de flujo de un proceso de ejemplo para procesar una entrada utilizando una normalizacion por lotes despues de que el sistema de red neuronal se haya entrenado.
[0008] Numeros de referencia y denominaciones similares en los diferentes dibujos indican elementos similares.
DESCRIPCION DETALLADA
[0009] Esta memoria describe un sistema de red neuronal implementado como programas informaticos en uno o mas ordenadores en una o mas ubicaciones que incluye una capa de normalizacion por lotes.
[0010] La FIG. 1 muestra un sistema de red neuronal 100 de ejemplo. El sistema de red neuronal 100 es un ejemplo de un sistema implementado como programas informaticos en uno o mas ordenadores en una o mas ubicaciones, en el que pueden implementarse los sistemas, componentes, y tecnicas descritas a continuacion.
[0011] El sistema de red neuronal 100 incluye multiples capas de red neuronal que se disponen en una secuencia desde la capa mas baja en la secuencia hasta la capa mas alta en la secuencia. El sistema de red neuronal genera salidas de red neuronal a partir de entradas de red neuronal al procesar las entradas de red neuronal a traves de cada una de las capas de la secuencia.
[0012] El sistema de red neuronal 100 puede estar configurado para recibir cualquier tipo de entrada de datos digitales y para generar cualquier tipo de salida de clasificacion o puntuacion basandose en la entrada.
[0013] Por ejemplo, si las entradas al sistema de red neuronal 100 son imagenes o caractensticas que se han extrafdo de imagenes, la salida generada por el sistema de red neuronal 100 para una imagen concreta puede ser puntuaciones para cada uno de un conjunto de categonas de objeto, con cada puntuacion representando una probabilidad estimada de que la imagen contenga una imagen de un objeto que pertenezca a la categona.
[0014] Como otro ejemplo, si las entradas al sistema de red neuronal 100 son recursos de Internet (por ejemplo, paginas web), documentos o partes de documentos o caractensticas extrafdas de recursos de Internet, documentos o partes de documentos, la salida generada por el sistema de red neuronal 100 para un recurso de Internet, documento, o parte de un documento determinado puede ser una puntuacion para cada uno de un conjunto de materias, con cada puntuacion representando una probabilidad estimada de que el recurso de Internet, documento o parte de un documento sea sobre ese materia.
[0015] Como otro ejemplo, si las entradas al sistema de red neuronal 100 son caractensticas de un contexto de impresiones para un anuncio en concreto, la salida generada por el sistema de red neuronal 100 puede ser una puntuacion que represente una probabilidad estimada de que se haga clic en el anuncio en concreto.
[0016] Como otro ejemplo, si las entradas al sistema de red neuronal 100 son caractensticas de una recomendacion personalizada para un usuario, por ejemplo, caractensticas que determinan el contexto para la recomendacion, por ejemplo, caractensticas que determinan acciones previas realizadas por el usuario, la salida generada por el sistema de red neuronal 100 puede ser una puntuacion para cada uno de un conjunto de artfculos de contenido, con cada puntuacion representando una probabilidad estimada de que el usuario responda favorablemente a que se le recomiende el artfculo de contenido.
[0017] Como otro ejemplo, si la entrada del sistema de red neuronal 100 es texto en un idioma, la salida generada por el sistema de red neuronal 100 puede ser una puntuacion para cada una de un conjunto de piezas de texto en otro idioma, con cada puntuacion representando una probabilidad estimada de que la pieza de texto en el otro idioma sea una traduccion adecuada del texto de entrada al otro idioma.
[0018] Como otro ejemplo, si la entrada al sistema de red neuronal 100 es un enunciado oral, una secuencia de enunciados orales, o caractensticas derivadas de uno de los dos, la salida generada por el sistema de red neuronal 100 puede ser una puntuacion para cada una de un conjunto de piezas de texto, representando cada puntuacion una probabilidad estimada de que la pieza de texto sea la transcripcion correcta del enunciado o conjunto de enunciados.
[0019] Como otro ejemplo, el sistema de red neuronal 100 puede formar parte de un sistema de autocompletado o de un sistema de procesamiento de textos.
[0020] Como otro ejemplo, el sistema de red neuronal 100 puede formar parte de un sistema de aprendizaje de refuerzo y puede generar salidas utilizadas para seleccionar acciones que seran realizadas por un agente que interactue con un entorno.
[0021] En particular, cada una de las capas de la red neuronal esta configurada para recibir una entrada y generar una salida a partir de la entrada, y las capas de red neuronal procesan de manera colectiva las entradas de red neuronal recibidas por el sistema de red neuronal 100 para generar una respectiva salida de red neuronal para cada una de las entradas de la red neuronal recibidas. Algunas o todas las capas de red neuronal de la secuencia generan salidas a partir de entradas de conformidad con valores actuales de un conjunto de parametros para la capa de red neuronal. Por ejemplo, algunas capas pueden multiplicar la entrada recibida por una matriz de valores de parametros actuales como parte de la generacion de una salida a partir de la entrada recibida.
[0022] El sistema de red neuronal 100 tambien incluye una capa de normalizacion por lotes 108 entre una capa de red neuronal A 104 y una capa de red neuronal B 112 en la secuencia de capas de red neuronal. La capa de normalizacion por lotes 108 esta configurada para realizar un conjunto de operaciones en entradas recibidas de la capa de red neuronal A 104 durante el entrenamiento del sistema de red neuronal 100 y otro conjunto de operaciones en entradas recibidas de la capa de red neuronal A 104 despues de que el sistema de red neuronal 100 se haya entrenado.
[0023] En concreto, el sistema de red neuronal 100 puede entrenarse con multiples lotes de ejemplos de entrenamiento a fin de determinar los valores entrenados de los parametros de las capas de red neuronal. Un lote de ejemplos de entrenamiento es un conjunto de multiples ejemplos de entrenamiento. Por ejemplo, durante el entrenamiento, el sistema de red neuronal 100 puede procesar un lote de ejemplos de entrenamiento 102 y generar una respectiva salida de red neuronal para cada ejemplo de entrenamiento del lote 102. Luego, las salidas de red neuronal pueden utilizarse para ajustar los valores de los parametros de las capas de red neuronal de la secuencia, por ejemplo, mediante tecnicas convencionales de entrenamiento de red neuronal por retropropagacion y por descenso de gradiente.
[0024] Durante el entrenamiento del sistema de red neuronal 100 con un lote determinado de ejemplos de entrenamiento, la capa de normalizacion por lotes 108 se configura para recibir las salidas de la capa A 106 generadas por la capa de red neuronal A 104 para los ejemplos de entrenamiento del lote, procesar las salidas de la capa A 106 para generar una respectiva salida de la capa de normalizacion por lotes 110 para cada ejemplo de entrenamiento del lote, y luego proporcionar las salidas de la capa de normalizacion por lotes 110 como una entrada a la capa de red neuronal B 112. Las salidas de la capa A 106 incluyen una salida respectiva generada por la capa de red neuronal A 104 para cada ejemplo de entrenamiento del lote. De manera similar, las salidas de la capa de normalizacion por lotes 110 incluyen una salida respectiva generada por la capa de normalizacion por lotes 108 para cada ejemplo de entrenamiento del lote.
[0025] En general, la capa de normalizacion por lotes 108 calcula un conjunto de estadfsticas de normalizacion para el lote a partir de las salidas de la capa A 106, normaliza las salidas de la capa A 106 para generar una respectiva salida normalizada para cada ejemplo de entrenamiento del lote, y, de manera opcional, transforma cada una de las salidas normalizadas antes de proporcionar las salidas como entradas a la capa de red neuronal B 112.
[0026] Las estadfsticas de normalizacion calculadas por la capa de normalizacion por lotes 108 y la manera en la que la capa de normalizacion por lotes 108 normaliza las salidas de la capa A 106 durante el entrenamiento depende de la naturaleza de la capa de normalizacion por lotes A 104 que genera las salidas de la capa A 106.
[0027] En algunos casos, la capa de red neuronal A 104 es una capa que genera una salida que incluye multiples componentes indexados por dimension. Por ejemplo, la capa de red neuronal A 104 puede ser una capa de red neuronal completamente conectada. No obstante, en algunos otros casos, la capa de red neuronal A 104 es una capa convolucional u otro tipo de capa de red neuronal que genera una salida que incluye multiples componentes que estan cada uno indexados por un mdice de caractenstica y por un mdice de ubicacion espacial. La generacion de la salida de la capa de normalizacion por lotes durante el entrenamiento del sistema de red neuronal 100 en cada uno de estos dos casos se describe con mas detalle a continuacion haciendo referencia a la FIG. 2.
[0028] Una vez que se haya entrenado el sistema de red neuronal 100, el sistema de red neuronal 100 puede recibir una nueva entrada de red neuronal para su procesamiento y procesar la entrada de red neuronal a traves de las capas de red neuronal para generar una nueva salida de red neuronal para la entrada de conformidad con los valores entrenados de los parametros de los componentes del sistema de red neuronal 100. Las operaciones llevadas a cabo por la capa de normalizacion por lotes 108 durante el procesamiento de la nueva entrada de red neuronal tambien depende de la naturaleza de la capa de red neuronal A 104. El procesamiento de una nueva entrada de red neuronal despues de que el sistema de red neuronal 100 haya sido entrenado se describira con mas detalle a continuacion haciendo referencia a la FIG. 3.
[0029] La capa de normalizacion por lotes 108 puede estar incluida en varias ubicaciones en la secuencia de capas de red neuronal y, en algunas implementaciones, pueden incluirse multiples capas de normalizacion por lotes en la secuencia.
[0030] En el ejemplo de la FIG. 1, en algunas implementaciones, la capa de red neuronal A 104 genera salidas al modificar entradas a la capa de conformidad con valores actuales de un conjunto de parametros para la primera capa de red neuronal, por ejemplo, multiplicando la entrada a la capa por una matriz de los valores de los parametros actuales. En estas implementaciones, la capa de red neuronal B 112 puede recibir una salida de la capa de normalizacion por lotes 108 y generar una salida al aplicar una operacion no linear, es decir, una funcion de activacion no linear, a la salida de la capa de normalizacion por lotes. Por lo tanto, en estas implementaciones, la capa de normalizacion por lotes 108 se inserta dentro de una capa de red neuronal convencional, y las operaciones de la capa de red neuronal convencional se dividen entre la capa de red neuronal A 104 y la capa de red neuronal B 112.
[0031] En algunas otras implementaciones, la capa de red neuronal A 104 genera las salidas al modificar entradas de capas conforme a valores actuales de un conjunto de parametros para generar unas primeras entradas de capa modificadas y luego aplicar una operacion no linear a las primeras entradas de capa modificadas antes de proporcionar la salida a la capa de normalizacion por lotes 108. Por consiguiente, en estas implementaciones, la capa de normalizacion por lotes 108 se inserta tras una capa de red neuronal convencional en la secuencia.
[0032] La FIG. 2 es un diagrama de flujo de un proceso de ejemplo 200 para generar una salida de la capa de normalizacion por lotes durante el entrenamiento de una red neuronal con un lote de ejemplos de entrenamiento. Por conveniencia, el proceso 200 se describira como que se lleva a cabo por un sistema de uno o mas ordenadores situados en una o mas ubicaciones. Por ejemplo, una capa de normalizacion por lotes incluida en un sistema de red neuronal, por ejemplo, la capa de normalizacion por lotes 108 incluida en el sistema de red neuronal 100 de la FIG. 1, programado de manera apropiada, puede llevar a cabo el proceso 200.
[0033] La capa de normalizacion por lotes recibe salidas de capas inferiores para el lote de ejemplos de entrenamiento (paso 202). Las salidas de capas inferiores incluyen una salida respectiva generada para cada ejemplo de entrenamiento del lote por la capa de debajo de la capa de normalizacion por lotes en la secuencia de capas de red neuronal.
[0034] La capa de normalizacion por lotes genera una respectiva salida normalizada para cada uno de los ejemplos de entrenamiento del lote (paso 204). Esto es, la capa de normalizacion por lotes genera una respectiva salida normalizada de cada una de las salidas de capa inferior recibidas.
[0035] En algunos casos, la capa de debajo de la capa de normalizacion por lotes es una capa que genera una salida que incluye multiples componentes indexados por dimension.
[0036] En estos casos, la capa de normalizacion por lotes calcula, para cada dimension, la desviacion estandar y media de los componentes de las salidas de capas inferiores que se corresponden con la dimension. Despues, la capa de normalizacion por lotes normaliza cada componente de cada una de las salidas de niveles inferiores utilizando las desviaciones estandar y medias para generar una respectiva salida normalizada para cada uno de los ejemplos de entrenamiento del lote. En concreto, para un componente determinado de una salida determinada, la capa de normalizacion por lotes normaliza el componente utilizando la desviacion estandar y media calculada para la dimension que se corresponda con el componente. Por ejemplo, en algunas implementaciones, para un componente xk,i correspondiente a la ka dimension de la ia salida de capa inferior a partir de un lote p, la salida normalizada Xk,i satisface:
donde ^ b es la media de los componentes correspondiente a la k a dimension de las salidas de capas inferiores en el lote p, y ob es la desviacion estandar de los componentes correspondiente a la ka dimension de las salidas de capa inferior en el lote p. En algunas implementaciones, la desviacion estandar es una desviacion estandar numericamente estable que es igual a (ob2 £)1/2, donde £ es un valor constante y ob2 es la varianza de los componentes correspondiente a la ka dimension de las salidas de capa inferior del lote p.
[0037] No obstante, en algunos otros casos, la capa de red neuronal que esta por debajo de la capa de normalizacion por lotes es una capa convolucional u otro tipo de capa de red neuronal que genera una salida que incluye multiples componentes que estan cada uno indexados por mdice de caractenstica y por mdice de ubicacion espacial.
[0038] En algunos de estos casos, la capa de normalizacion por lotes calcula, para cada posible combinacion de mdice de caractenstica e mdice de ubicacion espacial, la media y la varianza de los componentes de las salidas de capas inferiores, que tienen ese mdice de caractenstica e mdice de ubicacion espacial. Despues, la capa de normalizacion por lotes calcula, para cada mdice de caractenstica, el promedio de las medias para las combinaciones de mdice de caractenstica e mdice de ubicacion espacial que incluyen el mdice de caractenstica. La capa de normalizacion por lotes tambien calcula, para cada mdice de caractenstica, el promedio de las varianzas para las combinaciones de mdice de caractenstica e mdice de ubicacion espacial que incluyen el mdice de caractenstica. Por lo tanto, tras calcular los promedios, la capa de normalizacion por lotes ha calculado una media estadfstica para cada caractenstica a lo largo de todas las ubicaciones espaciales y una varianza estadfstica para cada caractenstica a lo largo de todas las ubicaciones espaciales.
[0039] Despues, la capa de normalizacion por lotes normaliza cada componente de cada una de las salidas de niveles inferiores utilizando las medias promedio y las varianzas promedio para generar una respectiva salida normalizada para cada uno de los ejemplos de entrenamiento del lote. En concreto, para un componente determinado de una salida determinada, la capa de normalizacion por lotes normaliza el componente utilizando la media promedio y la varianza promedio para el mdice de caractenstica que se corresponde con el componente, por ejemplo, de la misma forma que como se ha descrito anteriormente cuando la capa de debajo de la capa de normalizacion por lotes genera salidas indexadas por dimension.
[0040] En otros de estos casos, la capa de normalization por lotes calcula, para cada mdice de caracteristica, la media y la varianza de los componentes de las salidas de capa inferior que se corresponden con el mdice de caracteristica, es decir, que presentan el mdice de caracteristica.
[0041] Despues, la capa de normalizacion por lotes normaliza cada componente de cada una de las salidas de niveles inferiores utilizando las medias y las varianzas para los indices de caracteristica a fin de generar una respectiva salida normalizada para cada uno de los ejemplos de entrenamiento del lote. En concreto, para un componente determinado de una salida determinada, la capa de normalizacion por lotes normaliza el componente utilizando la media y la varianza para el mdice de caracteristica que se corresponde con el componente, por ejemplo, de la misma forma que como se describe anteriormente cuando la capa de debajo de la capa de normalizacion por lotes genera salidas indexadas por dimension.
[0042] De manera opcional, la capa de normalizacion por lotes transforma cada componente de cada salida normalizada (paso 206).
[0043] En los casos en que la capa de debajo de la capa de normalizacion por lotes es una capa que genera una salida que incluye multiples componentes indexados por dimension, la capa de normalizacion por lotes transforma, para cada dimension, el componente de cada salida normalizada en la dimension de conformidad con los valores actuales de un conjunto de parametros para la dimension. Esto es, la capa de normalizacion por lotes mantiene un respectivo conjunto de parametros para cada dimension y utiliza esos parametros para aplicar una transformation a los componentes de las salidas normalizadas en la dimension. Los valores de los conjuntos de parametros se ajustan como parte del entrenamiento del sistema de red neuronal. Por ejemplo, en algunas implementaciones, la salida normalizada transformada yk,i generada a partir de la salida normalizada Xk,i satisface:
donde Yk y Ak son los parametros para la ka dimension.
[0044] En casos en que la capa de debajo de la capa de normalizacion por lotes es una capa convolucional, la capa de normalizacion por lotes transforma, para cada componente de cada una de las salidas normalizadas, el componente de conformidad con los valores actuales de un conjunto de parametros para el mdice de caracteristica que se corresponde con el componente. Esto es, una capa de normalizacion por lotes mantiene un respectivo conjunto de parametros para cada mdice de caracteristica y utiliza esos parametros para aplicar una transformacion a los componentes de las salidas normalizadas que presentan el mdice de caracteristica, por ejemplo, tal como se ha descrito anteriormente cuando la capa de debajo de la capa de normalizacion por lotes genera salidas indexadas por dimension. Los valores de los conjuntos de parametros se ajustan como parte del entrenamiento del sistema de red neuronal.
[0045] La capa de normalizacion por lotes proporciona las salidas normalizadas o las salidas normalizadas transformadas como entrada a una capa sobre la capa de normalizacion por lotes en la secuencia (paso 208).
[0046] Despues de que la red neuronal haya generado las salidas de red neuronal para los ejemplos de entrenamiento del lote, las estadisticas de normalizacion se retropropagan a su traves como parte del ajuste de los valores de los parametros de la red neuronal, es decir, como parte de realizar la tecnica de entrenamiento por retropropagacion.
[0047] La FIG. 3 es un diagrama de flujo de un proceso de ejemplo 300 para generar una salida de la capa de normalizacion por lotes para una nueva entrada de la red neuronal despues de que la red neuronal se haya entrenado. Por conveniencia, el proceso 300 se describira como llevado a cabo por un sistema de uno o mas ordenadores situados en una o mas ubicaciones. Por ejemplo, una capa de normalizacion por lotes incluida en un sistema de red neuronal, por ejemplo, la capa de normalizacion por lotes 108 incluida en el sistema de red neuronal 100 de FIG. 1, programado de manera apropiada, puede llevar a cabo el proceso 300.
[0048] La capa de normalizacion por lotes recibe una salida de capa inferior para la nueva entrada de red neuronal (paso 302). La salida de capa inferior es una salida generada para la nueva salida de red neuronal por la capa que esta mas abajo de la capa de normalizacion por lotes en la secuencia de capas de red neuronal.
[0049] La capa de normalizacion por lotes genera una salida normalizada para la nueva entrada de red neuronal (paso 304).
[0050] Si las salidas generadas por la capa de debajo la capa de normalizacion por lotes se indexan por dimension, la capa de normalizacion por lotes normaliza cada componente de la salida de capa inferior utilizando medias precalculadas y desviaciones estandar para cada una de las dimensiones a fin de generar una salida normalizada. En algunos casos, las desviaciones medias y estandar para una dimension determinada se calculan a partir de los componentes en la dimension de todas las salidas generadas por la capa de debajo de la capa de normalizacion por lotes durante el entrenamiento del sistema de red neuronal.
[0051] No obstante, en algunos otros casos, las desviaciones medias y estandar para una dimension determinada se calculan a partir de los componentes en la dimension de las salidas de capa inferior generadas
por la capa de debajo de la capa de normalizacion por lotes tras el entrenamiento, por ejemplo, a partir de las salidas de capa inferior generadas durante un periodo de tiempo mas reciente de duracion espedfica o a partir de un numero espedfico de salidas de capa inferior generadas mas recientemente por la capa de debajo de la capa de normalizacion por lotes.
[0052] En concreto, en algunos casos, la distribucion de entradas de red y, en consecuencia, la distribucion de entradas de capas inferiores puede cambiar entre los ejemplos de entrenamiento utilizados durante el entrenamiento y las nuevas entradas de red neuronal utilizadas despues de que el sistema de red neuronal se haya entrenado, por ejemplo, si las nuevas entradas de red neuronal son entradas de tipos distintos a los ejemplos de entrenamiento. Por ejemplo, el sistema de red neuronal puede haber sido entrenado con imagenes de usuario y ahora puede utilizarse para procesar fotogramas de video. Las imagenes de usuario y los fotogramas del video probablemente tengan distintas distribuciones en cuanto a las caractensticas representadas, las propiedades de las imagenes, la composicion, etc. Por consiguiente, normalizar las entradas de capa inferior utilizando estadfsticas del entrenamiento puede no capturar de forma precisa las estadfsticas de las salidas de capa inferior que se generan para las nuevas entradas. Por lo tanto, en estos casos, la capa de normalizacion por lotes puede utilizar estadfsticas de normalizacion calculadas a partir de salidas de capa inferior generadas por la capa de debajo de la capa de normalizacion por lotes tras el entrenamiento.
[0053] Si las salidas generadas por la capa de debajo de la capa de normalizacion por lotes se indexan por mdice de caractenstica y por mdice de ubicacion espacial, la capa de normalizacion por lotes normaliza cada componente de la salida de capa inferior utilizando varianzas promedio y medias promedio precalculadas para cada uno de los indices de caractenstica, a fin de generar una salida normalizada. En algunos casos, tal como se ha descrito anteriormente, las medias promedio y las varianzas promedio para un mdice de caractenstica determinado se calculan a partir de las salidas generadas por la capa de debajo de la capa de normalizacion por lotes para todos los ejemplos de entrenamiento utilizados durante el entrenamiento. En algunos otros casos, tal como se ha descrito anteriormente, las desviaciones estandar y medias para un mdice de caractenstica determinado se calculan a partir de las salidas de capa inferior generadas por la capa de debajo de la capa de normalizacion por lotes tras el entrenamiento.
[0054] De manera opcional, la capa de normalizacion por lotes transforma cada componente de la salida normalizada (paso 306).
[0055] Si las salidas generadas por la capa de debajo de la capa de normalizacion por lotes se indexan por dimension, la capa de normalizacion por lotes transforma, para cada dimension, el componente de la salida normalizada en la dimension de conformidad con los valores entrenados del conjunto de parametros para la dimension. Si las salidas generadas por la capa de debajo de la capa de normalizacion por lotes se indexan por mdice de caractenstica y por mdice de ubicacion espacial, la capa de normalizacion por lotes transforma cada componente de la salida normalizada de conformidad con los valores entrenados del conjunto de parametros para el mdice de caractenstica que se corresponde con el componente. La capa de normalizacion por lotes proporciona la salida normalizada o la salida normalizada transformada como entrada a la capa sobre la capa de normalizacion por lotes en la secuencia (paso 308).
[0056] Los modos de realizacion del objeto y las operaciones funcionales descritas en la presente memoria pueden implementarse en circuitena electronica digital, en firmware o software informatico incorporado de modo tangible, en hardware informatico, incluyendo las estructuras dadas a conocer en la presente memoria y sus equivalentes estructurales, o en combinaciones de uno o mas de estos. Pueden implementarse modos de realizacion del objeto descrito en la presente memoria como uno o mas programas informaticos, es decir, uno o mas modulos de instrucciones de un programa informatico codificados en un soporte de programa tangible no transitorio para ser ejecutado por, o para controlar el funcionamiento de, un aparato de procesamiento de datos. De manera alternativa o adicional, las instrucciones del programa pueden codificarse en una senal propagada generada de forma artificial, por ejemplo, una senal electromagnetica, optica o electrica generada por una maquina, que se genera para codificar informacion para su transmision a un aparato receptor adecuado a fin de ser ejecutada por un aparato de procesamiento de datos. El soporte de almacenamiento informatico puede ser un dispositivo de almacenamiento legible por ordenador, un sustrato de almacenamiento legible por ordenador, un dispositivo de almacenamiento de acceso aleatorio o serial, o una combinacion de uno o mas de estos.
[0057] El termino "aparato de procesamiento de datos" abarca todos los tipos de aparatos, dispositivos, y maquinas para procesar datos, incluyendo, a modo de ejemplo, un procesador programable, un ordenador, o multiples ordenadores o procesadores. El aparato puede incluir circuitena logica para fines espedficos, por ejemplo, un FGPA (matriz de puertas programables) o un ASIC (circuito Integrado para aplicaciones espedficas). El aparato tambien puede incluir, ademas del hardware, un codigo que cree un entorno de ejecucion para el programa informatico en cuestion, por ejemplo, un codigo que constituya el firmware del procesador, una pila de protocolos, un sistema de gestion de bases de datos, un sistema operativo o una combinacion de uno o mas de estos.
[0058] Un programa informatico (al que tambien puede hacerse referencia o describirse como un programa, software, una aplicacion informatica, un modulo, un modulo de software, un script, o codigo) puede estar escrito en cualquier lenguaje de programacion, incluyendo lenguajes interpretados o compilados, o lenguajes
procedimentales o declarativos, y puede desplegarse de cualquier forma, incluyendo como un programa independiente o como un modulo, componente, subrutina, u otra unidad adecuada para su uso en un entorno informatico. Un programa informatico puede, pero no necesita, corresponderse con un fichero en un sistema de ficheros. Un programa puede almacenarse en una parte de un fichero que contenga otros programas o datos, por ejemplo, uno o mas scripts almacenados en un documento en lenguaje de marcado, en un fichero unico dedicado al programa en cuestion, o multiples ficheros coordinados, por ejemplo, ficheros que almacenan uno o mas modulos, subprogramas, o partes de un codigo. Un programa informatico puede desplegarse para ejecutarse en un ordenador o en multiples ordenadores que esten situados en una zona o distribuidos a lo largo de multiples zonas e interconectados por una red de comunicaciones.
[0059] Los procesos y flujos logicos descritos en esta memoria pueden llevarse a cabo por uno o mas ordenadores programables que ejecutan uno o mas programas informaticos para llevar a cabo funciones al operar con datos de entrada y generar salidas. Los procesos y flujos logicos tambien pueden ser realizados por, y los aparatos tambien pueden implementarse como, circuitena logica espedfica, por ejemplo, un FGPA (matriz de puertas programables) o un ASIC (circuito Integrado para aplicaciones espedficas).
[0060] Los ordenadores adecuados para la ejecucion de un programa informatico incluyen, a modo de ejemplo, pueden estar basados en microprocesadores generales o para fines espedficos o ambos, o cualquier otro tipo de unidad central de procesamiento. En general, una unidad central de procesamiento recibira instrucciones y datos de una memoria de solo lectura o de una memoria de acceso aleatorio o de ambas. Los elementos esenciales de un ordenador son una unidad central de procesamiento para llevar a cabo o ejecutar instrucciones y uno o mas dispositivos de memoria para almacenar instrucciones y datos. En general, un ordenador tambien incluira, o estara acoplado de manera operativa para recibir datos, o transferir datos, o ambos, de o a uno o mas dispositivos de almacenamiento masivo para almacenar datos, por ejemplo, discos magneticos, magento-opticos u opticos. No obstante, un ordenador no necesita tener tales dispositivos. Ademas, un ordenador puede estar integrado en otro dispositivo, por ejemplo, un telefono movil, un asistente personal digital (PDA), un reproductor portatil de audio o video, una videoconsola, un receptor de un Sistema de Posicionamiento Global (GPS), o un dispositivo de almacenamiento portatil, como una memoria USB (Bus Universal en Serie), por mencionar algunos.
[0061] Los soportes legibles por ordenador adecuados para almacenar datos e instrucciones de programas informaticos incluyen todos los medios, dispositivos de memoria y formas de memoria no volatiles, incluyendo, a tftulo de ejemplo, dispositivos de memoria semiconductores, como EPROM, EEPROM, y dispositivos de memoria flash; discos magneticos, como discos duros internos o discos extrafbles; discos magneto-opticos; y discos CD-ROM y DVD-ROM. El procesador y la memoria pueden estar complementados por, o incorporados en, circuitena logica para fines espedficos.
[0062] Para mantener la interaccion con un usuario, los modos de realizacion del objeto descrito en la presente memoria pueden implementarse en un ordenador que presente un dispositivo de visualizacion, por ejemplo, un monitor CRT (tubo de rayos catodicos) o LCD (pantalla de cristal lfquido), para mostrar informacion al usuario y un teclado y un dispositivo de puntero, por ejemplo, un raton o una bola de desplazamiento, mediante el cual el usuario puede proporcionar datos de entrada al ordenador. Tambien pueden utilizarse otros tipos de dispositivos para mantener la interaccion con un usuario; por ejemplo, la retroalimentacion proporcionada al usuario puede ser cualquier forma de retroalimentacion sensorial, por ejemplo, retroalimentacion visual, retroalimentacion auditiva o retroalimentacion tactil; y las entradas del usuario pueden recibirse de cualquier forma, incluyendo entradas acusticas, tactiles o habladas. Ademas, un ordenador puede interactuar con un usuario al enviar documentos a y recibir documentos de un dispositivo que es utilizado por el usuario; por ejemplo, al enviar paginas web a un navegador en un dispositivo cliente del usuario en respuesta a las consultas recibidas del navegador.
[0063] Los modos de realizacion del objeto descrito en la presente memoria pueden implementarse en un sistema informatico que incluya un componente de back-end, por ejemplo, como un servidor de datos, o que incluya un componente de middleware, por ejemplo, un servidor de aplicacion, o que incluya un componente de front-end, por ejemplo, un ordenador cliente que presente una interfaz grafica de usuario o un navegador a traves del cual el usuario puede interactuar con una implementacion del objeto descrito en la presente memoria, o cualquier combinacion de uno o mas de dichos componentes de back-end, middleware o front-end. Los componentes del sistema pueden estar interconectados por cualquier forma o medio de comunicacion de datos digital, por ejemplo, una red de comunicacion. Ejemplos de redes de comunicacion incluyen una red de area local ("LAN") y una red de area extensa ("WAN"), por ejemplo, Internet.
[0064] El sistema informatico puede incluir clientes y servidores. Un cliente y un servidor normalmente estan alejados entre sf, y normalmente interactuan a traves de una red de comunicaciones. La relacion entre el cliente y el servidor se produce gracias a programas informaticos en ejecucion en los respectivos ordenadores, y presentando una relacion cliente-servidor entre sf.
[0065] Aunque la presente memoria contiene muchos detalles espedficos sobre la implementacion, estos no deben interpretarse como limitaciones del alcance de cualquier invencion o de lo que se pueda reivindicar, sino como descripciones de caractensticas que puedan ser espedficas en modos de realizacion concretos de
invenciones concretas. Determinadas caractensticas que se describen en la presente memoria en el contexto de modos de realizacion separados tambien pueden implementarse en conjunto en un unico modo de realizacion. En cambio, varias caractensticas que se describen en el contexto de un unico modo de realizacion tambien puede implementarse en multiples modo de realizacion por separado o en cualquier subcombinacion adecuada. Ademas, aunque las caractensticas pueden estar descritas anteriormente como que actuan en determinadas combinaciones e incluso se reivindican inicialmente como tal, una o mas caractensticas de una combinacion reivindicada pueden, en algunos casos, escindirse de la combinacion, y la combinacion reivindicada puede dirigirse a una subcombinacion o variacion de una subcombinacion.
[0066] De manera similar, aunque las operaciones se representan en los dibujos en un orden concreto, esto no debena entenderse como que se requiere que dichas operaciones se lleven a cabo en el orden en concreto mostrado o en orden secuencial, o que todas las operaciones ilustradas se lleven a cabo, para conseguir resultados deseables. En determinadas circunstancias, la multitarea y el procesamiento paralelo pueden ser ventajosos. Asimismo, la separacion de varios componentes y modulos de sistema en los modos de realizacion descritos anteriormente no debena entenderse como que requieren tal separacion en todos los modos de realizacion, y debena entenderse que los sistemas y componentes de los programas descritos pueden estar integrados por lo general en un unico producto de software o empaquetados en multiples productos de software.
[0067] Se han descrito modos de realizacion concretos del objeto. Otros modos de realizacion estan dentro del alcance de las siguientes reivindicaciones. Por ejemplo, algunas acciones detalladas en las reivindicaciones pueden llevarse a cabo en un orden distinto y aun asf conseguir resultados deseables. Por ejemplo, los procesos representados en las figuras adjuntas no requieren necesariamente el orden concreto mostrado, o un orden secuencial, para conseguir resultados deseables. En determinadas implementaciones, la multitarea y el procesamiento paralelo pueden ser ventajosos.
Claims (1)
- REIVINDICACIONES1. Sistema de red neuronal (100) implementado por uno o mas ordenadores, comprendiendo el sistema de red neuronal:una capa de normalizacion por lotes (108) entre una primera capa de red neuronal (104) y una segunda capa de red neuronal (112), donde la primera capa de red neuronal genera primeras salidas de capa presentando una pluralidad de componentes, y donde la capa de normalizacion por lotes esta configurada para, durante el entrenamiento del sistema de red neuronal con un lote de ejemplos de entrenamiento: recibir una primera salida de capa respectiva para cada ejemplo de entrenamiento del lote; calcular una pluralidad de estadfsticas de normalizacion para el lote a partir de las primeras salidas de capa;normalizar cada componente de cada primera salida de capa utilizando las estadfsticas de normalizacion para generar una respectiva salida de capa normalizada para cada ejemplo de entrenamiento del lote;generar una respectiva salida de la capa de normalizacion por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capas normalizadas; yproporcionar la salida de la capa de normalizacion por lotes como entrada a la segunda capa de red neuronal;donde la pluralidad de componentes de primera salida de capa se indexan por dimension, y donde calcular una pluralidad de estadfsticas de normalizacion para las primeras salidas de capas comprende: calcular, para cada una de las dimensiones, una media de los componentes de la primera salida de capa en la dimension; ycalcular, para cada una de las dimensiones, una desviacion estandar de los componentes de las primeras salidas de capa en la dimension.2. Sistema de red neuronal segun la reivindicacion 1, en el que normalizar cada componente de cada salida de capa comprende:normalizar el componente utilizando la media calculada y a la desviacion estandar calculada para la dimension correspondiente al componente.3. Sistema de red neuronal segun la reivindicacion 1 o 2, en el que la capa de normalizacion por lotes mantiene un respectivo conjunto de parametros para cada dimension, y en el que generar la respectiva salida de capa de normalizacion por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capa normalizadas comprende:transformar, para cada dimension, el componente de la salida de capa normalizada para el ejemplo de entrenamiento en la dimension de conformidad con valores actuales de un conjunto de parametros para la dimension.4. Sistema de red neuronal segun la reivindicacion 3, en el que la capa de normalizacion por lotes esta configurada para, despues de que el sistema de red neuronal se haya entrenado para determinar valores entrenados de los parametros para cada una de las dimensiones:recibir una nueva primera salida de capa generada por la primera capa de red neuronal para una nueva entrada de red neuronal;normalizar cada componente de la nueva primera salida de capa utilizando estadfsticas de media y de desviacion estandar calculadas previamente para las dimensiones para generar una nueva salida de capa normalizada;generar una nueva salida de capa de normalizacion por lotes al transformar, para cada dimension, el componente de la nueva salida de capa normalizada para el ejemplo de entrenamiento en la dimension de conformidad con los valores entrenados del conjunto de parametros para la dimension; y proporcionar la salida de capa de normalizacion por lotes como una nueva entrada de capa a la segunda capa de red neuronal.5. Sistema de red neuronal segun la reivindicacion 4, en el que las estadfsticas de desviacion media y estandar calculadas previamente para las dimensiones se calculan a partir de primeras salidas de capa generadas por la primera capa de red neuronal durante el entrenamiento del sistema de red neuronal o se calculan a partir de nuevas primera salidas de capa generadas por la primera capa de red neuronal despues de que la red neuronal haya sido entrenada.6. Sistema de red neuronal implementado por uno o mas ordenadores, comprendiendo el sistema de red neuronal:una capa de normalizacion por lotes entre una primera capa de red neuronal y una segunda capa de red neuronal, donde la primera capa de red neuronal genera primeras salidas de capas presentando una pluralidad de componentes, y donde la capa de normalizacion por lotes esta configurada para, durante el entrenamiento del sistema de red neuronal con un lote de ejemplos de entrenamiento:recibir una respectiva primera salida de capa para cada ejemplo de entrenamiento del lote; calcular una pluralidad de estadfsticas de normalizacion para el lote a partir de las primera salidas de capa;normalizar cada componente de cada primera salida de capa utilizando las estadfsticas de normalizacion para generar una respectiva salida de capa normalizada para cada ejemplo de entrenamiento del lote;generar una respectiva salida de capa de normalizacion por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capas normalizadas; yproporcionar la salida de capa de normalizacion por lotes como una entrada a la segunda capa de red neuronal;donde la primera capa de red neuronal es una capa convolucional, donde la pluralidad de componentes de la primera salida de capa se indexan por mdice de caractenstica e mdice de ubicacion espacial, y donde calcular una pluralidad de estadfsticas de normalizacion para las primeras salidas de capa comprende, para cada uno de los indices de caractenstica:calcular una media de los componentes de las primeras salidas de capa que se corresponden con el mdice de caractenstica; ycalcular una varianza de los componentes de la primeras salidas de capa que se corresponden con el mdice de caractenstica.7. Sistema de red neuronal segun la reivindicacion 6, en el que normalizar cada componente de cada salida de capa comprende:normalizar el componente utilizando la media y la varianza para mdice de caractenstica que se corresponde con el componente.8. Sistema de red neuronal segun la reivindicacion 6 o 7, en el que generar la respectiva salida de capa de normalizacion por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capa normalizada comprende:transformar cada componente de la salida de capa normalizada de conformidad con valores actuales de un conjunto de parametros para el mdice de caractenstica correspondiente al componente.9. Sistema de red neuronal segun la reivindicacion 8, en el que la capa de normalizacion por lotes esta configurada para, despues de que la red neuronal se haya entrenado para determinar los valores entrenados de los parametros para cada una de las dimensiones:recibir una nueva primera entrada de capa generada a partir de una nueva entrada de red neuronal; normalizar cada componente de la nueva primera salida de capa utilizando estadfsticas de desviacion media y estandar calculadas previamente para los indices de caractenstica con el fin de generar una nueva salida de capa normalizada;generar una nueva salida de capa de normalizacion por lotes al transformar cada componente de la salida de capa normalizada de conformidad con los valores entrenados del conjunto de parametros para el mdice de caractenstica correspondiente al componente; yproporcionar la nueva salida de capa de normalizacion por lotes como una nueva entrada de capa a la segunda capa de red neuronal.10. Sistema de red neuronal segun la reivindicacion 6, en el que la pluralidad de componentes de la primera salida de capa se indexan por mdice de caractenstica y por mdice de ubicacion espacial, y en el que calcular una pluralidad de estadfsticas de normalizacion para las primeras salidas de capa comprende ademas: calcular, para cada combinacion de mdice de caractenstica e mdice de ubicacion espacial, una media de los componentes de las primeras salidas de capa presentando el mdice de caractenstica y el mdice de ubicacion espacial;calcular, para cada mdice de caractenstica, un promedio de las medias para combinaciones que incluyan el mdice de caractenstica;calcular, para cada combinacion de mdice de caractenstica y de mdice de ubicacion espacial, una varianza de los componentes de las primeras salidas de capa presentando el mdice de caractenstica y el mdice de ubicacion espacial; ycalcular, para cada mdice de caractenstica, un promedio de las varianzas para combinaciones que incluyan el mdice de caractenstica.11. Sistema de red neuronal segun la reivindicacion 6, en el que normalizar cada componente de cada salida de capa comprende:normalizar el componente utilizando el promedio de las medias y el promedio de las varianzas para el mdice de caractenstica correspondiente al componente.12. Sistema de red neuronal segun cualquiera de las reivindicaciones 1-11, en el que la primera capa de red neuronal genera las primeras salidas de capa al modificar primeras entradas de capa de conformidad con valores actuales de un conjunto de parametros de la primera capa de red neuronal y en el que la segunda capa de red neuronal genera segundas salidas de capa al aplicar una operacion no linear a las salidas de capa de normalizacion por lotes; o en el que la primera capa de red neuronal genera las primeras salidas de capa al modificar primeras salidas de capa de conformidad con los valores actuales de un conjunto de parametros de la primera capa de red neuronal para generar primeras entradas de capa modificadas y luego aplicar una operacion no linear a las primeras entradas de capa modificadas.13. Sistema de red neuronal segun cualquiera de las reivindicaciones 1-12, en el que, durante el entrenamiento de la red neuronal, el sistema de red neuronal se configura para retropropagar las estadfsticas de normalizacion como parte del ajuste de valores de los parametros de la red neuronal.14. Metodo de procesamiento de datos utilizando el sistema de red neuronal segun cualquiera de las reivindicaciones 1-13, comprendiendo el metodo realizar operaciones con una capa de normalizacion por lotes entre una primera capa de red neuronal y una segunda capa de red neuronal, en el que la primera capa de red neuronal genera primeras salidas de capa presentando una pluralidad de componentes, comprendiendo el metodo utilizar la capa de normalizacion por lotes para, durante el entrenamiento del sistema de red neuronal con un lote de ejemplos de entrenamiento:recibir una respectiva primera salida de capa para cada ejemplo de entrenamiento del lote;calcular una pluralidad de estadfsticas de normalizacion para el lote a partir de las primeras salidas de capa;normalizar cada componente de cada primera salida de capa utilizando las estadfsticas de normalizacion para generar una respectiva salida de capa normalizada para cada ejemplo de entrenamiento del lote; generar una respectiva salida de capa de normalizacion por lotes para cada uno de los ejemplos de entrenamiento a partir de las salidas de capa normalizadas; yproporcionar la salida de capa de normalizacion por lotes como una entrada a la segunda capa de red neuronal;donde la pluralidad de componentes de la primera salida de capa se indexan por i) dimension o ii) donde la primera capa de red neuronal es una capa convolucional y donde la pluralidad de componentes de la primera salida de capa se indexan por mdice de caractenstica y por mdice de ubicacion geografica, y donde calcular una pluralidad de estadfsticas de normalizacion para las primeras salidas de capa comprende ademas, para (i):calcular, para cada una de las dimensiones, una media de los componentes de la primeras salidas de capa en la dimension; ycalcular, para cada una de las dimensiones, una desviacion estandar de los componentes de las primeras salidas de capa en la dimension; y para (ii):calcular, para cada uno de los indices de caractenstica, una media de los componentes de las primeras salidas de capa que se corresponden con el mdice de caractenstica; ycalcular, para cada uno de los indices de caractenstica, una varianza de los componentes de las primeras salidas de capa que se corresponden con el mdice de caractenstica.15. Uno o mas soportes de almacenamiento informatico no transitorios codificados con un programa informatico, comprendiendo el programa informatico instrucciones que al ser ejecutadas por uno o mas ordenadores hacen que el uno o mas ordenadores implementen el metodo segun la reivindicacion 14.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562108984P | 2015-01-28 | 2015-01-28 | |
PCT/US2016/015476 WO2016123409A1 (en) | 2015-01-28 | 2016-01-28 | Batch normalization layers |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2714152T3 true ES2714152T3 (es) | 2019-05-27 |
Family
ID=55349983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES16704121T Active ES2714152T3 (es) | 2015-01-28 | 2016-01-28 | Capas de normalización por lotes |
Country Status (17)
Country | Link |
---|---|
US (7) | US10417562B2 (es) |
EP (3) | EP3483795B1 (es) |
JP (5) | JP6453477B2 (es) |
KR (2) | KR102204286B1 (es) |
CN (1) | CN107278310A (es) |
AU (5) | AU2016211333B2 (es) |
CA (1) | CA2975251C (es) |
DE (1) | DE112016000509T5 (es) |
DK (1) | DK3251059T3 (es) |
ES (1) | ES2714152T3 (es) |
IL (1) | IL253676A0 (es) |
MX (1) | MX2017009879A (es) |
PL (1) | PL3251059T3 (es) |
RU (1) | RU2666308C1 (es) |
SG (1) | SG11201706127RA (es) |
TR (1) | TR201902908T4 (es) |
WO (1) | WO2016123409A1 (es) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102204286B1 (ko) | 2015-01-28 | 2021-01-18 | 구글 엘엘씨 | 배치 정규화 레이어들 |
CN107851195B (zh) * | 2015-07-29 | 2022-02-11 | 诺基亚技术有限公司 | 利用神经网络进行目标检测 |
US10402649B2 (en) | 2016-08-22 | 2019-09-03 | Magic Leap, Inc. | Augmented reality display device with deep learning sensors |
EP3563306B1 (en) | 2017-02-10 | 2023-12-06 | Google LLC | Batch renormalization layers |
US10255681B2 (en) * | 2017-03-02 | 2019-04-09 | Adobe Inc. | Image matting using deep learning |
US20190370641A1 (en) * | 2017-03-06 | 2019-12-05 | Sony Corporation | Information processing apparatus |
US11308391B2 (en) * | 2017-03-06 | 2022-04-19 | Baidu Usa Llc | Offline combination of convolutional/deconvolutional and batch-norm layers of convolutional neural network models for autonomous driving vehicles |
CN110663049B (zh) * | 2017-04-28 | 2023-12-26 | 谷歌有限责任公司 | 神经网络优化器搜索 |
CN109034384B (zh) * | 2017-06-12 | 2021-06-22 | 浙江宇视科技有限公司 | 一种数据处理方法和装置 |
US10635813B2 (en) | 2017-10-06 | 2020-04-28 | Sophos Limited | Methods and apparatus for using machine learning on multiple file fragments to identify malware |
US11586905B2 (en) * | 2017-10-11 | 2023-02-21 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and methods for customizing kernel machines with deep neural networks |
CN111373416B (zh) * | 2017-10-27 | 2024-01-23 | 谷歌有限责任公司 | 通过离散神经网络输入来增强神经网络的安全性 |
WO2019123544A1 (ja) * | 2017-12-19 | 2019-06-27 | オリンパス株式会社 | データ処理方法およびデータ処理装置 |
CN108009634B (zh) * | 2017-12-21 | 2021-05-25 | 美的集团股份有限公司 | 一种卷积神经网络的优化方法、装置及计算机存储介质 |
EP3511872A1 (en) | 2018-01-12 | 2019-07-17 | Sony Corporation | Artificial neural network |
US11003774B2 (en) | 2018-01-26 | 2021-05-11 | Sophos Limited | Methods and apparatus for detection of malicious documents using machine learning |
US11941491B2 (en) | 2018-01-31 | 2024-03-26 | Sophos Limited | Methods and apparatus for identifying an impact of a portion of a file on machine learning classification of malicious content |
WO2019149375A1 (en) * | 2018-02-02 | 2019-08-08 | Toyota Motor Europe | Method and system for processing input data and propagating variance in a neural network |
WO2019149376A1 (en) | 2018-02-02 | 2019-08-08 | Toyota Motor Europe | Method and system for processing input data using a neural network and normalizations |
US20190251429A1 (en) * | 2018-02-12 | 2019-08-15 | Kneron, Inc. | Convolution operation device and method of scaling convolution input for convolution neural network |
CN108875787B (zh) | 2018-05-23 | 2020-07-14 | 北京市商汤科技开发有限公司 | 一种图像识别方法及装置、计算机设备和存储介质 |
CN108921283A (zh) * | 2018-06-13 | 2018-11-30 | 深圳市商汤科技有限公司 | 深度神经网络的归一化方法和装置、设备、存储介质 |
WO2020068498A1 (en) * | 2018-09-27 | 2020-04-02 | Google Llc | Data compression using integer neural networks |
US11947668B2 (en) * | 2018-10-12 | 2024-04-02 | Sophos Limited | Methods and apparatus for preserving information between layers within a neural network |
KR20200051278A (ko) | 2018-11-05 | 2020-05-13 | 삼성전자주식회사 | 인공 신경망에서의 작업 관리 방법 및 이를 포함하는 시스템 |
US11687761B2 (en) * | 2018-12-11 | 2023-06-27 | Amazon Technologies, Inc. | Improper neural network input detection and handling |
US10789510B2 (en) * | 2019-01-11 | 2020-09-29 | Google Llc | Dynamic minibatch sizes |
US10325185B1 (en) * | 2019-01-23 | 2019-06-18 | StradVision, Inc. | Method and device for online batch normalization, on-device learning, and continual learning applicable to mobile devices or IOT devices additionally referring to one or more previous batches to be used for military purpose, drone or robot, and testing method and testing device using the same |
US11574052B2 (en) | 2019-01-31 | 2023-02-07 | Sophos Limited | Methods and apparatus for using machine learning to detect potentially malicious obfuscated scripts |
JP2020135011A (ja) | 2019-02-13 | 2020-08-31 | キオクシア株式会社 | 情報処理装置及び方法 |
CN109886392B (zh) * | 2019-02-25 | 2021-04-27 | 深圳市商汤科技有限公司 | 数据处理方法和装置、电子设备和存储介质 |
KR102046113B1 (ko) | 2019-03-19 | 2019-11-18 | 주식회사 루닛 | 신경망 학습 방법 및 그 장치 |
KR102046133B1 (ko) * | 2019-03-20 | 2019-11-18 | 주식회사 루닛 | 특징 데이터 리캘리브레이션 방법 및 그 장치 |
DE102019204136A1 (de) * | 2019-03-26 | 2020-10-01 | Robert Bosch Gmbh | Verfahren und Vorrichtung für Training und Herstellung eines künstlichen neuronalen Netzes |
KR102037483B1 (ko) | 2019-04-02 | 2019-11-15 | 주식회사 루닛 | 신경망 데이터 정규화 방법 및 그 장치 |
TWI706337B (zh) * | 2019-05-02 | 2020-10-01 | 旺宏電子股份有限公司 | 記憶體裝置及其操作方法 |
US11361218B2 (en) * | 2019-05-31 | 2022-06-14 | International Business Machines Corporation | Noise and signal management for RPU array |
CN111967570B (zh) * | 2019-07-01 | 2024-04-05 | 北京砥脊科技有限公司 | 可视化神经网络系统的实现方法、装置和机器设备 |
KR102461732B1 (ko) * | 2019-07-16 | 2022-11-01 | 한국전자통신연구원 | 강화 학습 방법 및 장치 |
KR20190098106A (ko) * | 2019-08-02 | 2019-08-21 | 엘지전자 주식회사 | 배치 정규화 레이어 트레이닝 방법 |
CN110598852A (zh) * | 2019-08-29 | 2019-12-20 | 北京小米移动软件有限公司 | 子网络采样方法、构建超网络拓扑结构的方法及装置 |
DE102019213898A1 (de) * | 2019-09-11 | 2021-03-11 | Robert Bosch Gmbh | Robustes und besser trainierbares künstliches neuronales Netzwerk |
US11568259B2 (en) * | 2019-10-15 | 2023-01-31 | Zoox, Inc. | Cross batch normalization |
KR102127913B1 (ko) | 2019-10-29 | 2020-06-29 | 주식회사 루닛 | 신경망 학습 방법 및 그 장치 |
US11868855B2 (en) * | 2019-11-04 | 2024-01-09 | Hewlett Packard Enterprise Development Lp | Resiliency for machine learning workloads |
KR102143191B1 (ko) * | 2019-11-12 | 2020-08-10 | 주식회사 루닛 | 특징 데이터 리캘리브레이션 방법 및 그 장치 |
KR102143192B1 (ko) | 2019-11-12 | 2020-08-10 | 주식회사 루닛 | 신경망 학습 방법 및 그 장치 |
CN111144556B (zh) * | 2019-12-31 | 2023-07-07 | 中国人民解放军国防科技大学 | 面向深度神经网络训练和推理的范围批处理归一化算法的硬件电路 |
US11610303B2 (en) | 2020-03-03 | 2023-03-21 | The University Court Of The University Of Edinburgh | Data processing apparatus and method |
JP7297705B2 (ja) | 2020-03-18 | 2023-06-26 | 株式会社東芝 | 処理装置、処理方法、学習装置およびプログラム |
US11915419B1 (en) | 2020-06-25 | 2024-02-27 | Verily Life Sciences Llc | Auto-normalization for machine learning |
WO2022051908A1 (en) * | 2020-09-08 | 2022-03-17 | Huawei Technologies Co., Ltd. | Normalization in deep convolutional neural networks |
KR102441442B1 (ko) * | 2021-01-11 | 2022-09-08 | 성균관대학교산학협력단 | 그래프 컨볼루션 네트워크 학습 방법 및 장치 |
US12010129B2 (en) | 2021-04-23 | 2024-06-11 | Sophos Limited | Methods and apparatus for using machine learning to classify malicious infrastructure |
JP7211556B1 (ja) | 2021-06-09 | 2023-01-24 | コニカミノルタ株式会社 | ニューラル・ネットワーク・システム |
US20230119791A1 (en) * | 2021-10-04 | 2023-04-20 | Qualcomm Incorporated | Relaxed instance frequency normalization for neural-network-based audio processing |
WO2023085852A1 (ko) * | 2021-11-11 | 2023-05-19 | 서울대학교산학협력단 | 통계 기반 정규화를 시행하는 딥 뉴럴 네트워크 학습 장치 및 그 방법 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5875284A (en) | 1990-03-12 | 1999-02-23 | Fujitsu Limited | Neuro-fuzzy-integrated data processing system |
JPH05346915A (ja) * | 1992-01-30 | 1993-12-27 | Ricoh Co Ltd | 学習機械並びにニューラルネットワークおよびデータ分析装置並びにデータ分析方法 |
JPH0785280B2 (ja) * | 1992-08-04 | 1995-09-13 | タカタ株式会社 | 神経回路網による衝突予測判定システム |
US5729662A (en) * | 1995-06-07 | 1998-03-17 | Rozmus; J. Michael | Neural network for classification of patterns with improved method and apparatus for ordering vectors |
US5790758A (en) * | 1995-07-07 | 1998-08-04 | The United States Of America As Represented By The Secretary Of The Navy | Neural network architecture for gaussian components of a mixture density function |
US6134537A (en) * | 1995-09-29 | 2000-10-17 | Ai Ware, Inc. | Visualization and self organization of multidimensional data through equalized orthogonal mapping |
US6539267B1 (en) * | 1996-03-28 | 2003-03-25 | Rosemount Inc. | Device in a process system for determining statistical parameter |
US6650779B2 (en) * | 1999-03-26 | 2003-11-18 | Georgia Tech Research Corp. | Method and apparatus for analyzing an image to detect and identify patterns |
US6418378B1 (en) * | 2000-06-26 | 2002-07-09 | Westerngeco, L.L.C. | Neural net prediction of seismic streamer shape |
WO2002044926A1 (en) * | 2000-11-30 | 2002-06-06 | Yang Ming Pok | Neural cortex |
US7107207B2 (en) * | 2002-06-19 | 2006-09-12 | Microsoft Corporation | Training machine learning by sequential conditional generalized iterative scaling |
US7082394B2 (en) * | 2002-06-25 | 2006-07-25 | Microsoft Corporation | Noise-robust feature extraction using multi-layer principal component analysis |
US7496546B2 (en) | 2003-03-24 | 2009-02-24 | Riken | Interconnecting neural network system, interconnecting neural network structure construction method, self-organizing neural network structure construction method, and construction programs therefor |
US7219085B2 (en) * | 2003-12-09 | 2007-05-15 | Microsoft Corporation | System and method for accelerating and optimizing the processing of machine learning techniques using a graphics processing unit |
JP2005352900A (ja) | 2004-06-11 | 2005-12-22 | Canon Inc | 情報処理装置、情報処理方法、パターン認識装置、及びパターン認識方法 |
US7747070B2 (en) | 2005-08-31 | 2010-06-29 | Microsoft Corporation | Training convolutional neural networks on graphics processing units |
CN100367300C (zh) * | 2006-07-07 | 2008-02-06 | 华中科技大学 | 一种基于人工神经网络的特征选择方法 |
US7606777B2 (en) | 2006-09-01 | 2009-10-20 | Massachusetts Institute Of Technology | High-performance vision system exploiting key features of visual cortex |
EP2345984B1 (en) | 2010-01-19 | 2012-03-14 | Honda Research Institute Europe GmbH | Online learning of grounded categories using adaptive feature spaces |
JP5772442B2 (ja) * | 2011-09-22 | 2015-09-02 | 富士ゼロックス株式会社 | 画像処理装置及び画像処理プログラム |
US10127475B1 (en) | 2013-05-31 | 2018-11-13 | Google Llc | Classifying images |
TWI648609B (zh) | 2013-06-07 | 2019-01-21 | 美商科學設計股份有限公司 | 程序監控系統及方法 |
CN103824055B (zh) * | 2014-02-17 | 2018-03-02 | 北京旷视科技有限公司 | 一种基于级联神经网络的人脸识别方法 |
US9058517B1 (en) | 2014-04-16 | 2015-06-16 | I.R.I.S. | Pattern recognition system and method using Gabor functions |
EP3029606A3 (en) | 2014-11-14 | 2016-09-14 | Thomson Licensing | Method and apparatus for image classification with joint feature adaptation and classifier learning |
KR102204286B1 (ko) | 2015-01-28 | 2021-01-18 | 구글 엘엘씨 | 배치 정규화 레이어들 |
US11151449B2 (en) * | 2018-01-24 | 2021-10-19 | International Business Machines Corporation | Adaptation of a trained neural network |
KR102046113B1 (ko) * | 2019-03-19 | 2019-11-18 | 주식회사 루닛 | 신경망 학습 방법 및 그 장치 |
US11367163B2 (en) * | 2019-05-31 | 2022-06-21 | Apple Inc. | Enhanced image processing techniques for deep neural networks |
US11568259B2 (en) * | 2019-10-15 | 2023-01-31 | Zoox, Inc. | Cross batch normalization |
US20210150306A1 (en) * | 2019-11-14 | 2021-05-20 | Qualcomm Incorporated | Phase selective convolution with dynamic weight selection |
-
2016
- 2016-01-28 KR KR1020197036115A patent/KR102204286B1/ko active IP Right Grant
- 2016-01-28 JP JP2017539561A patent/JP6453477B2/ja active Active
- 2016-01-28 DK DK16704121.9T patent/DK3251059T3/en active
- 2016-01-28 EP EP18207898.0A patent/EP3483795B1/en active Active
- 2016-01-28 CN CN201680012517.XA patent/CN107278310A/zh active Pending
- 2016-01-28 CA CA2975251A patent/CA2975251C/en active Active
- 2016-01-28 US US15/009,647 patent/US10417562B2/en active Active
- 2016-01-28 EP EP21161358.3A patent/EP3872716A1/en active Pending
- 2016-01-28 DE DE112016000509.1T patent/DE112016000509T5/de active Pending
- 2016-01-28 MX MX2017009879A patent/MX2017009879A/es unknown
- 2016-01-28 SG SG11201706127RA patent/SG11201706127RA/en unknown
- 2016-01-28 TR TR2019/02908T patent/TR201902908T4/tr unknown
- 2016-01-28 PL PL16704121T patent/PL3251059T3/pl unknown
- 2016-01-28 ES ES16704121T patent/ES2714152T3/es active Active
- 2016-01-28 RU RU2017130151A patent/RU2666308C1/ru active
- 2016-01-28 AU AU2016211333A patent/AU2016211333B2/en active Active
- 2016-01-28 WO PCT/US2016/015476 patent/WO2016123409A1/en active Application Filing
- 2016-01-28 KR KR1020177023719A patent/KR102055355B1/ko active IP Right Grant
- 2016-01-28 EP EP16704121.9A patent/EP3251059B1/en active Active
-
2017
- 2017-07-26 IL IL253676A patent/IL253676A0/en active IP Right Grant
-
2018
- 2018-12-12 JP JP2018232445A patent/JP6710745B2/ja active Active
- 2018-12-19 US US16/226,483 patent/US10628710B2/en active Active
-
2019
- 2019-01-17 AU AU2019200309A patent/AU2019200309B2/en active Active
- 2019-09-16 US US16/572,454 patent/US10902319B2/en active Active
-
2020
- 2020-04-01 US US16/837,959 patent/US11308394B2/en active Active
- 2020-05-27 JP JP2020092300A patent/JP6935542B2/ja active Active
- 2020-10-09 AU AU2020250312A patent/AU2020250312B2/en active Active
-
2021
- 2021-01-22 US US17/156,453 patent/US11893485B2/en active Active
- 2021-07-30 US US17/390,768 patent/US11281973B2/en active Active
- 2021-08-25 JP JP2021137180A patent/JP7179935B2/ja active Active
-
2022
- 2022-03-16 AU AU2022201819A patent/AU2022201819B2/en active Active
- 2022-04-18 US US17/723,007 patent/US11853885B2/en active Active
- 2022-11-16 JP JP2022183459A patent/JP2023029845A/ja active Pending
-
2023
- 2023-12-22 AU AU2023285952A patent/AU2023285952A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2714152T3 (es) | Capas de normalización por lotes | |
CA3038812C (en) | Dynamic coattention network for question answering | |
EP3485396B1 (en) | Classifying images using machine learning models | |
US10936949B2 (en) | Training machine learning models using task selection policies to increase learning progress | |
US11443170B2 (en) | Semi-supervised training of neural networks | |
CN109815459A (zh) | 生成被调整到目标受众词汇的文本内容的目标概要 | |
US20240185030A1 (en) | Adjusting neural network resource usage | |
US11238332B2 (en) | Attention neural networks with sparse attention mechanisms | |
US20220230065A1 (en) | Semi-supervised training of machine learning models using label guessing | |
CN109891437A (zh) | 使用神经网络处理文本序列 | |
US20200364543A1 (en) | Computationally efficient expressive output layers for neural networks | |
US20200104681A1 (en) | Neural Networks with Area Attention | |
US20240078379A1 (en) | Attention neural networks with n-grammer layers | |
BR112017016306B1 (pt) | Sistema de rede neural implementado por um ou mais computadores, método de processar dados utilizando o sistema de rede neural e um ou mais meios de armazenamento de computador não transitórios |