반응형
import joblib
import os
model = joblib.load(open('C:\\Users\\비밀디렉토리\\Downloads\\super.baseline_model_ml.pkl', 'rb'))
pre=model.predict('X_text')
pkl을 이번에 처음 접해봤는데 이파일을 여는 작업을 해야했다.
그래서 열심히 구글링 하여 작업을 아래와 같이 수행했다.
import pickle
with open('C:\\Users\\내디랙토리데헹\\Downloads\\super.baseline_model_ml.pkl', 'rb') as f:
data = pickle.load(f);
그래서 당연히 간단히 해결될줄 알았는데 아래와 같은 에러가 떴다.
Traceback (most recent call last):
File "d:\pypy\module4.py", line 4, in <module>
data = pickle.load(f);
_pickle.UnpicklingError: invalid load key, '\x00'.
아놔..
그래서 해당에러를 검색해보았다.
(대충 이것저것 뒤져봤다는 이미지 이다)
피클 버전을 낮추거나 높여서도 깔아봤지만 피클은 아예안먹혔다.
그러다가 중국쪽 사이트에서 답을 찾았는데
https://blog.csdn.net/fivemillion/article/details/125933007
import joblib
import os
model = joblib.load(open('C:\\Users\\응애\Downloads\\super.baseline_model_ml.pkl', 'rb'))
pre=model.predict('X_text')
했더니 에러...
Traceback (most recent call last):
File "d:\pypy\module4.py", line 4, in <module>
pre=model.predict('X_text')
File "C:\Python310\lib\site-packages\sklearn\neural_network\_multilayer_perceptron.py", line 971, in predict
y_pred = self._predict(X)
File "C:\Python310\lib\site-packages\sklearn\neural_network\_multilayer_perceptron.py", line 667, in _predict
X = check_array(X, accept_sparse=['csr', 'csc', 'coo'])
File "C:\Python310\lib\site-packages\sklearn\utils\validation.py", line 545, in check_array
ion.py", line 545, in check_array
tol=0.0001, validation_fraction=0.1, verbose=False,
warm_start=False)
Traceback (most recent call last):
File "d:\pypy\module2.py", line 12, in <module>
data = pickle.load(f);
_pickle.UnpicklingError: invalid load key, '\x0d'.
뭔가 그럴싸하게 나왔지만 에러가 났다..
사실 이중간에 파일 라이브러리 버전이 안맞는다하여 버전도 낮은버전으로 낮춰서 까는 작업을 진행했다.
당장 이력에 남아있는게 이거인지라..
pip install -v scikit-learn==0.22.2.post1
pip3 install MLPClassifier==0.22.1
그러다 다시 찾으면 올리겠지만 os로 파일open후에 joblb로 로드후 다시 덤프떠서 확인해보라는 글이 인터넷에 있었다.
import joblib
import os
model =joblib.load(open('C:\\Users\\테테테테\\Downloads\\super.baseline_model_ml.pkl','rb'));
print(model);
file_name = 'object_01.pkl'
joblib.dump(model, file_name)
import pickle
with open('object_01.pkl', 'rb') as f:
data = pickle.load(f);
에러는 뜨지만 파일내용을 파악할수 있었다.
반응형
'프로그래밍 > Python' 카테고리의 다른 글
[python3] fetchone() VS fetchmany() VS fetchall() 에 관한 고찰 (0) | 2022.12.16 |
---|