Проблемы с установкой более старой версии scikit-learn на python 3.7 и 3.5 для совместимости с моделью SVM - PullRequest
0 голосов
/ 12 марта 2019

Я должен внедрить классификатор svm в более старую версию scikit-learn. Модель, которую я обучил на scikit-learn (0.20.3), похоже, не работает с версией, которая используется для моего проекта (0.15.2), она возвращает: AttributeError: у объекта 'SVC' нет атрибута '_imp1'. Чтобы решить эту проблему, я хотел бы установить более старую версию scikit-learn, чтобы переучить мою модель на этой версии. Я продолжаю получать следующие ошибки при попытке установить более старую версию scikit-learn для python 3.5 и 3.7 в Windows 10:

c:\program files (x86)\python37-32\include\pystate.h(209): note:

см. Объявление '_ts' sklearn \ cluster_dbscan_inner.cpp (5971): ошибка C2039: «exc_type»: не является членом «_ts» c: \ program files (x86) \ python37-32 \ include \ pystate.h (209): примечание: см. объявление о _ts sklearn \ cluster_dbscan_inner.cpp (5972): ошибка C2039: «exc_value»: не является членом «_ts» c: \ program files (x86) \ python37-32 \ include \ pystate.h (209): примечание: см. объявление о _ts sklearn \ cluster_dbscan_inner.cpp (5973): ошибка C2039: «exc_traceback»: не является членом «_ts» c: \ program files (x86) \ python37-32 \ include \ pystate.h (209): примечание: см. объявление '_ts'

----------------------------------------

Команда "" c: \ program files (x86) \ python37-32 \ python.exe "-u -c" import Setuptools, токенизировать; файл = 'C: \ Users \ pat2 \ AppData \ Local \ Temp \ пип-установки-77bzkmyc \ scikit учиться \ setup.py', F = GetAttr (разбития, 'open', open) ( file ); code = f.read (). replace ('\ r \ n', '\ n'); f.close (); exec (скомпилировать (код, file , 'exec')) "install --record C: \ Users \ Pat2 \ AppData \ Local \ Temp \ pip-record-4hjlpz98 \ install-record.txt --single-version-exte rnally-managed --compile --user --prefix = "не удалось с кодом ошибки 1 в C: \ Users \ pat2 \ AppData \ Local \ Temp \ пип-установки-77bzkmyc \ scikit учиться \

Распечатанный журнал очень длинный, поэтому я не уверен, какую часть здесь скопировать. Следующая ошибка также печатается, но не останавливает процесс установки:

ошибка: команда "C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Community \ VC \ Tools \ MSVC \ 14.15.26726 \ Bin \ HostX86 \ x86 \ cl.exe / c / nologo / Ox / W3 / GL / DNDEBUG / MD -IC: \ Users \ Pat2 \ AppData \ Roaming \ Python \ Python3 7 \ site-packages \ numpy \ core \ include -Isklearn \ svm \ src \ libsvm -Ic: \ Users \ pat2 \ AppData \ Roaming \ Python \ Python37 \ сайт-пакеты \ NumPy \ ядро ​​\ включают -I "c: \ program files (x86) \ python37-32 \ include" -I "c: \ program files (x86) \ python37-32 \ include" -I "C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Community \ VC \ Tools \ MSVC \ 14.15.26726 \ include "-I" C: \ Program Файлы (x86) \ Windows Kits \ 10 \ include \ 10.0.16299.0 \ ucrt "-I" C: \ Program Файлы (x 86) \ Windows Kits \ 10 \ include \ 10.0.16299.0 \ shared " -I "C: \ Program Files (x86) \ Windows Kits \ 10 \ include \ 10.0.16299.0 \ um" -I "C: \ Program Files (x86) \ Windows Kits \ 10 \ include \ 10.0.16299.0 \ winrt" -I "C: \ Program Files (x86) \ W indows Kits \ 10 \ include \ 10.0.16299.0 \ cppwinrt" /Tcsklearn\svm\libsvm.c /Fobuild\temp.win32-3.7\Release\sklearn\svm\libsvm.obj "не удалось с статус выхода 2

Также часто появляется следующее сообщение:

Нет ни одного модуля с именем 'numpy.distutils._msvccompiler' в numpy.distutils; пытается от distutils

Пока я пробовал эти вещи:

  • Установлен Cython 0.27.3
  • Установленный атлас
  • Установка Scikit-Learn 0.15.3 вручную через setup.py
  • Получение scikit-learn 0.15.3 напрямую с Github
  • Переустановка Microsoft visual studio C ++
  • Попробовал на другом компьютере, что привело к той же проблеме

Но ни одно из этих действий не изменило результат установки scikit-learn 0.15.3

EDIT:

  1. У меня такая же проблема при попытке установить scikit-learn 0.19.0

  2. Добавлена ​​дополнительная информация в первый журнал ошибок

1 Ответ

0 голосов
/ 12 марта 2019

Попробуйте:

pip install setuptools --upgrade
pip install numpy --upgrade
...