ニュース

グーグルの「鼻歌(ハミング)検索」、中の人が語るその難しさとは

iOS版はまもなく

 グーグルが10月から「鼻歌(ハミング)だけで楽曲を検索できる機能」を提供し始めた。

 これまでも鼻歌で曲を探せるアプリやサービスは登場してきたが、今回、開発にあたっては、何百万もの曲数を機械学習させた、とシニア プロダクトマネージャーのクリシュナ クマール(Krishna Kumar)氏は語る。

鼻歌検索の難しさ

 「Google 鼻歌検索(Google Hum to Search)」は、現在、Android版のGoogleアプリ、あるいはGoogleアシスタント、Goole検索ウィジェットから利用できる。マイクアイコンをタップして「この曲は何?」と話しかけて鼻歌を歌うと、マッチする曲を探し当ててくれる。

 「鼻歌は人によって音が違う。顔認識でたとえると、実際の楽曲が写真だとすれば、鼻歌は似顔絵のようなもの。それだけ違うものをマッチさせることになる」とクマール氏はその難しさを表現する。

 実際、当初開発したシステムでは、歌声で検索することはできたものの、ハミングではなかなか良い結果が出なかった。

歌とハミングからメロディを抽出、数列化

 そこでクマール氏らの開発チームは、ニューラルネットワークがメロディーのみにフォーカスできるようにする、
という形を採用。メロディを学習するため、まず歌声をもとにハミングの音源を作り出した。いわばリバースエンジニアリングでの取り組みとクマール氏。

 最初のころは、人が聴くと、ハミングとも言えない形だったが、学習を重ねることで、ニューラルネットワークはクリアなハミングを抽出できるようになった。このとき何百万もの曲をニューラルネットワークは学んだという。学ぶ対象は人気曲だけではなく、古今東西、万遍なく学ぶようにした。

 ニューラルネットワークのアルゴリズムは、歌声やハミング、スタジオ録音された音源を聴くと、そのメロディを表す固有の数列を生み出すようになっている。同じメロディから生み出される数列は近しい数字で、別のメロディは遠い数字で構成されるようにした。伴走や音の肯定、声質といった情報は取り除かれ、メロディのみを抽出する。

 数列をデータベース化し、ハミングや歌声をもとにした数列が入力されると、マッチする結果を弾き出すようにした。

 あくまでメロディのみ使う形で、ピッチやリズムは検索の際には用いていない。現在は10~12秒ほど鼻歌を聴かせる必要があるものの、それを短くできないか模索しているところという。

 歌詞がある曲のほうが合致しやすいとのことだが、歌声がない曲でも対応できる。あくまでメロディを用いるため、言語に依存しない形だが、現在はデータベース対象の楽曲が一定の言語に限られており、今後、対応言語、つまり探しあげられる曲を増やしていく。