¿Alguien sabe de alguna API que pueda determinar el género en función de algunos de los siguientes:
O si dicha API que combina todo eso no está disponible; ¿Sería una buena idea combinar varias API y crear una aplicación para manejar todas esas funciones?
No quiero dar un paso en el mundo del procesamiento de lenguaje natural, procesamiento de imágenes; por eso prefiero llamar a un servicio creado por profesionales.
Me sorprendería si encuentra alguna API que combine esas características. Como las dos características más útiles son, sin duda, la imagen y el nombre, usaría una API de detección de género de rostros como la API de Lambda Labs (escogida al azar, es posible que desee buscar un punto de referencia si hay alguno), combinado con un nombre al mapeo de género . Para resolver los conflictos, es posible que desee intentar encontrar alguna API que devuelva una respuesta (masculino/femenino) adjunta con algún intervalo de confianza. También supongo que los hombres tienden a usar imágenes femeninas más a menudo que las mujeres tienden a usar imágenes masculinas, pero eso probablemente depende de sus aplicaciones, por lo que es posible que desee hacer algunas estadísticas básicas de ese lado.
En PHP podrías escribir una función simple como esta
Extracto:
<?php
/* vorname=firstname
geschlecht=gender */
function analyse_fullname($fullname=null){
$n=split_fullname($fullname);
$r["vorname"]=$n[0];
$r["nachname"]=$n[1];
$r["fullname"]=$fullname;
$r["titel"]="Frau";
$r["geschlecht"]="M";
if(in_array(strtolower($r["vorname"]),array('achim',
'adam',
'adolf',
'albert',
#...
'wolfgang',
'wolfram'
))) $r["titel"]="Herr";
if(in_array(strtolower($r["vorname"]),array('adelheid'
,'agnes'
,'alexandra'
#...
,'wilma'
,'yvonne'
))) $r["geschlecht"]="W";
if ($r["geschlecht"]=="M") $r["anrede"]="Sehr geehrter Herr ".$r["fullname"];
else $r["anrede"]="Sehr geehrte Frau ".$r["fullname"];
if ($r["geschlecht"]=="M") $r["doktoranrede"]="Sehr geehrter Herr Dr. ".$r["fullname"];
else $r["doktoranrede"]="Sehr geehrte Frau Dr. ".$r["fullname"];
return $r;
}
Nick Dickinson Wilde
Ramina
Nick Dickinson Wilde
Nicolás Raúl
Ramina
Nicolás Raúl