¿Sabes cuál es la tecnología central detrás de ChatGPT?

¿Sabes cuál es la tecnología central detrás de ChatGPT?

Actualización: principio GPT-4: https://yunyaniu.blog.csdn.net/article/details/129573291?spm=1001.2014.3001.5502

El fin de semana, resolví la tecnología central de ChatGPT y los principios subyacentes: aprender y aprender.

algunos experimentos de prueba

Workplace PUA: ¿Cómo evaluar el modelo de súper diálogo ChatGPT de OpenAI? - La respuesta de Young - Zhihu https://www.zhihu.com/question/570189639/answer/2788083617

Escribir una novela: ¿Cómo evaluar el modelo de súper diálogo ChatGPT de OpenAI? - Respuesta de Tian Yuandong - Zhihu https://www.zhihu.com/question/570189639/answer/2787584375

Máquina virtual: ¿Cómo evaluar el modelo de súper diálogo ChatGPT de OpenAI? - Respuesta de Malta - Zhihu https://www.zhihu.com/question/570189639/answer/2788647814


◎Fuente|Aprendizaje y pensamiento inteligente

Ingrese algunas palabras clave simples y la IA puede ayudarlo a generar una historia corta o incluso un artículo profesional. El reciente incendio del sólido desempeño de ChatGPT en tareas como la redacción de correos electrónicos, la traducción de textos y la redacción de códigos ha hecho que Elon Musk afirme sentir el "peligro" de la IA. La lógica de cálculo de ChatGPT proviene de un algoritmo llamado transformador, que se deriva de un artículo de investigación científica "La atención es todo lo que necesita" en 2017. Originalmente, este documento se centró en el campo del procesamiento del lenguaje natural, pero debido a su excelente interpretación y rendimiento informático, ha sido ampliamente utilizado en varios campos de la IA y se ha convertido en el modelo de algoritmo de IA más popular en los últimos años, ya sea este paper o el modelo transformer. , son un microcosmos del desarrollo de la tecnología de IA en la actualidad. Partiendo de esta premisa, este trabajo analiza los puntos centrales y las principales intenciones de innovación de este trabajo.

origen

Desde la propuesta de Transformer hasta el nacimiento del "modelo a gran escala y formativo" GPT (Generative Pre-Training), hasta la muestra iterativa de GPT2 de que Open AI se ha convertido en una empresa con ánimo de lucro, y el "fuera del círculo de GPT3 y ChatGPT; mira la industria, más Un campo importante como la biomedicina y la fabricación inteligente ha producido tecnologías basadas en transformadores. Bajo esta ola, mi pensamiento es:

Primero, en el campo de la inteligencia durante mucho tiempo en el futuro, todos experimentaremos iteraciones rápidas del ciclo de "investigación científica, poder de cómputo, infraestructura, ingeniería, datos y soluciones"; la liquidez y la innovación no se estabilizarán en el corto plazo En cambio, se volverá más y más fuerte. Nos cuesta esperar a que se empaquete la tecnología y se blinde todo este conocimiento antes de pulir el producto. **El ganador de la competencia en el futuro será el equipo que "resuelva el equilibrio entre la producción, la investigación científica y la innovación en ingeniería". **Nuestra comprensión general de la investigación y el desarrollo es en realidad ingeniería, pero la naturaleza científica práctica de la IA requiere que el equipo acepte mejor esta "fluidez". Por lo tanto, se ha convertido en una necesidad rígida para todos los profesionales o socios pequeños que estén interesados ​​en la inteligencia para comprender el conocimiento de la pila completa.

En segundo lugar, a través de la discusión de este artículo, podemos comprender de manera más intuitiva: ¿qué sucedió al final de la investigación científica, a qué velocidad y ritmo, cuáles son los hitos? Fue el Messi del mundo científico quien salió y nos llevó a descubrir la verdad, ¿qué son las microinnovaciones? Tal vez la dirección sea clara, pero todavía hay mucho espacio para expandirse; ¿cuáles se parecen más a la alquimia? Todavía descifrarlo, tomará mucho tiempo, o seguirá siendo así.

