SlideShare a Scribd company logo

「Lstm&titanで音楽を作った」第12回カジュアルトーク会向け 20160207

Miho Sakai
Miho Sakai
Miho Sakai一般 at 富士通

2016年2月7日開催された全脳アーキテクチャー若手の会のカジュアルトーク会向け資料 http://wbawakate.jp/

「Lstm&titanで音楽を作った」第12回カジュアルトーク会向け 20160207

1 of 24
Download to read offline
+
DeepLearning初心者が、
Titan&LSTMで音楽を作ってみた!
坂井美帆
2016年2月7日(日)
全脳アーキテクチャー若手の会 第12回勉強会カジュアルトーク
+
自己紹介
坂井美帆
 全脳アーキテクチャー若手の会 発起人&副代表
 某メーカー先月やめて、今はドワンゴAIラボ
 学生時代の専攻は機械学習理論(クラスタリング)
 DeepLearning歴1ヶ月程、初心者
趣味
 音楽あさり(ゲーム音楽、アイリッシュ系音楽、民族調
音楽、ボカロ)
 割とマイナー・・
 技術の勉強したい&試したい
+
NvidiaTITAN買いました。
大晦日に自作PCを組み立てました
何か試したい・・!
ちょっと挙動不審・・
+
NvidiaTITAN買いました。
大晦日に自作PCを組み立てました
そうだ、アイリッシュ音楽を作ってみよう!!
ちょっと挙動不審・・
+
今回の目標
 TITAN&DeepLearningの技術を折角だから試したい!
 実際に、何がどこまで出来るのか、体感したい
 何か実際にモノを作りたい!
『DeepLearning初心者が、
Titan & LSTM(DeepLearningの技術)を使って
音楽生成を試してみる!』
+
音楽生成の動向
参考にした記事
 Andrej Karpathy blog(スタンフォード大の人)
音楽データの自動生成の最近の研究
 LSTMでブルース・ジャズを生成(Douglas Eck, Jurgen ¨ Schmidhuber, 2007)
 A First Look at Music Composition using LSTM Recurrent Neural Networks
 RNNで、音楽生成(Kratarth Goel, Raunaq Vohra, J.K. Sahoo,2014)
 Polyphonic Music Generation by Modeling Temporal Dependencies Using a RNN-DBN
多くはないけれど、それなりに情報がある!
LSTM/RNNを使うと良さそう。

Recommended

Introducing libpd -Pdをアプリのサウンドエンジンに-
Introducing libpd -Pdをアプリのサウンドエンジンに-Introducing libpd -Pdをアプリのサウンドエンジンに-
Introducing libpd -Pdをアプリのサウンドエンジンに-Yoichi Hirata
 
Traktor sharemeeting2 20120323_touchosc
Traktor sharemeeting2 20120323_touchoscTraktor sharemeeting2 20120323_touchosc
Traktor sharemeeting2 20120323_touchoscmutameso
 
130622-gcs2013-presentation-c
130622-gcs2013-presentation-c130622-gcs2013-presentation-c
130622-gcs2013-presentation-cHiroyuki Masuno
 
神秘的なハーモニーの作り方
神秘的なハーモニーの作り方神秘的なハーモニーの作り方
神秘的なハーモニーの作り方Satoru Tagawa
 
The beginners guide of real-time audio processing (Part 1:Equalizer)
The beginners guide of real-time audio processing (Part 1:Equalizer)The beginners guide of real-time audio processing (Part 1:Equalizer)
The beginners guide of real-time audio processing (Part 1:Equalizer)Hiroyuki Masuno
 
Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編)
 Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編) Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編)
Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編)Hiroshi Tokumaru
 
WordPress 不正アクセス事例の傾向と対策(さくらのビアバッシュ in DEP.@神戸元町)
WordPress 不正アクセス事例の傾向と対策(さくらのビアバッシュ in DEP.@神戸元町)WordPress 不正アクセス事例の傾向と対策(さくらのビアバッシュ in DEP.@神戸元町)
WordPress 不正アクセス事例の傾向と対策(さくらのビアバッシュ in DEP.@神戸元町)さくらインターネット株式会社
 

