not - php in array key
Cómo reconocer nombres de un texto usando php (3)
Quiero extraer el nombre (nombres y apellidos) de un texto usando php. Ejemplo: Del texto a continuación quiero extraer nombres (en este caso Aline Wright y Jesse Wright)
Aline Wright es una sobreviviente de cáncer, amputada y recién casada. El miércoles por la noche ella comenzó a mostrar signos de que estaba teniendo un derrame cerebral.
"Empecé a sentir algo de entumecimiento en el brazo izquierdo y una caída de la cara", dijo Aline.
"Me pareció que probablemente estaba teniendo un derrame cerebral".
Fue entonces cuando su esposo de cuatro días, Jesse Wright, la metió en el automóvil y la llevó rápidamente al Centro Médico Erlanger. Wright conoce una emergencia. Él es un técnico de enfermería en Erlanger.
Escribí esta extensión PHP, pero prepárate para compilar desde la fuente. https://github.com/rjjakes/MITIE-PHP
Si desea realizar el reconocimiento de entidad con nombre (NER) mediante PHP, deberá llamar a un paquete NER externo o utilizar una API de procesamiento de lenguaje natural en línea.
API
Las tres principales API de NLP se enumeran a continuación. Complexity Intelligence y Alchemy API probablemente sean moderadamente más fáciles de usar para principiantes que OpenCalais.
- Inteligencia de Complejidad : consulte aquí el código de ejemplo de etiquetado de entidad nombrado por PHP.
- Alchemy API : descargue su PHP SDK aquí .
- OpenCalais : consulte el código de ejemplo de PHP aquí .
NER Paquetes
Algunos paquetes de software que puede usar para NER son:
- Stanford CoreNLP (Java)
- LingPipe (Java)
- NLTK (Python)
- OpenNLP (Java)
- YamCha (C ++)
De estos, Stanford CoreNLP es probablemente un buen lugar para comenzar. Similar a muchas API de NLP, proporciona una canalización de procesamiento completa para tareas comunes como NER.
Yo usaría un identificador de entidad con nombre. Hay muchos de estos en CPAN donde hay una comunidad de lingüística activa.
Luego, en PHP , haz algo como:
$result = /`perl named_entity_recogniser.pl "myText"/`;