Yandexがマむクの音楜を認識する方法

音楜カタログの怜玢は、ナヌザヌの芳点からも技術的にも、さたざたな方法で解決できるタスクです。 Yandexは、曲名ず歌詞の䞡方で怜玢するこずをかなり長い間孊びたした。 たた、 Yandexで音声による音楜ク゚リに回答するこずもできたす。iOSずAndroidを怜玢したすが、今日はオヌディオ信号、より具䜓的にはマむクから録音された楜曲の怜玢に焊点を圓おたす。 この関数は、 Yandex.Musicモバむルアプリケヌションに組み蟌たれおいたす 。



画像



䞖界には、音楜トラックの認識に専門的に埓事しおいる専門䌁業はわずかしかありたせん。 私たちが知る限り、怜玢䌚瀟のうち、Yandexはこのタスクでロシアのナヌザヌを支揎した最初の䌁業です。 ただやるこずがたくさんあるずいう事実にもかかわらず、認識の質はすでにこの分野のリヌダヌず同等です。 たた、オヌディオフラグメントによる音楜の怜玢は、Runetで最も単玔で明るいトピックではありたせん。 倚くの人が詳现を知りたがっおいるこずを願っおいたす。



達成された品質レベルに぀いお
基本品質は、関連する回答を䞎えた有効なリク゚ストの割合ず呌ばれたす-珟圚は玄80です。 関連する応答は、ナヌザヌの芁求を含むトラックです。 Yandex.Musicアプリケヌションからの芁求のみが有効であり、ノむズや静寂だけでなく、実際に音楜の録音が含たれおいるず芋なしたす。 私たちが知らない䜜品をリク゚ストするずき、その答えは明らかに無関係であるず考えたす。


技術的には、タスクは次のように定匏化されたすスマヌトフォンに蚘録された音声信号の10秒の断片芁求ず呌びたすがサヌバヌに到着したす。その埌、わかっおいるトラックの䞭で、断片が蚘録されたトラックを正確に芋぀ける必芁がありたす。 フラグメントが既知のトラックに含たれおいない堎合、および音楜レコヌドではない堎合は、「䜕も芋぀かりたせんでした」ず答える必芁がありたす。 完党に䞀臎しない堎合に、音で最も類䌌したトラックに答える必芁はありたせん。



トラックベヌス



Web怜玢の堎合ず同様に、適切に怜玢するには、ドキュメントこの堎合はトラックの倧芏暡なデヌタベヌスが必芁であり、それらを正しくマヌクアップする必芁がありたす。各トラックに぀いお、名前、アヌティスト、アルバムを知る必芁がありたす。 おそらく既に掚枬されおいるように、このような基盀がありたした。 たず、これはYandex.Musicの膚倧な数のレコヌドであり、著䜜暩所有者によっお正匏にリスニング甚に提䟛されおいたす。 第二に、むンタヌネットに投皿された音楜トラックのセレクションを線集したした。 そのため、ナヌザヌが最も興味を持っおいる600䞇トラックを取埗したした。

なぜむンタヌネットからのトラックが必芁なのか、そしおそれらをどうするのか
怜玢゚ンゞンずしおの目暙は完党性です。有効なク゚リごずに、関連する回答を提䟛する必芁がありたす。 Yandex.Musicデヌタベヌスには人気のあるパフォヌマヌはいたせん。すべおの著䜜暩所有者がこのプロゞェクトに参加しおいるわけではありたせん。 䞀方、ナヌザヌにサヌビスの䞀郚のトラックを聎く暩利を䞎えおいないずいう事実は、それらを認識できず、アヌティスト名ず曲名を提䟛するこずを意味するものではありたせん。



私たちはむンタヌネットのミラヌであるため、Webで人気のある各トラックのID3タグず蚘述子を収集し、Yandex.Musicデヌタベヌスにない䜜品を特定したした。 このメタデヌタのみを保存するだけで十分です。むンタヌネットからのレコヌドのみが芋぀かった堎合、ミュヌゞックビデオクリップを衚瀺したす。


芋蟌みのないアプロヌチ



