Trinity三位一体开源程序是可解释的 AI 分析工具和 3D 可视化

一、软件介绍

文末提供源码和程序下载学习

Trinity三位一体开源程序是可解释的 AI 分析工具和 3D 可视化。Trinity 提供性能分析和 XAI 工具,非常适合深度学习系统或其他执行复杂分类或解码的模型。

二、软件作用和特征

Trinity 通过结合具有超维感知能力的不同交互式 3D 投影来实现这一目标。(向量的向量)

Hyperspace 超空间

Trinity 的 Hyperspace 视图提供 3D 散点图,其中包含特征/因子数据的自动 2D 投影。维度组合可以立即切换,以便在超维空间中快速搜索。用户可以平移、旋转和缩放 3D 相机或点本身。散点是交互式的,允许用户选择单个点来调出与该特征相关的数据/图像。

Hypersurface 超曲面

Trinity 可以将更高维的输入(在解码之前)可视化为 3D 表面。超表面视图使分析人员能够深入了解哪些输入与解码/分类结果最相关。此视图与与 Hyperspace 视点相同的 FeatureVectors 和 Timeline 同步。

Projections and Manifolds投影和流形

Trinity 提供了一个快速并行的 UMAP 工具,具有易于使用的 GUI,可将超维嵌入投影到任意的低维空间。这允许分析师将近似流形投影为 3D 集群。

三、Data Formats 数据格式

Trinity 主要使用 JSON,并且具有一组可以导入的可序列化 JSON 消息对象。大多数应用程序将利用的主要消息是 FeatureVector。 例:

复制代码
{
    "messageType": "feature_vector",
    "messageId": 0,  #optional long value for order or id of data point
    "data": [-0.4232191175986961, -0.5031443592838056, 0.30497221256679125,
        0.4157550505277444, -0.46174460409303325, -0.12950797668733202,
        0.6323170694189965, 0.20112482321095512, -0.0770502704073328,
            #... some arbitrarily long vector of embeddings...#
        -0.021781132983331605, 0.2855062868586593, -0.11389146262348109,
        -0.4338320677142379, 0.14545007041168245, 0.34325194689681915
    ],
    "score": -2.753245759396493, #Typically the classification score provide by model but could be any floating point value you choose
    "pfa": 0.0008605957637858228, #Auxiliary floating point between 0 and 1 typically associated with a probability
    "label": "some_object",  #human readable string that is categorical
    "bbox": [0.0, 0, 16.0, 0], #optional Coordinate set typically used for Bounding box identification but could be used for anything
    "imageURL": "/media/images/video_frame_9001.jpg", #image associated with this data point. Supports *.png or *.jpg files. Also supports http based urls
    "layer": 3, #Typically the layer of the model the embeddings were taken from but can represent any Integer based hierarchal info
    "metaData" : { # Totally optional info hash map
        "some name" : "some value",
        "optional" : "string name/value pairs that provide additional info"
    }
}

FeatureVector 对象可以使用 ZeroMQ 作为流发送到 Trinity。ZeroMQ 连接是从 Data UI 面板配置的。可以使用 FeatureCollection JSON 对象以文件拖放形式一次性加载大型 FeatureVector 对象集合。FeatureCollection 对象只是一个 FeatureVector 对象的数组,带有一个类型字段,Trinity 使用它来检测拖放时的文件类型。

复制代码
{   "type": "FeatureCollection",
    "features": [
        ...boat load of FeatureVector objects
    ]
}

Trinity 将通过 label 字段自动为 Hyperspace 和 Projections 视图中的数据着色。它使用具有 12 种预定义颜色的旋转颜色映射表。可以通过 GUI 使用分数、图层、pFa 甚至原始坐标位置将颜色重新分配给颜色渐变。用户可以使用 LabelConfig 消息按标签创建自定义颜色映射表。标签可以通过 RGBA 十六进制代码显式着色。LabelConfig 还支持与 Java 兼容的正则表达式通配符。LabelConfig json 文件可以简单地拖放到 Trinity 应用程序上,它会自动更新视图。

