wiki:AGMFM - 5.1. Пристап и методологија

Version 1 (modified by Monika Rizova, 6 years ago) ( diff )

5.1. Пристап и методологија

Пред да започнам со креирањето на имплементација за автоматско генерирање на македонска народна мелодија, најпрво се запознав подлабоко со теоријата на музиката а потоа и со структурата на македонските народни песни. Направив истражување за веќе постоечките видови на имплементации за генерирање на различни видови на музика (класична, метал и сл.), а исто така и тестирав некои од нив за да ја оценам нивната креативност и успешност во креирањето на мелодија. Разгледувајќи ги разните имплементации забележав дека генерирањето музика со ситеми кои учат се покажува доста успешно, благодарение на посебен вид на рекурентни невронски мрежи наречени LSTM – или мрежи со долго-краткорочна меморија, затоа што добро се справуваат со временски податоци (како што е музиката), и затоа што се решение на проблемот со исчезнување на градиент, па оттаму и идејата за имплементација на систем за генерирање м. народна мелодија со системи за учење.

Имплементацијата прикажана во рамките на овој труд е креирана врз основа на тутотијал за креирање на музика со користење на LSTM и Keras, и претставува адаптација на кодот достапен на https://github.com/Skuldur/Classical-Piano-Composer, за генерирање на класични дела, во код за генерирање македонска народна мелодија, преку тестирање на разни параметри за моделот на невронската мрежа, менување на бројот на епохи за тренирање на моделот, менување на должината на низите кои ќе бидат користени за предвидување на следна нота во резултантната мелодија и користење на CuDNNLSTM слој во архитектурата на мрежата наместо LSTM слој.

Туторијалот е достапен овде: https://towardsdatascience.com/how-to-generate-music-using-a-lstm-neural-network-in-keras-68786834d4c5. Методологијата за креирање на систем за автоматско генерирање на македонска народна мелодија, која јас ја користев е опишана во следниве чекори:

  1. Увезување на податоците и нивно анализирање
  2. Креирање на модел за учење
  3. Тренирање на моделот врз увезените податоци
  4. Евалуирање на ефикасноста на моделот
  5. Предвидување врз основа на тренираниот модел, односно генерирање мелодија
  6. Извезување на генерираната мелодија во формат кој може да се слушне
Note: See TracWiki for help on using the wiki.