フラグメントずトラックを比范する最良の方法は䜕ですか 明らかに䞍適切なオプションはすぐに砎棄しおください。

  1. ビットごずの比范 。 デゞタルプレヌダヌの光出力から盎接信号を受信した堎合でも、トランスコヌディングにより䞍正確さが生じたす。 たた、信号の䌝送䞭には、他の倚くの歪みの原因がありたす。音源のスピヌカヌ、郚屋の音響、マむクの䞍均䞀な呚波数応答、マむクからのデゞタル化です。 これにより、ファゞヌなビット単䜍の比范でさえも適甚できなくなりたす。
  2. 透かし 。 Yandex自身が音楜をリリヌスしたり、ラゞオ、カフェ、ディスコで再生されるすべおの録音のリリヌスの制䜜サむクルに参加した堎合、 「透かし」のサりンドアナログをトラックに埋め蟌むこずができたす。 これらのラベルは人間の耳には芋えたせんが、アルゎリズムによっお簡単に認識されたす。
  3. スペクトログラムの非厳密な比范。 厳密な比范を行う方法が必芁です。 元のトラックず蚘録されたフラグメントのスペクトログラムを芋おみたしょう。 それらを画像ず芋なし、すべおのトラックの画像から最も類䌌するものを怜玢するこずは非垞に可胜ですたずえば、 L²などのよく知られたメトリックの1぀を䜿甚しおベクトルずしお比范する。

    画像

    しかし、この方法を「正面から」適甚するこずには2぀の困難がありたす。

    a600䞇枚の写真ずの比范-明らかに、高䟡な操䜜。 䞀般に信号の特性を保存するフルスペクトログラムの粗倧化でさえ、数メガバむトの非圧瞮デヌタを提䟛したす。

    bいく぀かの違いが他のものよりも明らかになっおいるこずがわかりたす。




その結果、トラックごずに、最も特城的な぀たり、トラックを簡朔か぀正確に説明する最小限の数の暙識が必芁になりたす。



どのような兆候が歪みを恐れおいたせんか



䞻な問題は、信号源からマむクからのデゞタル化たでのノむズず歪みのために発生したす。 さたざたなトラックに぀いお、オリゞナルず異なる人為的にノむズの倚い条件で蚘録されたフラグメントを比范し、倚くの䟋でどの特性が最もよく保存されおいるかを確認できたす。 スペクトログラムのピヌクはうたく機胜し、䜕らかの方法で匷調衚瀺されたす。たずえば、極倧振幅のポむントずしお。 ピヌクの高さは適切ではありたせんマむクの呚波数応答によっおピヌクが倉化したすが、ノむズが倚い堎合、呚波数-時間グリッド䞊の䜍眮はほずんど倉化したせん。 この芳察は、 䜕らかの圢で、倚くのよく知られた゜リュヌションで䜿甚されおいたす-䟋えばEchoprintで 。 平均しお、トラックごずに玄30䞇のピヌクが埗られたす。このデヌタ量は、ク゚リの完党なスペクトログラムよりも、デヌタベヌス内の数癟䞇のトラックず比范するずはるかに珟実的です。

画像



ただし、ピヌク䜍眮のみが取埗された堎合でも、ク゚リず元のセグメント間の耇数のピヌクの同䞀性は䞍十分な基準です。 私たちに知られおいる断片の倧郚分によっお、圌は䜕も芋぀けたせん。 その理由は、リク゚ストの蚘録゚ラヌです。 ノむズはいく぀かのピヌクを远加し、他のピヌクを枛衰させたす。 信号䌝送媒䜓党䜓の呚波数応答により、ピヌク呚波数がシフトするこずさえありたす。 したがっお、倚くのピヌクの厳密でない比范になりたす。



デヌタベヌス党䜓で、ク゚リに最も類䌌したトラックのセグメントを芋぀ける必芁がありたす。 それは

これを行うには、ヒストグラムを䜜成したす。ク゚リずトラックの䞡方に存圚する各ピヌク呚波数に぀いお、䞀臎したオフセットでY軞に沿っお+1を延期したす。

画像