En tercer lugar, en el campo de la IA, debido a razones técnicas, más documentos son códigos fuente abiertos. Por un lado, promueve que más personas participen en iteraciones de mejora; por otro lado, la investigación científica y la ingeniería están conectadas a la perfección, y un el papel puede extraer Del código central a la plataforma de la plataforma , a la difusión de valor de una amplia gama de aplicaciones específicas. **Es probable que una tesis sea un campo, una pista e incluso genere directamente un aumento sustancial en el valor comercial y el valor para el cliente.

En cuarto lugar, hay muchos campos en el desarrollo de la tecnología de IA (percepción, cognición, la percepción se divide en imágenes, voz, texto, etc., y la cognición también se puede dividir en muchos niveles). Hay grandes diferencias en la lógica del algoritmo de Estos campos antes El surgimiento de **transformador Hay signos de promover la convergencia de varios campos hasta cierto punto.** Una introducción clara a este documento puede ser útil para comprender el todo. Además, ChatGPT es una aplicación a nivel de fenómeno, y todos tienen una experiencia más intuitiva. En el futuro, la mejora de la experiencia y la velocidad de actualización de este tipo de aplicación solo serán más rápidas. Comprender la lógica detrás de esto nos ayudará a comprender esta tendencia. .

introducción en papel

Vayamos al tema y comencemos a presentar este documento, que incluirá algunos detalles técnicos y fórmulas. Es posible que deba examinarlo más de cerca (recójalo primero, y es mejor reservar 15-20 minutos). Creo que una vez lo lees, entenderás AI Profundiza mucho.

Comprensión general

La estructura de este documento es muy refinada, hace preguntas, analiza problemas, resuelve problemas y proporciona datos de prueba. Los artículos principales son concisos y concisos, con descripciones, códigos y resultados; el núcleo de los cuales es la siguiente imagen, donde el equipo de autores propone la estructura del algoritmo central de Transformer:

inserte la descripción de la imagen aquí

Todo el artículo se explica en torno a esta imagen. Debido a las limitaciones de espacio, nos centramos en una línea principal: 1. Cuál es el problema principal que el artículo quiere resolver 2. Cómo resolverlo 3. Se utiliza la solución propuesta en el artículo como un caso Para desencadenar el pensamiento general, por lo que simplificamos el contenido y nos enfocamos en las partes centrales.

inserte la descripción de la imagen aquí

Si comprende el contenido expresado en esta imagen, básicamente dominará el 85 % del contenido de este documento, que también es la parte más crítica.

"La atención es todo lo que necesita" se escribió principalmente para considerar las tareas de PNL y fue completado por varios investigadores de Google. Uno de los antecedentes es que Google también está promocionando sus propios chips de computación paralela y su plataforma de desarrollo AI TensorFlow. La característica principal de la plataforma es la computación paralela, y el algoritmo de este artículo también maximiza la realización de la computación paralela. Tomemos un ejemplo simple para unir este algoritmo.

contenido central

El requisito es que necesitamos entrenar un modelo para la traducción del chino al inglés.

Conocimiento previo: este requisito es transponer "traducción: te amo a te amo" en un problema y = f (x), x representa chino, y es inglés, necesitamos obtener f () a través del entrenamiento, una vez que el entrenamiento es exitosa f(), la traducción se puede realizar. Lo que todos están luchando es qué método de entrenamiento es más preciso y eficiente, y qué f() es mejor para usar.

El algoritmo principal de procesamiento del lenguaje natural antes se llama RNN (Red Neural Recurrente), y su principal lógica de implementación es heredar el resultado a la segunda palabra después de calcular cada "palabra". La desventaja del algoritmo es que requiere muchos cálculos en serie y es ineficiente. Y cuando se encuentra una oración relativamente larga, es probable que la información anterior se diluya, dando como resultado un modelo inexacto, es decir, el efecto de las oraciones largas se atenuará. Este es el problema que este artículo está dedicado a resolver, lo que significa que este artículo tiene un mejor método f() para el entrenamiento. Imagina que ChatGPT se puede usar como tesis y siéntelo.

