-4

私は、名前が通常男性か女性かを検出したい Python でアプリケーションを開発しています。

これについてGoogle検索を行いましたが、それを実行できるアルゴリズム/コードが見つかりませんでした。しかし、同じことをうまくやっているウェブサイトを見つけました: http://www.i-gender.com/

アプリケーションで API を使用することを考えていましたが、その前に、名前から性別を検出する方法を知りたいだけでしたか? アルゴリズム的にそれを行うことは本当に可能ですか?いくつかのドキュメント/リンクを提案してください。

ここで私がしようとしていること:

>>> import urllib2
>>> import json
>>> req = urllib2.Request("http://www.i-gender.com/ai", "name=jhony")
>>> resp = urllib2.urlopen(req).read()
>>> decoder = json.JSONDecoder()
>>> result = decoder.decode(resp)
>>> print result['gender']
male
>>> print result['confidence']
100
>>> 
4

3 に答える 3

2

彼らはおそらくデータベースを使用しており、おそらくデータベースにない名前を推測するアルゴリズムによって補完されていると思います.

どちらかの性別がかなり一般的な名前 (「パット」など) がかなりあります。国際的に見ると、ある国では一般的にある性別に関連付けられているかなりの数の名前が、他の国では他の性別に関連付けられている可能性があり、さらに他の国では比較的性別に関連付けられていない可能性があります.

于 2013-04-15T16:38:09.543 に答える
2

自然言語処理について読みたいコメントで述べたように、または sr2222 がニューラル ネットワークを提案したように。(おそらく両方の組み合わせが必要になるでしょう)。彼らが主張するように、iGenderが積極的に人工知能性別予測ツールを作成しようとしている場合、彼らはこれも使用しています.

利用可能なものはたくさんあり、簡単な Google 検索で遠くまでアクセスできます。
Python には、NLTK や PyBrain をお勧めします。
NLTKには(無料の)本があり、章の1つは実際に名前/性別の予測に関するものです.

API に関して、すべての要件をインストールしましたか? あなたが走っている問題は何ですか?あなたのコードを見ると、私にはうまくいくようです..?


差し支えなければ、何を達成しようとしていますか? より簡単/より優れた、より信頼性の高いオプションが利用できる場合があります。

于 2013-04-15T16:47:11.223 に答える
1

性別を検出するアルゴリズムを見つけるのは難しいと思います。

できることの 1 つは、名前をキーとして、性別を値として辞書を作成することです。

あなたが考慮しなければならない他のことは、男の子または女の子の名前である可能性があり、英語以外の名前です.これらの変数はconfidence.

于 2013-04-15T16:39:26.170 に答える