Project Oxfordに話者識別APIが追加されていた (Technet ML blogメモ)

2016年3月23日水曜日

Oxford?

Project Oxfordは、簡単にいうと「Microsoft(Research)のすごい研究成果をAPIで提供するもの」です。CV(Computer Vision、画像認識)や音声認識など、多彩なAPIを提供しています。
サービス概要と音声認識APIの簡単な使い方はWindows & Microsoft技術 基礎 Advent Calendar 2015枠で書いた誰も知らない凄いヤツ はじめようProject Oxfordのエントリで簡単に紹介したので、よければ参照してください。
実はこのエントリとタイミングが被っていたのですが、2015/12/15に音声認識APIが強化されていました。今回はその話です。
TechnetのMachine Learning blog内のhttps://blogs.technet.microsoft.com/machinelearning/2015/12/14/now-available-speaker-video-apis-from-microsoft-project-oxford/という記事(Ryan Galgon氏によるもの)のメモです。
一般的な認証の話は端折って、話者識別API(Speaker Recognition APIs)の話へ行きます。

話者識別APIの概要

話者識別APIは、「話者登録」と「話者識別」という2つのフェーズに分解できます。

話者登録

話者登録段階では、話者の音声を記録して個人を特定するのに必要な声紋(voiceprint)を抽出します。これらは話者の口や喉の物理的な構造に由来するもので、数式であらわせます。
話者識別時には、この声紋情報を利用して識別をおこないます。

話者識別

話者識別はさらに「話者検証(speaker verification)」と「話者特定(speaker identification)」のコンポーネントにわけられます。
話者検証は認証向けのシナリオで利用されるものです。話者登録と話者識別の際に特定のパスフレーズを唱えて認証するイメージです。この精度は実験上90%以上、拒否率5%*1とありました。
話者特定は、入力音声の話者を複数人の候補者の中から特定するものです。これは話者検証と違って、話している文章に依存しません。
原文にはi-vector話者識別モデルの構造概要が書かれているので、興味があれば読んでみてください。
[*1] 原文にrejection rateとあるのですが、false rejection rateつまり本人拒否率の意味だと解釈しました。

その後

Project Oxfordプロジェクトサイト上でのAPI紹介はhttps://msdn.microsoft.com/en-us/library/mt612813.aspxにあります。
APIリファレンスはhttps://dev.projectoxford.ai/docs/services/563309b6778daf02acc0a508/operations/5645c3271984551c84ec6797ですね。
話者検証(speaker verification)APIでは確度情報をHigh/Middle/Lowで返してくれるので、使い方によっては便利そうです。認識対象の音声は1秒以上15秒以下という制限があるので、事前に沈黙部分をカットしておくのがよさそうです。
話者特定(speaker identification)APIでは事前に登録した話者候補情報を渡すのですが、ここで渡せる最大数は今のところ10です。また、複数人の会話から部分ごとに話者を識別するようなことはできないのに加えて、沈黙状態を除いて60秒以上のサンプルが必要という制限が書かれています。
まずは自分で使ってみないと。使ったらまた書きます。

about

このエントリは、TechnetのML(Machine Learning) blogから面白そうなエントリを掘り出してポイントをまとめるシリーズのものです。
前回: AzureにデータサイエンスVMなるものが増えていた (Azure ML blogメモ)
次回: 未定

0 件のコメント:

コメントを投稿