文字列からムードを抽出できるAPIはありますか(PHPで使用するためですが、任意の言語で実装できます)?
存在しない場合、分類器を構築するにはどうすればよいでしょうか。おそらく機械学習に関連するもので、既知の肯定的/否定的な単語を抽出します。
文字列からムードを抽出できるAPIはありますか(PHPで使用するためですが、任意の言語で実装できます)?
存在しない場合、分類器を構築するにはどうすればよいでしょうか。おそらく機械学習に関連するもので、既知の肯定的/否定的な単語を抽出します。
AlchemyAPIをお勧めします。それらは非常に単純なAPIを持っています(これは使用するのが難しくないはずです。あなたの特定のケースについては、ここを調べてください
上記のAlchemyapIの提案を使用して、Facebookのステータスに基づいた非常にシンプルなシステムを次に示します。
$id = CURRENT USER ID;
$message = array(); //the users posts with scores
$status = $fb->fql("SELECT status_id, message FROM status WHERE uid=$id LIMIT 10");
foreach($status as $stat) {
$message = file_get_contents("http://access.alchemyapi.com/calls/text/TextGetTextSentiment"
."?outputMode=json&apikey=MYAPIKEY"
."&text=".urlencode($stat['message']));
$data = json_decode($message); //get reply
$messages[] = array("status"=>$stat['message'], "score"=>($data->docSentiment->type!="neutral") ? $data->docSentiment->score : 0); //save reply
}
$user = $fb->api("/".$id); //query the user
$content .= "<h3>".$user['name']."</h3>";
$total = 0;
$count = 0;
foreach($messages as $message) {
$total += $message['score'];
if($message['score']!=0) $count++;
}
$content .= 'Has an average rating of '.$total/$count.' <meter min="-1" max="1" value="'.$total/$count.'"></meter><br /><br />';
foreach($messages as $message) {
$content .= '<b>'.$message['status'].'</b> '.$message['score'].'</br>'
.'<meter ' //class="'.($message['score'] == 0 ? "yellow" : $message['score'] < 0 ? "red" : "green").'" '
.'value="'.$message['score'].'" min="-0.5" max="0.5" optimum="0">'.$message['score'].' out of -1 to 1</meter><br /><br />';
}