Skip to content

Attempt to Generate Classical Guitar Music with LSTM

Notifications You must be signed in to change notification settings

Akaame/LSTMMusic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Training data için kullandığım veri

classicalguitarmidi.com 

adresindeki Isaac Albeniz'e ait parçalardan oluşuyor.

Midi dosyalarıyla etkileşime geçmek için Music21 isimli Python kütüphanesini kullandım.

Glob kullanarak data klasöründeki her mid dosyasının ismine eriştim
Music21 ile dosyaları okuyup içlerinden notaları ve akorları çıkardım.

Bunları bir liste haline tutacağız. 

Sonra kategorik olan bu veriyle çalışabilmek için OHE kullanacağız.

Sonra da Sliding Window stilinde veri üzerinde ilerleyip LSTM'e girdi olarak vereceğiz.

Eğitilmiş model ağırlıklarını daha sonra beste yapmak için kullanabiliriz.

Predict ile modeli kullanarak şarkı oluşturabiliriz.

Not:
* 1300'e yakın nota+akor var. Bu sınıflandırma görevini güçleştiriyor. Uzun süre eğitmek gerekiyor.

Eksiklikler:
* Bütün şarkılar arka arkaya eklenmiş halde sanki bir şarkılarmışcasına. 
Fakat bu doğru değil çünkü çoğunun bestelendiği anahtar birbirinden farklı
Bunun yerine o şarkının gamına göre davranmamız gerekiyor.

* Notaların arasındaki oktav farklarını yok saydık. 
Bunu yapabilmek için çok büyük bir verisetine ihtiyaç var

* MIDI dosyalarından çok parçalı olanlardan ilk parçayı alıyorum sadece.
Yani parça iki gitar ile çalınıyorsa ilk gitarın notalarını alıyorum yalnızca

About

Attempt to Generate Classical Guitar Music with LSTM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages