TypeError: init () получил неожиданный аргумент ключевого слова 'n_iter' - PullRequest
0 голосов
/ 13 февраля 2020

, пожалуйста, помогите мне с этой ошибкой:

Traceback (most recent call last):
File "E:/Speaker-Identification-Python-master/Speaker-Identification-Python-master/modeltraining.py", line 44, in
gmm = GMM(n_components = 16, n_iter = 200, covariance_type='diag',n_init = 3)
TypeError: init() got an unexpected keyword argument 'n_iter'

1 Ответ

0 голосов
/ 13 февраля 2020

Это репозиторий GitHub https://github.com/Atul-Anand-Jha/Speaker-Identification-Python, который вы загрузили и пытаетесь выполнить файл modeltraining.py, который был передан 2 года go.

Дело в том, что Автор репо мог использовать более старую версию scikit-learn (v0.16) .

В более старой версии scikit-learn он использовал from sklearn.mixture import GMM

Предполагается, что у вас более новая версия scikit-learn (версия 0.18 или выше).

Использование from sklearn.mixture import GaussianMixture

Поскольку согласно Официальной документации:

В Scikit-Learn (версия 0.16) - https://scikit-learn.org/0.16/modules/generated/sklearn.mixture.GMM.html

class sklearn.mixture.GMM(n_components=1, covariance_type='diag', random_state=None, thresh=None, tol=0.001, min_covar=0.001, n_iter=100, n_init=1, params='wmc', init_params='wmc')

n_iter параметр присутствует.

Но в scikit-learn (версия 0.18 или выше ) - https://scikit-learn.org/0.18/modules/generated/sklearn.mixture.GaussianMixture.html

class sklearn.mixture.GaussianMixture(n_components=1, covariance_type='full', tol=0.001, reg_covar=1e-06, max_iter=100, n_init=1, init_params='kmeans', weights_init=None, means_init=None, precisions_init=None, random_state=None, warm_start=False, verbose=0, verbose_interval=10)

Нет параметра n_iter, но они заменили его на max_iter.

Итак, попробуйте переименовать ваш параметр n_iter в max_iter, а также использовать это from sklearn.mixture import GaussianMixture вместо from sklearn.mixture import GMM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...