Orange:一个基于 Python 的数据挖掘可视化平台

本篇介绍一个适合初学者入门的机器学习工具。

Orange 简介

Orange 是一个开源的数据挖掘和机器学习软件。Orange 基于 Python 和 C/C++ 开发,提供了一系列的数据探索、可视化、预处理以及建模组件。

Orange 拥有漂亮直观的交互式用户界面,非常适合新手进行探索性数据分析和可视化展示;同时高级用户也可以将其作为 Python 的一个编程模块进行数据操作和组件开发。

Orange 由卢布尔雅那大学于 1996 年开发,从 3.0 版本开始使用 Python 代码库进行科学计算,例如 numpy、scipy 以及 scikit-learn;前端的图形用户界面使用跨平台的 Qt 框架。Orange 支持 Windows、macOS 以及 Linux 平台。

Orange 安装

首先,打开 Orange 官方下载页面Orange Data Mining - Download

下载页面提供了几种安装方式:

Miniconda,直接点击“Download”按钮,下载 Orange3-Miniconda-x86_64.exe 文件后双击运行。

Anaconda,如果系统已经 Anaconda 发行版,执行以下两个命令:

conda config --add channels conda-forge
conda install orange3

Python Package Index,执行以下命令:

pip install orange3

安装完成后,在命令行输入以下命令可以启动 Orange 图形界面:

orange-canvas
# 或者
python -m Orange.canvas

启动之后显示以下欢迎界面。

欢迎界面提供了新建、打开工作流(workflow)的快捷方式以及各种教程、示例和使用文档,关闭该界面就进入了 Orange 主界面。


示例教程

打开 Orange 主界面,左侧显示了默认安装时提供的许多机器学习、预处理以及可视化的算法,这些功能被划分为 5 个组件集(数据、可视化、模型、评估以及无监督算法)。

其中的组件包括:

  • 数据(Data):包含数据输入、数据保存、数据过滤、抽样、插补、特征操作以及特征选择等组件,同时还支持嵌入 Python 脚本。
  • 可视化(Visualize):包含通用可视化(箱形图、直方图、散点图)和多变量可视化(马赛克图、筛分曲线图)组件。
  • 模型(Model):包含一组用于分类和回归的有监督机器学习算法组件。
  • 评估(Evaluate):交叉验证、抽样程序、可靠性评估以及预测方法评估。
  • 无监督算法(Unsupervised):用于聚类(k-means、层次聚类)和数据降维(多维尺度变换、主成分分析、相关分析)的无监督学习算法。

