LoginSignup
1
0

More than 1 year has passed since last update.

scikit-learn使用時に出た'SVC' object has no attribute '_probA' エラーの対処法

Posted at

はじめに

scikit-learnを用いて機械学習させたモデルを、学習させたPCと違うPCでモデルを使用しようとしたところ、エラーが出た。
学習させたPCをPC①、使用しようとしたPCを②とする。
結論から言うとバージョンの違いのせいだったため、学習環境にバージョンを合わせれば問題ない。
ただし、筆者の環境においてはエラーが消えたが、必ずこれで消えるという訳ではない。

原因

はじめに の中で既に書いたが、scikit-learnのバージョン差によってエラーが出ていた。
バージョンを揃えればエラーを解消できる。
筆者の環境では、バージョンが以下のようになっていた。
PC①:0.23.2
PC②:0.22.2

解決までの手順

バージョン確認

それぞれのPCでscikit-learnのバージョンを確認する
バージョン確認には以下のコードをコマンドプロンプトで使用する。

python
import sklearn
print (sklearn.__version__)

使用環境のバージョンを変える

PC②で、以下のコードをコマンドプロンプトで使用する。
なお、PC②で別のモデルを作成した場合は、そのモデルはPC②で使用不可になるため注意が必要。

pip uninstall scikit-learn

アンインストールが確認できた後、以下のコードを入力する。
ただし、0.22.2についてはPC②のバージョンを入れる必要がある。

pip install scikit-learn==0.22.2

以上の操作でエラーが消えた。

終わりに

この記事では筆者の環境で発生したエラーの解決方法であり、他の環境すべてで対応できる保証はないが、
同様の対応でエラーが解消されることを期待する。

参考

https://algorithm.joho.info/machine-learning/python-scikit-learn-version/
https://www.grisoluto.com/entry/python-library-downgread

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0