Встановлення Windows Scipy: ресурсів Lapack / Blas не знайдено


169

Я намагаюся встановити python та серію пакетів на робочий стіл 64-bit Windows. Я встановив Python 3.4, встановив Microsoft Visual Studio C ++ і успішно встановив numpy, панди та декілька інших. Я отримую таку помилку при спробі встановити scipy;

numpy.distutils.system_info.NotFoundError: no lapack/blas resources found

Я використовую pip install offline, команда встановлення, яку я використовую, це;

pip install --no-index --find-links="S:\python\scipy 0.15.0" scipy

Я прочитав тут повідомлення про необхідність компілятора, який, якщо я правильно зрозумів, є компілятором VS C ++. Я використовую версію 2010 року, як і Python 3.4. Це спрацювало для інших пакетів.

Чи потрібно використовувати бінарне вікно чи є спосіб, з яким я можу змусити встановити файл для роботи програми?

Велике спасибі за допомогу


4
Я думаю, що для цього потрібен компілятор Fortran. Але якщо попередньо вбудовані виконавчі файли прийнятні, ви можете використовувати Крістоф Gohlke в Numpy і SciPy пакетів колеса з Піп.
Ерик Вс

Дякую, Eryksun, я завантажую двійкові файли, щоб побачити, чи це вирішує проблему.
tjb305

Розчаровуючи, коли я намагаюся встановити двійковий файл, він стверджує, що у мене немає встановленого Python 3.4, хоча він є в PATH.
tjb305

Спробуйтеpy -3.4 -m pip install SomePackage.whl
Ерік,

2
У мене теж була ця проблема. Мені не вдалося отримати піп на роботу, але це працювало для мене (на Вдів): sourceforge.net/projects/scipy/files/scipy
MackM

Відповіді:


33

Тут описано рішення щодо відсутності бібліотек BLAS / LAPACK для установок SciPy в Windows 7 64-розрядних:

http://www.scipy.org/scipylib/building/windows.html

Встановити Anaconda набагато простіше, але ви все одно не отримуєте підтримку Intel MKL або GPU, не платячи за це (вони є в додатках оптимізації MKL та прискоренні для Anaconda - я не впевнений, чи вони використовують PLASMA та MAGMA) . Завдяки оптимізації MKL, numpy перевершив IDL на великих обчисленнях матриць в 10 разів. MATLAB використовує бібліотеку Intel MKL внутрішньо і підтримує обчислення GPU, тому можна також використовувати це за ціну, якщо вони є студентом (50 доларів за MATLAB + 10 доларів за панель інструментів паралельних обчислень). Якщо ви отримаєте безкоштовну пробну версію Intel Parallel Studio, вона поставляється з бібліотекою MKL, а також компіляторами C ++ і FORTRAN, які стануть у нагоді, якщо ви хочете встановити BLAS і LAPACK з MKL або ATLAS на Windows:

http://icl.cs.utk.edu/lapack-for-windows/lapack/

Parallel Studio також постачається з бібліотекою Intel MPI, корисною для кластерних обчислювальних програм та їх останніми процесорами Xeon. Хоча процес створення BLAS та LAPACK з оптимізацією MKL не є тривіальним, переваги цього для Python та R досить великі, як описано в цьому веб-семінарі Intel:

https://software.intel.com/en-us/articles/powered-by-mkl-accelerating-numpy-and-scipy-performance-with-intel-mkl-python

Anaconda та Enthought створили бізнес для полегшення розгортання цієї функціональності та кількох інших речей. Однак він є у вільному доступі для тих, хто бажає трохи попрацювати (і трохи навчитися).

Для тих, хто використовує R, тепер ви можете безкоштовно оптимізувати BLL та LAPACK з оптимізацією MKL за допомогою R Open від Revolution Analytics.

EDIT: Anaconda Python тепер поставляється з оптимізацією MKL, а також підтримкою ряду інших оптимізацій бібліотеки Intel через дистрибутив Intel Python. Однак підтримка GPU для Anaconda в бібліотеці Accelerate (раніше відома як NumbaPro) все ще перевищує $ 10 000 USD! Найкращими альтернативами для цього є, мабуть, PyCUDA та scikit-cuda, оскільки мідь (фактично безкоштовна версія Anaconda Accelerate), на жаль, припинив свій розвиток п'ять років тому. Він може бути знайдений тут , якщо хто -то хоче забрати , де вони зупинилися.


Єдина проблема з icl.cs.utk.edu/lapack-for-windows/lapack полягає в тому, що це заплутано. У когось є поради, що з цим робити?
gseattle

1
Коротка відповідь: використовуйте Anaconda
jordiburgos

Я використовую Anaconda, і я все одно отримую помилку. Мені довелося завантажити файл whl, включаючи mkl, і встановити його, щоб змусити його працювати. (Відповідь знайомства Яанус нижче: ванільний NumPy не вистачає)
ринків