En Transformer, el autor propone calcular cada palabra y todas las palabras de la oración, y calcular la correlación entre la palabra y cada palabra, para determinar el significado más exacto de la palabra en la oración.

Aquí, para comenzar a ingresar algunos detalles técnicos, antes de comenzar, debemos familiarizarnos con uno de los conceptos centrales en el campo del aprendizaje automático: "vector". En la era digital, la unidad más pequeña de operaciones matemáticas suele ser un número natural. Pero en la era de la IA, esta unidad más pequeña se convierte en un vector. Esta es una de las diferencias más importantes entre la informática en la era digital y la era de la inteligencia.

Por ejemplo, en un banco, para juzgar el límite de crédito de una persona, usamos un vector para representar

inserte la descripción de la imagen aquí

Un vector es una colección de datos, que también se puede imaginar como un punto en un espacio de dimensiones muy altas. Un vector de límite de crédito específico es un punto en un espacio de alta dimensión compuesto por 8 características. Los datos en el espacio de alta dimensión mostrarán más propiedades matemáticas, como la separabilidad lineal, lo que nos facilita comprender más leyes ocultas.

La suma, resta, multiplicación y división de vectores es la lógica de cálculo más importante para que la computadora realice el entrenamiento de muestras.

**El significado principal del modelo de Transformador es encontrar un algoritmo, dividir una palabra en un espacio de alta dimensión gradualmente en tres pasos y brindar a la palabra mejor información que otros algoritmos en el proceso. **En muchos casos, este espacio de alta dimensión tiene diferentes significados, una vez que la información proporcionada por este vector sea más precisa y más cercana a la situación real, el trabajo de aprendizaje automático posterior será fácil de llevar a cabo. Tome el ejemplo del vector de límite de crédito justo ahora

inserte la descripción de la imagen aquí

Estos dos vectores existen en dos espacios vectoriales diferentes, la principal diferencia es que el primero tiene una característica vectorial más: "salario anual". Puedes pensarlo si juzgas el límite de crédito de una persona, ¿es el "salario anual" un factor muy importante?

El ejemplo anterior sigue siendo muy simple, simplemente agregando un valor propio, que es mucho más complicado en el transformador.Es calcular de manera integral la información de múltiples vectores a través de la suma, resta, multiplicación y división de matrices, para darle un nuevo significado a un vector.

Bien, ahora que entendemos la importancia de los vectores, echemos un vistazo a los tres pasos del transformador Estos tres pasos son: 1. Incrustación 2. Codificación posicional 3. Autoatención.

Por ejemplo, traduzca al chino la oración Smart John está cantando.

Primero, vectorice cada palabra de la oración.

Veamos primero la palabra "Juan". Necesitamos convertir la expresión del arreglo de letras de "Juan" en un vector de 512 dimensiones, para que la computadora pueda comenzar a reconocerlo. Explique que John es un punto en este espacio de 512 dimensiones, este es el primer paso: codificar (Embedding).

Nuevamente, el segundo paso: **Codificación posicional, **use la siguiente fórmula (esta es la innovación de este documento)

inserte la descripción de la imagen aquí

Ajuste un nuevo espacio de alta dimensión y genere un nuevo vector.

inserte la descripción de la imagen aquí

No necesitamos preocuparnos demasiado por esta fórmula. Su significado central es: 1. En este nuevo vector, cada bit está representado por el 0 y el 1 originales, y reemplazado por sen y cos respectivamente. Este propósito es pasar el ley de seno y coseno, permita que este nuevo vector no solo represente el significado de la palabra John, sino que también represente la información de posición de John en la oración Smart John está cantando. Si no entiende, puede ignorarlo directamente, solo recuerde que el segundo paso es agregar la información de la posición de John en la oración al "vector que expresa la palabra John". John ya no es una palabra aislada, sino una palabra en una oración específica, aunque aún no se conoce el significado de otras palabras en la oración.

Si la computadora del primer paso entiende qué es John, la computadora del segundo paso entiende "*John**".

Finalmente, el tercer paso: mecanismo de auto atención (Self-Attention) , a través de un algoritmo de Atención (Q, K, V), colocamos a John en una nueva información espacial nuevamente, configuramos