More Related Content

Featured

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageSimplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

「Lstm&titanで音楽を作った」第12回カジュアルトーク会向け 20160207

Editor's Notes

  1. ・本日最後です! ・ゆるく聞いて行ってくださいね!
  2. はじめましての方もいるかもしれません。 坂井美帆です、よろしくお願い致します。 何をしているのかというと、この全脳アーキテクチャー若手の会を立ち上げたりとか、 先日まで某メーカーで働いていましたがやめて、今はドワンゴのAIラボで働いています。 こういう経歴で、アレなんですが、実はDeepLearning自体は初心者です。
  3. 大晦日にTitanを買って、組み立てました。 PC本体を触ると再起動しはじめるという、かなり挙動不審なんですが、一応動いています。 とりあえずですね、買ってしまったので何か試したいと思いました。
  4. そうだ、アイリッシュ音楽を作ってみよう! ということで、ネットの記事を読んだりしたのもあるのですが、 音楽生成をやってみようかと思いました。 自分みたいな、音楽の趣味がマイナーで曲を集めること自体が割と難しかったり、 あと昔のMIDIの雰囲気のある感じの曲を再現したいとか そういう需要をもしかしてかなえられるんじゃないかと思ってやってみようかと思いました。
  5. A First Look at Music Composition using LSTM Recurrent Neural Networks http://people.idsia.ch/~juergen/blues/IDSIA-07-02.pdf http://arxiv.org/pdf/1412.7927.pdf
  6. http://abcnotation.com/tunes http://www.ece.wisc.edu/~cobb/irish/Tunebook.html
  7. cmd:text() cmd:text('Train a character-level language model') cmd:text() cmd:text('Options') -- data cmd:option('-data_dir','data/tinyshakespeare','data directory. Should contain the file input.txt with input data') -- model params cmd:option('-rnn_size', 128, 'size of LSTM internal state') cmd:option('-num_layers', 2, 'number of layers in the LSTM') cmd:option('-model', 'lstm', 'lstm,gru or rnn') -- optimization cmd:option('-learning_rate',2e-3,'learning rate') cmd:option('-learning_rate_decay',0.97,'learning rate decay') cmd:option('-learning_rate_decay_after',10,'in number of epochs, when to start decaying the learning rate') cmd:option('-decay_rate',0.95,'decay rate for rmsprop') cmd:option('-dropout',0,'dropout for regularization, used after each RNN hidden layer. 0 = no dropout') cmd:option('-seq_length',50,'number of timesteps to unroll for') cmd:option('-batch_size',50,'number of sequences to train on in parallel') cmd:option('-max_epochs',50,'number of full passes through the training data') cmd:option('-grad_clip',5,'clip gradients at this value') cmd:option('-train_frac',0.95,'fraction of data that goes into train set') cmd:option('-val_frac',0.05,'fraction of data that goes into validation set') -- test_frac will be computed as (1 - train_frac - val_frac) cmd:option('-init_from', '', 'initialize network parameters from checkpoint at this path') -- bookkeeping cmd:option('-seed',123,'torch manual random number generator seed') cmd:option('-print_every',1,'how many steps/minibatches between printing out the loss') cmd:option('-eval_val_every',1000,'every how many iterations should we evaluate on validation data?') cmd:option('-checkpoint_dir', 'cv', 'output directory where checkpoints get written') cmd:option('-savefile','lstm','filename to autosave the checkpont to. Will be inside checkpoint_dir/') cmd:option('-accurate_gpu_timing',0,'set this flag to 1 to get precise timings when using GPU. Might make code bit slower but reports accurate timings.') -- GPU/CPU cmd:option('-gpuid',0,'which gpu to use. -1 = use CPU') cmd:option('-opencl',0,'use OpenCL (instead of CUDA)') cmd:text()