1
2017 рік тут - у мене це працює, використовуючи метод тут . Це не дуже погано, як тільки ви зрозумієте, але це не так просто, як це має бути.
Джонатан Портер

Перша ланка розірвана. Я думаю, що це має бути scipy.github.io/devdocs/building/windows.html .
ChickenFeet

120

Наступне посилання має вирішити всі проблеми з Windows та SciPy ; просто виберіть відповідне завантаження. Мені вдалося встановити пакет без проблем. Кожне інше рішення, яке я спробував, викликало великі головні болі.

Джерело: http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy

Команда:

 pip install [Local File Location]\[Your specific file such as scipy-0.16.0-cp27-none-win_amd64.whl]

Це передбачає, що ви вже встановили наступне:

  1. Встановити Visual Studio 2015/2013 за допомогою інструментів Python
    (Інтегровано в параметри настройки при встановленні 2015 року)

  2. Встановити компілятор Visual Studio C ++ для Python
    Джерело: http://www.microsoft.com/en-us/download/details.aspx?id=44266
    Ім'я файлу:VCForPython27.msi

  3. Встановити Python Версію за вибором
    Джерело: Назва
    файлу python.org (наприклад):python-2.7.10.amd64.msi


9
@Nozdrum і тим, хто хоче скористатися цим методом, вам просто потрібно встановити numpy + mkl перед scipy, щоб мати доступ до blas.
Холт

1
Також ви можете використовувати інсталяцію SciPy з того самого сайту, на який вказував @Holt. Мені довелося використовувати Numpy + MKL та SciPy, надані у файлах WHL, щоб він працював.
Єзуїзм

2
Я вважаю, що це рішення працює лише з Python 2.7? Схоже, немає компілятора для Python 3 станом на серпень 2016 року
geneorama

2
Це працює як шарм. Ви можете відзначити , що cp27 в імен файлів вказує на версію пітона .whl для завантаження так cp35 , якщо ви працюєте пітона 3.5, cp27 2,7 і т.д.
Олександр Micklewright

2
Просто хотів висвітлити те, що написав @AlexanderMicklewright. Мені не було очевидно, що cpXXйдеться про версію XX (C) Python. Я просто неявно вибрав найвищу версію cp36, хоча я запускаю Python 3.5.
Чехія

98

Версія мого пітона - 2.7.10, 64-розрядна Windows 7.

  1. Завантажити scipy-0.18.0-cp27-cp27m-win_amd64.whlзhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy
  2. відчинено cmd
  3. Переконайтеся, що він scipy-0.18.0-cp27-cp27m-win_amd64.whlзнаходиться у cmdпоточному каталозі, а потім введіть pip install scipy-0.18.0-cp27-cp27m-win_amd64.whl.

Він буде успішно встановлений.


17
Це слід позначити як відповідь; він працював, і це найбільш безболісний спосіб його встановити.
Tensigh

Я не впевнений, яка тут роль файлу scikits.vectorplot-0.1.1-cp27-none-win_amd64.whl. Я тільки що завантажив файл scipy-0.18.0-cp27-cp27m-win_amd64.whl із вказаного посилання, який успішно встановив scipy. Тоді мені було запропоновано про відсутність numpy + mkl. Я завантажив за тим самим посиланням і встановив за допомогою установки pip. Чудово працює, і я погоджуюся, що це найпростіше рішення, на яке я потрапив.
beeprogrammer

5
Працює і з python 3.6 та windows 10.

Дякую! просте і легке рішення
Дінеш,

Ваше рішення також працювало з Python 3.5 та Windows 10.
Нікола Песавенто

30

Вибачте за некроз, але це перший результат пошуку Google. Це рішення, яке працювало для мене:

  1. Завантажте колесо numpy + mkl з http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy . Використовуйте версію, таку, що і ваша версія python (перевірте за допомогою python -V). Напр. якщо ваш пітон 3.5.2, завантажте колесо, на якому зображено cp35

  2. Відкрийте командний рядок та перейдіть до папки, у яку ви завантажили колесо. Виконайте команду: встановити pip [назва файлу колеса]

  3. Завантажте колесо SciPy з: http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy (подібно до кроку вище).

  4. Як зазначено вище, встановити pip [назва файлу колеса]


Цілком нормально розміщувати відповіді на мертві питання. Насправді ми насправді переглядаємо її щоразу, коли новий користувач робить це.
Нісса

2
Це працювало для мене для 32-розрядної версії Python 3.5 у Windows 8 64-розрядному стані станом на 8 січня 2017 року
Роб Малдер

1
спасибі, працював на Python 3.6 з NumPy 1.13.1 + MKL, панди 0.20.3, scikit вчитися 0.18-2, SciPy 0.19.1
зина

1
це працювало для мене на Windows 10 x64 за допомогою Python 3.6.2
Jeff Lindborg

