还有一个强大的可视化库叫做Bokeh,其目的是互动式的可视化。 与Seaborn不同,Bokeh独立于Matplotlib。 如上所述,Bokeh的卖点是互动性,它通过数据驱动文档(d3.js)风格的新式浏览器来呈现图表。 下图:使用Bokeh制作的图表展示 7. Plotly(Github提交次数:2486,贡献者人数:33) Plotly是一个基于Web来构建可视化的的工具箱。它有好几种编程语言(其中包括Python)的API,并在plot.ly网站上提供一些强大的、开箱即用的图表。 要使用Plotly,您先需要设置您的Plotly API密钥。Plotly将在其服务器端处理图表,并将结果在互联网上发布。此外,它也提供了一种不需要使用其服务器和网络的offline方法。 下图:使用Plotly制作的图表展示 下图:python可视化库的Google趋势记录 图片来源:trends.google.com 机器学习类 8. SciKit-Learn(Github提交次数:21793,贡献者人数:842) Scikits是SciPy Stack的另一库,它专为某些特殊功能(如图像处理和机器学习辅助)而设计。对于机器学习而言,SciKit-Learn是其中最突出的一个是库。SciKit-Learn建立在SciPy之上,并大量使用SciPy进行数学操作。 scikit-learn为常见的机器学习算法设计了一个简洁通用的界面,使得在生产系统使用机器学习变的十分简单。 该库有着高质量的代码和文档,性能高,容易使用,是使用Python进行机器学习的行业实践标准。 深度学习类 - Keras / TensorFlow / Theano 在深度学习方面,Keras是最杰出最方便的Python库之一。它可以在TensorFlow或者Theano之上运行。 下面让我们来看一下它们的一些细节: 9.Theano. (提交:25870次,贡献者:300个) 首先我们来谈谈Theano. Theano同Numpy类似,是一款定义多维矩阵并含有数学运算符和表达式的Python包。通过编译这个库可以在任何环境下有效的运行。由蒙特利尔大学的机器学习小组最初开发,它主要用于满足机器学习的需要。 很重要的一点是要注意到,Theano在低级别运算符上同NumPy紧密的结合在一起。并且这个库优化了GPU和CPU的使用,使其在处理大数据运算时的表现更为迅速。 效率和稳定性的调整,使得即使是非常小的值也能得到更精确的结果,例如,即使给一个非常小的x值,计算log(1 + x)也能给出一个可是别的结果。 10.TensorFlow (提交:16785次,贡献者:795个) 这是一个由Google的程序员开发,为机器学习打造的数据流图像计算开源库。设计它的目的是为了满足Google环境中对训练神经网络的迫切需求。其前身是DistBelief,一个基于神经网络的机器学习系统。而且TensorFlow并非严格受制于Google的框架——它可以广泛地适用于多种真实世界的应用中。 TensorFlow的主要特点是他的多层节点系统,可以在大数据上快速的训练人工神经网络。这点为Google的语音识别以及图像识别提供了助力。 11.Keras (提交:3519次,贡献者:428个) 最后,来看一看Keras,这是一个Python开源库,用于在高级界面上建立神经网络。它简约且直接,并拥有很强的延展性。它使用Theano 和 TensorFlow作为其终端,并且微软正在试图将CNTK(微软自己的认知工具包)结合进去成为一个新的终端。 这种简约的设计方式旨通过紧凑型系统建立来实现更加快捷和简单的操作。 Keras极易上手,并且在使用的过程中有很多快速原型可供参考。它完全用Python写的库,并且本身就非常高级。Keras非常模块化并有很强的拓展性。尽管Keras简易,有高层次定位。Keras仍然拥有足够的深度和力量来进行严肃的建模。 Keras的核心理念是“层级”,一切都是围绕着层级建立的。数据在张量(tensors)中处理好,第一层负责张量的输入,最后一层负责输出,而模型则在这之间建立。 谷歌Trends历史记录 trends.google.com Github合并请求(pull requests)历史纪录 datascience.com/trends 自然语言处理 12.NLTK (提交:12449次,贡献者:196个) (责任编辑:本港台直播) |