Я пытаюсь преобразовать coo_matrix в numpy
def predict1():
str_features = [str(x) for x in request.form.values()]
description= process(str_features[0])
x1_tfidf_load_sub = pickle.load(open("vocab1.pickle", 'rb'))
x2_tfidf_load_sub = pickle.load(open("vocab2.pickle", 'rb'))
description= [description]
closure= [str_features[1]]
tfidf_vectorizer1 = TfidfVectorizer(vocabulary=x1_tfidf_load_sub,use_idf=False, norm=None)
X1_test = tfidf_vectorizer1.fit_transform(description)
tfidf_vectorizer2 = TfidfVectorizer(vocabulary=x2_tfidf_load_sub,use_idf=False, norm=None)
X2_test = tfidf_vectorizer2.fit_transform(closure)
x_test = hstack((X1_test, X2_test))
x_test_final=x_test.toarray(x_test)
prediction = model.predict(x_test_final)
Он продолжает показывать мне ошибку в заголовке. Если вместо преобразования в numpy я просто запускаю:
x_test = hstack((X1_test, X2_test))
prediction = model.predict(x_test)
Я получаю ValueError: несоответствие размеров
Пожалуйста, помогите.
РЕДАКТИРОВАТЬ:
Traceback (most recent call last):
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 2464, in __call__
return self.wsgi_app(environ, start_response)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 2450, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 1867, in handle_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\_compat.py", line 39, in reraise
raise value
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 2447, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 1952, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 1821, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\_compat.py", line 39, in reraise
raise value
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 1950, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\flask\app.py", line 1936, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "C:\Users\Pratiksha_S\Desktop\Deployment-flask-master\Deployment-flask-master\app.py", line 65, in predict1
x_test_final=x_test.toarray(x_test)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\scipy\sparse\coo.py", line 323, in toarray
B = self._process_toarray_args(order, out)
File "C:\Users\Pratiksha_S\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\scipy\sparse\base.py", line 1189, in _process_toarray_args
return np.zeros(self.shape, dtype=self.dtype, order=order)
ValueError: Non-string object detected for the array ordering. Please pass in 'C', 'F', 'A', or 'K' instead
127.0.0.1 - - [03/May/2020 23:14:23] "[37mGET /predict?__debugger__=yes&cmd=resource&f=style.css HTTP/1.1[0m" 200 -
127.0.0.1 - - [03/May/2020 23:14:23] "[37mGET /predict?__debugger__=yes&cmd=resource&f=jquery.js HTTP/1.1[0m" 200 -
127.0.0.1 - - [03/May/2020 23:14:23] "[37mGET /predict?__debugger__=yes&cmd=resource&f=debugger.js HTTP/1.1[0m" 200 -
127.0.0.1 - - [03/May/2020 23:14:23] "[37mGET /predict?__debugger__=yes&cmd=resource&f=console.png HTTP/1.1[0m" 200 -
127.0.0.1 - - [03/May/2020 23:14:23] "[37mGET /predict?__debugger__=yes&cmd=resource&f=ubuntu.ttf HTTP/1.1[0m" 200 -
Здесь x_test является прохладной матрицей, а x_test_final = x_test.toarray (x_test) удовлетворяет документации. Также я использую разреженный hstack.