1
$\begingroup$

Given person's name, e.g. 'Adjutor Ferguson'.

How to define is it a male or female?

One solution came to my mind:

     I have found Person NLP training dataset here mbejda.github.io.

      And via a machine learning software like Apache Mahout, train it and provide real data.

But I am not sure about the accuracy of the results.

May be another approach exist? (e.g. scikit-learn.org)

$\endgroup$
1
$\begingroup$

That dataset looks like a good starting point. Keep in mind that when you make your own dataset from those datasets you'll want to keep the male to female ratio balanced if you want it to predict both well.

It should not matter what machine learning software you use (Apache Mahout, scikit-learn, weka, etc.). Pick one that fits your language of choice since speed will probably not be too much of a concern with the smallish dataset size. As for features, you'd generally use ngrams as your baseline for NLP classification tasks. If you use ngrams here you won't end up with anything very interesting because the model won't generalize to any unseen names. I'd suggest as a feature baseline that you try character ngrams, and maybe something like syllable ngrams for something slightly more advanced (for syllable tokenization see https://stackoverflow.com/questions/405161/detecting-syllables-in-a-word).

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.