You May Also Enjoy
Data Science Summit 2020
less than 1 minute read
Published:
Statystyka - a komu to potrzebne? A dlaczego?
4 minute read
Published:
W tym poście chciałbym przybliżyć temat statystyki dla tych osób które nie miały z nią do czynienia, ale także tym którzy posługują się pewnymi narzędziami ale niewiedzą jaka intuicja za nimi stoi. Ten post będzie być może początkiem dłuższej serii o tym jak ja rozumiem tę dziedzinę matematyki. Read more
Master Thesis: Generating Jazz Chords Progressions Using Word Embeddings and Recurrent Neural Networks
1 minute read
Published:
This thesis describes the problem of generating jazz music chords using recurrent neural networks (RNN) and numerical vector representations - embeddings. To create the embedding I use techniques known from the field of natural language processing (NLP). It is possible because of certain structural similarities between spoken language and music. I study the relationship between the chords in the hidden space generated by the algorithms: Word2Vec, FastText and Multi-hot. Visualization of chords in reduced vector representation space using t-SNE and PCA algorithms illustrates a lot of dependencies between the chords derived from the principles of jazz harmony. The test results confirmed the highest performance of chord generation when using the Word2Vec model in the Skip-Gram variant. To generate chords I use their vector representation. I analyze the performance of sixteen models based on the recursive neural networks in terms of their hyper parameters and architecture. I also study the impact of the algorithm used to create the numerical representation on the results of recurrent models. To train neural networks I use a set of jazz standards obtained from publicly available Internet sources in a format allowing for the extraction of chord sequences. The experiments shows the highest performance of deep models with recurrent layers - GRU and LSTM, but the one with the shortest runtime is the model with two GRU layers, Dropout regularization layer and Dense layer. I use trained models to build a simple program capable of generating continuous chord sequences in the unsupervised variant and with partially controlling this generation by the user. For implementation of all algorithms, visualization and data processing I use Python language and its libraries: tensorflow, keras, gensim, scikit-learn, numpy, pychord, music21 etc. Read more
Numerical Linear Algebra
18 minute read
Published:
Notes that I’ve made with help of professors and collegues during my Erasmus Exchange in University of Barcelona. Read more