说实话,老板让学机器学习,机器学习最火的库之一就是scikit learn了,可是它究竟是个什么东西,我也不知道,慢慢学吧。
QT1:
这里说一些废话了。最近一直在ubuntu和windows 上安装CUDA和CUDNN,这俩其实就是用来让开发者调用GPU进行算法加速的。尤其对大型的神经学习网络,有GPU加速比CPU快上好多倍。说做就做,我一定要安装上这两个东西,因为后续也可以在深度学习框架Pytorch上愉快的进行大型神经网络的学习了。
But.......................经过两天的折腾,博主的心态崩了,时间很宝贵,不能在这上边浪费时间了,老板还有任务呢。于是上网去查怎么 安装没有GPU加速的CPU版本Pytorch,成功安装。下一步就是安装scikit learn库了,scikit learn库需要下面几个依赖库的支持:
这么多的库,安装起来又是一大堆的麻烦。但是,最直接的 是安装anaconda, 里边已经包含了一大堆的库,当然 这包含我们需要的sklearn库,真的是我这种不愿意配置环境的福音了!!!
打开Anaconda Navigator (导航),在Environments(管理版本和包的)可以看到numpy, scipy, scikit-learn, matplotlib等库都已经安装好了:
QT2:
前面一直纠结于安装cuda和cudnn,就是为了用gpu给深度神经学习加速, 就在想sklearn这个学习框架需不需要gpu加速啊,它到底有没有深度神经网络学习模块啊,然后我貌似发现了一个大秘密.........
首先,关于sklearn这个学习框架需不需要gpu加速这个问题,这篇博客给出的答案是否定的。
博客地址:https://www.wukong.com/answer/6502778705033560334/
scikit-learn目前只支持cpu,不支持gpu。
两点原因:
1.scikit-learn不包括深度神经网络模型,这让scikit-learn有条件不基于GPU加速。
2.scikit-learn的设计目标是跨平台、易于安装,这让scikit-learn有意识地不基于GPU加速。
看到这里怎么莫名有点高兴呢, 可能是因为前边没有安装gpu加速吧,省事了,但是为了pytorch的深度学习,gpu是跑不掉了。
sklearn到底有没有深度神经网络模型,前边已经说没有了,然后这篇知乎给出了更具体的答案。
知乎地址:https://www.zhihu.com/question/24738573
参考官方给出的sklearn学习文档API Reference - scikit-learn 0.18.1 documentation可以看到,sklearn的0.18.1有神经网络模型,0.18.0也支持。但是只有BernoulliRBM和MLP,具体是neural_network.BernoulliRBM ,neural_network.MLPClassifier,neural_network.MLPRgression,并没有深度神经网络模型。sklearn的具体Neural Network模型参考下面的博客,写的很好:
https://blog.csdn.net/gamer_gyt/article/details/51255448
以上是我在安装sklearn心里一直迷惑的问题,一是学习这个框架你不需要纠结于必须安装GPU加速,即在你不做深度神经学习的前提下,CUDA和CUDNN不是必须的;二是这个框架包含的神经网络模型有限,可以作为初学者学习神经网络的工具,想学习深度的神经网络,换个别的框架吧。
疑惑暂时就这些,下面就是进入正式学习sklearn了。
1.官网的链接:http://scikit-learn.org/stable/install.html
2.简书上比较详细的教程:https://www.jianshu.com/p/4e772ae08a4c
3.简书上比较详细的教程:https://www.jianshu.com/p/21b758541825
4.https://www.cnblogs.com/magle/p/5638409.html
5.前面提到的依赖库,包括windows下最常用的其他依赖库的安装包都有!!!网址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
6.最直接最方便的是Anaconda,都给你装好了。
最后,安装成功查看sklearn的命令是:
1 >>> import sklearn
2 >>> sklearn.__version__
3 '0.17.1'