#author("2024-07-16T14:54:47+09:00","default:member","member")
*Bézier Curve
楽器音合成AIデモバージョン
#image(transient-image.jpg)
-''松本龍太郎''
-'''Keywords:AI, Music, Instruments, Virtual'''
-[[Interactive Python Notebookへのリンクはこちら>https://github.com/ryutarodayo1234/BezierCurvePro/blob/main/samples/Vln_demo/notebooks/2024_BezierCurvePro_0618.ipynb]]
//-https://www.example.com
//-__[[相互評価シート>https://www.example.com]]__ ← ここからコメントをお願いします。
~
~
**概要
***これは何?
//&color(red){これは何か・・を簡潔に};
楽器音合成AIのデモバージョン。
~
***やりたいこと
楽譜を入力すると、その楽譜を演奏しているかのような楽器音を合成してくれるAIを作りたい。
+ブラウザに楽譜をD&D
+サーバー上で音を生成する
+生成音がDLできる
~
***背景
//&color(red){プロジェクトの背景と目的};
音=情報である。より良い音、情報を扱えるようになれば、音楽業界や社会がよくなる、というソーシャルデザイン。ここでの良い音を生演奏と定義する。
しかし、生演奏にはとてもコストがかかり、演奏者との繋がりなども必要だ。誰もが出来る環境にないにも関わらず、最終的な楽曲のクオリティには雲泥の差がある。
~
***現状調査
//&color(red){プロジェクトのテーマに関わる社会の現状と問題の洗い出し};
一般の利用者には理解しにくい専門用語や複雑な表現で満ちており、情報の理解やアクセスが制限されている状況。
利用者とってわかりやすく作成することが必要。
~
***先行事例
-[[Melisma>https://kagura-music.jp/melisma-top]]
-[[pythonで学ぶ音声合成 機械学習実践シリーズ>https://book.impress.co.jp/books/1120101073]]
-[[NEUTRINO>https://studio-neutrino.com/]]
~
***目的
人間の生演奏とコンピューターでの打ち込みの差を埋めることができるようにする。
そのためのプロトタイプを作る。
~
***コンセプト
//&color(red){基本的な考え方、枠組み、視点など};
打ち込みで楽曲制作をしている人が生演奏に近い音を扱うことができるようになる楽器音合成AI。
自分の狙い通りに出せることが利点。
~
***打ち込みとの違い
通常打ち込みとは、録音した音をつぎはぎして本物っぽく聴かせる手法。
このAIは、人間の特徴を再現しほぼ0から作り出すため、より人間に近い音が作れる。
~
//***どうすればできるのか
//楽譜と音を一緒に学習させます。
//その学習済みのAIを使って演奏データ(合成された楽器音)の出力を行います。
//#image(plan.jpg)
//~
***成果物の仕様
//&color(red){&small(成果物の形式・サイズ・時間尺等);};
-[[学習済みモデルへのリンクはこちら>https://github.com/ryutarodayo1234/BezierCurvePro/blob/main/samples/Vln_demo/DEMO/2024_0612/jsut_sr16000_tacotron2_rf2_wavenet_sr16k_mulaw256_30layers.zip]]
--[[それを組み込んだInteractive Python Notebookへのリンクはこちら>https://github.com/ryutarodayo1234/BezierCurvePro/blob/main/samples/Vln_demo/notebooks/2024_BezierCurvePro_0618.ipynb]]
-学習の過程
#image(tensorflow.png)
~
***聴き比べ
[[オリジナルの音(org)と出力した音(tts)へのリンクはこちらから>https://ksumail-my.sharepoint.com/:f:/g/personal/k22as602_st_kyusan-u_ac_jp/Esdk7CdCLuFOvVZuVGXW25wBuPKhUKeQZtaJ_eudt6QUkg?e=hf9q7N]]
~
//***メンバー
//&color(red){共同プロジェクトの場合のみ|メンバーと役割分担を明記};
//~
***制作ツール
//&color(red){使用するツール|ハードウエア・ソフトウエア};
-Python
-Logic Pro 11
~
***プロジェクトの期間
//&color(red){プロジェクトの期間|20XX.XX.XX - 20XX.XX.XX };
2024.04.09 - 2024.06.24
~
***まとめ
//&color(red){プロジェクトが完結したら「まとめ」を記載して下さい。};
''2年間かけて成果を出すため、そのプロトタイプ制作をしていた。''
問題点も少々あるが、当初想定したゴール、学習させて音を出す、というところへ辿り着いた。
~
***今後の展望
-出力される合成音のクオリティを向上させる。
-生成した合成楽器音を使用できる範囲(ライセンス)を決める。
-今回の研究を伝えるため、webアプケーションの作成。
~
~
**調査
***現状調査
//&color(red){プロジェクトのテーマに関わる社会の現状と問題の洗い出し};
-一般の利用者には理解しにくい専門用語や複雑な表現で満ちており、情報の理解やアクセスが制限されている状況。
-利用者とってわかりやすく作成することが必要。
~
***先行事例
//&color(red){プロジェクトのテーマに該当する先行事例の紹介、傾向分析など};
Melismaという楽器音合成AIがある。musicxml 形式の楽譜を入力するとヴァイオリンの音を合成してくれるAIである。中迫酒菜氏という作曲家の個人制作AIであるが、生演奏されたデータや現代の楽曲に頻出するフレーズを学習しているため、非常にクオリティの高いものとなっている。
-[[Melisma>https://kagura-music.jp/melisma-top]]
--[[デモ音源>https://kagura-music.jp/melisma-inst-list]]
--[[製作者「中迫酒菜」X>https://x.com/nakazako]]
-pythonで学ぶ音声合成 機械学習実践シリーズ
--https://book.impress.co.jp/books/1120101073
-[[NEUTRINO>https://studio-neutrino.com/]]
~
***技法・技術情報
//&color(red){プロジェクトの遂行に必要な技法・技術に関する調査};
-Python
-Tacotron 2
~
~
**プロジェクト管理
***スケジュール
//&color(red){計画的な遂行のために、進行管理表を作成してリンクして下さい。};
-[[こちらをクリック>https://docs.google.com/spreadsheets/d/1N-XrewtcWjInULnukHNqYH1Ye1CpZlgVixF-Dcrks1A/edit?usp=sharing]]
~
***ToDo
//&color(red){やるべきこと(タスク)を箇条書きにします。};
//&color(red){完了後は「%%取り消し線%%」あるいは「// コメントアウト」」};
-データの正規化についての研究
-%%日本語 to Speech での実験%%
-サンプル数のを増やす
-水増しサンプルの作成
~
~
~
~
~
~
#hr
CENTER:''進捗記録''
//&color(red){最新の情報を一番上に記載して下さい(古い記事が下へ沈む)。};
#hr
~
~
**2024.07.09
MusicXML to Label についての調査をしていた。
NEUTRINOの変換結果を詳しく見たところ
-現在の音素
-前の音素とその属性
-無音区間(パウゼ)
-次の音素
-その他の記号(さらに詳細なコンテキスト情報)
という構造になっているようだ。
バイオリンなどの楽器の場合、アーティキュレーションやダイナミクスの情報を含める必要がある。
~
**2024.07.02
MusicXML to Label についての調査をしていた。
深く読み込むことにする。
-[[【深入り解説】タイミング情報ファイル(.lab)って?>https://note.com/inuinu_/n/n6b01520b39c2]] note
~
**2024.06.25
0から学習させなくても、シーケンサーでの音を不均一にするAIも良いのではないか、という意見が出たが、権利関係の問題が多い。
渡されたデータを改変して良いのか、改変して再配布して良いのか。
深く調査する必要がある。
~
**2024.06.18
音程が出た。
CENTER:合成音へのリンクはこちら
CENTER:[[2024_0612>https://ksumail-my.sharepoint.com/:f:/g/personal/k22as602_st_kyusan-u_ac_jp/Esdk7CdCLuFOvVZuVGXW25wBuPKhUKeQZtaJ_eudt6QUkg?e=hf9q7N]]
CENTER:[[2024_0613>https://ksumail-my.sharepoint.com/:f:/g/personal/k22as602_st_kyusan-u_ac_jp/EixrVmkHST5BiPkBl52BtawBZDb746btc4M1zTk1kjr_lQ?e=TiHamx]]
~
**2024.06.11
誤魔化した所が失敗の原因だったが、それを解決することで学習ができた。
サンプル数を増やすことで解決する問題が多いだろう。
~
**2024.06.04
進捗なし。体調を崩した。
AI学習も手こずっている。困るねえ。
~
**2024.05.28
RIGHT:中間発表
合成には成功したが、楽譜通りの出力ではなかった。
楽譜に歌詞を入力する必要があるようだ。そうしなければ学習させることができない。おそらく、TTSの技術を応用しているからであろう。
CENTER:[[合成音へのリンクはこちら>https://ksumail-my.sharepoint.com/:f:/g/personal/k22as602_st_kyusan-u_ac_jp/Evnk5fIfXA9FrJgoVdDWaAsBRDNujzuP0hitP7zgQcn78Q?e=AUzHXT]]
~
**2024.05.20
今までlabファイルを作る工程で戸惑っていたが、NEUTRINOが同じことをしていることに気づき、labファイルをNEUTRINOに作らせてみた。
使って良いかどうか不明なため、実際に公開する際は注意する必要がある。
~
**2024.05.14
発表の準備をした。
煮詰まってきたので、一旦寝かせることにする。
~
**2024.05.07
なし
~
**2024.04.30
-ロゴや名前があれば良い
-もう一度本を読み返してみる
-Tacotoronを一度日本語化していたが、そもそも日本語化する必要はないのでは?
~
**2024.04.23
-日本語 to Speech での実験成功
~
**2024.04.16
-テンソルサイズを揃えられた!やったぜ!
-npyの正規化できた!やったぜ!
-テンソルサイズを揃えなければならない。なぜできないのか分からない。
~
**2024.04.09
-npyの正規化がうまくできない。沼にハマってしまった;;
~
~
~