机器学习神器Sklearn0.22安装跨坑之旅(python3.6+win10)(2020最新版)#教你方法啥版本都能安装#

疫情盛行,只能在家闭关苦修。在家修啥呢?当然是学与课题相关的(在下还是个苦逼研究僧),而我的课题主要需要运用正下大火的AI技术(当然是python环境了,毕竟python可是科研神器)。而Sklearn可以说是用python建立AI必用的第三方库,包含常用的回归(Regression)、降维(Dimensionality Reduction)、分类(Classification)、聚类(clustering)等函数方法,方便效率高。但是skleaarn的安装却不是想的那么简单,经常出现安装失败。所以我在此分享一下我成功的安装经验。

首先,声明sklearn不是一个独立的第三方函数库,它也需要依赖其他第三方函数库的支撑,分别是numpy、scipy、matplotlib.

到这里大家先不要急着去搭建环境了,要知道sklearn是很挑剔的,他对python版本的有相当严格的要求(这也是许多小伙伴安装失败的原因)。这里摘录sklearn官网上的一段话来说明(附网址:https://scikit-learn.org/stable/install.html)

上文简要翻译一下:python3.4以下版本只支持sklearn 0.20 及以下版本,而python3.8只支持sklearn 0.22版本,其他就没限制了。

而我的环境是:python 3.6 + win10—64位

所以我选择最新版本的sklearn 0.22

sklearn的版本确定了还不行,其他的第三方函数库也有要求,以下来自官网翻译:(为何学个AI,这么难呢?)

Matplotlib >= 2.1.1;

Numpy >=1.14.0;

scipy >=1.1.0;

(pandas >= 0.18.0

seaborn >=0.9.0)

最后两个第三方函数库不是必要的,于是我决定了我最后的安装计划:

numpy 1.16.1 + mkl(mkl是必装的,否则会报错)+scipy 1.4.1 +matplotlib 2.2.5 +sklearn 0.22.2

然后就是下载安装,建议不要直接安装pip安装,建议安装版本需求下库再pip安装。

下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/

安装顺序是:numpy--->matplotlib--->scipy--->sklearn

然后就是安装测试,附上测试代码:

import numpy as np
import matplotlib.pyplot as plt

from sklearn import datasets, cluster
from sklearn.feature_extraction.image import grid_to_graph

digits = datasets.load_digits()
images = digits.images
X = np.reshape(images, (len(images), -1))
connectivity = grid_to_graph(*images[0].shape)

agglo = cluster.FeatureAgglomeration(connectivity=connectivity,
                                     n_clusters=32)

agglo.fit(X)
X_reduced = agglo.transform(X)

X_restored = agglo.inverse_transform(X_reduced)
images_restored = np.reshape(X_restored, images.shape)
plt.figure(1, figsize=(4, 3.5))
plt.clf()
plt.subplots_adjust(left=.01, right=.99, bottom=.01, top=.91)
for i in range(4):
    plt.subplot(3, 4, i + 1)
    plt.imshow(images[i], cmap=plt.cm.gray, vmax=16, interpolation='nearest')
    plt.xticks(())
    plt.yticks(())
    if i == 1:
        plt.title('Original data')
    plt.subplot(3, 4, 4 + i + 1)
    plt.imshow(images_restored[i], cmap=plt.cm.gray, vmax=16,
               interpolation='nearest')
    if i == 1:
        plt.title('Agglomerated data')
    plt.xticks(())
    plt.yticks(())

plt.subplot(3, 4, 10)
plt.imshow(np.reshape(agglo.labels_, images[0].shape),
           interpolation='nearest', cmap=plt.cm.nipy_spectral)
plt.xticks(())
plt.yticks(())
plt.title('Labels')
plt.show()

如果显示:

机器学习神器Sklearn0.22安装跨坑之旅(python3.6+win10)(2020最新版)#教你方法啥版本都能安装#_第1张图片

恭喜你,sklearn你就安装成功了,可以开始你的AI学习之旅!

你可能感兴趣的:(机器学习神器Sklearn0.22安装跨坑之旅(python3.6+win10)(2020最新版)#教你方法啥版本都能安装#)