Saturday, August 29, 2020

Meta-aprendizaje Con GPT-3: Aprender A Sumar Leyendo O A Escribir Código Fuente Con Servicios Cognitivos De Texto Predictivo.

En el equipo de Ideas Locas nos encanta hacer proyectos y trabajar con tecnologías de Inteligencia Artificial. Dentro de este tan amplio campo, los servicios cognitivos de NLP (Natural Language Processing) están adquiriendo cada vez mayor importancia. Gracias a ellos podemos empezar a crear interfaces de usuario que humanizan la interacción persona-ordenador, con todas las ventajas que ello supone. 

Figura 1: Meta-aprendizaje con GPT-3: Aprender a sumar leyendo
o a escribir código fuente con servicios cognitivos de Texto Predictivo.

Dentro de este subconjunto de servicios que tratan de alcanzar la paridad humana, hoy os quiero hablar de la generación de texto, o los servicios de Texto Predictivo que ya se usaron en el pasado para construir novelas inventadas de Harry Potter, Drácula o Don Quijote de la Mancha como nos contó nuestro compañeros Fran Ramírez, y tenéis el artidulo de Chema Alonso sobre cómo los servicios de AI han comenzado a superar la paridad humana.

Figura 2: Creación de novelas con herramientas de Texto Predictivo

El problema del Texto Predictivo es aparentemente sencillo de entender. Se trata de crear un modelo entrenado que debe predecir el siguiente elemento del texto basándose en una secuencia previa de caracteres que llevarán a criterios puramente probabilísticos. Por tanto, dada una entrada como  "soy hacke" la salida del modelo debería de ser una "r". A nivel humano esto parece obvio pero la creación y el entrenamiento de estos modelos de IA es realmente complejo, debido a que el lenguaje lo es, aunque no nos demos cuenta como hablantes. 

Figura 3: Modelo de texto predictivo entrenado con probabilidades

Para resolver este problema, el último modelo que ha visto la luz ha sido GPT-3  (con permiso de GShard  de Google que lleva escasos días público) y ha sido desarrollado por OpenAI, empresa de Elon Musk. Es el pistoletazo de salida de una nueva generación de modelos gigantescos  - para que os hagáis una pequeña idea, GPT-3 cuenta con 175.000 millones de parámetros - desarrollados y entrenados por grandes empresas tecnológicas para ser servidos a los usuarios a través de APIs

Figura 4: GPT-3 en GitHub

Estos modelos tienen muchas utilidades de todo tipo, y algunos ejemplos los tenéis en el libro de Machine Learning aplicado a Ciberseguridad: Técnicas y ejemplos en la detección de amenazas de nuestros compañeros Fran Ramírez, Carmen Torrano, Sergio Hernández y José Torres. Son tan potentes que estas APIs son privadas y se debe rellenar un formulario detallando los usos que se le va a dar junto con los posibles riesgos, para luego esperar que sea aceptado, ya que podrían usarse para cosas que podrían considerarse negativas.

Figura 5: Libro de Machine Learning aplicado a Ciberseguridad

Puede resultar algo exagerado para un modelo que únicamente predice la siguiente letra, ¿verdad?. Lo que se ha observado con GPT-3, que ya se empezaba a intuir con su hermano pequeño GPT-2, es que es capaz de desarrollar un meta-aprendizaje, es decir, ha aprendido a aprender. Esto es resultado de haber sido entrenado con prácticamente la totalidad de los textos que hay en la red y es aquí es donde reside la potencia de este modelo.

Figura 6: Formulario para ser aceptado


Comúnmente, un modelo se desarrolla para resolver un problema específico. Sin embargo, GPT-3 ha cambiado radicalmente esta mentalidad, ya que ha sido entrenado para una tarea general y son los usuarios los que han ido encontrando distintos casos de uso en los que el modelo se desenvuelve a la perfección. Vamos a ver algunos ejemplos en diferentes ámbitos.

Generación de texto

La generación de texto es el problema fundamental para el cual el modelo ha sido entrenado, por tanto, su desempeño en esta tarea es espectacular. Es capaz de generar contenido escrito de forma que el lector ni se percate de que el texto ha sido generado por un modelo de IA. Pero mucho ojo con esto, porque puede ser utilizado para generar desinformación y ser usado en Fake News.


Operaciones matemáticas

