作者:韩信子@ShowMeAI

数据分析实战系列:http://www.showmeai.tech/tutorials/40

机器学习实战系列:http://www.showmeai.tech/tutorials/41

本文地址:http://www.showmeai.tech/article-detail/286

声明:版权所有,转载请联系平台与作者并注明出处

收藏ShowMeAI查看更多精彩内容

低代码开发,顾名思义,指的是软件开发过程中只需要编写少量代码就够了。与传统开发方式相比,低代码大幅减少了编写代码的工作量,这使其具备了更快的速度、更短的开发时间与更低的成本。

无代码 / 低代码机器学习平台(和库)的兴起,加速了代码开发速度。借助于这些平台和框架,数据科学家们在繁重的探索研究和大量的编程任务之间,取得更好的平衡。

在本篇内容中,ShowMeAI 给大家总结了最值得学习&使用 Python 低代码机器学习库,覆盖数据科学最热门的几大方向——数据分析&简单挖掘、机器学习、深度学习。

数据分析&简单挖掘

D-Tale

D-Tale 是一个易于使用的低代码 Python 库,通过将 Flask 编写的后端与 React 编写的前端相结合,与 Jupyter Notebook 无缝集成,可以查看和分析 Pandas 形态的数据,包括 DataFrame、Series、MultiIndex、DatetimeIndex 和 RangeIndex。

D-Tale 是 SAS 到 Python 转换的产物,最初是基于 SAS 的 perl 脚本包装器,现在是基于 Pandas 数据结构的轻量级 Web 客户端。

大家可以在D-Tale的官方 Github 查看它的详细教程和用法,也可以前往 在线平台 操作体验。

AutoViz

对于低代码探索式数据分析任务,AutoViz 是 Python 中另一个不错的选择。在功能方面,它只需编写一行代码即可使用 AutoViz 完成任何数据集的自动可视化。

AutoViz 能够结合任务确定哪些特征是最重要的,然后通过仅使用那些自动选择的元素来绘制和呈现信息。而且AutoViz速度极快,可视化可以在几秒钟内完成。

大家可以查看官方 AutoViz 示例 Jupyter Notebook 进行学习。

Lux

Lux 工具库是一个非常自动的数据分析可视化工具。无需做太多的数据预处理,它会自动根据数据生成一系列候选图表,根据实际需要从中做选择即可。这大大减少了制作图表所需的时间以及数据预处理工作量。

大家可以通过 Lux 的官方 GitHub 页面了解更多用法细节。

Pandas-Profiling

pandas-profiling 库自动针对 pandas DataFrame 格式的数据生成数据分析报告。

最终的结果以交互式 HTML 报告呈现,包含以下信息:

  • 类型推断:字段列的类型
  • 要点:类型、唯一值、缺失值
  • 分位数统计:包括最小值、Q1、中位数、Q3、最大值、范围、四分位间距
  • 描述性统计:包括均值、众数、标准差、总和、中值绝对差、变异系数、峰度、偏度等
  • 直方图:分类和数字
  • 相关性:Spearman、Pearson 和 Kendall 矩阵
  • 缺失值:矩阵、计数、热图和缺失值的树状图
  • 文本分析:了解文本数据的类别(大写、空格)、脚本(拉丁文、西里尔文)和块(ASCII)
  • 文件和图像分析:提取文件大小、创建日期和尺寸,并扫描截断的图像或包含 EXIF 信息的图像

大家可以在 pandas-profiling 的项目 GitHub 页面获取详细使用方法。

机器学习

PyCaret

PyCaret 是 Python 中的一个开源、低代码机器学习库,可自动执行机器学习工作流。它也是一个端到端的机器学习和模型管理工具,可以成倍地加快实验周期,提升工作开发效率。

与其他开源机器学习库相比,PyCaret 有着明显的低代码特质,可仅用几行代码完成原本需要数百行代码完成的工作,尤其是对于密集的实验迭代过程可以大大提速。PyCaret 本质上是围绕多个机器学习库和框架封装而成,包括大家熟悉的 Scikit-Learn、XGBoost、LightGBM、CatBoost、spaCy、Optuna、Hyperopt 和 Ray 等。

大家可以通过 Pycaret 的 官方文档,官方GitHub,官方教程 了解更多使用细节。

深度学习

PyTorch Lightning

PyTorch Lightning 是一个应用在深度学习/神经网络的 Python 低代码库,为 PyTorch 提供高级接口。

它具备高性能和轻量级的架构,以一种将研究与工程分离的方式来构建 PyTorch 代码,使深度学习实验更容易理解和重复。借助它能轻松构建分布式硬件上的可扩展深度学习模型。

官网介绍说,PyTorch Lightning 的设计是为了让大家可以将更多的时间花在研究上,而不是花在工程上。大家可以通过 PyTorch Lightning 的 官方网站 了解更多使用细节。

Hugging Face Transformers

Hugging Face Transformers 是 Hugging Face 的开源深度学习工具库。借助 Transformers,大家可以非常方便快速地下载最先进的预训练模型,应用在自己的场景中,或者基于自己的数据做再训练。

因为官方提供的大量预训练模型,我们可以减少计算费用(因为无需从头训练)。丰富的模型覆盖多种数据类型和业务源,包括:

  • 文本:对文本进行分类、信息抽取、问答系统、机器翻译、摘要生成,文本生成(覆盖 100 多种语言)
  • 图像:图像分类、目标检测和图像分割
  • 音频:语音识别和音频分类