imagen

En este nuevo vector, no solo contiene el significado de John, la información de posición de John en la oración, sino que también contiene la información de relación y valor entre John y el significado de cada mónada en la oración . Podemos entender que John como palabra es un término general, pero Smart John es mucho más específico, y cantar Smart John está un paso más cerca. Además, el algoritmo Atención (Q, K, V) no calcula alrededor de una palabra, sino que calcula la palabra y todas las palabras de la oración. Ajuste la posición de la palabra en el espacio mediante cálculo.

Este método puede tener una ventaja en una oración muy larga, y lo más importante es romper la barrera de las series temporales de un solo golpe . La división anterior de imágenes y algoritmos de PNL se debe en gran parte a las características obvias de series temporales de PNL. Es decir, cada palabra tiene una relación temporal más evidente con la siguiente y la siguiente. Pero el algoritmo Transformer rompe esta restricción y presta más atención al peso del valor de una palabra y cada palabra en una oración. Esta es la razón principal por la que Transformer se puede utilizar en todas partes.

imagen

proceso de calculo

Para el proceso de cálculo específico, use la oración de traducción "Te amo" a "Te amo" como ejemplo (esta oración es más simple). Primero, vectorice y absorba la información de posición de la oración para obtener un grupo de vectores inicial de una oración.

imagen

(Debido a que la longitud de cada oración en la muestra es diferente, cada oración será una matriz de 512 * 512. Si la longitud no es suficiente, reemplácela con 0. De esta manera, sin importar cuán larga sea la oración, puede usar una matriz del mismo tamaño durante el entrenamiento. Para representar. Por supuesto, 512 es un superparámetro, que se puede ajustar antes del entrenamiento.)

A continuación, el vector inicial de cada palabra se multiplica por tres matrices iniciales aleatorias WQ, Wk, Wv respectivamente para obtener tres cantidades Qx, Kx, Vx. La siguiente figura usa "I" como ejemplo.

imagen

Luego, calcule el valor de atención de cada palabra. Por ejemplo, el valor de atención de la palabra "I" es multiplicar el QI de la palabra "I" por el valor K de otras palabras en la oración. El significado matemático de multiplicar dos matrices es medir la similitud de dos matrices. Luego, a través de una conversión SoftMax (no tiene que preocuparse por cómo calcularlo), calcule el peso de él y cada palabra, y la relación de peso debe ser igual a 1 cuando se suman. Luego, cada peso se multiplica por el valor V correspondiente. Todos los productos se suman para obtener este valor de Atención.

imagen

Este valor de atención es la información de correlación de cada palabra en la oración, además de su propia información e información de ubicación de la palabra "yo".

Puede encontrar que en la lógica de cálculo de todos los coeficientes de atención, solo la matriz inicial WQ, Wk y Wv de cada palabra son incógnitas (estas tres matrices son compartidas por todas las palabras). Luego, podemos simplificar este transformador en una ecuación sobre la entrada, la salida y esta matriz W: donde X es la información del texto de entrada e Y es la información de traducción.

imagen

Aquí es necesario introducir los conceptos básicos del aprendizaje automático: el algoritmo Transformer es esencialmente un modelo de red neuronal feedforward, y su lógica de cálculo básica, independientemente de la capa oculta compleja, es asumir Y=f(x)=wx, ( El el objetivo sigue siendo calcular f()) y luego establecer aleatoriamente w0, comenzar a calcular la función de costo de y=w0x, luego cambiar w0 a w1, calcular la función de costo de y=w1x, y así sucesivamente para calcular innumerables w ( no innumerables, también convergerá), y luego compare cuál w tiene la función de costo más pequeña, que es la f() que entrenamos. Luego en el transformador, estas tres matrices iniciales son las w0.

Volviendo al transformador, luego de calcular la Atención, cada palabra es ingresada a un nuevo espacio de alta dimensión de acuerdo a la relación semántica, esto es la Autoatención (mecanismo de autoatención).