El modelo es capaz de predecir que después de la secuencia "3 + 3 = " el carácter más probable es el "6". ¿Esto significa que sepa sumar? Realmente no, es únicamente cuestión de probabilidad, pero sí que puede dar respuesta a operaciones matemáticas de esta forma... ¿se podrían hacer cálculos matemáticos seguros?

Escribir código

GPT-3 es capaz de escribir código en distintos lenguajes de programación mediante una descripción en lenguaje natural, consiguiendo incluso el desarrollo de frontales web o de redes neuronales.




Estos son únicamente unos ejemplos de lo que GPT-3 es capaz de lograr en los meses que lleva en producción, y puedes ver muchos más ejemplos de aplicación de GPT-3 en este enlace de GPT-3 examples. Nadie sabe aún cuáles son los límites de estos modelos y que nos depararán los próximos que salgan a la luz pero, ¿a que ya no resulta tan exagerado poner las APIs privadas?

Autor: Pablo Saucedo (@psaucedo)

More information
  1. Pentest Tools For Ubuntu
  2. Hacking Tools Pc
  3. Hacker Security Tools
  4. Hacking Tools For Kali Linux
  5. Hack Rom Tools
  6. How To Make Hacking Tools
  7. Hacking Tools
  8. Hacker Techniques Tools And Incident Handling
  9. New Hacker Tools
  10. Hacker Hardware Tools
  11. Pentest Reporting Tools
  12. Hacking Tools For Windows Free Download
  13. Hacker Tools 2020
  14. Pentest Tools Windows
  15. Pentest Tools Find Subdomains
  16. Hacking App
  17. Hack Tools For Windows
  18. Hacker Techniques Tools And Incident Handling
  19. Hacker Hardware Tools
  20. Hacker Tools Linux
  21. Beginner Hacker Tools
  22. Hacker Tools Windows
  23. Hacker Tools
  24. Hacker Tools For Windows
  25. Hack Apps
  26. Pentest Tools Tcp Port Scanner
  27. How To Install Pentest Tools In Ubuntu
  28. Hacking Tools For Windows
  29. How To Install Pentest Tools In Ubuntu
  30. Pentest Tools Tcp Port Scanner
  31. Pentest Tools Subdomain
  32. Hacking Tools For Kali Linux
  33. Nsa Hacker Tools
  34. Hacker Tools For Mac
  35. Github Hacking Tools
  36. Hacker Tools Online
  37. Top Pentest Tools
  38. Hack Rom Tools
  39. Hack Tools For Mac
  40. Pentest Tools Github
  41. Pentest Tools Online
  42. Hack App
  43. Hacker Tools Apk Download
  44. Pentest Tools Review
  45. Install Pentest Tools Ubuntu
  46. Hacker Tools Hardware
  47. Hacking Tools Kit
  48. Tools Used For Hacking
  49. Hack Tools For Pc
  50. Hacking Tools Online
  51. Beginner Hacker Tools
  52. Best Hacking Tools 2019
  53. Pentest Tools Apk
  54. Hacker Tools Online
  55. Hacker Tools
  56. Hacking Tools
  57. Free Pentest Tools For Windows
  58. Pentest Tools Url Fuzzer
  59. Hack Tool Apk
  60. Tools Used For Hacking
  61. Hacker Techniques Tools And Incident Handling
  62. Pentest Tools For Mac
  63. Hack Tools Online
  64. Free Pentest Tools For Windows
  65. Hacking Tools Download
  66. Pentest Tools Nmap
  67. Termux Hacking Tools 2019
  68. Pentest Tools Port Scanner
  69. Hacking Tools For Kali Linux
  70. Hack Tools For Ubuntu
  71. Tools Used For Hacking
  72. Hacks And Tools
  73. Hacker Tools Hardware
  74. Hacker Techniques Tools And Incident Handling
  75. Hack Tools Pc
  76. Nsa Hack Tools Download
  77. Hack Rom Tools
  78. Hack Tools 2019
  79. Hack Tools For Windows
  80. Pentest Tools For Ubuntu
  81. Pentest Reporting Tools
  82. Pentest Tools Open Source
  83. Pentest Automation Tools
  84. Computer Hacker
  85. Hacking Tools Pc
  86. Hacking Tools
  87. Hack Tools Mac
  88. Pentest Recon Tools
  89. Wifi Hacker Tools For Windows
  90. Pentest Tools Subdomain
  91. Hacking Tools Github
  92. Pentest Reporting Tools

No comments:

Post a Comment