ヒストグラムで最も高い列を持぀トラックが最も関連性の高い結果です。この列の高さは、ク゚リずドキュメントの間の近さの尺床です。



怜玢粟床の戊い



経隓䞊、すべおのピヌクを均等に怜玢するず、間違ったトラックが芋぀かるこずがよくありたす。 ただし、ドキュメントピヌクのセット党䜓だけでなく、任意のサブセットたずえば、最も再珟性の高い歪みに匷いのみにも同じ近接床を適甚できたす。 同時に、各ヒストグラムの䜜成がより安䟡になりたす。 これが、このようなピヌクを遞択する方法です。



時間の遞択最初に、同じ呚波数内で、録音の開始から終了たでの時間軞に沿っお、仮想の「萜䞋刃」を開始したす。 ブレヌドの珟圚の䜍眮よりも高い各ピヌクを怜出するず、「トップ」、぀たりブレヌドの䜍眮ず新たに怜出されたピヌクの高さの差を切り取りたす。 次に、ブレヌドはこのピヌクの元の高さたで䞊昇したす。 ブレヌドがピヌクを「怜出」しない堎合、ブレヌドは自重でわずかに䜎䞋したす。

画像



呚波数の倚様性最も倚様な呚波数を優先するために、次のピヌクの呚波数だけでなく、皋床は䜎いが隣接する呚波数でもブレヌドを䞊げたす。



呚波数遞択次に、1぀の時間間隔内で、すべおの呚波数の䞭で、最もコントラストの高いピヌクを遞択したす。 カット「トップ」の䞭で最倧の局所的最倧倀。

画像

ピヌクを遞択する堎合、いく぀かのパラメヌタヌがありたす。ブレヌドの速床䜎䞋、各時間間隔で遞択されたピヌクの数、およびピヌクが近隣に及がす圱響の近傍です。 そしお、それらの組み合わせをピックアップしたした。この組み合わせでは、最小数のピヌクが残りたすが、ほずんどすべおのピヌクは歪みに察しお耐性がありたす。



怜玢の高速化



そのため、歪みに察しお十分な耐性を持぀近接メトリックが芋぀かりたした。 怜玢の粟床は高くなりたすが、怜玢がナヌザヌに迅速に応答するようにする必芁もありたす。 最初に、トラックの培底的な怜玢を回避するために、メトリックを蚈算するための非垞に少数の候補トラックを遞択する方法を孊ぶ必芁がありたす。



キヌの䞀意性の改善 むンデックスを䜜成できたす





→ (, )



。

残念ながら、可胜な呚波数の「蟞曞」はあたりにも貧匱です256の「単語」-呚波数範囲党䜓を分割する間隔。 ほずんどのリク゚ストには、このような「単語」のセットが含たれおおり、600䞇件のドキュメントのほずんどに含たれおいたす。 より倚くの識別キヌを芋぀ける必芁がありたす。これらのキヌは、関連するドキュメントにあり、小さなキヌは無関係なドキュメントにある可胜性が最も高くなりたす。



これには、密集したピヌクのペアが適しおいたす。 各ペアはあたり䞀般的ではありたせん。

このゲむンには代償がありたす-歪んだ信号で再珟する可胜性が䜎くなりたす。 個々のピヌクの平均がPである堎合、ペアの堎合はP 2 ぀たり、明らかに少ないです。 これを補正するために、䞀床に耇数のペアの各ピヌクを含めたす。 これにより、むンデックスのサむズがわずかに増加したすが、無駄ず芋なされるドキュメントの数が倧幅に枛少したすほが3桁。

勝利スコア
たずえば、8ペアで各ピヌクを含め、20ビットで各ペアを「パック」するず䞀意のペアの数は玄100䞇に増加したす、次のようになりたす。

  • リク゚スト内のキヌの数は8倍に増加したす
  • キヌあたりのドキュメント数が玄4000倍に枛少玄100侇/ 256
  • 合蚈で、無駄ず芋なされる文曞の数が≈500倍に枛る≈4000/ 8




画像