复制代码
{
    "messageType": "label_config",
    "wildcards" : {
        "human_.*":"#0000FFFF",
        "human_Original.*":"#FFFF00FF",
        "chatGPT_.*":"#FF0000FF",
        "chatGPT_Original.*":"#00FF00FF"
    },
    "clearAll" : "false"
}

四、Example Use Cases 示例用例

Trinity 已应用于一系列用例,包括:

深度学习对象检测模型

COVID 基因/组织分类

脑机接口解码器

大型语言模型 (ChatGPT) 嵌入分析

五、Building and Running 构建和运行

您可以使用 MavenGradle 以及现代版本的 Java (>=17) 进行构建。如果您使用 Jetbrains IDE 或 Netbeans 来促进项目的冷启动,则已经有一组用于构建和运行的脚本。要在构建后从 jar 运行项目,您可以查看 scripts 目录以开始使用。否则,请确保在启动时至少在 JVM 参数上使用 -Dprism.maxvram=2G。对于 JLink/JPackage 构建,这些 JVM 参数已经嵌入到包中。

Troubleshooting 故障 排除

**执行权限 ** 可能需要执行权限才能运行 JPackageJLinkNative 版本 具体取决于您运行的系统。例如,在 OSX 系统上,您可能会获得 未知错误:111 或启动错误,因此您需要允许应用程序通过 GateKeeper xattr -r -d com.apple.quarantine /path/to/Trinity.app 。在某些情况下,您可能还需要在使用 JPackage 构建时添加 chmod +x /path/to/Trinity.app/Contents/MacOS/Trinity 执行权限。

** 在 Ubuntu 系统上启用 3D 渲染 ** 有时,在 Ubuntu 计算机上运行带有 3D 场景的 JavaFX 应用程序时,您会在运行时收到 Scene3D.conditionalfeature 错误。应用程序和所有 2D 组件将继续运行,但任何 3D 子场景和节点都不会渲染,而日志将被上述错误压垮。

从 jar 文件运行时,帮助 linux ubuntu 在 trinity 中渲染 3D 场景的 cmdline 参数:-Dprism.forceGPU=true

对于 Jpackage 本机可执行文件,您可以更新 trinity/app 文件夹下名为 Trinity.cfg 的 cfg 文件,您可以在此处将 forceGPU 标志添加为单独行的另一个选项。这基本上迫使 Ubuntu 执行 GPU 巫毒教。进行此更改后,只需运行 trinity,3D 场景就可以正常工作了。

六、软件下载

夸克网盘分享

本文信息来源于GitHub作者地址:https://github.com/trinity-xai/Trinity

相关推荐
Better Rose20 分钟前
【2025年泰迪杯数据挖掘挑战赛】B题 完整论文 模型建立与求解
人工智能·数据挖掘
虾球xz22 分钟前
游戏引擎学习第225天
学习·游戏引擎
Chandler241 小时前
一图掌握 MySQL 核心要点
数据库·mysql
CodeJourney.1 小时前
从PPT到DeepSeek开启信息可视化的全新之旅
数据库·人工智能·算法·excel·流程图
琢磨先生David3 小时前
Java 在人工智能领域的突围:从企业级架构到边缘计算的技术革新
java·人工智能·架构
kuaile09064 小时前
DeepSeek 与开源:肥沃土壤孕育 AI 硕果
人工智能·ai·gitee·开源·deepseek
zkmall4 小时前
ZKmall开源商城静态资源管理:Nginx 配置与优化
运维·nginx·开源
飞火流星020275 小时前
BERT、T5、ViT 和 GPT-3 架构概述及代表性应用
人工智能·gpt-3·bert·t5·vit·人工智能模型架构
程序小K5 小时前
自然语言处理Hugging Face Transformers
人工智能·自然语言处理
恒拓高科WorkPlus5 小时前
BeeWorks:打造安全可控的企业内网即时通讯平台
大数据·人工智能·安全