diff --git a/report/2.past_implementations.tex b/report/2.past_implementations.tex index a6e061c..bd6ac76 100644 --- a/report/2.past_implementations.tex +++ b/report/2.past_implementations.tex @@ -48,49 +48,48 @@ similarity matrix) και στην λειτουργία του ίδιου του \item Spectral flatness per Band (Φασματική Επιπεδότητα ανά συχνοτικές ομάδες) \item MFCCs (Mel Frequency Cepstral Coefficients) \end{enumerate} - +ομιλία % TODO: η παράγραφος δε βγάζει και πολύ νόημα μετά από ένα σημείο Έγινε ανάλυση κύριων συνιστωσών (Principal component analysis ή PCA) με στόχο να -μειωθούν οι διαστάσεις των διανυσμάτων χαρακτηριστικών (feature vectors). +μειωθούν οι διαστάσεις των διανυσμάτων των χαρακτηριστικών (feature vectors). Δημιουργήθηκαν οι πίνακες ομοιότητας υπολογίζοντας την ευκλείδεια απόσταση -μεταξύ των δειγμάτων ήχου έτσι ώστε να χωριστούν τα τμήματα. Στη συνέχεια τα +μεταξύ των δειγμάτων ήχου έτσι ώστε να χωριστούν σε τμήματα. Στη συνέχεια τα τμήματα αυτά κατηγοριοποιούνται ενώ ταυτόχρονα εφαρμόζεται ο αλγόριθμος Silence -Detection και τα δείγματα αυτά προστίθενται στα προηγούμενα. Για το πρόβλημα της -κατηγοριοποίησης χρησιμοποιείται ο ίδιος αλγόριθμος Random Forest για την -ταξινόμηση σε επίπεδο (frame) τμημάτων ήχου. Εφόσον για κάθε αρχείο ήχου έχουν +Detection. Για το πρόβλημα της +κατηγοριοποίησης χρησιμοποιείται ο ίδιος αλγόριθμος Random Forest για +ταξινόμηση σε επίπεδο τμημάτων ήχου (frame). Εφόσον για κάθε αρχείο ήχου έχουν εξαχθεί τα παραπάνω χαρακτηριστικά, κάθε τμήμα ήχου ταξινομείται στην κλάση που αποφασίζεται και έπειτα ολόκληρο το αρχείο ταξινομείται στην κλάση στην οποία -ταξινομήθηκαν τα τμήματά του κατά πλειοψηφία. +ταξινομήθηκαν τα περισσότερα τμήματά του. \vspace{1em} -Στο ~\cite{speech} προτείνεται πως τα features μπορεί να μην καλύπτουν -χαρακτηριστικά και της φωνής και της μουσικής, αλλά να βασίζονται κυρίως σε +Στο ~\cite{speech} προτείνεται πως τα χαρακτηριστικά μπορεί να μην καλύπτουν +χαρακτηριστικά και της ομιλίας και της μουσικής, αλλά να βασίζονται κυρίως σε χαρακτηριστικά ενός από τα δύο. Ενδιαφέρον παρουσιάζουν τα χαρακτηριστικά της ομιλίας, τα οποία λόγω των μέσων που την παράγουν (τα χείλη, η γλώσσα και οι φωνητικές χορδές) έχουν ιδιαίτερα γνωρίσματα. Η μελέτη αυτών των χαρακτηριστικών -και η χρήση τους ως features σε έναν classifier αποδεικνύεται πως μπορεί να +και η χρήση τους σε έναν ταξινομητή αποδεικνύεται πως μπορεί να αυξήσει την επιτυχία του διαχωρισμού. -Ενδεικτικά, πέρα από το καθιερωμένο feature των 4Hz modulation energy, λόγω του -ρυθμού των συλλαβών, κάποια άλλα speech specific features βασίζονται στην +Ενδεικτικά, πέρα από το καθιερωμένο χαρακτηριστικό της διαμόρφωσης ενέργειας στα 4Hz (4Hz modulation energy), λόγω του +ρυθμού των συλλαβών, κάποια άλλα χαρακτηριστικά ειδικά για ομιλία βασίζονται στην αναγνώριση του ήχου που παράγεται στις φωνητικές χορδές κατά την εναλλαγή της προφοράς ενός συμφώνου σε ένα φωνήεν ή στην μελέτη της αυτοσυσχέτησης του -σήματος μετά από φιλτράρισμα (Zero Frequency Filtered Signal) όπου εμφανίζονται -συγκεκριμένα χαρακτηριστικά μόνο στην ομιλία. +σήματος μετά από φιλτράρισμα (Zero Frequency Filtered Signal). \vspace{1em} -Πέρα από την επιλογή των features, η μέθοδος εκπαίδευσης έχει μεγάλη επίπτωση στην +Πέρα από την επιλογή των χαρακτηριστικών, η μέθοδος εκπαίδευσης έχει μεγάλη επίπτωση στην τελική αποτελεσματικότητα του αλγορίθμου. Μερικές φορές χρήση σύνθετων μεθόδων εκπαίδευσης μπορούν να επιφέρουν καλύτερα αποτελέσματα σε μεγαλύτερο ποσοστό διότι επιτρέπουν την έξοδο από τοπικά ελάχιστα. Η σύνθετες μέθοδοι μπορεί να μην είναι συμβατικές ή και να δανείζονται από παρατηρήσεις της φύσης, όπως ο -συνδυασμός ενός Support Vector Machine (SVM) με τον Cuckoo Algorithm ~\cite{cuckoo}. -Όπου, όπως το πουλί κούκος που γεννάει τα αυγά του σε ξένες φωλιές, στις +συνδυασμός ενός Support Vector Machine (SVM) με τον Cuckoo Algorithm ~\cite{cuckoo}, +όπου, όπως το πουλί κούκος που γεννάει τα αυγά του σε ξένες φωλιές, στις επαναλήψεις εκπαίδευσης του SVM κάποιες λύσεις πετιούνται και αντικαθίστανται από νέες οι οποίες μπορεί να επιφέρουν καλύτερα αποτελέσματα. \vspace{1em} -Στο ~\cite{hybrid} οι συγγραφείς χρησιμοποιούν τα features: +Στο ~\cite{hybrid} οι συγγραφείς χρησιμοποιούν τα χαρακτηριστικά: \begin{enumerate}[noitemsep] \item ΜFCCs (Mel Frequency Cepstral Coefficients) \item ZCR (Zero-Crossing Rate) @@ -99,22 +98,21 @@ Detection και τα δείγματα αυτά προστίθενται στα \item SF (Specral Flux) \end{enumerate} -Τα χαρακτηριστικά ΜFCC, ZCR και SF ταξινομούν με accuracy ~90\% το καθένα. Το -feature SR με 83\%, ενώ το SC με 70\%. Ο συνδυασμός όλων των features πετυχαίνει +Τα χαρακτηριστικά ΜFCC, ZCR και SF ταξινομούν με ακρίβεια ~90\% το καθένα. Το SR με 83\%, ενώ το SC με 70\%. Ο συνδυασμός όλων των παραπάνω χαρακτηριστικών πετυχαίνει 93.5\% σωστή ταξινόμηση, ενώ με χρήση ενός SVM μοντέλου το ποσοστό φτάνει στο 95.68\%. Παρατηρείται ότι η σωστή ταξινόμηση της μουσικής είναι αρκετά δυσκολότερη (με -αυτά τα features) σε σχέση με αυτή της ομιλίας. Συγκεκριμένα στην ομιλία -επιτυγχάνεται (με το SVM) accuracy 98.25\% ενώ στη μουσική 93.1\%. +τα συγκεκριμένα χαρακτηριστικά) σε σχέση με αυτή της ομιλίας. Ειδικότερα στην ομιλία +επιτυγχάνεται (με το SVM) ακρίβεια 98.25\% ενώ στη μουσική 93.1\%. \vspace{1em} Τέλος, σύμφωνα με το ~\cite{radio}, σε εφαρμογές κατηγοριοποίησης όπου δεν -επιβάλλεται η λειτουργία σε πραγματικό χρόνο, η χρήση energy features είναι -επιθυμητή λόγο της μεγάλης ακρίβειας τους. Συγκεκριμένα η αναζήτηση της Minimum -Energy Density δείχνει να υπερέχει από άλλες μεθόδους energy features και στην -αποτελεσματικότητα της, και στην απλότητα του υπολογισμού της. Σε συνδυασμό με το +επιβάλλεται η λειτουργία σε πραγματικό χρόνο, η χρήση χαρακτηριστικών ενέργειας είναι +επιθυμητή λόγω της μεγάλης ακρίβειας τους. Συγκεκριμένα η αναζήτηση της ελάχιστης πυκνότητας ενέργειας (Minimum +Energy Density) δείχνει να υπερέχει από άλλα χαρακτηριστικά ενέργειας τόσο στην +αποτελεσματικότητα της όσο και στην απλότητα του υπολογισμού της. Σε συνδυασμό με το χαρακτηριστικό της διαφοράς ενέργειάς στα διάφορα κανάλια μιας πολυκάναλης εισόδου, στο ~\cite{radio} πέτυχαν ακρίβεια 100\% στα κομμάτια εισόδου όπου -περιείχαν μόνο μουσική ή φωνή και όχι τον συνδυασμό τους (όπως στις ραδιοφωνικές +περιείχαν μόνο μουσική ή ομιλία και όχι τον συνδυασμό τους (όπως στις ραδιοφωνικές διατιμήσεις). diff --git a/report/3.features_and_preprocessing.tex b/report/3.features_and_preprocessing.tex index 3208026..2de4469 100644 --- a/report/3.features_and_preprocessing.tex +++ b/report/3.features_and_preprocessing.tex @@ -2,11 +2,11 @@ Η υλοποίηση αναπτύχθηκε στη γλώσσα Python 3 και χρησιμοποιήθηκε πληθώρα βιβλιοθηκών (modules) όπως η essentia για την εξαγωγή χαρακτηριστικών, η scikit-learn για την προεπεξεργασία δεδομένων και την εκπαίδευση των μοντέλων, η seaborn για την δημιουργία διαγραμμάτων και την οπτικοποίηση των χαρακτηριστικών. Παράλληλα, σε συνδυασμό με όλες αυτές χρησιμοποιήθηκαν και άλλες βιβλιοθήκες όπως η numpy, η pandas, η matplotlib, η multiprocessing, η οs, η pyaudio και άλλες. Για την εκπαίδευση, δοκιμάστηκαν τα μοντέλα SVM, Decision Trees, Multilayer Perceptron, Naive Bayes και Random Forest, λεπτομέριες για τα οποία θα αναφερθούν στα επόμενα κεφάλαια. -Το dataset που χρησιμοποιήθηκε για την εκπαίδευση του μοντέλου είναι το προτεινόμενο GTZAN dataset \footnote{\href{http://opihi.cs.uvic.ca/sound/music_speech.tar.gz}{GTZAN dataset download}, last accessed: \today}, το οποίο αποτελείται από 128 αρχεία διάρκειας 30 δευτερολέπτων. Κάθε κλάση (μουσική/φωνή) αποτελείται από 64 αρχεία ενώ δεν υπάρχουν αρχεία που να περιέχουν και τις δύο κλάσεις. Όλα τα αρχεία ήχου είναι δειγματοληπτημένα στα 22050 Hz, μονοκάναλα, με βάθος ήχου 16-bit και σε μορφή WAV. +Το dataset που χρησιμοποιήθηκε για την εκπαίδευση του μοντέλου είναι το προτεινόμενο GTZAN dataset \footnote{\href{http://opihi.cs.uvic.ca/sound/music_speech.tar.gz}{GTZAN dataset download}, last accessed: \today}, το οποίο αποτελείται από 128 αρχεία διάρκειας 30 δευτερολέπτων. Κάθε κλάση (μουσική/ομιλία) αποτελείται από 64 αρχεία ενώ δεν υπάρχουν αρχεία που να περιέχουν και τις δύο κλάσεις. Όλα τα αρχεία ήχου είναι δειγματοληπτημένα στα 22050 Hz, μονοκάναλα, με βάθος ήχου 16-bit και σε μορφή WAV. \section{Χαρακτηριστικά} -Για την εξαγωγή των χαρακτηριστικών από τα αρχεία ήχου του σετ δεδομένων, αρχικά τμηματήσαμε κάθε σήμα αρχείου σε frames με μέγεθος 6144 δείγματα (\textasciitilde278 ms), το οποίο προέκυψε μετά από επαναλαμβανόμενες δοκιμές. Έπειτα, τα frames, παραθυροποιήθηκαν με παράθυρο τύπου Hamming, ίσου μεγέθους. Στη συνέχεια, έγινε η εξαγωγή των χαρακτηριστικών στο πεδίο του χρόνου, καθώς και στο πεδίο της συχνότητας. Επίσης έγινε εξαγωγή των συντελεστών MFCC. Τα χαρακτηριστικά που εξήχθησαν, τελικά, είναι τα παρακάτω 27 που αναλύονται στη συνέχεια. +Για την εξαγωγή των χαρακτηριστικών από τα αρχεία ήχου του σετ δεδομένων, αρχικά τμηματήσαμε κάθε σήμα αρχείου σε τμήματα (frames) με μέγεθος 6144 δείγματα (\textasciitilde278 ms), το οποίο προέκυψε μετά από επαναλαμβανόμενες δοκιμές. Έπειτα, τα τμήματα, παραθυροποιήθηκαν με παράθυρο τύπου Hamming, ίσου μεγέθους. Στη συνέχεια, έγινε η εξαγωγή των χαρακτηριστικών στο πεδίο του χρόνου και στο πεδίο της συχνότητας. Επίσης έγινε εξαγωγή των συντελεστών MFCC. Τα χαρακτηριστικά που εξήχθησαν, τελικά, είναι 27, και αναλύονται στη συνέχεια. \subsection{Zero Crossing Rate - ZCR} @@ -15,12 +15,11 @@ \text{ZCR} = \frac{\sum_{n=1}^{N} |sgn ~x(n) - sgn~x(n-1)|}{2N} \end{equation} -όπου $sgn()$ η συνάρτηση πρόσημου και $x(n)$ το διακριτό σήμα ήχου. Στη γενική περίπτωση, το ZCR για την μουσική είναι αρκετά υψηλότερο από ότι στην φωνή. +όπου $sgn()$ η συνάρτηση πρόσημου και $x(n)$ το διακριτό σήμα ήχου. Στη γενική περίπτωση, το ZCR για την μουσική είναι αρκετά υψηλότερο από ότι στην ομιλία. \subsection{Spectral Centroid - SC} -Το spectral cendroid ή αλλιώς φασματικό κέντρο, όπως αναφέρεται στο \footnote{\label{Shoshan} -Speech and Music Classification and Separation: A Review, Abdullah I. Al-Shoshan, Department of Computer Science, College of Computer, Qassim University, Saudi Arabia}, είναι μία μετρική που χρησιμοποιείται ώστε να χαρακτηρίσει ένα φάσμα. Υποδεικνύει πού βρίσκεται το κέντρο του φάσματος. Έχει ισχυρή σύνδεση με την ``φωτεινότητα'' ενός ήχου, δηλαδή με την χροιά. Συνήθως, το κέντρο του φάσματος της φωνής συγκεντρώνεται σε χαμηλές συχνότητες και έπειτα συμπτύσσεται πολύ γρήγορα στις υψιλότερες συχνότητες ενώ δεν υπάρχει DC συνιστώσα. Αντίθετα, στην μουσική δεν έχει παρατηρηθεί κάποιο συγκεκριμένο σχήμα του φάσματος. +Το spectral cendroid ή αλλιώς φασματικό κέντρο, όπως αναφέρεται στο \cite{al2006speech}, είναι μία μετρική που χρησιμοποιείται ώστε να χαρακτηρίσει ένα φάσμα. Υποδεικνύει πού βρίσκεται το κέντρο του φάσματος. Έχει ισχυρή σύνδεση με την ``φωτεινότητα'' ενός ήχου, δηλαδή με την χροιά. Συνήθως, το κέντρο του φάσματος της ομιλίας συγκεντρώνεται σε χαμηλές συχνότητες και έπειτα συμπτύσσεται πολύ γρήγορα στις υψιλότερες συχνότητες ενώ δεν υπάρχει DC συνιστώσα. Αντίθετα, στην μουσική δεν έχει παρατηρηθεί κάποιο συγκεκριμένο σχήμα του φάσματος. \subsection{Roll Off} @@ -28,11 +27,11 @@ Speech and Music Classification and Separation: A Review, Abdullah I. Al-Shoshan \begin{equation} \sum_{k