SKIL/工作流程/可视化

2023-10-21 16:50
文章标签 流程 工作 可视化 skil

本文主要是介绍SKIL/工作流程/可视化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

可视化

有两种方法可以在SKIL中可视化数据。可视化对于解释结果和理解其他复杂数组很有用,并且通常需要通过T-SNE或UMAP等算法实现降维。

 

训练可视化
使用Deeplarming4J用户界面
如果你正在使用deeplearning4j,则可以在训练模型时可视化统计数据。SKIL预先打包了一个ui服务器,该服务器将通过将ui标志传递到skil start脚本来自动启动:

#如果没有设置SKIL_HOME和JAVA_HOME变量,请取消对以下行的注释
# export SKIL_HOME=/opt/skil
# export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk# 首先进行授权
$SKIL_HOME/sbin/skil login --userId admin --password admin # 你可能有不同的用户名和密码,请相应地替换它们。# 启动
$SKIL_HOME/sbin/skil ui

 

对于docker,你需要转发端口9002以访问UI。

# 从Docker启动,确保你映射了端口9002
docker run --rm -it -p 9008:9008 -p 8080:8080 -p 9002:9002 skymindops/skil-ce bash /start-skil.sh

稍后,你可以在笔记本中添加一个%sh单元,专门启动UI服务器:

%sh#如果没有设置SKIL_HOME和JAVA_HOME变量,请取消对以下行的注释
# export SKIL_HOME=/opt/skil
# export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk# 首先进行授权
$SKIL_HOME/sbin/skil login --userId admin --password admin # 你可能有不同的用户名和密码,请相应地替换它们。# 启动
$SKIL_HOME/sbin/skil ui

skil ui命令的默认参数及其详细信息如下:

参数默认值详情
uiPort9002用于用户界面服务器的端口
enableRemoteTrue是否启用远程。它控制是否允许远程连接。

 

上面的命令$SKIL_HOME/sbin/skil ui将在端口9002启动一个用户界面服务器,默认情况下允许远程连接。你可以进一步提供--uiPort和--enableMemote参数,以在其他端口启动ui服务器,或者如果你想控制到该服务器的远程连接。

 

$SKIL_HOME/sbin/skil ui --uiPort 9010 --enableRemote False # 在端口9010启动UI服务器,禁用远程连接

 

Visualizing the DL4J Network

You will need to route your StatsListener to the UI port (default 9002). You can view the demo for DL4J UI with the default notebook that is created when you create an "Experiment" in SKIL and uncomment the following lines in the 4th paragraph.

可视化DL4J网络
你需要将StatsListener路由到UI端口(默认9002)。你可以使用在skil中创建“实验”时创建的默认笔记本来查看DL4J UI的演示,并在第4段中取消对以下行的注释。

//val remoteUIRouter = new RemoteUIStatsStorageRouter("http://localhost:9002")
//model.setListeners(new StatsListener(remoteUIRouter))

在取消对上述行的注释后,运行笔记本的前四段,然后在UI端口上可视化网络(此处,默认情况下,它设置为笔记本中的端口9002),这看起来类似于下面的图像。

Visualizing the model in DL4J UI.

在DL4J UI中可视化模型。
有关更多信息和用法,请参阅Deeplarning4j UI文档。
Tensorboard中TensorFlow模型的可视化
SKIL预先打包了TensorBoard,允许你可视化TensorFlow模型的训练。在笔记本中进行训练时,你可以以标准方式使用Tensorboard:

# bare metal installation
tensorboard --logdir=path/to/log-directory# when using Docker, manually start a TensorBoard instance
docker exec -it skil_container /bin/bash
tensorboard --logdir=path/to/log-directory

有关完整用法和示例,请参阅Tensorboard文档。

 

解释器功能
由于笔记本由ApacheZeppelin提供,许多内置可视化功能可用于结构化和非结构化数据。这是一个提供演示的可视化效果的示例笔记本。
使用SQL可以实现最简单的可视化。如果在笔记本中创建一个%sql单元,并对Spark RDD或任何其他缓存数据执行SQL查询,则可以很容易地以原始表格格式查看输出。

 

%sqlselect numPositions, count(1) value
from stats 
where numPositions < 65
group by numPositions
order by numPositions

 

如果你喜欢手动使用内置可视化功能,还可以通过使输出以%table 开头并用\t 分隔每行数据来打印表。

%sparkprintln("%table\nx\ty")
(1 to 340).map(i => i.toDouble / 50).map(x => (x, Math.sin(x))).foreach{case (x,y) => println(x + "\t" + y)}

 

数据摘要

除了Zeppelin支持的内置功能外,SKIL还允许你对输入数据进行DataVec分析,并计算数据集的统计信息。你可以以内联方式呈现结果,也可以查看端口9508。如果使用docker,请记住在运行你的SKIL容器之前添加-p 9508:9508。

 

%sparkimport org.datavec.spark.transform.AnalyzeSpark
import org.datavec.api.transform.ui.HtmlAnalysis
import java.io.Fileval dataAnalysis = AnalyzeSpark.analyze(tp.getFinalSchema(), processedData, 10)// 提交到文件
HtmlAnalysis.createHtmlAnalysisFile(dataAnalysis, new File("/opt/skil/plugins/files/sf-analysis.html"))// 提交内联
print("%html <iframe src=\"http://localhost:9508/files/sf-analysis.html\"></iframe>")

 

结果将像一个常规的HTML页面,其中包含列和数据集统计信息。

这篇关于SKIL/工作流程/可视化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/255670

相关文章

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MySQL 临时表与复制表操作全流程案例

《MySQL临时表与复制表操作全流程案例》本文介绍MySQL临时表与复制表的区别与使用,涵盖生命周期、存储机制、操作限制、创建方法及常见问题,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小... 目录一、mysql 临时表(一)核心特性拓展(二)操作全流程案例1. 复杂查询中的临时表应用2. 临时

Python实现数据可视化图表生成(适合新手入门)

《Python实现数据可视化图表生成(适合新手入门)》在数据科学和数据分析的新时代,高效、直观的数据可视化工具显得尤为重要,下面:本文主要介绍Python实现数据可视化图表生成的相关资料,文中通过... 目录前言为什么需要数据可视化准备工作基本图表绘制折线图柱状图散点图使用Seaborn创建高级图表箱线图热

MySQL 升级到8.4版本的完整流程及操作方法

《MySQL升级到8.4版本的完整流程及操作方法》本文详细说明了MySQL升级至8.4的完整流程,涵盖升级前准备(备份、兼容性检查)、支持路径(原地、逻辑导出、复制)、关键变更(空间索引、保留关键字... 目录一、升级前准备 (3.1 Before You Begin)二、升级路径 (3.2 Upgrade

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

Spring Boot从main方法到内嵌Tomcat的全过程(自动化流程)

《SpringBoot从main方法到内嵌Tomcat的全过程(自动化流程)》SpringBoot启动始于main方法,创建SpringApplication实例,初始化上下文,准备环境,刷新容器并... 目录1. 入口:main方法2. SpringApplication初始化2.1 构造阶段3. 运行阶