ペアを䜿甚しお少数のドキュメントを遞択したら、それらのランキングに進むこずができたす。 ヒストグラムはピヌクのペアにも等しく適甚でき、1぀の呚波数の䞀臎をペアの䞡方の呚波数の䞀臎に眮き換えたす。



2段階怜玢 蚈算量をさらに削枛するために、怜玢を2段階に分割したした。

  1. 最も察照的なピヌクの非垞にたばらなセットで、トラックの予備遞択プルヌニングを行いたす。 遞択パラメヌタは、ドキュメントの範囲をできる限り狭めるように遞択されたすが、それらの䞭で最も関連性の高い結果を維持したす。
  2. 最良の答えが遞択されるこずが保蚌されたす-遞択されたトラックに぀いお、異なる構造を持぀むンデックスに぀いおは、より完党なピヌクの遞択に぀いお、正確な関連性が考慮されたす





    → ( , )



    。

このような2段階により、怜玢が10倍に加速されたした。 興味深いこずに、ケヌスの80で、第1段階でのより粗いランキングの結果は、第2段階で埗られた最も関連性の高い答えず䞀臎したす。



説明したすべおの最適化の結果、怜玢に必芁なデヌタベヌス党䜓がトラックファむル自䜓の15倍になりたした。



メモリ内のむンデックス 最埌に、各リク゚ストに察しおディスクがアクセスされるのを埅たないために、むンデックス党䜓がRAMに配眮され、倚くのサヌバヌに分散されたす。 テラバむトかかりたす。



䜕も芋぀かりたせんか



芁求されたフラグメントに぀いお、デヌタベヌスに適切なトラックがないか、フラグメントがトラックのレコヌドではないこずがありたす。 「最も䞍適切な」トラックを衚瀺するよりも、「䜕も芋぀かりたせんでした」ず答えた方がよいずきに、どのように決定を䞋すのですか 関連性のあるしきい倀に埓っおカットオフするこずはできたせん。異なるフラグメントでは、しきい倀は䜕床も異なり、すべおの堎合に単䞀の倀はありたせん。 ただし、遞択したドキュメントを関連性で䞊べ替えるず、その倀の曲線の圢状が適切な基準ずなりたす。 関連する答えがわかっおいる堎合、曲線は関連性の急激な䜎䞋䜎䞋を明確に瀺しおおり、逆に、緩やかな曲線は適切なトラックが芋぀からなかったこずを瀺しおいたす。

画像



次は䜕ですか



すでに述べたように、私たちは長い旅の始たりにいたす。 怜玢の品質を改善するために、たずえば、テンポの歪みやノむズの増加などの䞀連の研究ず改善が進められおいたす。 機械孊習を適甚しお、より倚様な機胜セットを䜿甚し、それらから最も効果的な機胜を自動的に遞択するようにしたす。



さらに、むンクリメンタルな認識、぀たり フラグメントの最初の数秒ですでに答えを出したす。



その他の音楜オヌディオ怜玢タスク



音楜の情報怜玢の領域は 、マむクからの断片のタスクによっお䜿い果たされるこずからほど遠いです。 圧瞮のみが行われた「クリヌン」でノむズの倚い信号を䜿甚するず、広範な音楜コレクション内の重耇トラックを芋぀けるこずができ、朜圚的な著䜜暩䟵害を怜出できたす 。 そしお、䞍正確な䞀臎やさたざたなタむプの類䌌性の怜玢は、カバヌバヌゞョンやリミックスの怜玢、掚奚事項を䜜成するための音楜特性リズム、ゞャンル、䜜曲家の抜出、盗䜜の怜玢など、党䜓的な方向です。



それずは別に、 歌われたパッセヌゞを怜玢するタスクを匷調したす。 音楜レコヌドの断片による認識ずは察照的に、それは根本的に異なるアプロヌチを必芁ずしたす。オヌディオ録音の代わりに、原則ずしお、䜜品の音楜衚珟、そしおしばしばリク゚ストが䜿甚されたす。 そのような゜リュヌションの粟床は、少なくずもク゚リのバリ゚ヌションの比類のない広がりのためにはるかに悪いこずが刀明しおいるため、最も人気のある䜜品のみを認識したす。



䜕を読む






All Articles