我正在尝试运行hmmlearn教程中的代码,但是从删除的方法"distribute_covar_matrix_to_match_covariance_type"中收到导入错误。 我不知道如何在 Anaconda 中安装不会导致此问题的 hmmlearn 版本。
我在 Windows 10 上运行它:
- (名称、版本、内部版本、频道)
- hmmlearn, 0.3.0b, np112py36_0, omnia
- scikit-learn, 0.20.1, py36hb854c30_0
- Python 3.6.8, h9f7ef89_7
我已经安装了 hmmlearn 和 scikit-learn 通过 Anaconda 使用以下命令:conda install -c omnia hmmlearn
.
在我看来,通过 Anaconda 安装的 hmmlearn 不是 hmmlearn 的最新版本,因为在文件中hmm.py
这一行from sklearn.mixture import (
distribute_covar_matrix_to_match_covariance_type, _validate_covars
)
存在。比较了最新版本的hmmlearn。
在 Anaconda 中与 hmmlearn 一起安装的捆绑的 scikit-learn 中,distribute_covar_matrix_to_match_covariance_type
方法被删除,因为它应该在 scikit-learn 0.20.1 中。(在 0.20 中删除)
from hmmlearn import hmm
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-19-16c29f744bfe> in <module>
----> 1 from hmmlearn import hmm
~DocumentsAnacondalibsite-packageshmmlearnhmm.py in <module>
14 from scipy.misc import logsumexp
15 from sklearn import cluster
---> 16 from sklearn.mixture import (
17 distribute_covar_matrix_to_match_covariance_type, _validate_covars
18 )
ImportError: cannot import name 'distribute_covar_matrix_to_match_covariance_type'
问题似乎是Anaconda正在安装不兼容的hmmlearn和scikit-learn版本。关于如何安装这些软件包的兼容版本的任何建议?
从@Vivek Kumar runconda install -c conda-forge hmmlearn
如果这不起作用,请删除 hmmlearn 与
conda remove hmmlearn
然后用 pip 重新安装
pip install --upgrade --user hmmlearn