Pero en el transformador, en lugar de sustituir un espacio, se sustituyen múltiples espacios de alta dimensión, llamado mecanismo de atención multicabezal (el artículo no da un soporte teórico más claro, por qué es multicabezal).

imagen

La razón principal es que funciona bien cuando se entrena . Esta también es una característica de los trabajos de investigación científica de IA, ya que a menudo encuentran algunas direcciones con una alfabetización y sensibilidad de investigación científica muy altas, y son efectivamente efectivos a través de las pruebas, pero es posible que no puedan brindar un apoyo teórico perfecto. Esto a menudo les da a los investigadores de seguimiento un margen de mejora adicional.

Los hechos han demostrado que cómo mejorar la eficiencia de Atención (Q, K, V) es la parte más rápida de la iteración del campo del transformador. Posteriormente, el algoritmo Bert propuso un mecanismo de entrenamiento previo y se convirtió en la corriente principal, que se presentará más adelante.

Por supuesto, podemos entender después que la relación lógica en esta oración se coloca en diferentes espacios de alta dimensión para el entrenamiento. El propósito es capturar más información. Esta parte puede brindar a los investigadores una comprensión más profunda de la aplicación del espacio.

Además del contenido anterior, hay algunos puntos técnicos, como el mecanismo de máscara, la norma de capa, el control de la región de saturación de la función de excitación de la red neuronal, etc., que no se presentan uno por uno debido a limitaciones de espacio y detalles técnicos.

Si comprende el mecanismo de autoatención de varios cabezales, básicamente domina el 85 % del contenido importante de este documento y tiene una comprensión más intuitiva del modelo transformador que aún está expandiendo rápidamente su influencia.

cosecha inspiradora

Desde la perspectiva del progreso teórico de la investigación

1. El transformador rompió la lógica del cálculo de series de tiempo y comenzó a salir rápidamente del círculo. Múltiples campos de IA que originalmente eran relativamente independientes comenzaron a integrarse técnicamente. Mirando más adentro, **Transformer puede romper el tiempo.Es muy importante que el modo de potencia de cómputo de la computación paralela brinde la posibilidad de rendimiento de costos para cálculos más complejos. La mejora adicional de la potencia informática seguramente traerá la integración en varias subdivisiones de IA, y se seguirán lanzando más modelos y algoritmos a nivel de infraestructura. **En el campo de la IA, la imagen y la PNL, la división profesional del trabajo en el campo de la percepción y la cognición se desdibujará gradualmente.

En segundo lugar, la investigación de la IA tiene cierta naturaleza experimental. Además de la idea central, hay muchas soluciones técnicas que se han aclarado, pero todavía hay mucho margen de mejora y es previsible que las microinnovaciones en torno al transformador sigan acelerándose y prosperando.

3. "La atención es todo lo que necesita" es bien conocido en la industria, pero si observa más de cerca, encontrará que también se toma prestado una gran cantidad de contenido. Por ejemplo, la atención más importante (Q, K, V ) en Query, Key, Value es un sistema de recomendación de Internet La metodología estándar; todo el algoritmo Transformer también es una gran red neuronal, y el algoritmo se desarrolla iterativamente paso a paso sobre la base de los predecesores, pero la velocidad de iteración obviamente se está acelerando .

Desde la perspectiva de la teoría, el algoritmo, la arquitectura y la ingeniería

4. El campo de la investigación de algoritmos de IA está experimentando un crecimiento acelerado en algoritmos, código fuente abierto, ingeniería y poder de cómputo.

imagen

La siguiente figura muestra la proporción de artículos de código abierto en artículos académicos en las principales revistas.Esta información ha crecido a un ritmo más rápido en los últimos años. El proceso de investigación científica y el proceso de ingeniería se entrecruzan cada vez más. La comunidad de código abierto y la cultura de código abierto en sí misma también están impulsando el rápido desarrollo de algoritmos e ingeniería.

imagen

"Participan más personas y se involucran personas de más campos. A medida que el costo del poder de cómputo, la infraestructura y el código de IA y el intercambio de conocimiento de fuente abierta disminuyen gradualmente, los límites entre la investigación científica y la ingeniería también se vuelven borrosos. Esto es como el fútbol". Según la ley, además del aumento de la población futbolística, también aumentará la probabilidad de aparición del talentoso jugador Messi.

