60
61
略する。これは、スペクトログラムを作成する際に同様の処理が入っているためである。
6.2.2 楽曲側
深層学習による識別においても、認識対象が教師データと同じ形式のデータでないと正 しく認識できない。よって、対象の楽曲に対してもほぼ同様の手順を行なうことになる。
相違点としては、楽曲に対しては発音時刻の検出は行わず、波形の切り出し開始点を楽 曲の始点から終点まで0.05秒刻みでずらしながら以降の処理を行っていく。これは、深層 学習は時間軸方向のずれに対してロバストであり、厳密な波形の切り出し開始点を必要と しないからである。また振幅の正規化についても、教師データ側と同様の理由で省略する。
6.2.3 深層学習による識別器作成
まず、打楽器音をいくつかのカテゴリに分類する。ドラムセットの構成楽器など、十分 な数の教師データが用意できる楽器に関しては楽器単体で 1 つのカテゴリとする。それ以 外の、僅かな数の教師データしか用意できない楽器に関しては、楽器の材質や奏法に注目 して8個のカテゴリを作り、それらに分類した。
作成したカテゴリはバスドラム、クラッシュ、ハイハット、スネアドラム、タム、気鳴、
鈴、複合、膜鳴、打奏金属製、擦奏、振奏、打奏木製の合計13個である。打楽器の分類先 カテゴリはTable5.1に記載している。
次に学習プログラムに識別したいクラスの画像群を入力して学習させ、識別器を作成す る。多クラス識別を行う方法の場合、上記の13カテゴリをそのままクラス0~12に対応さ せて入力する。また、非打楽器音クラスとして、トランペットやバイオリンなどの調波音、
および無音から作成したスペクトログラム合計100枚をクラス13に入力する。これにより 14クラス識別器が作成される。
一方、2クラス識別を行う方法の場合、上記の13カテゴリのうち1カテゴリを選択して クラス0に入力し、残りの12カテゴリをクラス1に入力する。これにより選択したカテゴ リの楽器が認識対象に含まれていたらクラス0 を、含まれていなかったらクラス1 を出力 する2クラス識別器が作成される。この手順を各カテゴリに対して行い、13個の識別器を 作成する。
6.2.4 マッチング部
楽曲側で作成した各スペクトログラムを識別器に入力し、それぞれ認識を行う。
多クラス識別を行う方法の場合、スペクトログラムを14クラス識別器に入力すると、最 も発音している可能性が高い打楽器の属するクラスが出力される。打楽器が 1 つも発音し ていないと識別された場合は非打楽器クラスが出力される。これらをそのまま認識結果と する。識別の流れ図をFig6.1に示す。
2クラス識別を行う方法の場合、スペクトログラムを13個の2クラス識別器全てに入力
62
する。各識別器において、対応する打楽器音が認識対象に含まれていると識別された場合 はクラス0を出力する。含まれていないと識別された場合はクラス1を出力する。クラス0 を出力した識別器に対応する楽器カテゴリをすべて表示し、これを認識結果とする。クラ ス0を出力した識別器が1つもない場合も当然存在する。この場合、認識対象に打楽器音 が含まれていないという認識結果となる。識別の流れ図をFig6.2に示す。
Fig6.1 多クラス識別の流れ図
Fig6.2 2(一対他)識別の流れ図
63