【Show HN】iPhoneでリアルタイム作曲!ピアノ版Copilotを自作してみた
Show HN: I trained a 125M model to autocomplete piano on-device
Show HN: I trained a 125M model to autocomplete piano on-device
ピアノ演奏をリアルタイムで自動補完する、1億2500万パラメータのTransformerモデルを学習させました。iPhone 15上で、秒間約108音という爆速で動作します。
仕組みとしては、GitHub CopilotやTabnineのピアノ版といったところです。コードを入力する代わりに、MIDIピアノで数音弾くと、モデルがその続きを即座に生成します。もちろん、すべてデバイス上で完結します。
アプリは無料で公開していますので、ぜひ試してみてください。モデルの構造や学習方法、Core MLへの最適化、あるいは「失敗した数々の試行錯誤」など、質問があれば何でもどうぞ!
そういうのがあったら最高だな。こっちがメロディを弾くと、それに合わせてバロック風の適切な3〜4声の伴奏を生成してくれるようなやつ。音楽編集ソフトで使える形式でファイル出力できたら言うことなしだね。
2003年当時に階層的マルコフモデルを使って作られた、Francois PachetのContinuatorを思い出したよ。
https://www.francoispachet.fr/continuator/ (https://www.francoispachet.fr/continuator/)
著作権訴訟に対抗するために、ありとあらゆるメロディをアルゴリズムで生成するっていうあのプロジェクトを思い出した。
https://allthemusic.info/ (https://allthemusic.info/)
ああ、MIDIファイルか。昔はネットから現実的にダウンロードできる音楽といえばそれくらいだったし、電話代が跳ね上がらないように、わざわざ変な時間に起きなきゃいけなかったんだよね。
素晴らしいプロジェクトだし、すごくHN(Hacker News)らしいね。なんでみんな出来上がったものばかり気にしてるのかわからないな。過程で学んだことの方がずっと多いし、面白い体験だったはずなのに。
投稿には書かれてなかったと思うんだけど(見落としてたらごめん)、データのサイズはどれくらいだったの?事前学習と事後学習にどれくらいのサンプルを使ったのか気になって。
エリーゼのためにの出だしを聞いて、そこから信じられないくらい突拍子もない方向に展開していくのは、なかなかゾッとするね。
こういう「オートコンプリート」って、実は古典派の作曲家たちがどうやって訓練を受けてきたかの核心なんだよね。
興味があるならRobert Gjerdingenの論文『Gebrauchs-Formulas』をすごくおすすめするよ。 https://www.researchgate.net/publication/259731561_Gebrauchs... (https://www.researchgate.net/publication/259731561_Gebrauchs-Formulas)
1800年代後半のディナーパーティで、ラフマニノフを含む4人のロシア人作曲家がこのパターン認識と生成ゲームで遊んでる録音も聴けるよ: https://youtu.be/PlFPOWuwBHI?is=EKBK7QQkJs4MsTCU (https://youtu.be/PlFPOWuwBHI?is=EKBK7QQkJs4MsTCU)
当時の作曲家たちは、ピアノを使わなくても楽譜を見るだけで、頭の中で音楽を鳴らす(オーディエーション)だけでこれができたんだ。
めちゃくちゃいい!NeurIPSで見たライブデモを思い出したよ: https://www.youtube.com/watch?v=8s3V922h3CU (https://www.youtube.com/watch?v=8s3V922h3CU) (論文はこちら https://openreview.net/pdf?id=3yeBer3J5z (https://openreview.net/pdf?id=3yeBer3J5z) )。
こういうクリエイティブなAIの取り組みが好きなら、「NeurIPS Creative AI Track 2025」の他の提出作品も見てみるといいよ。
クラシックのピアニスト兼ソフトウェアプロダクトデザイナーです。
このプロジェクトと、世の中にあふれるAIベースのUXデザインツールにはかなりの共通点があると思う。音楽でもUIでも、「生成」にかかるコストがゼロになった今、あとは「センス」だけが残る。
センスの大部分は、可能性を探って、行き止まりだと判断したら切り捨てる作業から生まれるもの。こういうモデルが、行き止まりをより早く見つける助けになったり、たまに宝石のような作品を生み出したりしてくれるかもしれないと考えるとワクワクするね。
追伸:もう一つの「ちょっと奇妙な」エリーゼのためにを聴きたいなら、ベートーヴェン自身の1822年の改訂版を聴いてみて: https://www.youtube.com/watch?v=s24TtiGgb6k (https://www.youtube.com/watch?v=s24TtiGgb6k) 。みんなが知ってる1810年のバージョンの方がシンプルでバランスがいいけどね。ちなみに、ベートーヴェンはどちらも出版しなかったんだ。
もし気が向いたら、これVSTかMax 4 Liveのデバイスにしてくれないかな。絶対に最高なものになると思う。