2014/11/03

【垰瀬内なら】駅名替え歌を自動生成する(3 【自動で作る】

#きっとn番煎じ (n>1, n∈N)

【やっつけデモ】
「炉心融解」で歌詞を作ってCevioにベタ打ちさせるとこうなりました。










聴きました?










現状の出力結果はこんな感じ

元歌詞
今回の出力
(前回の出力)

 まちあかり はなやか えーてる ますいの つめたさ
 たちあらい はなやま えべつ  はるひの  つねやま
 (かみさかい はなやま  えべつ    はるひの   うめやま)

 ねむれない ごぜんにじ すべてが きゅうそくに かわる
  ねづ+えない  ごめんまち  すまでら  うおずみ      かわづ
 (ねづ+えない  ごめんまち  すまでら  うおずみ      わらび)

 おいるぎれのらいたー  やけつく ような いのなか
  おいつ+ひねの+やいた  まきむく ようが いのなだ
 (おいつ+ひねの+やいた  まきむく ようが いのなだ)

 すべてが そう うそなら ほんと(う)に よかったのにね
 すずめだ その ぬのはら ほんまち      こなかの+みね 
(すずめだ その ぬのはら ほんまち      こなかの+みね)

--ここから新規--

 きみの くびを  しめる ゆめをみた  ひかりの あふれる ひるさがり
 ひびの ゆびそ しべつ ゆもと+みた みかきの あつべつ みつわだい

 きみの ほそい のどが はねるのを なきだしそうなめで   みていた 
 にじの よろい おおだ  やなぎもと  わりだし+とうな+めで みてじま

 かくゆうごうろにさ       とびこんでみたいと      おもう
 かく+つるみおの+にま こび+こいで+みわ+みと おもと

 まさおなひかり    つつまれてきれい
 まるお+なち+さり つづ+わけ+へいせい

 かくゆうごうろにさ     とびこんでみたら    そしたら
 たく+ゆう+ととろ+きさ おび+とりで+みはら よしわら  

すべてが ゆるされるような     きがして
 ふじえだ  ゆず+さめず+ようか きが+みえ

 べらんだの    むこうがわ かいだんを のぼって いくおと
 れぶん+やの ぬまのさわ かいやまと のぼて    ゆのもと

 かげりだしたそらが      まどがらすにへやに   おちる
 はげ+みだ+ひた+そはら かすがばる+みせだに のびる

 かくさんするゆうぐれ   なきはらしたような ひのあか
 はくさん+すふ+ゆのまえ まるやました+おな ひろわら

 とけるよ(う)に すこしずつ すこしずつ  しんでいく   せかい
 とおりたに   るもい+ふく くほんぶつ しんげ+くず てらい

   きみの くびを しめる ゆめを みた はるかぜに ゆれる かーてん かわいて
  にいの くりの みはる ゆのお ちた はぶ+かめい ゆのつ はなてん  かばいけ

 きれた くちびるから    こぼれる ことばは  あわのよう
 ひけた くじ+りふ+はら ほろべつ  のとがわ あわの+よの

 かくゆうごうろにさ    とびこんで  みたいと   おもう まっしろにきおく  とかされてきえる
 さく+ぬまぶくろ+いさ もり+といで きた+いほ よこお やしろ+にしはる とさくれ+めいほう 

 かくゆうごうろにさ      とびこんで みたら
 がく+くす+とうろ+ひわ もじ+こまえ+みなら

 また むかし みたいに ねむれる ような そんな きがして
 やた むらい みついし えんがる よつや  ほんな しが+ひめ 

 とけいの びょうしんや てれびの しかいしゃや
 よこいそ ぞうしがや  めぐみの  しもいさか
 
 そこにいるけど   みえない だれかの わらいごえ   ほうわ して   はんきょうする
 ぼこい+みぶ+でと みえまち はしらの わらび+のえ もおか+ひえ はなぞの+うす

 あれぐろ・あじてーと みみなりが きえない やまない
 あぞうの+たじべ      みき+なりた  きこない やまな

 あれぐろ・あじてーと みみなりが  きえない やまない
 やつしろ+やまて      みい+はりま みえばし やまだ

 だれも みんな きえてく   ゆめを みた まよなかの へやの ひろさと せいじゃくが
 やくも じんば みねのぶ ゆさと ひら さよ+なかの てらお しもさと へいわ+くが

 むねにつっかえて じょうずに いきが できなくなる
 むれ+みつ+かまて ぞうしき  いしが せき+やぶ+やつ

 Shout!
 ひな!

 かくゆうごうろにさ    とびこんで  みたら
 やす+ゆら+こうろ+ちわ ほみ+こぼけ みたか

 そしたら きっと ねむるように  きえていけるんだ
 よしはま きよ   てたる+とうに きりめ+ちたはんだ

 ぼくの いない あさは   いまより ずっと すばらしくて
 よぶの いわい あたわ いまばり ふと  すわ+かみすげ

 すべての  はぐるまが かみあった  きっと そんな せかいだ
 すえ+せの たつるはま かみ+あがた きの  ほんだ せや+きだ

 (Ah...)
 あわ+あわや

【実装】
・ユーザが歌詞をいい感じに区切ると、
 それと同じ文字数で似たような母音を持つ駅名をデータベースから拾ってくる
(異なる母音の文字数=距離で距離最短の駅名を使用)

・駅名間の距離は母音間の距離を文字ごとに計算した時の和

・母音間の距離は以下の通り
 母音不一致: 0.25
 母音一致:0 (駅名の始め/終わりの時は-2)
 文字一致:-0.25

・同じ駅は使わないようにする
(ただし同名の駅が複数個ある場合はその数まで可)

データベースにはwikipediaの日本の鉄道駅一覧を使用。

【前回との差分】
・バグ取り!
 -「かわる」を「わらび」と歌うのはさすがにおかしい
 -た行の駅がことごとくバグってた

・データベース中の「っ」「ゃ」「ゅ」「ょ」を、置換することで対応
 ex. 「きゃ」->「か」
 -なので、本来は「きゃ」と読むべき駅名を「か」と歌ってしまっている可能性

【課題】
・歌わなくてもいい音の推定
(あれぐろ・あじてー、みみなりがきえなやまない みたいな)

・時間伸縮に対応させる
(おいるぎれの -> おいつ+きれ+のう みたいな)

・実際の発音と表記の発音が違う問題をどうにかする
(ほうき->ほおき みたいな)

・そもそもユーザが歌詞を切らなくていいようにする

・デモ用のWebページつくる

・cevioをマスターする

0 件のコメント:

コメントを投稿