I want to build a classifier which can classify gender and ethnicity based on the names. I am looking for datasets to download where I take samples for supervised learning. If there are no open datasets available for download, what are the ways that I can create one?

migrated from datascience.stackexchange.com Mar 23 '18 at 12:55

This question came from our site for Data science professionals, Machine Learning specialists, and those interested in learning more about the field.

  • I have one with names and their associated community but it is restricted to India I believe. – JahKnows Mar 22 '18 at 10:39
  • I assume you've googled and sets like top100-babynames.net/ethnic-names.html are too small to be useful? You could try using wikidata to find common names with nationalities but I'm not sure if that would include ethnicity. Some papers on racial discrimination use ethnic names to indicate race, which may or may not be helpful. – Barry Carter Mar 26 '18 at 0:53
  • if you can swap "ethnicity" for "country of origin" then this list can't be beat opendata.stackexchange.com/a/5003/1511 – philshem Mar 26 '18 at 6:27
SELECT ?nameLabel ?typeLabel ?langLabel WHERE {
 ?type wdt:P279* wd:Q202444 .
 ?name wdt:P31 ?type .
 ?name wdt:P407 ?lang
SERVICE wikibase:label{bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".} 

The wikidata query above (http://tinyurl.com/y9t44r59) yields 12841 results and may provide a helpful starting point.

  • is there a way that I can download the data? – Raady Mar 26 '18 at 12:52
  • There should be a "download" link after you run the query. The download will give you all of the results, not just the first page. If you still have trouble, let me know and I'll upload the results to idrive or something. – Barry Carter Mar 26 '18 at 18:08

I think you can start with general source of knowledge nowadays, wikipedia, namely the article on List of popular given names . This will give you enough information to extrapolate from country to gender/ethnicity and if the classification is feasible.

After that, you can either dig deeper into country census data or use pseudo-labelling techniques to enrich your dataset further.

  • The Wikipedia lists are, at least partially, highly biased towards recent naming trends. For some countries they might have nothing in common with the actual most common names in the population. – aventurin Mar 22 '18 at 20:26
  • @aventurin I think, the whole point of wikipedia is that if you see any data errors and you possess the knowledge that you believe is more true, you should edit and update the article. On the topic of the question, as I said, this "dataset" will give a start that will either prove or disprove the hypothesis that such classification is feasible at all (which I doubt). And if it is, you can use a shallow model to get more semi-automated labeled data using pseudo-labelling technique. – chewpakabra Mar 22 '18 at 22:08
  • I do not know if the lists in wikipedia contain errors. My point was that some (many?) of the lists only reflect recent naming trends. For example, none of the names in the wikipedia article's top-ten list of male given names in Germany is also in the top-ten list (not even close) of the whole population. This is because the wikipedia list considers only names of babies born in 2015. The following link shows naming trends over time for the US: visualcinnamon.com/portfolio/babynames – aventurin Mar 22 '18 at 22:41

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.