You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用R-ggplot2可视化基准模型与探索模型的参数偏差?

用ggplot2绘制模型参数与基准模型的偏差图

当然可以!用ggplot2来可视化探索模型和基准模型的参数偏差是非常合适的选择,能让读者一眼看出每个模型在各参数上的差异。下面是完整的实现步骤和代码,你可以直接套用:

1. 数据预处理(转长格式+计算偏差)

首先我们需要把原始的宽格式数据转换成ggplot2偏好的长格式(tidy data),同时计算每个探索模型参数相对于基准模型的绝对偏差(探索值-基准值)和相对偏差(百分比形式,更适合看比例差异):

# 加载所需包(tidyverse包含ggplot2、dplyr、tidyr等工具)
library(tidyverse)

# 你的原始数据
base = c(1.84,3.92,1.67,1.12,1.63,.62,.59)
e1 = c(.61,1.47,1.68,1.95,1.64,.61,.72)
e2 = c(.64,7.08,1.67,1.12,1.44,.46,.76)
e3 = c(.64,4.47,1.68,2.04,1.45,.4,1.35)
e4 = c(.78,1.61,1.62,1.09,1.46,.66,.76)
e5 = c(.78,.99,1.62,2.32,1.46,.73,.52)
df = data.frame(base,e1,e2,e3,e4,e5)

# 数据整理:添加参数ID、转长格式、计算偏差
df_tidy <- df %>%
  mutate(param_id = row_number()) %>% # 给每个参数分配唯一ID,方便区分
  pivot_longer(cols = -c(base, param_id), names_to = "model", values_to = "value") %>%
  mutate(
    deviation_abs = value - base,       # 绝对偏差
    deviation_rel = (value - base)/base * 100 # 相对偏差(百分比)
  )

2. 折线图:展示偏差趋势

折线图适合观察每个探索模型在不同参数上的偏差变化趋势,虚线代表偏差为0的基准线:

绝对偏差折线图

ggplot(df_tidy, aes(x = param_id, y = deviation_abs, color = model, group = model)) +
  geom_point(size = 3) +  # 用点标记每个参数的偏差值
  geom_line(linewidth = 1) +  # 连线展示趋势
  geom_hline(yintercept = 0, linetype = "dashed", color = "gray50") +  # 基准线(偏差为0)
  labs(
    title = "探索模型与基准模型的绝对偏差",
    x = "参数序号",
    y = "绝对偏差 (探索模型值 - 基准模型值)",
    color = "探索模型"
  ) +
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5)) # 标题居中

相对偏差折线图(百分比)

如果想更清晰地看比例差异,可以用相对偏差:

ggplot(df_tidy, aes(x = param_id, y = deviation_rel, color = model, group = model)) +
  geom_point(size = 3) +
  geom_line(linewidth = 1) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "gray50") +
  labs(
    title = "探索模型与基准模型的相对偏差(百分比)",
    x = "参数序号",
    y = "相对偏差 (%)",
    color = "探索模型"
  ) +
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5))

3. 柱状图:对比单个参数的偏差

如果想更直观地对比同一参数下不同模型的偏差,可以用分组柱状图:

ggplot(df_tidy, aes(x = param_id, y = deviation_abs, fill = model)) +
  geom_col(position = position_dodge(width = 0.8), width = 0.7) +  # 分组柱状
  geom_hline(yintercept = 0, linetype = "dashed", color = "gray50") +
  labs(
    title = "各参数的绝对偏差对比(分组柱状图)",
    x = "参数序号",
    y = "绝对偏差",
    fill = "探索模型"
  ) +
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5))

这些图能帮你把枯燥的数值转化为直观的视觉信息,读者可以快速发现哪些模型在哪些参数上与基准差异最大~

内容的提问来源于stack exchange,提问作者Petr Palíšek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:46:51