20

Це був наказ, я все працював. Другий момент - найважливіший. Необхідна наука Numpy+MKL, а не тільки ваніль Numpy.

  1. Встановіть python 3.5
  2. pip install "file path"(завантажте колесо Numpy + MKL звідси http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy )
  3. pip install scipy

7
Ну, я зробив кроки 1) і 2), але по-третє, я отримував ту саму помилку. Отже, після кроків 1) та 2) мені довелося вручну завантажити пакет Scipy.whl звідси: lfd.uci.edu/~gohlke/pythonlibs/#scipy та pip встановити "Шляху, завантажену в Scipy ". Зараз це чудово працює!
Джеральдо Нето

5

Якщо ви працюєте з Windows та Visual Studio 2015

  • Встановіть мініконду http://conda.pydata.org/miniconda.html
  • Змініть середовище python на python 3.4 (32bit)
  • натисніть на середовище python 3.4 та відкрийте cmd

Введіть наступні команди

  • "conda install numpy"
  • "панди встановити панди"
  • "conda install scipy"


2

Проста і швидка установка Scipy в Windows

  1. Від http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipyзавантаження правильний пакет SciPy для вашої версії Python (наприклад , правильний пакет для пітона 3.5 і Windows x64 є scipy-0.19.1-cp35-cp35m-win_amd64.whl).
  2. Відкрийте cmdвсередині каталогу, що містить завантажений пакет Scipy.
  3. Тип pip install <<your-scipy-package-name>>(наприклад, pip install scipy-0.19.1-cp35-cp35m-win_amd64.whl).

5
Я отримав 'scipy-0.19.1-cp36-cp36m-win_amd64.whl не підтримується колесо на цій платформі.' коли це роблять.
дементований їжак


1

Тепер Intel надає дистрибутив Python для Linux / Windows / OS X безкоштовно під назвою " Розподіл Intel для Python ".

Його повний розподіл Python (наприклад, python.exe включений в комплект), який включає деякі попередньо встановлені модулі, складені проти Intel MKL (Math Kernel Library) і таким чином оптимізовані для більш швидкої роботи.

В дистрибутив входять модулі NumPy, SciPy, scikit-learn, панди, matplotlib, Numba, tbb, pyDAAL, Jupyter та інші. Недолік - це трохи запізнення в переході на новіші версії Python. Наприклад, станом на сьогодні (1 травня 2017 року) дистрибуція забезпечує CPython 3.5, тоді як версія 3.6 вже вийшла. Але якщо вам не потрібні нові функції, вони повинні бути прекрасними.


Чи знаєте ви, чи використовуються бібліотеки BLAS "динамічно"? Я використовую theano, і якщо бібліотеки "статичні", виникає маса проблем.
Даніель Мьоллер

@Daniel, що ти маєш на увазі під статичними бібліотеками? Python - це інтерпретована мова. Як ви використовуєте статично пов'язані бібліотеки? Але я не експерт у цій галузі. Тож, можливо, я щось пропускаю
raffaem

Не розумію це теж. Але це справжня проблема використання theano. Потрібно, щоб бібліотеки BLAS були динамічними (можливо, динамічно пов'язаними з numpy замість статично пов'язаними з numpy?) - Pyton використовує низку складених бібліотек, тому він може працювати так швидко, хоча інтерпретується.
Даніель Мьоллер

1

Я також отримував таку ж помилку під час встановлення scikit-нечіткого. Я вирішив помилку наступним чином:

  1. Встановіть Numpy , файл whl
  2. Встановіть Scipy , знову файл whl

виберіть файл відповідно до версії python, наприклад amd64 для python3 та іншого файлу win32 для python27

  1. тоді pip install --user skfuzzy

Я сподіваюся, це буде працювати для вас


1

Рішення:

  1. Як зазначено у багатьох відповідях, завантажте NumPy та SciPy whl з http://www.lfd.uci.edu/~gohlke/pythonlibs/ та встановіть за допомогою

    pip install <whl_location>
  2. Побудова BLAS / LAPACK з джерела

  3. Використання Miniconda .

Посилання:

  1. Установка ScikitLearn
  2. Найпростіший спосіб встановити BLAS і LAPACK для scipy?

0

Використання ресурсів на веб- сайті http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy вирішить проблему. Однак вам слід бути обережними щодо сумісності версій. Спробувавши кілька разів, нарешті я вирішив видалити python, а потім встановив свіжу версію python разом із numpy, а потім встановив scipy, і це вирішило мою проблему.


Посилання на зовнішні ресурси рекомендуються, але, будь ласка, додайте контекст навколо посилання, щоб ваші колеги користувачі мали уявлення про те, що це таке і чому воно існує. Завжди цитуйте найбільш релевантну частину важливого посилання на випадок, якщо цільовий сайт недоступний або перебуває постійно в режимі офлайн.
pableiros


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.