另外,还可以通过插件(add-ons)的方式为 Orange 增加其他的功能(生物信息学、数据融合与文本挖掘。添加的方法是点击“Options”菜单下的“Add-ons”按钮,打开插件管理器。

然后勾选所需的插件,点击“OK”按钮进行安装;安装插件后有可能需要重启 Orange 才能在左侧出现。

Orange 主界面的右侧是一个工作区(canvas),用于放置各种组件并构成一个数据分析的工作流。我们可以组合左侧的组件实现读取数据、显示数据表、选择特征、训练预测器、比较学习算法以及交互式可视化等功能。为了方便初学者,Orange 提供了许多实用的工作流示例。

点击“Help”菜单下的“Example Workflows”按钮,打开工作流示例界面。

我们选择“Classification Tree”,这是一个用于分类的决策树示例。

我们可以通过示例中的说明了解每个组件的作用和工作流程,其中的组件包括:

  1. 打开数据文件的 File 组件,用于打开包含鸢尾花(Iris)数据集的文件,这是一个经典的数据挖掘数据集;
  2. 用于分类的决策树组件(Classification Tree),这是一个决策树算法;
  3. 分类树可视化组件(Tree Viewer),用于显示分类树的结果;
  4. 散点图组件(Scatter Plot),显示选定数据的散点图;
  5. 箱形图组件(Box Plot),显示选定数据的箱型图。
  6. 组件之间的连线代表了数据流的方向。

通过这些组件的简单组合,构建了一个交互式分类树浏览器。我们可以点击这些组件,对其进行设置和调整,例如文件组件:

文件组件可以加载数据文件或者在线 URL 资源,并且对每个数据属性的类型、角色等进行设置。分类树组件可以对决策算法进行设置:

 分类树可视化组件可以提供直观的分类结果:

散点图组件可以根据分类树可视化组件中选择的节点数据显示相应的散点图,实现同步刷新:

我们也可以从 Orange 官方网站下载更多的示例。Orange Data Mining - Workflows

对于初学者而言,只需要在 Orange 图形界面中通过拖拽加点击的方式就可以实现常见的数据分析、探索、可视化以及数据挖掘任务;对于高级用户,可以通过开发自定义的组件(Widget)实现扩展的功能,或者在 Python 中利用 Orange 代码库编写数据挖掘脚本程序。相关内容可以参考 Orange 官方文档。

参考:

Orange:一个基于 Python 的数据挖掘和机器学习平台_orange python_不剪发的Tony老师的博客-CSDN博客

入门教程:https://blog.csdn.net/weixin_39461079/category_12101011.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/3865.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络 day11 tcpdump - 传输层 - netstat - socket - nc - TCP/UDP头部

目录 故障排查 tcpdump抓包工具 传输层(TCP和UDP协议) 传输层的作用 应用程序和端口号有什么关系? 传输层端对端连接实现拓扑图 如何查看自己的linux机器开放了哪些端口? 1、netstat(network status 网络的状态) netsta…

【ceph】存储池pg个数如何设置

存储池pg个数如何设置 参考官方文档说明:https://old.ceph.com/pgcalc/参数说明TargePGs per OSD:每个OSD的pg数OSD#存储池包含osd个数%Data存储池写入数据占总OSD容量百分比Size存储池冗余数

【复盘】记录一次类型不一致导致的Kafka消费异常问题

背景 业务主要是通过A系统向B系统写入Kafka,然后B系统消费Kafka 将结果写到Kafka中,A进行消费最终结果。 在整个流程中,A写入Kafka会写入一张 record1表记录,然后在A消费最终结果的时候也记录一张record2表。主要改动的话 只是B系…

设计模式07-责任链模式

责任链模式属于行为设计模式,常见的过滤器链就是使用责任链模式设计的。 文章目录 1、真实开发场景的问题引入2、责任链模式讲解2.1 核心类及类图2.2 基本代码 3、利用构建者模式解决问题4、责任链模式的应用实例5、总结5.1 解决的问题5.2 使用场景5.3 优缺点 1、真…

MFC 基于数据库的管理系统

文章目录 初始化设置菜单 添加数据库类创建数据库配置数据库 全部代码 初始化 创建文件选择基于CListView 初始化数据 public:CListCtrl& m_list;CSQLView::CSQLView() noexcept:m_list(GetListCtrl()) {// TODO: 在此处添加构造代码}void CSQLView::OnInitialUpdate() {C…

数据结构与算法——什么是线性表(线性存储结构)

我们知道,具有“一对一”逻辑关系的数据,最佳的存储方式是使用线性表。那么,什么是线性表呢? 线性表,全名为线性存储结构。使用线性表存储数据的方式可以这样理解,即“把所有数据用一根线儿串起来&#xf…

餐饮业油烟在线监测系统的具体应用 安科瑞 许敏

摘要:本文利用物联网技术,构建了一套餐饮企业智能油烟在线监测系统,该系统前台由厨房端和管道端组成,通过网关接入云平台管理系统,实时监控烟道阀门的启闭、变频风机的启停与风速及功率调节、油烟浓度数据等。结合动态…

随手笔记——如何手写高斯牛顿法

随手笔记——如何手写高斯牛顿法 说明源代码 说明 将演示如何手写高斯牛顿法 源代码 #include <iostream> #include <chrono> #include <opencv2/opencv.hpp> #include <Eigen/Core> #include <Eigen/Dense>using namespace std; using names…

HBase

一 HBase简介与环境部署 1.1 HBase简介&在Hadoop生态中的地位 1.1.1 什么是HBase HBase是一个分布式的、面向列的开源数据库HBase是Google BigTable的开源实现HBase不同于一般的关系数据库, 适合非结构化数据存储 1.1.2 BigTable BigTable是Google设计的分布式数据存储…

【Linux工具】编译器、调式器、项目自动化构建工具以及git的使用3(GDB调试器的基础使用)

【Linux工具】编译器、调式器、项目自动化构建工具以及git的使用3&#xff08;GDB调试器的基础使用&#xff09; 目录 【Linux工具】编译器、调式器、项目自动化构建工具以及git的使用3&#xff08;GDB调试器的基础使用&#xff09;背景gdb的一些指令gdb实际运用显示代码运行程…

【NLP】transformers的位置编码

一、背景 本文是“实现的变压器”系列的第二篇。它从头开始引入位置编码。然后,它

划片机的作用将晶圆分割成独立的芯片

划片机是将晶圆分割成独立芯片的关键设备之一。在半导体制造过程中&#xff0c;晶圆划片机用于将整个晶圆切割成单个的芯片&#xff0c;这个过程被称为“晶圆分割”或“晶圆切割”。 晶圆划片机通常采用精密的机械传动系统、高精度的切割刀具和先进的控制系统&#xff0c;以确保…

恢复idea删除的git本地文件

idea中删除git本地文件无法远程拉取pull已删除文件的问题 当前本地库处于另一个分支中&#xff0c;需将本分支Head重置&#xff0c;git 强行pull并覆盖本地文件 解决方式一&#xff1a; git fetch --all git reset --hard origin/master git pull解决方式二&#xff1a; git…

ylb-项目简介

1、各模块服务功能 注&#xff1a;其部分实体类、接口、mapper文件由MyBatis逆向工程生成。 2、Maven管理&#xff08;多模块&#xff0c;继承和聚合&#xff09; 2.1 parent模块 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"…

在SPringBoot生成验证码

1.引入依赖,这个依赖中包含了生成验证码的工具类 <!--引入hutool --><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.3.9</version></dependency> 2.编写配置类 import cn.hu…

华润燃气牵手腾讯云 数字技术助力燃气行业高质量发展

7月13日&#xff0c;华润燃气与腾讯云正式签署战略合作协议。双方将充分发挥各自优势&#xff0c;探索AI大模型在燃气行业的深度应用&#xff0c;并深耕分布式计算、连接和客户运营等领域&#xff0c;不断提升燃气民生服务的效率、质量&#xff0c;共同推动行业数字化转型和高质…

ASEMI快恢复二极管MUR20100CTR在电子工程中的应用

编辑-Z 随着电子技术的日益发展&#xff0c;各种电子元件的使用场景与需求也在逐步扩大。今天&#xff0c;我们将聚焦于一款广泛应用于各类电路的二极管——MUR20100CTR&#xff0c;来详细解读其性能特征及应用。 一、MUR20100CTR二极管的主要特性 MUR20100CTR是一款极高性能的…

DataTable数据对比

DataTable数据对比 文章目录 DataTable数据对比前言一、计算DataTable差集结构不同的情况结构相同的情况 二、计算DataTable交集结构不同的情况结构相同的情况 三、计算DataTable的并集合两个DaTable结构相同的情况计算并集 前言 开发中我们经常会出现查询数据库后返回DataTab…

[Java]Set、Map、List常见实现类的特点、使用方法总结

文章目录 1、图谱2、List1、ArrayList1. 特点2. 常见方法 2、LinkedList1、特点2、常见方法 3、Vector1、特点 3、Map1、HashMap1、特点常用方法 2、TreeMap1、特点 3、LinkedHashMap1、特点 4、Set1、HashSet1 、特点2、常用方法 2、LinkedHashSet特点 3、TreeSet1、特点2、使…