PyTorch、TensorFlow 和 JAX 是三个最著名的深度学习库,transformers 的对这三个框架都支持得很好,甚至可以在一个框架中用三行代码训练模型,在另一个框架中加载模型并进行推理。

大家可以通过 Hugging Face Transformers 的 官方网站 和 GitHub了解更多使用细节。

参考资料

2022了你还不会『低代码』?数据科学也能玩转Low-Code啦! ⛵的更多相关文章

  1. Node.js躬行记(24)——低代码

    低代码开发平台(LCDP)是无需编码(0代码)或通过少量代码就可以快速生成应用程序的开发平台.让具有不同经验水平的开发人员可以通过图形化的用户界面,通过拖拽组件和模型驱动的逻辑来创建网页和移动应用程序 ...

  2. 除了降低成本和加速数字化转型,低代码还能给企业带来什么价值 ZT

    翻译自:https://dzone.com/articles/measuring-the-roi-of-low-code-1,有删改 低代码 是一种近些年兴起的企业软件快速开发技术和工具.借助低代码使 ...

  3. 『高性能模型』HetConv: HeterogeneousKernel-BasedConvolutionsforDeepCNNs

    论文地址:HetConv 一.现有网络加速技术 1.卷积加速技术 作者对已有的新型卷积划分如下:标准卷积.Depthwise 卷积.Pointwise 卷积.群卷积(相关介绍见『高性能模型』深度可分离 ...

  4. 『高性能模型』轻量级网络ShuffleNet_v1及v2

    项目实现:GitHub 参考博客:CNN模型之ShuffleNet v1论文:ShuffleNet: An Extremely Efficient Convolutional Neural Netwo ...

  5. 2017-2018-2 165X 『Java程序设计』课程 助教总结

    2017-2018-2 165X 『Java程序设计』课程 助教总结 本学期完成的助教工作主要包括: 编写300道左右测试题,用于蓝墨云课下测试: 发布博客三篇:<2017-2018-2 165 ...

  6. 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算_第三周

    2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址: @王志伟 四则运算第一周博客 @仇夏四则运算第一周博客 ...

  7. 为企业应用开发提速,写给企业IT部门的低代码开发基础知识

    简介:应用程序开发长期以来一直是IT部门和业务部门面临的问题. IT部门总是被新的应用程序需求弄得不堪重负.他们不可能完成业务部门想要完成的每一个项目. 同时,业务部门的用户厌倦了等待,并开始完全绕过 ...

  8. 个性化和云端孤岛困扰SaaS用户,低代码PaaS或成解决之道 ZT

    近日,中国软件行业协会.中国软件网联合阿里云推出了<2020中国SaaS产业十大趋势>,其中明确指出企业软件SaaS化是大势所趋,但个性化和云端孤岛成为2020年SaaS用户关注的两大问题 ...

  9. 应用场景不同,是无代码和低代码的最大区别 ZT

    随着媒体对低代码.无代码等先进技术的持续关注,我们发现大多数人都听说过低代码开发和无代码开发这两个概念,但是对两者之间的区别其实并不清楚.事实上,低代码开发和无代码开发之间存在着很多非常显著的差异,如 ...

随机推荐

  1. 205. Isomorphic Strings - LeetCode

    Question 205. Isomorphic Strings Solution 题目大意:判断两个字符串是否具有相同的结构 思路:构造一个map,存储每个字符的差,遍历字符串,判断两个两个字符串中 ...

  2. 安装PostgreSQL到CentOS(YUM)

    运行环境 系统版本:CentOS Linux release 7.6.1810 (Core) 软件版本:postgresql-12 硬件要求:无 安装过程 1.安装YUM-PostgreSQL存储库 ...

  3. 5分钟快速搭建一个springboot的项目

      现在开发中90%的人都在使用springboot进行开发,你有没有这样的苦恼,如果让你新建一个springboot开发环境的项目,总是很苦恼,需要花费很长时间去调试.今天来分享下如何快速搭建. 一 ...

  4. java对象与Json字符串之间的转化

    public class Test { public static void main(String[] args) { // 实现java对象与Json字符串之间的转化 // 1. Person对象 ...

  5. LightGBM原理与实践简记

    写在前面: LightGBM 用了很久了,但是一直没有对其进行总结,本文从 LightGBM 的使用.原理及参数调优三个方面进行简要梳理. 目录 开箱即用 quickstart sklearn 接口 ...

  6. django框架5

    内容概要 模板语法之过滤器(类似于内置函数) 模板语法之标签(类似于流程控制) 自定义过滤器.标签.inclusion_tag 模板的导入 模板的继承 注释语法补充 前期数据准备(测试环境搭建) al ...

  7. torch.rand、torch.randn、torch.normal、torch.linespace

    torch.rand(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) # ...

  8. Anaconda新建虚拟环境并添加到Jupyter Notebook

    可参考:https://www.jianshu.com/p/ab9ae548b253 虚拟环境是Python的隔离工作副本.这意味着每个环境都可以具有自己的依赖关系,甚至可以具有自己的Python版本 ...

  9. vue组件data函数

    vue组件data通常定义为一个函数并return一个对象,对象中定义的就是组件数据,当然定义数据还有props.computed等方式. data如果直接定义为对象data: {message: ' ...

  10. junit 5 - Display Name 展示名称

    本文地址:https://www.cnblogs.com/hchengmx/p/14883563.html @DisplayName可以给 测试类 或者 测试方法来自定义显示的名称.可以支持 空格.特 ...