Estoy tratando de generar un modelo inteligente que pueda escanear un conjunto de palabras o cadenas y clasificarlas como nombres, números móviles, direcciones, ciudades, estados, países y otras entidades utilizando el aprendizaje automático o el aprendizaje profundo.
Había buscado enfoques, pero desafortunadamente no encontré ningún enfoque. Intenté con el modelo de bolsa de palabras y la incrustación de palabras de guantes para predecir si una cadena es nombre o ciudad, etc.
Pero no tuve éxito con el modelo de bolsa de palabras y con GloVe hay muchos nombres que no están cubiertos en el ejemplo de incrustación: Lauren está presente en Glove y Laurene no
Encontré esta publicación aquí , que tenía una respuesta razonable, pero no pude utilizar el enfoque para resolver ese problema, aparte del hecho de que NLP y SVM se utilizaron para resolverlo.
Cualquier sugerencia es apreciada
Gracias y Saludos, Sai Charan Adurthi.
fuente
Respuestas:
Puede aplicar gramos de caracteres: intuitivamente, puede haber una gran diferencia en el conjunto de caracteres entre un número de teléfono y una dirección de correo electrónico. y luego pasa el vector de gramo de caracteres a SVM para hacer una predicción. Puede implementar esto usando sklearn usando los siguientes extractores de funciones.
TfIdfVectorizer (analizador = 'personaje')
CountVectorizer (analizador = 'personaje')
Valide en forma cruzada el rango de ngram y las variables de holgura de SVM para ajustar su modelo.
fuente
La aplicación de etiquetas categóricas comunes a las palabras generalmente se denomina reconocimiento de entidad con nombre (NER) .
NER puede hacerse mediante reglas estáticas (p. Ej., Expresiones regulares) o reglas aprendidas (p. Ej., Árboles de decisión). Estas reglas son a menudo frágiles y no se generalizan. Los campos aleatorios condicionales (CRF) son a menudo una mejor solución porque pueden modelar los estados latentes de los idiomas. El rendimiento actual de vanguardia en NER se realiza con una combinación de modelos de Deep Learning .
El Stanford Named Entidad Reconocedor y SPACY son paquetes para llevar a cabo NER.
fuente