7 de Enero de 2020 · 3 min de lectura
Hasta ahora (en la parte 1) lo que tenemos es un texto donde nos describen entre otras cosas la capacidad de un maletero. Hemos definido la gramática que sigue estos textos como
Un SM puede estar formado por:
Una vez tenemos una gramática completa, las librerías de análisis gramatical contenidas en NLTK nos permiten categorizar un texto de una sola pasada, sin necesidad de hacer una llamada por cada elemento que busquemos. Esto ahorra tiempo y costes.
Al tener definida en la gramática el elemento que define la cantidad y el que define las condiciones, la misma categorización nos hace de parseo. Por ejemplo:
Las gramáticas son una herramienta fantástica si tenemos una gramática completa, es decir si tenemos cubiertos todos los casos posibles. Como os podéis imaginar no suele ser el caso en que tengamos definido cada posible caso, así que, ¿qué nos queda? Pues ir añadiendo cada caso que encontremos
Nuestro amigo el Machine Learning, tan olvidado que lo tenemos. Veamos cómo lo aplicaríamos. Nuestro problema es que no conocemos todas las posibilidades, así pues lo que podemos hacer es alimentar el algoritmo con las definiciones y sinónimos e intentar ver si aquellos sintagmas que desconozca pueda inferir una estructura. Por ejemplo, nos encontramos la frase “Llantas de piedra volcánica”.
Si juntamos todo ante una frase del estilo maletero de 400 L y llantas de piedra volcánica la máquina nos diría:
Al aceptar esta clasificación reforzaremos el aprendizaje de la máquina por un lado y ella además creará un nuevo tipo de sintagma (Sintagma de descripción de llantas) con lo que a cada nuevo texto se va completando la gramática.
Todo esto puede parecer un trabajo muy elaborado para evitar “rellenar una tabla de excel con los datos”. No hay que olvidar que lo que está generalizado y bien estructurado puede integrarse con otras herramientas. Por ejemplo podríamos enlazarlo con una herramienta de scrapping para:
Por otro lado gracias a que la gramática puede seguir creciendo y que tenemos semiautomatizado el aprendizaje podemos aplicarlo a otras áreas como:
Si crees que tienes un problema en el que nuestro departamento de Data Science pueda ayudarte no dudes en enviarnos un correo a data@apsl.net.