Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Εκπαίδευση GMM-HMM #197

Open
NikMalekkides opened this issue Nov 12, 2023 · 1 comment
Open

Εκπαίδευση GMM-HMM #197

NikMalekkides opened this issue Nov 12, 2023 · 1 comment

Comments

@NikMalekkides
Copy link

Καλησπέρα.

Στην εκπαίδευση των HMM, τυγχαίνει αρκετές φορές να επιστρέφει το πιο κάτω σφάλμα:

_LinAlgError: linalg.cholesky: The factorization could not be completed because the input is not positive-definite (the leading minor of order 12 is not positive-definite).

(μου έχει τύχει και το σφάλμα ValueError: Variances must be positive. που αναφέρθηκε σε προηγούμενη ερώτηση)

Συνήθως μπορώ να αποφύγω το εν λόγω σφάλμα, θέτοντας τον περιορισμό covariance_type="diag" στην αρχικοποίηση του GMM. Υπάρχει τρόπος να αποφευχθεί το πιο πάνω, χωρίς να χρειαστεί να περιορίσω το μοντέλο;

Αν χρειαστεί, μπορώ να επισυνάψω και τον σχετικό κώδικα (ακολούθησα σε μεγάλο βαθμό το βοηθητικό υλικό που μας δώσατε).

Επιπλέον, θα ήθελα να κάνω και μια γενική ερώτηση. Αν κατάλαβα σωστά, σε κάθε κατάσταση του HMM, θα υπάρχει ένα ξεχωριστό GMM (άρα μιλάμε για mixture απο GMMs). Στη συνάρτηση initialize_and_fit_gmm_distributions, εκπαιδεύουμε επαναληπτικά n_states φορές ένα GMM. Τι μας εγγυάται ότι σε κάθε επανάληψη, το καινούργιο GMM που θα εκπαιδεύσουμε, θα εντοπίσει διαφορετική συνιστώσα του mixture από τα υπόλοιπα (αφού η εκπαίδευση γίνεται με ακριβώς τον ίδιο τρόπο);

@georgepar
Copy link
Contributor

georgepar commented Nov 13, 2023

Αυτό που βλέπετε είναι φυσιολογικό, ειδικά σε συνδυασμούς μεγάλου αριθμού states, mixtures και full covariance matrix, καθώς το μοντέλο αποκλίνει λόγω numerical instability.

Αναφέρετε τι παρατηρείτε για διαφορετικούς συνδυασμούς στην αναφορά.

Σχετικά με την δεύτερη ερώτηση, δεν το εγγυάται κάτι αυτό. Θεωρητικά μπορείτε να εκπαιδεύσετε ένα GMM και να το επαναλάβετε n_states φορές σε μια λίστα (καθώς υποθέτουμε ότι όλα τα φωνήματα και frames προέρχονται από την ίδια κατανομή).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants