永远存在的问题。我学习数据科学不仅仅是为了开发模型或清理数据,我想制作人们可以使用的应用程序,我正在寻找一种快速制作MVP(最小可行产品)来测试想法的方法。如果您是一名数据科学家并且想要创建您的第一个数据科学应用程序,本文将展示创建您的第一个应用程序所需的7个Python库。我相信你已经知道其中的一些,但我会为那些不太了解它们的读者一一介绍。Pandas数据科学和机器学习应用程序都是关于数据的。大多数数据集都不整洁,它们需要对项目进行某种清理和操作。Pandas是一个允许加载、清理和操作数据的库。您可以使用SQL等替代方案来进行数据操作和数据库管理,但Pandas更简单,更适用于希望成为开发人员(或至少是MVP开发人员)的数据科学家。Numpy数组是许多数据科学项目(包括计算机视觉)中最重要的数据类型。Numpy是一个功能强大的Python库,可让您使用数组、操作数组以及高效地将算法应用于数组。对于我后面提到的其他一些库,学习Numpy是必要的。SciKitLearn这个库是许多类型的机器学习模型和预处理工具的工具包。如果你正在做一个机器学习项目,你可能不需要SciKitLearn。Keras或PyTorch神经网络,尤其是深度神经网络模型,是数据科学和机器学习中非常流行的模型。许多计算机视觉和自然语言处理方法都依赖于这些方法。使用某些Python库可以帮助您访问神经网络工具。TensorFlow是最著名的,但我相信初学者很难从TensorFlow入手。我建议你学习Keras,它是Tensorflow的接口(API)。Keras使您能够作为人类轻松测试不同的神经网络架构,甚至构建您自己的神经网络架构,最近流行的另一个选择是PyTorch。Ipywidgets当谈到UI时,您必须在传统外观的UI和基于Web的UI之间做出选择。您可以使用PyQT或TkInter等库来构建传统的用户界面,但我的建议是尽可能开发在浏览器中运行的Web应用程序。为此,您需要使用一个在浏览器中提供一组小部件的库。ipywidgets为JupyterNotebooks提供了一组丰富的小部件。请求当今许多数据科学应用程序都使用API(应用程序编程接口),简单地说,通过API,您可以请求服务器应用程序为您提供对数据库的访问或为您执行特定任务。例如,GoogleMapsAPI可以从您那里获取两个位置以及它们之间的返回时间。如果没有API,您将不得不重新发明轮子。Requests是一个与API对话的库。如今不使用API就很难成为数据科学家。绘制不同类型的图是数据科学项目的重要组成部分。虽然Python中最流行的绘图库是matplotlib,但我发现Plotly更专业、更易于使用且更灵活。Plotly中有多种类型的绘图和绘图工具。Plotly的另一个优点是它的设计,不同于复杂的matplotlib图形,它看起来更加简洁易懂。JupyterNotebook和Voila你需要学习的最后一个工具来实现你的第一个数据科学应用程序是最简单的。首先,ipywidgets在Jupyternotebooks中运行,您需要使用Jupyter来创建应用程序。我相信你们中的许多人已经在使用JupyterNotebooks进行模型构建和探索性分析,现在,将JupyterNotebooks视为前端开发的工具。此外,您还需要使用Voila,这是一个可以启动的第三方工具,它隐藏了Jupyternotebook的所有代码部分。当您启动JupyterNotebook应用程序时,瞧,它就像一个Web应用程序。您甚至可以在AWSEC2机器上运行Voila和Jupyternotebook,并从Internet访问您的简单应用程序。使用本文提到的7个库,可以构建人们使用的数据科学应用程序。如果你能掌握这些工具,你可以在几个小时内构建mvp并与真实用户一起测试想法。之后,如果您决定扩展应用程序,除了HTML、CSS和JS代码之外,您还可以使用更专业的工具,如Flask和Django。