Desde la perspectiva de los datos y su posterior desarrollo

5. El éxito de ChatGPT se debe a una gran cantidad de entrenamiento de datos, pero además de la simple interacción o traducción del diálogo, las respuestas a gran escala e incluso las respuestas en papel aún carecen de datos de muestra (los datos de muestra necesarios para el entrenamiento de algoritmos requieren claridad). X y Y). Además, el algoritmo Transformer requiere una mayor cantidad de datos que otros algoritmos porque necesita generar aleatoriamente tres matrices en la etapa inicial y optimizarlas paso a paso. Además de Transformer, otra tecnología, Bert, también es un algoritmo de nivel de fenómeno que es muy importante para el desarrollo tecnológico. Su núcleo es un Transformador simplificado. Bert no traduce de A a B. Cubre aleatoriamente algunas palabras u oraciones en X para permitir que el algoritmo optimice la predicción de la parte cubierta. Esta línea de pensamiento convierte a Bert en el mejor socio para la formación previa de Transformer.

imagen

Si el preentrenamiento se realiza a través de Bert, es equivalente a agregar conocimientos previos a la matriz (la lógica de entrenamiento anterior no le dio ninguna pista a la máquina, y el conocimiento básico de las reglas de este último), lo que mejora la precisión de la inicial. matriz durante el entrenamiento formal y mejora en gran medida el transformador posterior Eficiencia computacional y requisitos de volumen de datos. En realidad, por ejemplo, si quiero entrenar el libro de la Biblioteca Nacional de China, necesito la información de cada libro y la explicación de este libro, o el libro en inglés correspondiente al libro chino. Pero ahora podemos entrenar una gran cantidad de contenido sin etiquetar, y luego solo necesitamos ajustar los datos de muestra a través del transformador. Esto le da a ChatGPT mucho margen de mejora, y es previsible que surjan más modelos tan grandes rápidamente.

6. Dado que Transformer es un algoritmo de aprendizaje profundo de red neuronal más avanzado, tiene altos requisitos en cuanto a la cantidad de datos, lo que también ha dado lugar a algoritmos sobre cómo generar rápidamente grandes datos a partir de pequeños datos, como GAN contra la red. Esta es la tecnología central en el campo de AIGC. Para resolver el problema del volumen de datos insuficiente, además de una abstracción más eficiente de la información de datos pequeños, también existen más métodos para complementar los datos pequeños en grandes datos, y estos métodos están madurando rápidamente.

7. Descubrimos que hay una gran cantidad de hiperparámetros en el algoritmo de aprendizaje automático. Por ejemplo, en el transformador, el mecanismo de cabezales múltiples necesita varios N cabezales, si el texto se convierte en un vector es 512 o más, y la tasa de aprendizaje debe configurarse de antemano antes del entrenamiento. Debido al largo tiempo de entrenamiento y los parámetros complejos, lleva mucho tiempo explorar mejores efectos de cálculo. Esto dio origen a AutoML. Tomando Transformer como ejemplo, se requieren muchas rutas para el aprendizaje automático automático, como el cálculo bayesiano (para encontrar la probabilidad de una mejor configuración de parámetros), ideas de aprendizaje por refuerzo (un algoritmo voraz se acerca rápidamente al óptimo en un entorno incierto ) ); Además, hay formas de encontrar una nueva red de entrenamiento (transformador, RNN, MLP, etc. usan conjuntamente permutaciones y combinaciones), etc.

El desarrollo de la investigación científica enfatiza la parametrización, mientras que el desarrollo de la industria enfatiza la automatización. Los dos parecen estar unificados, pero a menudo son bastante dolorosos y contradictorios en el proceso de operación real. Esta es también un área importante donde el equilibrio entre la producción y la movilidad de la investigación científica se mencionó al principio.

Supongo que te gusta

Origin blog.csdn.net/sinat_36458870/article/details/129659344
Recomendado
Clasificación