feat(moe): MoE + MolT5 LLM 融合层、消融流水线

This commit is contained in:
Michelle0574 2026-06-18 08:40:19 +00:00
parent cd4534f05a
commit cd9166d63c
209 changed files with 15295 additions and 6305 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,118 +1,124 @@
import torch import torch
import torch.nn as nn import torch.nn as nn
import torch.nn.functional as F import torch.nn.functional as F
from typing import Dict from typing import Dict
class RegressionHead(nn.Module): class RegressionHead(nn.Module):
"""回归任务头:输出单个 float 值""" """回归任务头:输出单个 float 值"""
def __init__(self, in_dim: int, hidden_dim: int = 128, dropout: float = 0.1) -> None: def __init__(self, in_dim: int, hidden_dim: int = 128, dropout: float = 0.1) -> None:
super().__init__() super().__init__()
self.net = nn.Sequential( self.net = nn.Sequential(
nn.Linear(in_dim, hidden_dim), nn.Linear(in_dim, hidden_dim),
nn.ReLU(), nn.ReLU(),
nn.Dropout(dropout), nn.Dropout(dropout),
nn.Linear(hidden_dim, 1), nn.Linear(hidden_dim, 1),
) )
def forward(self, x: torch.Tensor) -> torch.Tensor: def forward(self, x: torch.Tensor) -> torch.Tensor:
"""[B, in_dim] -> [B, 1]""" """[B, in_dim] -> [B, 1]"""
return self.net(x) return self.net(x)
class ClassificationHead(nn.Module): class ClassificationHead(nn.Module):
"""分类任务头:输出 logits""" """分类任务头:输出 logits"""
def __init__( def __init__(
self, in_dim: int, num_classes: int, hidden_dim: int = 128, dropout: float = 0.1 self, in_dim: int, num_classes: int, hidden_dim: int = 128, dropout: float = 0.1
) -> None: ) -> None:
super().__init__() super().__init__()
self.net = nn.Sequential( self.net = nn.Sequential(
nn.Linear(in_dim, hidden_dim), nn.Linear(in_dim, hidden_dim),
nn.ReLU(), nn.ReLU(),
nn.Dropout(dropout), nn.Dropout(dropout),
nn.Linear(hidden_dim, num_classes), nn.Linear(hidden_dim, num_classes),
) )
def forward(self, x: torch.Tensor) -> torch.Tensor: def forward(self, x: torch.Tensor) -> torch.Tensor:
"""[B, in_dim] -> [B, num_classes] (logits)""" """[B, in_dim] -> [B, num_classes] (logits)"""
return self.net(x) return self.net(x)
class DistributionHead(nn.Module): class DistributionHead(nn.Module):
"""分布任务头:输出和为 1 的概率分布(用于 Biodistribution""" """分布任务头:输出和为 1 的概率分布(用于 Biodistribution"""
def __init__( def __init__(
self, in_dim: int, num_outputs: int, hidden_dim: int = 128, dropout: float = 0.1 self, in_dim: int, num_outputs: int, hidden_dim: int = 128, dropout: float = 0.1
) -> None: ) -> None:
super().__init__() super().__init__()
self.net = nn.Sequential( self.net = nn.Sequential(
nn.Linear(in_dim, hidden_dim), nn.Linear(in_dim, hidden_dim),
nn.ReLU(), nn.ReLU(),
nn.Dropout(dropout), nn.Dropout(dropout),
nn.Linear(hidden_dim, num_outputs), nn.Linear(hidden_dim, num_outputs),
) )
def forward(self, x: torch.Tensor) -> torch.Tensor: def forward(self, x: torch.Tensor) -> torch.Tensor:
"""[B, in_dim] -> [B, num_outputs] (softmax, sum=1)""" """[B, in_dim] -> [B, num_outputs] (softmax, sum=1)"""
logits = self.net(x) logits = self.net(x)
return F.softmax(logits, dim=-1) return F.softmax(logits, dim=-1)
class MultiTaskHead(nn.Module): class MultiTaskHead(nn.Module):
""" """
多任务预测头根据任务配置自动创建对应的子头 多任务预测头根据任务配置自动创建对应的子头
输出: 输出:
- size: [B, 1] 回归 - size: [B, 1] 回归
- pdi: [B, 4] 分类 logits - pdi: [B, 4] 分类 logits
- ee: [B, 3] 分类 logits - ee: [B, 3] 分类 logits
- delivery: [B, 1] 回归 - delivery: [B, 1] 回归
- biodist: [B, 7] softmax 分布 - biodist: [B, 7] softmax 分布
- toxic: [B, 2] 二分类 logits - toxic: [B, 2] 二分类 logits
""" """
def __init__(self, in_dim: int, hidden_dim: int = 128, dropout: float = 0.1) -> None: def __init__(self, in_dim: int, hidden_dim: int = 128, dropout: float = 0.1) -> None:
super().__init__() super().__init__()
# size: 回归 (log-transformed) # size: 回归 (log-transformed)
self.size_head = RegressionHead(in_dim, hidden_dim, dropout) self.size_head = RegressionHead(in_dim, hidden_dim, dropout)
# PDI: 4 分类 # PDI: 4 分类
self.pdi_head = ClassificationHead(in_dim, num_classes=4, hidden_dim=hidden_dim, dropout=dropout) self.pdi_head = ClassificationHead(in_dim, num_classes=4, hidden_dim=hidden_dim, dropout=dropout)
# Encapsulation Efficiency: 3 分类 # Encapsulation Efficiency: 3 分类
self.ee_head = ClassificationHead(in_dim, num_classes=3, hidden_dim=hidden_dim, dropout=dropout) self.ee_head = ClassificationHead(in_dim, num_classes=3, hidden_dim=hidden_dim, dropout=dropout)
# quantified_delivery: 回归 (z-scored) # quantified_delivery: 回归 (z-scored)
self.delivery_head = RegressionHead(in_dim, hidden_dim, dropout) self.delivery_head = RegressionHead(in_dim, hidden_dim, dropout)
# Biodistribution: 7 输出softmax (sum=1) # Biodistribution: 7 输出softmax (sum=1)
self.biodist_head = DistributionHead(in_dim, num_outputs=7, hidden_dim=hidden_dim, dropout=dropout) self.biodist_head = DistributionHead(in_dim, num_outputs=7, hidden_dim=hidden_dim, dropout=dropout)
# toxic: 二分类 # toxic: 二分类
self.toxic_head = ClassificationHead(in_dim, num_classes=2, hidden_dim=hidden_dim, dropout=dropout) self.toxic_head = ClassificationHead(in_dim, num_classes=2, hidden_dim=hidden_dim, dropout=dropout)
def forward(self, x: torch.Tensor) -> Dict[str, torch.Tensor]: # 不确定性加权Kendall 2018每个任务一个可学习 log σ²,初始 0
""" self.log_vars = nn.ParameterDict({
Args: t: nn.Parameter(torch.zeros(()))
x: [B, in_dim] fusion 层输出 for t in ["size", "delivery", "pdi", "ee", "toxic", "biodist"]
})
Returns:
Dict with keys: def forward(self, x: torch.Tensor) -> Dict[str, torch.Tensor]:
- "size": [B, 1] """
- "pdi": [B, 4] logits Args:
- "ee": [B, 3] logits x: [B, in_dim] fusion 层输出
- "delivery": [B, 1]
- "biodist": [B, 7] probabilities (sum=1) Returns:
- "toxic": [B, 2] logits Dict with keys:
""" - "size": [B, 1]
return { - "pdi": [B, 4] logits
"size": self.size_head(x), - "ee": [B, 3] logits
"pdi": self.pdi_head(x), - "delivery": [B, 1]
"ee": self.ee_head(x), - "biodist": [B, 7] probabilities (sum=1)
"delivery": self.delivery_head(x), - "toxic": [B, 2] logits
"biodist": self.biodist_head(x), """
"toxic": self.toxic_head(x), return {
} "size": self.size_head(x),
"pdi": self.pdi_head(x),
"ee": self.ee_head(x),
"delivery": self.delivery_head(x),
"biodist": self.biodist_head(x),
"toxic": self.toxic_head(x),
}

View File

@ -1,111 +1,152 @@
import torch import torch
import torch.nn as nn import torch.nn as nn
import torch.nn.functional as F import torch.nn.functional as F
from typing import Dict, Literal, Tuple, Union from typing import Dict, List, Literal, Optional, Tuple, Union
PoolingStrategy = Literal["concat", "avg", "max", "attention"] PoolingStrategy = Literal["concat", "avg", "max", "attention"]
class FusionLayer(nn.Module): class FusionLayer(nn.Module):
""" """
将多个 token 融合成单个向量 将多个 token 融合成单个向量
输入: Dict[str, Tensor] [B, n_tokens, d_model] 输入: Dict[str, Tensor] [B, n_tokens, d_model]
输出: [B, fusion_dim] 输出: [B, fusion_dim]
策略: 策略:
- concat: [B, n_tokens, d_model] -> [B, n_tokens * d_model] - concat: [B, n_tokens, d_model] -> [B, n_tokens * d_model]
- avg: [B, n_tokens, d_model] -> [B, d_model] - avg: [B, n_tokens, d_model] -> [B, d_model]
- max: [B, n_tokens, d_model] -> [B, d_model] - max: [B, n_tokens, d_model] -> [B, d_model]
- attention: [B, n_tokens, d_model] -> [B, d_model] (learnable attention pooling) - attention: [B, n_tokens, d_model] -> [B, d_model] (learnable attention pooling)
""" """
def __init__( def __init__(
self, self,
d_model: int, d_model: int,
n_tokens: int, n_tokens: int,
strategy: PoolingStrategy = "attention", strategy: PoolingStrategy = "attention",
) -> None: ) -> None:
""" """
Args: Args:
d_model: 每个 token 的维度 d_model: 每个 token 的维度
n_tokens: token 数量 8 n_tokens: token 数量 8
strategy: 融合策略 strategy: 融合策略
""" """
super().__init__() super().__init__()
self.d_model = d_model self.d_model = d_model
self.n_tokens = n_tokens self.n_tokens = n_tokens
self.strategy = strategy self.strategy = strategy
if strategy == "concat": if strategy == "concat":
self.fusion_dim = n_tokens * d_model self.fusion_dim = n_tokens * d_model
else: else:
self.fusion_dim = d_model self.fusion_dim = d_model
# Attention pooling: learnable query # Attention pooling: learnable query
if strategy == "attention": if strategy == "attention":
self.attn_query = nn.Parameter(torch.randn(1, 1, d_model)) self.attn_query = nn.Parameter(torch.randn(1, 1, d_model))
self.attn_proj = nn.Linear(d_model, d_model) self.attn_proj = nn.Linear(d_model, d_model)
def forward( def forward(
self, self,
x: Union[Dict[str, torch.Tensor], torch.Tensor], x: Union[Dict[str, torch.Tensor], torch.Tensor],
return_attn_weights: bool = False, return_attn_weights: bool = False,
) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: ) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]:
""" """
Args: Args:
x: Dict[str, Tensor] 每个 [B, d_model]或已 stack [B, n_tokens, d_model] x: Dict[str, Tensor] 每个 [B, d_model]或已 stack [B, n_tokens, d_model]
return_attn_weights: 若为 True 且策略为 attention额外返回 attn_weights [B, n_tokens] return_attn_weights: 若为 True 且策略为 attention额外返回 attn_weights [B, n_tokens]
Returns: Returns:
return_attn_weights=False: [B, fusion_dim] return_attn_weights=False: [B, fusion_dim]
return_attn_weights=True: ([B, fusion_dim], [B, n_tokens]) return_attn_weights=True: ([B, fusion_dim], [B, n_tokens])
""" """
if isinstance(x, dict): if isinstance(x, dict):
x = torch.stack(list(x.values()), dim=1) x = torch.stack(list(x.values()), dim=1)
if self.strategy == "concat": if self.strategy == "concat":
out = x.flatten(start_dim=1) out = x.flatten(start_dim=1)
return (out, None) if return_attn_weights else out return (out, None) if return_attn_weights else out
elif self.strategy == "avg": elif self.strategy == "avg":
out = x.mean(dim=1) out = x.mean(dim=1)
return (out, None) if return_attn_weights else out return (out, None) if return_attn_weights else out
elif self.strategy == "max": elif self.strategy == "max":
out = x.max(dim=1).values out = x.max(dim=1).values
return (out, None) if return_attn_weights else out return (out, None) if return_attn_weights else out
elif self.strategy == "attention": elif self.strategy == "attention":
return self._attention_pooling(x, return_attn_weights) return self._attention_pooling(x, return_attn_weights)
else: else:
raise ValueError(f"Unknown strategy: {self.strategy}") raise ValueError(f"Unknown strategy: {self.strategy}")
def _attention_pooling( def _attention_pooling(
self, x: torch.Tensor, return_attn_weights: bool = False, self, x: torch.Tensor, return_attn_weights: bool = False,
) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: ) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]:
""" """
Attention pooling: 用可学习 query tokens 做加权求和 Attention pooling: 用可学习 query tokens 做加权求和
Args: Args:
x: [B, n_tokens, d_model] x: [B, n_tokens, d_model]
return_attn_weights: 是否返回权重 return_attn_weights: 是否返回权重
Returns: Returns:
return_attn_weights=False: [B, d_model] return_attn_weights=False: [B, d_model]
return_attn_weights=True: ([B, d_model], [B, n_tokens]) return_attn_weights=True: ([B, d_model], [B, n_tokens])
""" """
B = x.size(0) B = x.size(0)
query = self.attn_query.expand(B, -1, -1) query = self.attn_query.expand(B, -1, -1)
keys = self.attn_proj(x) keys = self.attn_proj(x)
scores = torch.bmm(query, keys.transpose(1, 2)) / (self.d_model ** 0.5) scores = torch.bmm(query, keys.transpose(1, 2)) / (self.d_model ** 0.5)
attn_weights = F.softmax(scores, dim=-1) # [B, 1, n_tokens] attn_weights = F.softmax(scores, dim=-1) # [B, 1, n_tokens]
out = torch.bmm(attn_weights, x).squeeze(1) # [B, d_model] out = torch.bmm(attn_weights, x).squeeze(1) # [B, d_model]
if return_attn_weights: if return_attn_weights:
return out, attn_weights.squeeze(1) # [B, n_tokens] return out, attn_weights.squeeze(1) # [B, n_tokens]
return out return out
class ResidualConcatFusion(nn.Module):
"""对真实 token 做 attention pooling再用零初始化门把 MoE/LLM 旁路以残差方式加入。
g_moe / g_llm 初始为 0 +moe/+llm 起点严格等于 baseline
旁路只有确实有用时才会被训练打开从机制上保证加了不会更差
"""
def __init__(self, d_model: int, strategy: PoolingStrategy = "attention") -> None:
super().__init__()
if strategy == "concat":
raise ValueError("ResidualConcatFusion 不支持 concattoken 数随开关变化)")
self.d_model = d_model
self.pool = FusionLayer(d_model=d_model, n_tokens=1, strategy=strategy)
self.fusion_dim = self.pool.fusion_dim
# 零初始化门控(可学习标量),旁路初始不参与
self.g_moe = nn.Parameter(torch.zeros(()))
self.g_llm = nn.Parameter(torch.zeros(()))
def forward(
self,
chem: torch.Tensor,
tab: torch.Tensor,
f_moe: Optional[torch.Tensor] = None,
f_llm: Optional[torch.Tensor] = None,
return_attn_weights: bool = False,
) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]:
# 只对真实 tokenchem + tab做注意力池化旁路不参与 softmax 竞争
seq = torch.cat([chem, tab], dim=1) # [B, n_chem + n_cond, d_model]
pooled = self.pool(seq, return_attn_weights=return_attn_weights)
if return_attn_weights:
pooled, attn = pooled
out = pooled
if f_moe is not None:
out = out + self.g_moe * f_moe # 残差 + 零初始化门
if f_llm is not None:
out = out + self.g_llm * f_llm
return (out, attn) if return_attn_weights else out

View File

@ -0,0 +1,104 @@
"""LLM 分子特征分支:用 MolT5 直接编码 SMILES 文本。"""
import os
from typing import Dict, List, Optional
import torch
import torch.nn as nn
# 权重默认路径,可用环境变量 MOLT5_PATH 覆盖
DEFAULT_MOLT5_PATH = os.environ.get("MOLT5_PATH", "models/molt5-base")
class LLMPromptEncoder(nn.Module):
"""用 MolT5 编码 SMILES 文本,输出分子特征 F_llm [B, d_model]。
- 冻结 encoder 对每个 SMILES 缓存其句向量避免重复前向降方差提速
- use_lora=True encoder 可训练LoRA不缓存
"""
def __init__(
self,
d_model: int,
n_chem_tokens: int = 4,
n_cond_tokens: int = 4,
model_name_or_path: str = DEFAULT_MOLT5_PATH,
freeze: bool = True,
use_lora: bool = False,
lora_r: int = 8,
lora_alpha: int = 16,
lora_dropout: float = 0.05,
max_length: int = 128,
) -> None:
super().__init__()
from transformers import AutoTokenizer, T5EncoderModel
self.use_lora = use_lora
self.max_length = max_length
self.tokenizer = AutoTokenizer.from_pretrained(model_name_or_path)
self.encoder = T5EncoderModel.from_pretrained(model_name_or_path)
self.hidden_size = self.encoder.config.d_model
if use_lora:
self._apply_lora(lora_r, lora_alpha, lora_dropout)
elif freeze:
for p in self.encoder.parameters():
p.requires_grad = False
self._frozen = freeze and not use_lora
self.proj_down = nn.Sequential(
nn.Linear(self.hidden_size, d_model), nn.LayerNorm(d_model)
)
# 冻结特征缓存smiles -> [H]CPU
self._cache: Dict[str, torch.Tensor] = {}
def _apply_lora(self, r: int, alpha: int, dropout: float) -> None:
from peft import LoraConfig, get_peft_model
for p in self.encoder.parameters():
p.requires_grad = False
cfg = LoraConfig(
r=r, lora_alpha=alpha, lora_dropout=dropout,
target_modules=["q", "k", "v", "o"], bias="none",
)
self.encoder = get_peft_model(self.encoder, cfg)
def _mean_pool(self, last_hidden: torch.Tensor, mask: torch.Tensor) -> torch.Tensor:
m = mask.unsqueeze(-1).float() # [B, L, 1]
return (last_hidden * m).sum(1) / m.sum(1).clamp(min=1e-6)
@torch.no_grad()
def _encode_frozen(self, smiles: List[str], device: torch.device) -> torch.Tensor:
missing = [s for s in smiles if s not in self._cache]
if missing:
uniq = list(dict.fromkeys(missing))
for i in range(0, len(uniq), 256):
chunk = uniq[i:i + 256]
enc = self.tokenizer(
chunk, padding=True, truncation=True,
max_length=self.max_length, return_tensors="pt",
).to(device)
out = self.encoder(**enc).last_hidden_state
pooled = self._mean_pool(out, enc["attention_mask"])
for s, v in zip(chunk, pooled):
self._cache[s] = v.cpu()
return torch.stack([self._cache[s] for s in smiles]).to(device)
def _encode_trainable(self, smiles: List[str], device: torch.device) -> torch.Tensor:
enc = self.tokenizer(
list(smiles), padding=True, truncation=True,
max_length=self.max_length, return_tensors="pt",
).to(device)
out = self.encoder(**enc).last_hidden_state
return self._mean_pool(out, enc["attention_mask"])
def forward(self, smiles: List[str], tab: Optional[torch.Tensor] = None) -> torch.Tensor:
"""Args: smiles [B] SMILES 字符串列表。Returns: [B, d_model]。"""
device = self.proj_down[0].weight.device
feat = self._encode_frozen(smiles, device) if self._frozen \
else self._encode_trainable(smiles, device)
return self.proj_down(feat)
def clear_cache(self) -> None:
self._cache.clear()

View File

@ -0,0 +1,123 @@
"""Set Transformer 集合编码器。
输入/输出形状均为 [B, n_tokens, d_model]
n_tokens 可变支持 3 4
"""
import torch
import torch.nn as nn
class MAB(nn.Module):
"""多头注意力块MAB(Q, K) = LN(H + FFN(H))H = LN(Q + MultiHeadAttn(Q, K, K))。"""
def __init__(self, d_model: int, num_heads: int, dropout: float = 0.1, ln: bool = True) -> None:
super().__init__()
assert d_model % num_heads == 0, "d_model 必须能被 num_heads 整除"
self.attn = nn.MultiheadAttention(
d_model, num_heads, dropout=dropout, batch_first=True
)
self.norm1 = nn.LayerNorm(d_model) if ln else nn.Identity()
self.norm2 = nn.LayerNorm(d_model) if ln else nn.Identity()
self.ffn = nn.Sequential(
nn.Linear(d_model, d_model * 4),
nn.GELU(),
nn.Dropout(dropout),
nn.Linear(d_model * 4, d_model),
nn.Dropout(dropout),
)
def forward(self, q: torch.Tensor, k: torch.Tensor) -> torch.Tensor:
"""
Args:
q: [B, n_q, d_model]
k: [B, n_k, d_model]
Returns:
[B, n_q, d_model]
"""
attn_out, _ = self.attn(q, k, k)
h = self.norm1(q + attn_out)
return self.norm2(h + self.ffn(h))
class SAB(nn.Module):
"""集合自注意力块SAB(X) = MAB(X, X)。"""
def __init__(self, d_model: int, num_heads: int, dropout: float = 0.1, ln: bool = True) -> None:
super().__init__()
self.mab = MAB(d_model, num_heads, dropout, ln)
def forward(self, x: torch.Tensor) -> torch.Tensor:
"""[B, n, d_model] -> [B, n, d_model]"""
return self.mab(x, x)
class ISAB(nn.Module):
"""诱导点集合注意力块:用 m 个可学习诱导点降低大集合的注意力复杂度。"""
def __init__(
self,
d_model: int,
num_heads: int,
num_inducing: int = 16,
dropout: float = 0.1,
ln: bool = True,
) -> None:
super().__init__()
# 可学习诱导点
self.inducing = nn.Parameter(torch.empty(1, num_inducing, d_model))
nn.init.xavier_uniform_(self.inducing)
self.mab_in = MAB(d_model, num_heads, dropout, ln)
self.mab_out = MAB(d_model, num_heads, dropout, ln)
def forward(self, x: torch.Tensor) -> torch.Tensor:
"""[B, n, d_model] -> [B, n, d_model]"""
inducing = self.inducing.expand(x.size(0), -1, -1) # [B, m, d_model]
h = self.mab_in(inducing, x) # [B, m, d_model]
return self.mab_out(x, h) # [B, n, d_model]
class SetTransformer(nn.Module):
"""对化学 token 集合做 N 层集合自注意力,形状保持 [B, n_tokens, d_model]。"""
def __init__(
self,
d_model: int,
num_heads: int = 8,
n_layers: int = 4,
dropout: float = 0.1,
block: str = "sab",
num_inducing: int = 16,
ln: bool = True,
) -> None:
"""
Args:
d_model: token 维度
num_heads: 注意力头数d_head = d_model / num_heads
n_layers: 集合注意力层数
dropout: dropout 比例
block: 注意力块类型"sab"全自注意力 "isab"诱导点
num_inducing: ISAB 的诱导点数量block="isab" 时生效
ln: 是否使用 LayerNorm
"""
super().__init__()
self.block_type = block
self.layers = nn.ModuleList()
for _ in range(n_layers):
if block == "isab":
self.layers.append(ISAB(d_model, num_heads, num_inducing, dropout, ln))
else:
self.layers.append(SAB(d_model, num_heads, dropout, ln))
def forward(self, x: torch.Tensor) -> torch.Tensor:
"""
Args:
x: [B, n_tokens, d_model] 化学 token 集合
Returns:
[B, n_tokens, d_model] 集合编码后的 token
"""
for layer in self.layers:
x = layer(x)
return x

View File

@ -5,14 +5,21 @@ import torch.nn as nn
from typing import Dict, List, Optional, Literal from typing import Dict, List, Optional, Literal
from lnp_ml.modeling.encoders import CachedRDKitEncoder, CachedMPNNEncoder from lnp_ml.modeling.encoders import CachedRDKitEncoder, CachedMPNNEncoder
from lnp_ml.modeling.layers import TokenProjector, CrossModalAttention, FusionLayer, MoEBlock from lnp_ml.modeling.layers import (
TokenProjector,
SetTransformer,
ResidualConcatFusion,
MoEBlock,
LLMPromptEncoder,
)
from lnp_ml.modeling.layers.llm_prompt import DEFAULT_MOLT5_PATH
from lnp_ml.modeling.heads import MultiTaskHead from lnp_ml.modeling.heads import MultiTaskHead
PoolingStrategy = Literal["concat", "avg", "max", "attention"] PoolingStrategy = Literal["attention", "avg", "max"]
# Token 维度配置(根据 ARCHITECTURE.md # Token 维度配置
DEFAULT_INPUT_DIMS = { DEFAULT_INPUT_DIMS = {
# Channel A: 化学特征 # Channel A: 化学特征
"mpnn": 600, # D-MPNN embedding "mpnn": 600, # D-MPNN embedding
@ -26,8 +33,21 @@ DEFAULT_INPUT_DIMS = {
"exp": 32, # 实验条件 one-hot "exp": 32, # 实验条件 one-hot
} }
# Token 顺序(前 4 个为 Channel A后 4 个为 Channel B # 化学 / 配方 token 的键顺序
TOKEN_ORDER = ["mpnn", "morgan", "maccs", "desc", "comp", "phys", "help", "exp"] CHEM_KEYS_WITH_MPNN = ["mpnn", "morgan", "maccs", "desc"]
CHEM_KEYS_NO_MPNN = ["morgan", "maccs", "desc"]
TAB_KEYS = ["comp", "phys", "help", "exp"]
# backbone 权重前缀(用于预训练加载与导出)
BACKBONE_PREFIXES = (
"token_projector.",
"set_transformer.",
"fusion.",
"moe.",
"llm_prompt.",
)
# 冻结的 MolT5 encoder 权重前缀,不纳入 backbone由本地权重加载不进 checkpoint
LLM_FROZEN_PREFIX = "llm_prompt.encoder."
class LNPModel(nn.Module): class LNPModel(nn.Module):
@ -37,37 +57,47 @@ class LNPModel(nn.Module):
架构流程: 架构流程:
1. Encoders: SMILES -> 化学特征; tabular -> 配方/实验特征 1. Encoders: SMILES -> 化学特征; tabular -> 配方/实验特征
2. TokenProjector: 统一到 d_model 2. TokenProjector: 统一到 d_model
3. Stack: [B, 8, d_model] 3. SetTransformer: 对化学 token 集合做置换等变编码 -> chem'
4. CrossModalAttention: Channel A (化学) <-> Channel B (配方/实验) 4. MoE (可选): router tabexpert chem' -> F_moe
5. FusionLayer: [B, 8, d_model] -> [B, fusion_dim] 5. LLM (可选): chem'/tab 注入 MolT5 prompt -> F_llm
6. MultiTaskHead: 多任务预测 6. ResidualConcatFusion: 拼接 chem'/tab/F_moe/F_llm -> attention pooling
7. MultiTaskHead: 多任务预测
""" """
def __init__( def __init__(
self, self,
# 模型维度 # 模型维度
d_model: int = 256, d_model: int = 256,
# Cross attention # Set Transformer
num_heads: int = 8, num_heads: int = 8,
n_attn_layers: int = 4, n_attn_layers: int = 4,
set_transformer_block: str = "sab",
# Fusion # Fusion
fusion_strategy: PoolingStrategy = "attention", fusion_strategy: PoolingStrategy = "attention",
# Head # Head
head_hidden_dim: int = 128, head_hidden_dim: int = 128,
# Dropout # Dropout
dropout: float = 0.1, dropout: float = 0.1,
# MPNN encoder (可选,如果不用 MPNN 可以设为 None) # MPNN encoder
mpnn_checkpoint: Optional[str] = None, mpnn_checkpoint: Optional[str] = None,
mpnn_ensemble_paths: Optional[List[str]] = None, mpnn_ensemble_paths: Optional[List[str]] = None,
mpnn_device: str = "cpu", mpnn_device: str = "cpu",
# 输入维度配置 # 输入维度配置
input_dims: Optional[Dict[str, int]] = None, input_dims: Optional[Dict[str, int]] = None,
# ============ MoE 相关(新增) ============ # ============ MoE 相关 ============
use_moe: bool = False, use_moe: bool = False,
moe_n_experts: int = 4, moe_n_experts: int = 4,
moe_top_k: int = 2, moe_top_k: int = 2,
moe_expert_hidden_mult: int = 2, moe_expert_hidden_mult: int = 2,
moe_jitter_noise: float = 0.0, moe_jitter_noise: float = 0.0,
# ============ LLM 相关 ============
use_llm: bool = False,
llm_model_path: str = DEFAULT_MOLT5_PATH,
llm_freeze: bool = True,
llm_use_lora: bool = False,
llm_lora_r: int = 8,
llm_lora_alpha: int = 16,
llm_lora_dropout: float = 0.05,
) -> None: ) -> None:
super().__init__() super().__init__()
@ -76,10 +106,7 @@ class LNPModel(nn.Module):
self.use_mpnn = mpnn_checkpoint is not None or mpnn_ensemble_paths is not None self.use_mpnn = mpnn_checkpoint is not None or mpnn_ensemble_paths is not None
# ============ Encoders ============ # ============ Encoders ============
# RDKit encoder (always used)
self.rdkit_encoder = CachedRDKitEncoder() self.rdkit_encoder = CachedRDKitEncoder()
# MPNN encoder (optional)
if self.use_mpnn: if self.use_mpnn:
self.mpnn_encoder = CachedMPNNEncoder( self.mpnn_encoder = CachedMPNNEncoder(
checkpoint_path=mpnn_checkpoint, checkpoint_path=mpnn_checkpoint,
@ -90,27 +117,28 @@ class LNPModel(nn.Module):
self.mpnn_encoder = None self.mpnn_encoder = None
# ============ Token Projector ============ # ============ Token Projector ============
# 根据是否使用 MPNN 调整输入维度
proj_input_dims = {k: v for k, v in self.input_dims.items()} proj_input_dims = {k: v for k, v in self.input_dims.items()}
if not self.use_mpnn: if not self.use_mpnn:
proj_input_dims.pop("mpnn", None) proj_input_dims.pop("mpnn", None)
self.token_projector = TokenProjector( self.token_projector = TokenProjector(
input_dims=proj_input_dims, input_dims=proj_input_dims,
d_model=d_model, d_model=d_model,
dropout=dropout, dropout=dropout,
) )
# ============ Cross Modal Attention ============ # token 顺序与化学侧 token 数
n_tokens = 8 if self.use_mpnn else 7 self.chem_keys = CHEM_KEYS_WITH_MPNN if self.use_mpnn else CHEM_KEYS_NO_MPNN
split_idx = 4 if self.use_mpnn else 3 # Channel A 的 token 数量 self.tab_keys = TAB_KEYS
self.token_order = self.chem_keys + self.tab_keys
self.split_idx = len(self.chem_keys)
self.cross_attention = CrossModalAttention( # ============ Set Transformer ============
self.set_transformer = SetTransformer(
d_model=d_model, d_model=d_model,
num_heads=num_heads, num_heads=num_heads,
n_layers=n_attn_layers, n_layers=n_attn_layers,
split_idx=split_idx,
dropout=dropout, dropout=dropout,
block=set_transformer_block,
) )
# ============ MoE Block (可选) ============ # ============ MoE Block (可选) ============
@ -119,24 +147,35 @@ class LNPModel(nn.Module):
if use_moe: if use_moe:
self.moe = MoEBlock( self.moe = MoEBlock(
d_model=d_model, d_model=d_model,
n_chem_tokens=split_idx, n_chem_tokens=self.split_idx,
n_experts=moe_n_experts, n_experts=moe_n_experts,
top_k=moe_top_k, top_k=moe_top_k,
expert_hidden_mult=moe_expert_hidden_mult, expert_hidden_mult=moe_expert_hidden_mult,
dropout=dropout, dropout=dropout,
jitter_noise=moe_jitter_noise, jitter_noise=moe_jitter_noise,
) )
n_fusion_tokens = n_tokens + 1 # 多一个 F_moe token
else: else:
self.moe = None self.moe = None
n_fusion_tokens = n_tokens
# ============ Fusion Layer ============ # ============ LLM Prompt (可选) ============
self.fusion = FusionLayer( self.use_llm = use_llm
d_model=d_model, if use_llm:
n_tokens=n_fusion_tokens, self.llm_prompt = LLMPromptEncoder(
strategy=fusion_strategy, d_model=d_model,
) n_chem_tokens=self.split_idx,
n_cond_tokens=len(self.tab_keys),
model_name_or_path=llm_model_path,
freeze=llm_freeze,
use_lora=llm_use_lora,
lora_r=llm_lora_r,
lora_alpha=llm_lora_alpha,
lora_dropout=llm_lora_dropout,
)
else:
self.llm_prompt = None
# ============ Residual Concat + Fusion ============
self.fusion = ResidualConcatFusion(d_model=d_model, strategy=fusion_strategy)
# ============ Multi-Task Head ============ # ============ Multi-Task Head ============
self.head = MultiTaskHead( self.head = MultiTaskHead(
@ -151,70 +190,51 @@ class LNPModel(nn.Module):
tabular: Dict[str, torch.Tensor], tabular: Dict[str, torch.Tensor],
) -> torch.Tensor: ) -> torch.Tensor:
""" """
内部方法编码 SMILES tabular返回 stacked tokens 编码 SMILES tabular返回 stacked tokens
Returns: Returns:
stacked: [B, n_tokens, d_model] stacked: [B, n_tokens, d_model]顺序为 chem 在前tab 在后
""" """
# 获取目标设备(从 tabular 数据推断)
device = tabular["comp"].device device = tabular["comp"].device
# 1. Encode SMILES
rdkit_features = self.rdkit_encoder(smiles) # {"morgan", "maccs", "desc"}
# 2. 合并所有特征 rdkit_features = self.rdkit_encoder(smiles)
all_features: Dict[str, torch.Tensor] = {} all_features: Dict[str, torch.Tensor] = {}
# MPNN 特征(如果启用)
if self.use_mpnn: if self.use_mpnn:
mpnn_features = self.mpnn_encoder(smiles) mpnn_features = self.mpnn_encoder(smiles)
all_features["mpnn"] = mpnn_features["mpnn"].to(device) all_features["mpnn"] = mpnn_features["mpnn"].to(device)
# RDKit 特征(移到正确设备)
all_features["morgan"] = rdkit_features["morgan"].to(device) all_features["morgan"] = rdkit_features["morgan"].to(device)
all_features["maccs"] = rdkit_features["maccs"].to(device) all_features["maccs"] = rdkit_features["maccs"].to(device)
all_features["desc"] = rdkit_features["desc"].to(device) all_features["desc"] = rdkit_features["desc"].to(device)
# Tabular 特征(已在正确设备上)
all_features["comp"] = tabular["comp"] all_features["comp"] = tabular["comp"]
all_features["phys"] = tabular["phys"] all_features["phys"] = tabular["phys"]
all_features["help"] = tabular["help"] all_features["help"] = tabular["help"]
all_features["exp"] = tabular["exp"] all_features["exp"] = tabular["exp"]
# 3. Token Projector: 统一维度 projected = self.token_projector(all_features)
projected = self.token_projector(all_features) # Dict[str, [B, d_model]] stacked = torch.stack([projected[k] for k in self.token_order], dim=1)
# 4. Stack tokens: [B, n_tokens, d_model]
if self.use_mpnn:
token_order = ["mpnn", "morgan", "maccs", "desc", "comp", "phys", "help", "exp"]
else:
token_order = ["morgan", "maccs", "desc", "comp", "phys", "help", "exp"]
stacked = torch.stack([projected[k] for k in token_order], dim=1)
return stacked return stacked
def _attended_with_moe(self, stacked: torch.Tensor) -> torch.Tensor: def _backbone_from_stacked(
""" self, stacked: torch.Tensor, smiles: Optional[List[str]] = None
Cross-attention + 可选 MoE 旁路 fusion 输入序列 ) -> torch.Tensor:
chem = stacked[:, : self.split_idx, :]
tab = stacked[:, self.split_idx :, :]
- 不启用 MoE 返回 [B, n_tokens, d]与原行为一致 chem = self.set_transformer(chem) # chem'
- 启用 MoE 在最后追加一个 F_moe token返回 [B, n_tokens + 1, d]
副作用: f_moe = None
把本次 forward MoE 副产物aux loss / gates / probs写到
self._last_moe_extrastrainer 端通过 get_last_moe_extras() 读取
"""
attended = self.cross_attention(stacked)
if self.moe is not None: if self.moe is not None:
split = self.cross_attention.split_idx f_moe, extras = self.moe(chem, tab)
chem_prime = attended[:, :split, :]
tab_prime = attended[:, split:, :]
F_moe, extras = self.moe(chem_prime, tab_prime)
self._last_moe_extras = extras self._last_moe_extras = extras
attended = torch.cat([attended, F_moe.unsqueeze(1)], dim=1)
else: else:
self._last_moe_extras = None self._last_moe_extras = None
return attended
f_llm = None
if self.llm_prompt is not None and smiles is not None:
f_llm = self.llm_prompt(smiles)
return self.fusion(chem, tab, f_moe=f_moe, f_llm=f_llm)
def forward_from_projected( def forward_from_projected(
self, self,
@ -225,15 +245,13 @@ class LNPModel(nn.Module):
从已投影的 stacked tokens 开始 forward用于 Captum 归因 从已投影的 stacked tokens 开始 forward用于 Captum 归因
Args: Args:
stacked: [B, n_tokens, d_model] TokenProjector 输出后 stack 的张量 stacked: [B, n_tokens, d_model]
task: 指定单任务名 ("size", "pdi", "ee", "delivery", "biodist", "toxic") task: 单任务名None 时返回 delivery head 输出
若为 None返回 delivery head 的标量输出
Returns: Returns:
[B, 1] [B, num_classes] 对应任务的预测输出 对应任务的预测输出
""" """
attended = self._attended_with_moe(stacked) fused = self._backbone_from_stacked(stacked)
fused = self.fusion(attended)
if task is None: if task is None:
task = "delivery" task = "delivery"
@ -259,19 +277,10 @@ class LNPModel(nn.Module):
用原始特征替换 base_projected 中指定 token 的投影然后 forward 用原始特征替换 base_projected 中指定 token 的投影然后 forward
用于对单个 token 内部特征做 Captum 归因 desc 210 用于对单个 token 内部特征做 Captum 归因 desc 210
Args:
raw_feature: [B, input_dim] 某个 token 的原始特征
feature_key: token 名称 "desc"
base_projected: [B, n_tokens, d_model] 其他 token 已投影好的张量
task: 任务名
Returns:
对应任务的预测输出
""" """
projected = self.token_projector.projectors[feature_key](raw_feature) projected = self.token_projector.projectors[feature_key](raw_feature)
gate = torch.sigmoid(self.token_projector.weights[feature_key]) gate = torch.sigmoid(self.token_projector.weights[feature_key])
projected = projected * gate # [B, d_model] projected = projected * gate
token_order = list(self.token_projector.keys) token_order = list(self.token_projector.keys)
token_idx = token_order.index(feature_key) token_idx = token_order.index(feature_key)
@ -286,38 +295,16 @@ class LNPModel(nn.Module):
smiles: List[str], smiles: List[str],
tabular: Dict[str, torch.Tensor], tabular: Dict[str, torch.Tensor],
) -> torch.Tensor: ) -> torch.Tensor:
""" """Backbone forward编码 -> 投影 -> set transformer -> (MoE/LLM) -> 融合。"""
Backbone forward编码 -> 投影 -> 注意力 -> (可选 MoE) -> 融合不经过任务头
用于 pretrain 阶段或需要提取特征的场景
Args:
smiles: SMILES 字符串列表长度为 B
tabular: Dict[str, Tensor]
Returns:
fused: [B, fusion_dim] 融合后的特征向量
"""
stacked = self._encode_and_project(smiles, tabular) stacked = self._encode_and_project(smiles, tabular)
attended = self._attended_with_moe(stacked) return self._backbone_from_stacked(stacked, smiles=smiles)
fused = self.fusion(attended)
return fused
def forward_delivery( def forward_delivery(
self, self,
smiles: List[str], smiles: List[str],
tabular: Dict[str, torch.Tensor], tabular: Dict[str, torch.Tensor],
) -> torch.Tensor: ) -> torch.Tensor:
""" """仅预测 delivery用于 pretrain。返回 [B, 1]。"""
仅预测 delivery用于 pretrain
Args:
smiles: SMILES 字符串列表长度为 B
tabular: Dict[str, Tensor]
Returns:
delivery: [B, 1] 预测的 delivery
"""
fused = self.forward_backbone(smiles, tabular) fused = self.forward_backbone(smiles, tabular)
return self.head.delivery_head(fused) return self.head.delivery_head(fused)
@ -328,53 +315,34 @@ class LNPModel(nn.Module):
) -> Dict[str, torch.Tensor]: ) -> Dict[str, torch.Tensor]:
""" """
完整的多任务 forward 完整的多任务 forward
Args:
smiles: SMILES 字符串列表长度为 B
tabular: Dict[str, Tensor]包含:
- "comp": [B, 5] 配方比例
- "phys": [B, 12] 物理参数
- "help": [B, 4] Helper lipid
- "exp": [B, 32] 实验条件
Returns: Returns:
Dict[str, Tensor]: Dict[str, Tensor]: size [B,1], pdi [B,4], ee [B,3],
- "size": [B, 1] delivery [B,1], biodist [B,7], toxic [B,2]
- "pdi": [B, 4]
- "ee": [B, 3]
- "delivery": [B, 1]
- "biodist": [B, 7]
- "toxic": [B, 2]
""" """
fused = self.forward_backbone(smiles, tabular) fused = self.forward_backbone(smiles, tabular)
outputs = self.head(fused) return self.head(fused)
return outputs
def clear_cache(self) -> None: def clear_cache(self) -> None:
"""清空所有 encoder 的缓存""" """清空所有 encoder 的缓存"""
self.rdkit_encoder.clear_cache() self.rdkit_encoder.clear_cache()
if self.mpnn_encoder is not None: if self.mpnn_encoder is not None:
self.mpnn_encoder.clear_cache() self.mpnn_encoder.clear_cache()
if self.llm_prompt is not None and hasattr(self.llm_prompt, "clear_cache"):
self.llm_prompt.clear_cache()
def get_last_moe_extras(self) -> Optional[Dict[str, torch.Tensor]]: def get_last_moe_extras(self) -> Optional[Dict[str, torch.Tensor]]:
"""返回最近一次 forward 中 MoE 模块的副产物aux loss、gates、probs """返回最近一次 forward 中 MoE 模块的副产物aux loss、gates、probs"""
若未启用 MoE 或还未调用过 forward返回 None
"""
return self._last_moe_extras return self._last_moe_extras
def get_backbone_state_dict(self) -> Dict[str, torch.Tensor]: def get_backbone_state_dict(self) -> Dict[str, torch.Tensor]:
""" """
获取 backbone 部分的 state_dict不含任务头 获取 backbone 部分的 state_dict不含任务头且排除冻结的 MolT5 encoder
包含: token_projector, cross_attention, fusion以及启用时moe
""" """
backbone_prefixes = ("token_projector.", "cross_attention.", "fusion.", "moe.") return {
backbone_keys = [ k: v for k, v in self.state_dict().items()
name for name in self.state_dict().keys() if k.startswith(BACKBONE_PREFIXES) and not k.startswith(LLM_FROZEN_PREFIX)
if name.startswith(backbone_prefixes) }
]
return {k: v for k, v in self.state_dict().items() if k in backbone_keys}
def get_delivery_head_state_dict(self) -> Dict[str, torch.Tensor]: def get_delivery_head_state_dict(self) -> Dict[str, torch.Tensor]:
"""获取 delivery head 的 state_dict""" """获取 delivery head 的 state_dict"""
@ -392,16 +360,11 @@ class LNPModel(nn.Module):
""" """
从预训练 checkpoint 加载 backbone 可选delivery head 权重 从预训练 checkpoint 加载 backbone 可选delivery head 权重
Args: 冻结的 MolT5 encoder 权重不在加载范围内
pretrain_state_dict: 预训练模型的 state_dict
load_delivery_head: 是否加载 delivery head 权重
strict: 是否严格匹配默认 False允许缺失/多余的键
""" """
backbone_prefixes = ("token_projector.", "cross_attention.", "fusion.", "moe.")
keys_to_load = [] keys_to_load = []
for name in pretrain_state_dict.keys(): for name in pretrain_state_dict.keys():
if name.startswith(backbone_prefixes): if name.startswith(BACKBONE_PREFIXES) and not name.startswith(LLM_FROZEN_PREFIX):
keys_to_load.append(name) keys_to_load.append(name)
elif load_delivery_head and name.startswith("head.delivery_head."): elif load_delivery_head and name.startswith("head.delivery_head."):
keys_to_load.append(name) keys_to_load.append(name)
@ -410,45 +373,49 @@ class LNPModel(nn.Module):
k: v for k, v in pretrain_state_dict.items() if k in keys_to_load k: v for k, v in pretrain_state_dict.items() if k in keys_to_load
} }
missing, unexpected = [], [] unexpected = []
model_state = self.state_dict() model_state = self.state_dict()
for k, v in filtered_state_dict.items(): for k, v in filtered_state_dict.items():
if k in model_state: if k in model_state and model_state[k].shape == v.shape:
if model_state[k].shape == v.shape: model_state[k] = v
model_state[k] = v
else:
unexpected.append(
f"{k} (shape mismatch: {model_state[k].shape} vs {v.shape})"
)
else: else:
unexpected.append(k) unexpected.append(k)
self.load_state_dict(model_state, strict=False) self.load_state_dict(model_state, strict=False)
if strict and (missing or unexpected): if strict and unexpected:
raise RuntimeError(f"Missing keys: {missing}, Unexpected keys: {unexpected}") raise RuntimeError(f"Unexpected keys: {unexpected}")
class LNPModelWithoutMPNN(LNPModel): class LNPModelWithoutMPNN(LNPModel):
"""不使用 MPNN 的简化版本""" """不使用 MPNN 的简化版本(化学 token 为 3 个)"""
def __init__( def __init__(
self, self,
d_model: int = 256, d_model: int = 256,
num_heads: int = 8, num_heads: int = 8,
n_attn_layers: int = 4, n_attn_layers: int = 4,
set_transformer_block: str = "sab",
fusion_strategy: PoolingStrategy = "attention", fusion_strategy: PoolingStrategy = "attention",
head_hidden_dim: int = 128, head_hidden_dim: int = 128,
dropout: float = 0.1, dropout: float = 0.1,
input_dims: Optional[Dict[str, int]] = None, input_dims: Optional[Dict[str, int]] = None,
# ============ MoE 相关(新增) ============ # ============ MoE 相关 ============
use_moe: bool = False, use_moe: bool = False,
moe_n_experts: int = 4, moe_n_experts: int = 4,
moe_top_k: int = 2, moe_top_k: int = 2,
moe_expert_hidden_mult: int = 2, moe_expert_hidden_mult: int = 2,
moe_jitter_noise: float = 0.0, moe_jitter_noise: float = 0.0,
# ============ LLM 相关 ============
use_llm: bool = False,
llm_model_path: str = DEFAULT_MOLT5_PATH,
llm_freeze: bool = True,
llm_use_lora: bool = False,
llm_lora_r: int = 8,
llm_lora_alpha: int = 16,
llm_lora_dropout: float = 0.05,
) -> None: ) -> None:
# 移除 mpnn 维度
dims = input_dims or DEFAULT_INPUT_DIMS.copy() dims = input_dims or DEFAULT_INPUT_DIMS.copy()
dims.pop("mpnn", None) dims.pop("mpnn", None)
@ -456,6 +423,7 @@ class LNPModelWithoutMPNN(LNPModel):
d_model=d_model, d_model=d_model,
num_heads=num_heads, num_heads=num_heads,
n_attn_layers=n_attn_layers, n_attn_layers=n_attn_layers,
set_transformer_block=set_transformer_block,
fusion_strategy=fusion_strategy, fusion_strategy=fusion_strategy,
head_hidden_dim=head_hidden_dim, head_hidden_dim=head_hidden_dim,
dropout=dropout, dropout=dropout,
@ -467,5 +435,11 @@ class LNPModelWithoutMPNN(LNPModel):
moe_top_k=moe_top_k, moe_top_k=moe_top_k,
moe_expert_hidden_mult=moe_expert_hidden_mult, moe_expert_hidden_mult=moe_expert_hidden_mult,
moe_jitter_noise=moe_jitter_noise, moe_jitter_noise=moe_jitter_noise,
) use_llm=use_llm,
llm_model_path=llm_model_path,
llm_freeze=llm_freeze,
llm_use_lora=llm_use_lora,
llm_lora_r=llm_lora_r,
llm_lora_alpha=llm_lora_alpha,
llm_lora_dropout=llm_lora_dropout,
)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

19
lnp_ml/utils/seed.py Normal file
View File

@ -0,0 +1,19 @@
"""全局随机种子工具。"""
import random
import numpy as np
import torch
def set_global_seed(seed: int) -> None:
"""固定 random / numpy / torch 种子,提升可复现性。
不开启 cudnn deterministic以免显著拖慢训练如需严格复现可自行追加
torch.backends.cudnn.deterministic = True
torch.backends.cudnn.benchmark = False
"""
random.seed(seed)
np.random.seed(seed)
torch.manual_seed(seed)
torch.cuda.manual_seed_all(seed)

View File

@ -0,0 +1,12 @@
{
"dropout": 0.28242799368681437,
"lr": 0.00037183641805732076,
"weight_decay": 6.290644294586152e-05,
"backbone_lr_ratio": 0.10677482709481352,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 75, 76, 77, 80, 81, 85, 86, 88, 89, 90, 92, 94, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 144, 145, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 163, 164, 167, 168, 169, 170, 171, 172, 175, 176, 178, 179, 180, 182, 183, 184, 185, 188, 189, 190, 191, 192, 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 206, 208, 210, 211, 212, 213, 216, 217, 218, 219, 220, 222, 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, 236, 237, 239, 241, 242, 244, 245, 247, 248, 249, 250, 252, 253, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 285, 286, 287, 288, 291, 292, 294, 296, 297, 298, 299, 300, 301, 303, 304, 306, 307, 308, 309, 310, 311, 312, 313, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 332, 333, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 351, 352, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 377, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 393, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 415, 417, 418, 419], "outer_test_idx": [7, 16, 20, 29, 51, 59, 60, 69, 70, 74, 78, 79, 82, 83, 84, 87, 91, 93, 97, 102, 110, 112, 119, 120, 121, 132, 137, 140, 142, 143, 152, 161, 162, 165, 166, 173, 174, 177, 181, 186, 187, 194, 205, 207, 209, 214, 215, 221, 223, 226, 235, 238, 240, 243, 246, 251, 254, 263, 264, 266, 273, 284, 289, 290, 293, 295, 302, 305, 314, 315, 331, 334, 341, 350, 353, 361, 373, 376, 378, 392, 394, 402, 410, 416]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.32790454280151365,
"rmse": 0.572629498717551,
"mae": 0.35871042688208893,
"r2": -0.08876073797082196
},
"delivery": {
"n_samples": 58,
"mse": 0.7250728333301815,
"rmse": 0.8515120864263651,
"mae": 0.7098816664696768,
"r2": 0.07838867510225656
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.3435971685971686,
"recall": 0.5359094457455114,
"f1": 0.34977324263038545
},
"ee": {
"n_samples": 84,
"accuracy": 0.7142857142857143,
"precision": 0.6871101871101871,
"recall": 0.707142857142857,
"f1": 0.6756066411238826
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.4073394583325288,
"js_divergence": 0.092887269703335
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.23085562232445592,
"lr": 0.0005227270589225132,
"weight_decay": 0.00461701039547356,
"backbone_lr_ratio": 0.12087164274488635,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 24, 26, 27, 29, 30, 31, 32, 33, 35, 36, 38, 39, 40, 42, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 110, 112, 114, 115, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 132, 136, 137, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 161, 162, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 194, 195, 196, 197, 198, 199, 201, 202, 204, 205, 206, 207, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 225, 226, 228, 229, 231, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 258, 259, 260, 261, 262, 263, 264, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 295, 296, 297, 300, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 333, 334, 335, 337, 338, 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 361, 362, 364, 365, 366, 367, 368, 369, 373, 374, 375, 376, 378, 379, 380, 381, 382, 384, 387, 388, 389, 391, 392, 393, 394, 396, 397, 398, 399, 402, 403, 404, 405, 406, 408, 409, 410, 411, 412, 413, 414, 416, 417, 419], "outer_test_idx": [1, 2, 4, 8, 9, 14, 17, 22, 23, 25, 28, 34, 37, 41, 43, 45, 63, 64, 68, 85, 96, 104, 111, 113, 116, 117, 122, 127, 133, 134, 135, 138, 139, 147, 160, 163, 170, 180, 191, 192, 193, 200, 203, 208, 224, 227, 230, 239, 241, 245, 249, 253, 257, 265, 267, 272, 280, 294, 298, 299, 309, 312, 320, 326, 332, 336, 346, 347, 360, 363, 370, 371, 372, 377, 383, 385, 386, 390, 395, 400, 401, 407, 415, 418]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.233876145855699,
"rmse": 0.4836074294876982,
"mae": 0.3760785318556286,
"r2": -2.874543407510119
},
"delivery": {
"n_samples": 61,
"mse": 1.0238964615450643,
"rmse": 1.0118776910007772,
"mae": 0.6578027546466862,
"r2": 0.2249841902125319
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5238095238095238,
"precision": 0.34497354497354493,
"recall": 0.3280423280423281,
"f1": 0.3231922398589065
},
"ee": {
"n_samples": 84,
"accuracy": 0.5595238095238095,
"precision": 0.5101731601731602,
"recall": 0.5036154321868608,
"f1": 0.48790324563862697
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.48528378254405913,
"js_divergence": 0.12258377401744426
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.18117503720006686,
"lr": 8.135394049241399e-05,
"weight_decay": 0.015076469897649124,
"backbone_lr_ratio": 0.9586175198423679,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 91, 93, 94, 95, 96, 97, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 145, 147, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 181, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 259, 260, 261, 263, 264, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 280, 281, 282, 283, 284, 285, 287, 289, 290, 293, 294, 295, 296, 297, 298, 299, 300, 302, 303, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 360, 361, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 376, 377, 378, 379, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 392, 394, 395, 398, 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 416, 417, 418], "outer_test_idx": [10, 12, 15, 31, 35, 42, 46, 52, 53, 54, 62, 66, 67, 71, 73, 75, 77, 81, 89, 90, 92, 98, 99, 105, 123, 124, 141, 144, 146, 154, 155, 164, 169, 176, 178, 182, 189, 190, 195, 198, 201, 206, 216, 217, 218, 219, 231, 234, 244, 247, 248, 258, 262, 270, 277, 278, 279, 286, 288, 291, 292, 301, 304, 306, 316, 319, 325, 328, 343, 357, 359, 362, 367, 374, 375, 384, 391, 393, 396, 397, 403, 406, 411, 419]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.07870736214858826,
"rmse": 0.28054832408800495,
"mae": 0.2252055633635748,
"r2": 0.15667568332606574
},
"delivery": {
"n_samples": 60,
"mse": 0.6624288051399898,
"rmse": 0.8138972939750997,
"mae": 0.5578871982870623,
"r2": 0.118192445613993
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5714285714285714,
"precision": 0.43453195231581004,
"recall": 0.7014848950332823,
"f1": 0.4452380952380952
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6140109890109889,
"recall": 0.6785714285714285,
"f1": 0.6262626262626263
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3967825471495568,
"js_divergence": 0.1057568924841401
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.1799936812783694,
"lr": 0.00033865324369584493,
"weight_decay": 0.01440133094015265,
"backbone_lr_ratio": 0.3278334190266755,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, 100, 102, 104, 105, 106, 109, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 127, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 148, 150, 151, 152, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 168, 169, 170, 172, 173, 174, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 193, 194, 195, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 219, 221, 223, 224, 226, 227, 228, 230, 231, 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 278, 279, 280, 282, 284, 286, 288, 289, 290, 291, 292, 293, 294, 295, 297, 298, 299, 301, 302, 304, 305, 306, 307, 308, 309, 310, 312, 314, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 331, 332, 334, 336, 340, 341, 343, 344, 346, 347, 348, 350, 352, 353, 357, 359, 360, 361, 362, 363, 364, 366, 367, 368, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 400, 401, 402, 403, 404, 406, 407, 410, 411, 412, 414, 415, 416, 418, 419], "outer_test_idx": [3, 6, 13, 18, 19, 26, 33, 44, 48, 49, 50, 56, 57, 72, 80, 88, 94, 101, 103, 107, 108, 114, 126, 128, 130, 145, 149, 157, 167, 171, 175, 188, 196, 197, 199, 211, 220, 222, 225, 229, 232, 236, 250, 260, 261, 271, 281, 283, 285, 287, 296, 300, 303, 311, 313, 318, 322, 323, 324, 329, 330, 333, 335, 337, 338, 339, 342, 345, 349, 351, 354, 355, 356, 358, 365, 369, 381, 388, 399, 405, 408, 409, 413, 417]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.477705869562307,
"rmse": 0.6911626939891266,
"mae": 0.38659381004701177,
"r2": -0.46585807501413723
},
"delivery": {
"n_samples": 59,
"mse": 0.7692103143544243,
"rmse": 0.8770463581558413,
"mae": 0.6155587352528158,
"r2": 0.2522361838732067
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.4426767676767677,
"recall": 0.6817716333845366,
"f1": 0.43613724611708476
},
"ee": {
"n_samples": 84,
"accuracy": 0.6428571428571429,
"precision": 0.5650987224157956,
"recall": 0.5790095525389644,
"f1": 0.5637508626639062
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.4102080974965646,
"js_divergence": 0.11100613154873733
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.14162975892531532,
"lr": 0.0004019907813153378,
"weight_decay": 0.00037960139235180325,
"backbone_lr_ratio": 0.18010931581670617,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 25, 26, 28, 29, 31, 33, 34, 35, 37, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 56, 57, 59, 60, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 85, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 110, 111, 112, 113, 114, 116, 117, 119, 120, 121, 122, 123, 124, 126, 127, 128, 130, 132, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 149, 152, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180, 181, 182, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 203, 205, 206, 207, 208, 209, 211, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 229, 230, 231, 232, 234, 235, 236, 238, 239, 240, 241, 243, 244, 245, 246, 247, 248, 249, 250, 251, 253, 254, 257, 258, 260, 261, 262, 263, 264, 265, 266, 267, 270, 271, 272, 273, 277, 278, 279, 280, 281, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 309, 311, 312, 313, 314, 315, 316, 318, 319, 320, 322, 323, 324, 325, 326, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 347, 349, 350, 351, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 365, 367, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 381, 383, 384, 385, 386, 388, 390, 391, 392, 393, 394, 395, 396, 397, 399, 400, 401, 402, 403, 405, 406, 407, 408, 409, 410, 411, 413, 415, 416, 417, 418, 419], "outer_test_idx": [0, 5, 11, 21, 24, 27, 30, 32, 36, 38, 39, 40, 47, 55, 58, 61, 65, 76, 86, 95, 100, 106, 109, 115, 118, 125, 129, 131, 136, 148, 150, 151, 153, 156, 158, 159, 168, 172, 179, 183, 184, 185, 202, 204, 210, 212, 213, 228, 233, 237, 242, 252, 255, 256, 259, 268, 269, 274, 275, 276, 282, 297, 307, 308, 310, 317, 321, 327, 340, 344, 348, 352, 364, 366, 368, 379, 380, 382, 387, 389, 398, 404, 412, 414]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.1842198466764517,
"rmse": 0.4292083953937198,
"mae": 0.29178874833243235,
"r2": -0.33736192476816806
},
"delivery": {
"n_samples": 58,
"mse": 0.9003281069383875,
"rmse": 0.9488562098328637,
"mae": 0.6070586243837044,
"r2": 0.1293975832987566
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.34548450889914306,
"recall": 0.5337941628264209,
"f1": 0.3497882046269143
},
"ee": {
"n_samples": 84,
"accuracy": 0.7023809523809523,
"precision": 0.6548765244417418,
"recall": 0.7576923076923077,
"f1": 0.6777508856852221
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.3946735882065513,
"js_divergence": 0.1067245125767987
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.28242799368681437,
"lr": 0.00037183641805732076,
"weight_decay": 6.290644294586152e-05,
"backbone_lr_ratio": 0.10677482709481352,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 75, 76, 77, 80, 81, 85, 86, 88, 89, 90, 92, 94, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 144, 145, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 163, 164, 167, 168, 169, 170, 171, 172, 175, 176, 178, 179, 180, 182, 183, 184, 185, 188, 189, 190, 191, 192, 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 206, 208, 210, 211, 212, 213, 216, 217, 218, 219, 220, 222, 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, 236, 237, 239, 241, 242, 244, 245, 247, 248, 249, 250, 252, 253, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 285, 286, 287, 288, 291, 292, 294, 296, 297, 298, 299, 300, 301, 303, 304, 306, 307, 308, 309, 310, 311, 312, 313, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 332, 333, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 351, 352, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 377, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 393, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 415, 417, 418, 419], "outer_test_idx": [7, 16, 20, 29, 51, 59, 60, 69, 70, 74, 78, 79, 82, 83, 84, 87, 91, 93, 97, 102, 110, 112, 119, 120, 121, 132, 137, 140, 142, 143, 152, 161, 162, 165, 166, 173, 174, 177, 181, 186, 187, 194, 205, 207, 209, 214, 215, 221, 223, 226, 235, 238, 240, 243, 246, 251, 254, 263, 264, 266, 273, 284, 289, 290, 293, 295, 302, 305, 314, 315, 331, 334, 341, 350, 353, 361, 373, 376, 378, 392, 394, 402, 410, 416]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.3808128541133737,
"rmse": 0.6171003598389598,
"mae": 0.4168719153806388,
"r2": -0.2644353156285024
},
"delivery": {
"n_samples": 58,
"mse": 0.751610048614176,
"rmse": 0.8669544674400012,
"mae": 0.7122741444999802,
"r2": 0.04465827311677528
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5,
"precision": 0.3181788931788932,
"recall": 0.5039032006245121,
"f1": 0.32369614512471656
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6258687258687259,
"recall": 0.6461904761904762,
"f1": 0.6127803231251508
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.39644445917049376,
"js_divergence": 0.09334798400608228
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.23085562232445592,
"lr": 0.0005227270589225132,
"weight_decay": 0.00461701039547356,
"backbone_lr_ratio": 0.12087164274488635,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 24, 26, 27, 29, 30, 31, 32, 33, 35, 36, 38, 39, 40, 42, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 110, 112, 114, 115, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 132, 136, 137, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 161, 162, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 194, 195, 196, 197, 198, 199, 201, 202, 204, 205, 206, 207, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 225, 226, 228, 229, 231, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 258, 259, 260, 261, 262, 263, 264, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 295, 296, 297, 300, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 333, 334, 335, 337, 338, 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 361, 362, 364, 365, 366, 367, 368, 369, 373, 374, 375, 376, 378, 379, 380, 381, 382, 384, 387, 388, 389, 391, 392, 393, 394, 396, 397, 398, 399, 402, 403, 404, 405, 406, 408, 409, 410, 411, 412, 413, 414, 416, 417, 419], "outer_test_idx": [1, 2, 4, 8, 9, 14, 17, 22, 23, 25, 28, 34, 37, 41, 43, 45, 63, 64, 68, 85, 96, 104, 111, 113, 116, 117, 122, 127, 133, 134, 135, 138, 139, 147, 160, 163, 170, 180, 191, 192, 193, 200, 203, 208, 224, 227, 230, 239, 241, 245, 249, 253, 257, 265, 267, 272, 280, 294, 298, 299, 309, 312, 320, 326, 332, 336, 346, 347, 360, 363, 370, 371, 372, 377, 383, 385, 386, 390, 395, 400, 401, 407, 415, 418]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.3074589292084139,
"rmse": 0.5544897917982025,
"mae": 0.3793355481965201,
"r2": -4.093563359726248
},
"delivery": {
"n_samples": 61,
"mse": 1.0592195690639976,
"rmse": 1.029183933543464,
"mae": 0.6786946221025753,
"r2": 0.19824714422578682
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5952380952380952,
"precision": 0.37142213207121927,
"recall": 0.35978835978835977,
"f1": 0.35976608187134507
},
"ee": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.5052287581699346,
"recall": 0.5094429380143666,
"f1": 0.4903811048389362
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.5219711265981701,
"js_divergence": 0.13035793372268764
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.18117503720006686,
"lr": 8.135394049241399e-05,
"weight_decay": 0.015076469897649124,
"backbone_lr_ratio": 0.9586175198423679,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 91, 93, 94, 95, 96, 97, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 145, 147, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 181, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 259, 260, 261, 263, 264, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 280, 281, 282, 283, 284, 285, 287, 289, 290, 293, 294, 295, 296, 297, 298, 299, 300, 302, 303, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 360, 361, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 376, 377, 378, 379, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 392, 394, 395, 398, 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 416, 417, 418], "outer_test_idx": [10, 12, 15, 31, 35, 42, 46, 52, 53, 54, 62, 66, 67, 71, 73, 75, 77, 81, 89, 90, 92, 98, 99, 105, 123, 124, 141, 144, 146, 154, 155, 164, 169, 176, 178, 182, 189, 190, 195, 198, 201, 206, 216, 217, 218, 219, 231, 234, 244, 247, 248, 258, 262, 270, 277, 278, 279, 286, 288, 291, 292, 301, 304, 306, 316, 319, 325, 328, 343, 357, 359, 362, 367, 374, 375, 384, 391, 393, 396, 397, 403, 406, 411, 419]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.10285134147020851,
"rmse": 0.3207044456664243,
"mae": 0.2692902485529582,
"r2": -0.10201936510861498
},
"delivery": {
"n_samples": 60,
"mse": 0.663864171054346,
"rmse": 0.8147786024769833,
"mae": 0.548082401487045,
"r2": 0.11628172479876508
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.4457671957671958,
"recall": 0.7063492063492064,
"f1": 0.44368858654572946
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6064246211305034,
"recall": 0.6547619047619048,
"f1": 0.6168530247347982
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3895171114701636,
"js_divergence": 0.10296173296198505
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.1799936812783694,
"lr": 0.00033865324369584493,
"weight_decay": 0.01440133094015265,
"backbone_lr_ratio": 0.3278334190266755,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, 100, 102, 104, 105, 106, 109, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 127, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 148, 150, 151, 152, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 168, 169, 170, 172, 173, 174, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 193, 194, 195, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 219, 221, 223, 224, 226, 227, 228, 230, 231, 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 278, 279, 280, 282, 284, 286, 288, 289, 290, 291, 292, 293, 294, 295, 297, 298, 299, 301, 302, 304, 305, 306, 307, 308, 309, 310, 312, 314, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 331, 332, 334, 336, 340, 341, 343, 344, 346, 347, 348, 350, 352, 353, 357, 359, 360, 361, 362, 363, 364, 366, 367, 368, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 400, 401, 402, 403, 404, 406, 407, 410, 411, 412, 414, 415, 416, 418, 419], "outer_test_idx": [3, 6, 13, 18, 19, 26, 33, 44, 48, 49, 50, 56, 57, 72, 80, 88, 94, 101, 103, 107, 108, 114, 126, 128, 130, 145, 149, 157, 167, 171, 175, 188, 196, 197, 199, 211, 220, 222, 225, 229, 232, 236, 250, 260, 261, 271, 281, 283, 285, 287, 296, 300, 303, 311, 313, 318, 322, 323, 324, 329, 330, 333, 335, 337, 338, 339, 342, 345, 349, 351, 354, 355, 356, 358, 365, 369, 381, 388, 399, 405, 408, 409, 413, 417]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.4783278330356588,
"rmse": 0.6916124876226996,
"mae": 0.3700549229081855,
"r2": -0.4677665928655337
},
"delivery": {
"n_samples": 59,
"mse": 0.8242563169380902,
"rmse": 0.907885629877514,
"mae": 0.6424747443900017,
"r2": 0.19872492929644914
},
"pdi": {
"n_samples": 84,
"accuracy": 0.7023809523809523,
"precision": 0.4810152874709206,
"recall": 0.7291346646185355,
"f1": 0.48990704493096837
},
"ee": {
"n_samples": 84,
"accuracy": 0.6428571428571429,
"precision": 0.5627865961199294,
"recall": 0.5790095525389644,
"f1": 0.5641184865618634
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.40656307520365187,
"js_divergence": 0.10906334576015857
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.14162975892531532,
"lr": 0.0004019907813153378,
"weight_decay": 0.00037960139235180325,
"backbone_lr_ratio": 0.18010931581670617,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 25, 26, 28, 29, 31, 33, 34, 35, 37, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 56, 57, 59, 60, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 85, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 110, 111, 112, 113, 114, 116, 117, 119, 120, 121, 122, 123, 124, 126, 127, 128, 130, 132, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 149, 152, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180, 181, 182, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 203, 205, 206, 207, 208, 209, 211, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 229, 230, 231, 232, 234, 235, 236, 238, 239, 240, 241, 243, 244, 245, 246, 247, 248, 249, 250, 251, 253, 254, 257, 258, 260, 261, 262, 263, 264, 265, 266, 267, 270, 271, 272, 273, 277, 278, 279, 280, 281, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 309, 311, 312, 313, 314, 315, 316, 318, 319, 320, 322, 323, 324, 325, 326, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 347, 349, 350, 351, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 365, 367, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 381, 383, 384, 385, 386, 388, 390, 391, 392, 393, 394, 395, 396, 397, 399, 400, 401, 402, 403, 405, 406, 407, 408, 409, 410, 411, 413, 415, 416, 417, 418, 419], "outer_test_idx": [0, 5, 11, 21, 24, 27, 30, 32, 36, 38, 39, 40, 47, 55, 58, 61, 65, 76, 86, 95, 100, 106, 109, 115, 118, 125, 129, 131, 136, 148, 150, 151, 153, 156, 158, 159, 168, 172, 179, 183, 184, 185, 202, 204, 210, 212, 213, 228, 233, 237, 242, 252, 255, 256, 259, 268, 269, 274, 275, 276, 282, 297, 307, 308, 310, 317, 321, 327, 340, 344, 348, 352, 364, 366, 368, 379, 380, 382, 387, 389, 398, 404, 412, 414]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.16667444743348794,
"rmse": 0.4082578198069058,
"mae": 0.2857146007674081,
"r2": -0.20998938958412183
},
"delivery": {
"n_samples": 58,
"mse": 0.9768153651071599,
"rmse": 0.9883397012703476,
"mae": 0.6390594764259355,
"r2": 0.055435667309009284
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.49700048379293665,
"recall": 0.7552483358934973,
"f1": 0.533806146572104
},
"ee": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.6299589603283173,
"recall": 0.6871794871794873,
"f1": 0.6483638563493374
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.394783094910233,
"js_divergence": 0.10592993993751994
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.28242799368681437,
"lr": 0.00037183641805732076,
"weight_decay": 6.290644294586152e-05,
"backbone_lr_ratio": 0.10677482709481352,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 75, 76, 77, 80, 81, 85, 86, 88, 89, 90, 92, 94, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 144, 145, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 163, 164, 167, 168, 169, 170, 171, 172, 175, 176, 178, 179, 180, 182, 183, 184, 185, 188, 189, 190, 191, 192, 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 206, 208, 210, 211, 212, 213, 216, 217, 218, 219, 220, 222, 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, 236, 237, 239, 241, 242, 244, 245, 247, 248, 249, 250, 252, 253, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 285, 286, 287, 288, 291, 292, 294, 296, 297, 298, 299, 300, 301, 303, 304, 306, 307, 308, 309, 310, 311, 312, 313, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 332, 333, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 351, 352, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 377, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 393, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 415, 417, 418, 419], "outer_test_idx": [7, 16, 20, 29, 51, 59, 60, 69, 70, 74, 78, 79, 82, 83, 84, 87, 91, 93, 97, 102, 110, 112, 119, 120, 121, 132, 137, 140, 142, 143, 152, 161, 162, 165, 166, 173, 174, 177, 181, 186, 187, 194, 205, 207, 209, 214, 215, 221, 223, 226, 235, 238, 240, 243, 246, 251, 254, 263, 264, 266, 273, 284, 289, 290, 293, 295, 302, 305, 314, 315, 331, 334, 341, 350, 353, 361, 373, 376, 378, 392, 394, 402, 410, 416]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.38432886654317966,
"rmse": 0.6199426316548812,
"mae": 0.43342806632260245,
"r2": -0.2761097384806048
},
"delivery": {
"n_samples": 58,
"mse": 0.6744019580730524,
"rmse": 0.8212197988803317,
"mae": 0.6701494166306381,
"r2": 0.14279441523317304
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.35634973404255316,
"recall": 0.547423887587822,
"f1": 0.3495414294750159
},
"ee": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.6587301587301587,
"recall": 0.6938095238095238,
"f1": 0.6526081185986528
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.40697274862376626,
"js_divergence": 0.09501893155280818
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.23085562232445592,
"lr": 0.0005227270589225132,
"weight_decay": 0.00461701039547356,
"backbone_lr_ratio": 0.12087164274488635,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 24, 26, 27, 29, 30, 31, 32, 33, 35, 36, 38, 39, 40, 42, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 110, 112, 114, 115, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 132, 136, 137, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 161, 162, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 194, 195, 196, 197, 198, 199, 201, 202, 204, 205, 206, 207, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 225, 226, 228, 229, 231, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 258, 259, 260, 261, 262, 263, 264, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 295, 296, 297, 300, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 333, 334, 335, 337, 338, 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 361, 362, 364, 365, 366, 367, 368, 369, 373, 374, 375, 376, 378, 379, 380, 381, 382, 384, 387, 388, 389, 391, 392, 393, 394, 396, 397, 398, 399, 402, 403, 404, 405, 406, 408, 409, 410, 411, 412, 413, 414, 416, 417, 419], "outer_test_idx": [1, 2, 4, 8, 9, 14, 17, 22, 23, 25, 28, 34, 37, 41, 43, 45, 63, 64, 68, 85, 96, 104, 111, 113, 116, 117, 122, 127, 133, 134, 135, 138, 139, 147, 160, 163, 170, 180, 191, 192, 193, 200, 203, 208, 224, 227, 230, 239, 241, 245, 249, 253, 257, 265, 267, 272, 280, 294, 298, 299, 309, 312, 320, 326, 332, 336, 346, 347, 360, 363, 370, 371, 372, 377, 383, 385, 386, 390, 395, 400, 401, 407, 415, 418]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.28709899653313253,
"rmse": 0.5358161965946275,
"mae": 0.41961162147067843,
"r2": -3.7562675545651993
},
"delivery": {
"n_samples": 61,
"mse": 1.0055884332484593,
"rmse": 1.0027903236711349,
"mae": 0.6592718309371687,
"r2": 0.23884204782685936
},
"pdi": {
"n_samples": 84,
"accuracy": 0.44047619047619047,
"precision": 0.34375,
"recall": 0.32275132275132273,
"f1": 0.2913806254767353
},
"ee": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.5,
"recall": 0.5004995004995004,
"f1": 0.4796109240553685
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.4974494276121329,
"js_divergence": 0.1259321573319038
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.18117503720006686,
"lr": 8.135394049241399e-05,
"weight_decay": 0.015076469897649124,
"backbone_lr_ratio": 0.9586175198423679,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 91, 93, 94, 95, 96, 97, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 145, 147, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 181, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 259, 260, 261, 263, 264, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 280, 281, 282, 283, 284, 285, 287, 289, 290, 293, 294, 295, 296, 297, 298, 299, 300, 302, 303, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 360, 361, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 376, 377, 378, 379, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 392, 394, 395, 398, 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 416, 417, 418], "outer_test_idx": [10, 12, 15, 31, 35, 42, 46, 52, 53, 54, 62, 66, 67, 71, 73, 75, 77, 81, 89, 90, 92, 98, 99, 105, 123, 124, 141, 144, 146, 154, 155, 164, 169, 176, 178, 182, 189, 190, 195, 198, 201, 206, 216, 217, 218, 219, 231, 234, 244, 247, 248, 258, 262, 270, 277, 278, 279, 286, 288, 291, 292, 301, 304, 306, 316, 319, 325, 328, 343, 357, 359, 362, 367, 374, 375, 384, 391, 393, 396, 397, 403, 406, 411, 419]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.12734599676966307,
"rmse": 0.3568557086129674,
"mae": 0.283481532619113,
"r2": -0.3644717949534717
},
"delivery": {
"n_samples": 60,
"mse": 0.6995736506531275,
"rmse": 0.8364051952571359,
"mae": 0.5743296845893686,
"r2": 0.06874621814647808
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5119047619047619,
"precision": 0.41008771929824556,
"recall": 0.6746031746031745,
"f1": 0.4050345260514752
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6189974937343359,
"recall": 0.687908496732026,
"f1": 0.6319077437787746
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3964743242871827,
"js_divergence": 0.10757710661599443
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.1799936812783694,
"lr": 0.00033865324369584493,
"weight_decay": 0.01440133094015265,
"backbone_lr_ratio": 0.3278334190266755,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, 100, 102, 104, 105, 106, 109, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 127, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 148, 150, 151, 152, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 168, 169, 170, 172, 173, 174, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 193, 194, 195, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 219, 221, 223, 224, 226, 227, 228, 230, 231, 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 278, 279, 280, 282, 284, 286, 288, 289, 290, 291, 292, 293, 294, 295, 297, 298, 299, 301, 302, 304, 305, 306, 307, 308, 309, 310, 312, 314, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 331, 332, 334, 336, 340, 341, 343, 344, 346, 347, 348, 350, 352, 353, 357, 359, 360, 361, 362, 363, 364, 366, 367, 368, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 400, 401, 402, 403, 404, 406, 407, 410, 411, 412, 414, 415, 416, 418, 419], "outer_test_idx": [3, 6, 13, 18, 19, 26, 33, 44, 48, 49, 50, 56, 57, 72, 80, 88, 94, 101, 103, 107, 108, 114, 126, 128, 130, 145, 149, 157, 167, 171, 175, 188, 196, 197, 199, 211, 220, 222, 225, 229, 232, 236, 250, 260, 261, 271, 281, 283, 285, 287, 296, 300, 303, 311, 313, 318, 322, 323, 324, 329, 330, 333, 335, 337, 338, 339, 342, 345, 349, 351, 354, 355, 356, 358, 365, 369, 381, 388, 399, 405, 408, 409, 413, 417]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.46358638894813786,
"rmse": 0.6808717859833361,
"mae": 0.37019611553973464,
"r2": -0.422531928127458
},
"delivery": {
"n_samples": 59,
"mse": 0.8370140113507513,
"rmse": 0.9148846983914155,
"mae": 0.6370043654657774,
"r2": 0.18632293457411198
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6071428571428571,
"precision": 0.47548510048510045,
"recall": 0.7491039426523297,
"f1": 0.4726173766801967
},
"ee": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.6115219070742745,
"recall": 0.6469582704876823,
"f1": 0.6198067632850242
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.40801997248379873,
"js_divergence": 0.11086638268723202
}
}

View File

@ -0,0 +1,12 @@
{
"dropout": 0.14162975892531532,
"lr": 0.0004019907813153378,
"weight_decay": 0.00037960139235180325,
"backbone_lr_ratio": 0.18010931581670617,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 25, 26, 28, 29, 31, 33, 34, 35, 37, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 56, 57, 59, 60, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 85, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 110, 111, 112, 113, 114, 116, 117, 119, 120, 121, 122, 123, 124, 126, 127, 128, 130, 132, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 149, 152, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180, 181, 182, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 203, 205, 206, 207, 208, 209, 211, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 229, 230, 231, 232, 234, 235, 236, 238, 239, 240, 241, 243, 244, 245, 246, 247, 248, 249, 250, 251, 253, 254, 257, 258, 260, 261, 262, 263, 264, 265, 266, 267, 270, 271, 272, 273, 277, 278, 279, 280, 281, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 309, 311, 312, 313, 314, 315, 316, 318, 319, 320, 322, 323, 324, 325, 326, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 347, 349, 350, 351, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 365, 367, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 381, 383, 384, 385, 386, 388, 390, 391, 392, 393, 394, 395, 396, 397, 399, 400, 401, 402, 403, 405, 406, 407, 408, 409, 410, 411, 413, 415, 416, 417, 418, 419], "outer_test_idx": [0, 5, 11, 21, 24, 27, 30, 32, 36, 38, 39, 40, 47, 55, 58, 61, 65, 76, 86, 95, 100, 106, 109, 115, 118, 125, 129, 131, 136, 148, 150, 151, 153, 156, 158, 159, 168, 172, 179, 183, 184, 185, 202, 204, 210, 212, 213, 228, 233, 237, 242, 252, 255, 256, 259, 268, 269, 274, 275, 276, 282, 297, 307, 308, 310, 317, 321, 327, 340, 344, 348, 352, 364, 366, 368, 379, 380, 382, 387, 389, 398, 404, 412, 414]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.15145313313910996,
"rmse": 0.3891697998806048,
"mae": 0.2744193644750686,
"r2": -0.09948877551085711
},
"delivery": {
"n_samples": 58,
"mse": 0.9378577638427679,
"rmse": 0.9684305673835207,
"mae": 0.6135335185661398,
"r2": 0.09310702461562304
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6071428571428571,
"precision": 0.4863247863247863,
"recall": 0.7491039426523297,
"f1": 0.5019607843137255
},
"ee": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.6324786324786325,
"recall": 0.7021367521367522,
"f1": 0.6488452445899254
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.39116454524118993,
"js_divergence": 0.1065009133663494
}
}

View File

@ -0,0 +1,60 @@
{
"original_strata_counts": {
"T0|P0|E0": "5",
"T0|P0|E1": "58",
"T0|P0|E2": "169",
"T0|P1|E0": "1",
"T0|P1|E1": "17",
"T0|P1|E2": "32",
"T0|P2|E2": "3",
"T1|P0|E2": "9",
"T1|P1|E2": "5",
"TNA|P0|E0": "28",
"TNA|P0|E1": "21",
"TNA|P0|E2": "20",
"TNA|P1|E0": "29",
"TNA|P1|E1": "7",
"TNA|P1|E2": "14",
"TNA|P2|E2": "1",
"TNA|P3|E0": "1"
},
"rare_strata": [
"T0|P1|E0",
"T0|P2|E2",
"TNA|P2|E2",
"TNA|P3|E0"
],
"final_strata": [
"RARE",
"T0|P0|E0",
"T0|P0|E1",
"T0|P0|E2",
"T0|P1|E1",
"T0|P1|E2",
"T1|P0|E2",
"T1|P1|E2",
"TNA|P0|E0",
"TNA|P0|E1",
"TNA|P0|E2",
"TNA|P1|E0",
"TNA|P1|E1",
"TNA|P1|E2"
],
"final_strata_counts": {
"RARE": "6",
"T0|P0|E0": "5",
"T0|P0|E1": "58",
"T0|P0|E2": "169",
"T0|P1|E1": "17",
"T0|P1|E2": "32",
"T1|P0|E2": "9",
"T1|P1|E2": "5",
"TNA|P0|E0": "28",
"TNA|P0|E1": "21",
"TNA|P0|E2": "20",
"TNA|P1|E0": "29",
"TNA|P1|E1": "7",
"TNA|P1|E2": "14"
},
"n_rare_merged": "6"
}

View File

@ -0,0 +1,932 @@
{
"fold_results": [
{
"fold": 0,
"best_params": {
"dropout": 0.28242799368681437,
"lr": 0.00037183641805732076,
"weight_decay": 6.290644294586152e-05,
"backbone_lr_ratio": 0.10677482709481352,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 15,
"test_metrics": {
"size": {
"n_samples": 83,
"mse": 0.32790454280151365,
"rmse": 0.572629498717551,
"mae": 0.35871042688208893,
"r2": -0.08876073797082196
},
"delivery": {
"n_samples": 58,
"mse": 0.7250728333301815,
"rmse": 0.8515120864263651,
"mae": 0.7098816664696768,
"r2": 0.07838867510225656
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.3435971685971686,
"recall": 0.5359094457455114,
"f1": 0.34977324263038545
},
"ee": {
"n_samples": 84,
"accuracy": 0.7142857142857143,
"precision": 0.6871101871101871,
"recall": 0.707142857142857,
"f1": 0.6756066411238826
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.4073394583325288,
"js_divergence": 0.092887269703335
}
}
},
{
"fold": 1,
"best_params": {
"dropout": 0.23085562232445592,
"lr": 0.0005227270589225132,
"weight_decay": 0.00461701039547356,
"backbone_lr_ratio": 0.12087164274488635,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 9,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.233876145855699,
"rmse": 0.4836074294876982,
"mae": 0.3760785318556286,
"r2": -2.874543407510119
},
"delivery": {
"n_samples": 61,
"mse": 1.0238964615450643,
"rmse": 1.0118776910007772,
"mae": 0.6578027546466862,
"r2": 0.2249841902125319
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5238095238095238,
"precision": 0.34497354497354493,
"recall": 0.3280423280423281,
"f1": 0.3231922398589065
},
"ee": {
"n_samples": 84,
"accuracy": 0.5595238095238095,
"precision": 0.5101731601731602,
"recall": 0.5036154321868608,
"f1": 0.48790324563862697
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.48528378254405913,
"js_divergence": 0.12258377401744426
}
}
},
{
"fold": 2,
"best_params": {
"dropout": 0.18117503720006686,
"lr": 8.135394049241399e-05,
"weight_decay": 0.015076469897649124,
"backbone_lr_ratio": 0.9586175198423679,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 22,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.07870736214858826,
"rmse": 0.28054832408800495,
"mae": 0.2252055633635748,
"r2": 0.15667568332606574
},
"delivery": {
"n_samples": 60,
"mse": 0.6624288051399898,
"rmse": 0.8138972939750997,
"mae": 0.5578871982870623,
"r2": 0.118192445613993
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5714285714285714,
"precision": 0.43453195231581004,
"recall": 0.7014848950332823,
"f1": 0.4452380952380952
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6140109890109889,
"recall": 0.6785714285714285,
"f1": 0.6262626262626263
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3967825471495568,
"js_divergence": 0.1057568924841401
}
}
},
{
"fold": 3,
"best_params": {
"dropout": 0.1799936812783694,
"lr": 0.00033865324369584493,
"weight_decay": 0.01440133094015265,
"backbone_lr_ratio": 0.3278334190266755,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 10,
"test_metrics": {
"size": {
"n_samples": 83,
"mse": 0.477705869562307,
"rmse": 0.6911626939891266,
"mae": 0.38659381004701177,
"r2": -0.46585807501413723
},
"delivery": {
"n_samples": 59,
"mse": 0.7692103143544243,
"rmse": 0.8770463581558413,
"mae": 0.6155587352528158,
"r2": 0.2522361838732067
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.4426767676767677,
"recall": 0.6817716333845366,
"f1": 0.43613724611708476
},
"ee": {
"n_samples": 84,
"accuracy": 0.6428571428571429,
"precision": 0.5650987224157956,
"recall": 0.5790095525389644,
"f1": 0.5637508626639062
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.4102080974965646,
"js_divergence": 0.11100613154873733
}
}
},
{
"fold": 4,
"best_params": {
"dropout": 0.14162975892531532,
"lr": 0.0004019907813153378,
"weight_decay": 0.00037960139235180325,
"backbone_lr_ratio": 0.18010931581670617,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 12,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.1842198466764517,
"rmse": 0.4292083953937198,
"mae": 0.29178874833243235,
"r2": -0.33736192476816806
},
"delivery": {
"n_samples": 58,
"mse": 0.9003281069383875,
"rmse": 0.9488562098328637,
"mae": 0.6070586243837044,
"r2": 0.1293975832987566
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.34548450889914306,
"recall": 0.5337941628264209,
"f1": 0.3497882046269143
},
"ee": {
"n_samples": 84,
"accuracy": 0.7023809523809523,
"precision": 0.6548765244417418,
"recall": 0.7576923076923077,
"f1": 0.6777508856852221
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.3946735882065513,
"js_divergence": 0.1067245125767987
}
}
},
{
"fold": 0,
"best_params": {
"dropout": 0.28242799368681437,
"lr": 0.00037183641805732076,
"weight_decay": 6.290644294586152e-05,
"backbone_lr_ratio": 0.10677482709481352,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 15,
"test_metrics": {
"size": {
"n_samples": 83,
"mse": 0.3808128541133737,
"rmse": 0.6171003598389598,
"mae": 0.4168719153806388,
"r2": -0.2644353156285024
},
"delivery": {
"n_samples": 58,
"mse": 0.751610048614176,
"rmse": 0.8669544674400012,
"mae": 0.7122741444999802,
"r2": 0.04465827311677528
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5,
"precision": 0.3181788931788932,
"recall": 0.5039032006245121,
"f1": 0.32369614512471656
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6258687258687259,
"recall": 0.6461904761904762,
"f1": 0.6127803231251508
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.39644445917049376,
"js_divergence": 0.09334798400608228
}
}
},
{
"fold": 1,
"best_params": {
"dropout": 0.23085562232445592,
"lr": 0.0005227270589225132,
"weight_decay": 0.00461701039547356,
"backbone_lr_ratio": 0.12087164274488635,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 9,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.3074589292084139,
"rmse": 0.5544897917982025,
"mae": 0.3793355481965201,
"r2": -4.093563359726248
},
"delivery": {
"n_samples": 61,
"mse": 1.0592195690639976,
"rmse": 1.029183933543464,
"mae": 0.6786946221025753,
"r2": 0.19824714422578682
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5952380952380952,
"precision": 0.37142213207121927,
"recall": 0.35978835978835977,
"f1": 0.35976608187134507
},
"ee": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.5052287581699346,
"recall": 0.5094429380143666,
"f1": 0.4903811048389362
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.5219711265981701,
"js_divergence": 0.13035793372268764
}
}
},
{
"fold": 2,
"best_params": {
"dropout": 0.18117503720006686,
"lr": 8.135394049241399e-05,
"weight_decay": 0.015076469897649124,
"backbone_lr_ratio": 0.9586175198423679,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 22,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.10285134147020851,
"rmse": 0.3207044456664243,
"mae": 0.2692902485529582,
"r2": -0.10201936510861498
},
"delivery": {
"n_samples": 60,
"mse": 0.663864171054346,
"rmse": 0.8147786024769833,
"mae": 0.548082401487045,
"r2": 0.11628172479876508
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.4457671957671958,
"recall": 0.7063492063492064,
"f1": 0.44368858654572946
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6064246211305034,
"recall": 0.6547619047619048,
"f1": 0.6168530247347982
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3895171114701636,
"js_divergence": 0.10296173296198505
}
}
},
{
"fold": 3,
"best_params": {
"dropout": 0.1799936812783694,
"lr": 0.00033865324369584493,
"weight_decay": 0.01440133094015265,
"backbone_lr_ratio": 0.3278334190266755,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 10,
"test_metrics": {
"size": {
"n_samples": 83,
"mse": 0.4783278330356588,
"rmse": 0.6916124876226996,
"mae": 0.3700549229081855,
"r2": -0.4677665928655337
},
"delivery": {
"n_samples": 59,
"mse": 0.8242563169380902,
"rmse": 0.907885629877514,
"mae": 0.6424747443900017,
"r2": 0.19872492929644914
},
"pdi": {
"n_samples": 84,
"accuracy": 0.7023809523809523,
"precision": 0.4810152874709206,
"recall": 0.7291346646185355,
"f1": 0.48990704493096837
},
"ee": {
"n_samples": 84,
"accuracy": 0.6428571428571429,
"precision": 0.5627865961199294,
"recall": 0.5790095525389644,
"f1": 0.5641184865618634
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.40656307520365187,
"js_divergence": 0.10906334576015857
}
}
},
{
"fold": 4,
"best_params": {
"dropout": 0.14162975892531532,
"lr": 0.0004019907813153378,
"weight_decay": 0.00037960139235180325,
"backbone_lr_ratio": 0.18010931581670617,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 12,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.16667444743348794,
"rmse": 0.4082578198069058,
"mae": 0.2857146007674081,
"r2": -0.20998938958412183
},
"delivery": {
"n_samples": 58,
"mse": 0.9768153651071599,
"rmse": 0.9883397012703476,
"mae": 0.6390594764259355,
"r2": 0.055435667309009284
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.49700048379293665,
"recall": 0.7552483358934973,
"f1": 0.533806146572104
},
"ee": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.6299589603283173,
"recall": 0.6871794871794873,
"f1": 0.6483638563493374
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.394783094910233,
"js_divergence": 0.10592993993751994
}
}
},
{
"fold": 0,
"best_params": {
"dropout": 0.28242799368681437,
"lr": 0.00037183641805732076,
"weight_decay": 6.290644294586152e-05,
"backbone_lr_ratio": 0.10677482709481352,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 15,
"test_metrics": {
"size": {
"n_samples": 83,
"mse": 0.38432886654317966,
"rmse": 0.6199426316548812,
"mae": 0.43342806632260245,
"r2": -0.2761097384806048
},
"delivery": {
"n_samples": 58,
"mse": 0.6744019580730524,
"rmse": 0.8212197988803317,
"mae": 0.6701494166306381,
"r2": 0.14279441523317304
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.35634973404255316,
"recall": 0.547423887587822,
"f1": 0.3495414294750159
},
"ee": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.6587301587301587,
"recall": 0.6938095238095238,
"f1": 0.6526081185986528
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.40697274862376626,
"js_divergence": 0.09501893155280818
}
}
},
{
"fold": 1,
"best_params": {
"dropout": 0.23085562232445592,
"lr": 0.0005227270589225132,
"weight_decay": 0.00461701039547356,
"backbone_lr_ratio": 0.12087164274488635,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 9,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.28709899653313253,
"rmse": 0.5358161965946275,
"mae": 0.41961162147067843,
"r2": -3.7562675545651993
},
"delivery": {
"n_samples": 61,
"mse": 1.0055884332484593,
"rmse": 1.0027903236711349,
"mae": 0.6592718309371687,
"r2": 0.23884204782685936
},
"pdi": {
"n_samples": 84,
"accuracy": 0.44047619047619047,
"precision": 0.34375,
"recall": 0.32275132275132273,
"f1": 0.2913806254767353
},
"ee": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.5,
"recall": 0.5004995004995004,
"f1": 0.4796109240553685
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.4974494276121329,
"js_divergence": 0.1259321573319038
}
}
},
{
"fold": 2,
"best_params": {
"dropout": 0.18117503720006686,
"lr": 8.135394049241399e-05,
"weight_decay": 0.015076469897649124,
"backbone_lr_ratio": 0.9586175198423679,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 22,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.12734599676966307,
"rmse": 0.3568557086129674,
"mae": 0.283481532619113,
"r2": -0.3644717949534717
},
"delivery": {
"n_samples": 60,
"mse": 0.6995736506531275,
"rmse": 0.8364051952571359,
"mae": 0.5743296845893686,
"r2": 0.06874621814647808
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5119047619047619,
"precision": 0.41008771929824556,
"recall": 0.6746031746031745,
"f1": 0.4050345260514752
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6189974937343359,
"recall": 0.687908496732026,
"f1": 0.6319077437787746
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3964743242871827,
"js_divergence": 0.10757710661599443
}
}
},
{
"fold": 3,
"best_params": {
"dropout": 0.1799936812783694,
"lr": 0.00033865324369584493,
"weight_decay": 0.01440133094015265,
"backbone_lr_ratio": 0.3278334190266755,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 10,
"test_metrics": {
"size": {
"n_samples": 83,
"mse": 0.46358638894813786,
"rmse": 0.6808717859833361,
"mae": 0.37019611553973464,
"r2": -0.422531928127458
},
"delivery": {
"n_samples": 59,
"mse": 0.8370140113507513,
"rmse": 0.9148846983914155,
"mae": 0.6370043654657774,
"r2": 0.18632293457411198
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6071428571428571,
"precision": 0.47548510048510045,
"recall": 0.7491039426523297,
"f1": 0.4726173766801967
},
"ee": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.6115219070742745,
"recall": 0.6469582704876823,
"f1": 0.6198067632850242
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.40801997248379873,
"js_divergence": 0.11086638268723202
}
}
},
{
"fold": 4,
"best_params": {
"dropout": 0.14162975892531532,
"lr": 0.0004019907813153378,
"weight_decay": 0.00037960139235180325,
"backbone_lr_ratio": 0.18010931581670617,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
},
"epoch_mean": 12,
"test_metrics": {
"size": {
"n_samples": 84,
"mse": 0.15145313313910996,
"rmse": 0.3891697998806048,
"mae": 0.2744193644750686,
"r2": -0.09948877551085711
},
"delivery": {
"n_samples": 58,
"mse": 0.9378577638427679,
"rmse": 0.9684305673835207,
"mae": 0.6135335185661398,
"r2": 0.09310702461562304
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6071428571428571,
"precision": 0.4863247863247863,
"recall": 0.7491039426523297,
"f1": 0.5019607843137255
},
"ee": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.6324786324786325,
"recall": 0.7021367521367522,
"f1": 0.6488452445899254
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.39116454524118993,
"js_divergence": 0.1065009133663494
}
}
}
],
"summary_stats": {
"size": {
"mse_mean": 0.2768235036159284,
"mse_std": 0.1346583260723207,
"rmse_mean": 0.508798491275714,
"rmse_std": 0.13396864891266763,
"mae_mean": 0.3427187344475763,
"mae_std": 0.06271329639776796,
"r2_mean": -0.9110994850991861,
"r2_std": 1.3609378589681
},
"delivery": {
"mse_mean": 0.834075853950265,
"mse_std": 0.13581578656540713,
"rmse_mean": 0.9102708371721865,
"rmse_std": 0.0740463162089242,
"mae_mean": 0.634870878942305,
"mae_std": 0.04810398332825185,
"r2_mean": 0.14309063048291837,
"r2_std": 0.06678544282427759
},
"pdi": {
"accuracy_mean": 0.573809523809524,
"accuracy_std": 0.07315376902732006,
"precision_mean": 0.40644301832628565,
"precision_std": 0.06081224559746048,
"recall_mean": 0.591894166836878,
"recall_std": 0.15212645465643837,
"f1_mean": 0.40503518503422653,
"f1_std": 0.07270554354315185
},
"ee": {
"accuracy_mean": 0.65,
"accuracy_std": 0.05460640448180816,
"precision_mean": 0.5988843624524457,
"precision_std": 0.055997857124168736,
"recall_mean": 0.6355952320322067,
"recall_std": 0.07902933872282923,
"f1_mean": 0.5997699900861396,
"f1_std": 0.06505269720858664
},
"toxic": {
"accuracy_mean": 0.9500396342534485,
"accuracy_std": 0.014290090778642328,
"precision_mean": 0.7457142857142857,
"precision_std": 0.03149343955006944,
"recall_mean": 0.9737706334802525,
"recall_std": 0.007575117962473199,
"f1_mean": 0.81483431023254,
"f1_std": 0.0312513648447909
},
"biodist": {
"kl_divergence_mean": 0.42024315728866957,
"kl_divergence_std": 0.04170766696370389,
"js_divergence_mean": 0.10843433388487847,
"js_divergence_std": 0.010645869413863087
}
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.12930599750984867,
"lr": 0.0003183893957684731,
"weight_decay": 0.0011797820449629415,
"backbone_lr_ratio": 0.35598913444921026,
"moe_n_experts": 2,
"moe_top_k": 2,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 8,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 75, 76, 77, 80, 81, 85, 86, 88, 89, 90, 92, 94, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 144, 145, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 163, 164, 167, 168, 169, 170, 171, 172, 175, 176, 178, 179, 180, 182, 183, 184, 185, 188, 189, 190, 191, 192, 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 206, 208, 210, 211, 212, 213, 216, 217, 218, 219, 220, 222, 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, 236, 237, 239, 241, 242, 244, 245, 247, 248, 249, 250, 252, 253, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 285, 286, 287, 288, 291, 292, 294, 296, 297, 298, 299, 300, 301, 303, 304, 306, 307, 308, 309, 310, 311, 312, 313, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 332, 333, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 351, 352, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 377, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 393, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 415, 417, 418, 419], "outer_test_idx": [7, 16, 20, 29, 51, 59, 60, 69, 70, 74, 78, 79, 82, 83, 84, 87, 91, 93, 97, 102, 110, 112, 119, 120, 121, 132, 137, 140, 142, 143, 152, 161, 162, 165, 166, 173, 174, 177, 181, 186, 187, 194, 205, 207, 209, 214, 215, 221, 223, 226, 235, 238, 240, 243, 246, 251, 254, 263, 264, 266, 273, 284, 289, 290, 293, 295, 302, 305, 314, 315, 331, 334, 341, 350, 353, 361, 373, 376, 378, 392, 394, 402, 410, 416]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.27316252507783767,
"rmse": 0.5226495241343262,
"mae": 0.268634506018765,
"r2": 0.09300240292875017
},
"delivery": {
"n_samples": 58,
"mse": 0.49318943105662066,
"rmse": 0.7022744698881063,
"mae": 0.5225495728182381,
"r2": 0.37312647214479966
},
"pdi": {
"n_samples": 84,
"accuracy": 0.75,
"precision": 0.4107142857142857,
"recall": 0.5977751756440282,
"f1": 0.447008547008547
},
"ee": {
"n_samples": 84,
"accuracy": 0.7023809523809523,
"precision": 0.6658119658119658,
"recall": 0.6976190476190475,
"f1": 0.6690688363683327
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.20575334902695963,
"js_divergence": 0.045069148869594025
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.14959924395216218,
"lr": 0.00012401964324838103,
"weight_decay": 9.656428689903883e-05,
"backbone_lr_ratio": 0.32683834688760083,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 1,
"llm_lora_r": 32,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 24, 26, 27, 29, 30, 31, 32, 33, 35, 36, 38, 39, 40, 42, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 110, 112, 114, 115, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 132, 136, 137, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 161, 162, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 194, 195, 196, 197, 198, 199, 201, 202, 204, 205, 206, 207, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 225, 226, 228, 229, 231, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 258, 259, 260, 261, 262, 263, 264, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 295, 296, 297, 300, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 333, 334, 335, 337, 338, 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 361, 362, 364, 365, 366, 367, 368, 369, 373, 374, 375, 376, 378, 379, 380, 381, 382, 384, 387, 388, 389, 391, 392, 393, 394, 396, 397, 398, 399, 402, 403, 404, 405, 406, 408, 409, 410, 411, 412, 413, 414, 416, 417, 419], "outer_test_idx": [1, 2, 4, 8, 9, 14, 17, 22, 23, 25, 28, 34, 37, 41, 43, 45, 63, 64, 68, 85, 96, 104, 111, 113, 116, 117, 122, 127, 133, 134, 135, 138, 139, 147, 160, 163, 170, 180, 191, 192, 193, 200, 203, 208, 224, 227, 230, 239, 241, 245, 249, 253, 257, 265, 267, 272, 280, 294, 298, 299, 309, 312, 320, 326, 332, 336, 346, 347, 360, 363, 370, 371, 372, 377, 383, 385, 386, 390, 395, 400, 401, 407, 415, 418]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.11199287760383045,
"rmse": 0.3346533693298641,
"mae": 0.24370252518426805,
"r2": -0.8553464014912291
},
"delivery": {
"n_samples": 61,
"mse": 0.9945337433308287,
"rmse": 0.9972631264269368,
"mae": 0.637184505488296,
"r2": 0.24720965117371863
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5833333333333334,
"precision": 0.2606719367588933,
"recall": 0.24206349206349206,
"f1": 0.25038520801232667
},
"ee": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.4737424924924925,
"recall": 0.47331240188383045,
"f1": 0.46359870390878144
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.42904510824573017,
"js_divergence": 0.11140172525390164
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.12302210383900847,
"lr": 0.00015510064533248203,
"weight_decay": 0.0037340196924722196,
"backbone_lr_ratio": 0.3036603338505521,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 1,
"llm_lora_r": 16,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 91, 93, 94, 95, 96, 97, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 145, 147, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 181, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 259, 260, 261, 263, 264, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 280, 281, 282, 283, 284, 285, 287, 289, 290, 293, 294, 295, 296, 297, 298, 299, 300, 302, 303, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 360, 361, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 376, 377, 378, 379, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 392, 394, 395, 398, 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 416, 417, 418], "outer_test_idx": [10, 12, 15, 31, 35, 42, 46, 52, 53, 54, 62, 66, 67, 71, 73, 75, 77, 81, 89, 90, 92, 98, 99, 105, 123, 124, 141, 144, 146, 154, 155, 164, 169, 176, 178, 182, 189, 190, 195, 198, 201, 206, 216, 217, 218, 219, 231, 234, 244, 247, 248, 258, 262, 270, 277, 278, 279, 286, 288, 291, 292, 301, 304, 306, 316, 319, 325, 328, 343, 357, 359, 362, 367, 374, 375, 384, 391, 393, 396, 397, 403, 406, 411, 419]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.13105160735348353,
"rmse": 0.36201050724182515,
"mae": 0.29236553396497456,
"r2": -0.4041762321007929
},
"delivery": {
"n_samples": 60,
"mse": 0.6170164560338233,
"rmse": 0.7855039503616918,
"mae": 0.518595163594,
"r2": 0.178644153319804
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5714285714285714,
"precision": 0.3343023255813954,
"recall": 0.5261136712749617,
"f1": 0.34470899470899463
},
"ee": {
"n_samples": 84,
"accuracy": 0.6904761904761905,
"precision": 0.6311332192269291,
"recall": 0.6916433239962653,
"f1": 0.6470105449067581
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.2793246003181208,
"js_divergence": 0.07360589998440034
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.11061601330629428,
"lr": 0.0003491022701087641,
"weight_decay": 1.2696904821623371e-05,
"backbone_lr_ratio": 0.39277239063286945,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 32,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, 100, 102, 104, 105, 106, 109, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 127, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 148, 150, 151, 152, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 168, 169, 170, 172, 173, 174, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 193, 194, 195, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 219, 221, 223, 224, 226, 227, 228, 230, 231, 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 278, 279, 280, 282, 284, 286, 288, 289, 290, 291, 292, 293, 294, 295, 297, 298, 299, 301, 302, 304, 305, 306, 307, 308, 309, 310, 312, 314, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 331, 332, 334, 336, 340, 341, 343, 344, 346, 347, 348, 350, 352, 353, 357, 359, 360, 361, 362, 363, 364, 366, 367, 368, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 400, 401, 402, 403, 404, 406, 407, 410, 411, 412, 414, 415, 416, 418, 419], "outer_test_idx": [3, 6, 13, 18, 19, 26, 33, 44, 48, 49, 50, 56, 57, 72, 80, 88, 94, 101, 103, 107, 108, 114, 126, 128, 130, 145, 149, 157, 167, 171, 175, 188, 196, 197, 199, 211, 220, 222, 225, 229, 232, 236, 250, 260, 261, 271, 281, 283, 285, 287, 296, 300, 303, 311, 313, 318, 322, 323, 324, 329, 330, 333, 335, 337, 338, 339, 342, 345, 349, 351, 354, 355, 356, 358, 365, 369, 381, 388, 399, 405, 408, 409, 413, 417]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.2974639059494916,
"rmse": 0.5454025173662949,
"mae": 0.2553033943635872,
"r2": 0.08722103632340716
},
"delivery": {
"n_samples": 59,
"mse": 0.72832486531675,
"rmse": 0.8534195130864715,
"mae": 0.5703363718970095,
"r2": 0.29198169797506535
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.3663025210084033,
"recall": 0.5624039938556068,
"f1": 0.3811802616390919
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.5903252773977808,
"recall": 0.6201608848667672,
"f1": 0.59879647539222
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.4182398191784831,
"js_divergence": 0.10764099439445415
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.41353294032230026,
"lr": 0.00018606616740103076,
"weight_decay": 9.912252717813433e-05,
"backbone_lr_ratio": 0.32820993966799533,
"moe_n_experts": 4,
"moe_top_k": 1,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 16,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 25, 26, 28, 29, 31, 33, 34, 35, 37, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 56, 57, 59, 60, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 85, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 110, 111, 112, 113, 114, 116, 117, 119, 120, 121, 122, 123, 124, 126, 127, 128, 130, 132, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 149, 152, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180, 181, 182, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 203, 205, 206, 207, 208, 209, 211, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 229, 230, 231, 232, 234, 235, 236, 238, 239, 240, 241, 243, 244, 245, 246, 247, 248, 249, 250, 251, 253, 254, 257, 258, 260, 261, 262, 263, 264, 265, 266, 267, 270, 271, 272, 273, 277, 278, 279, 280, 281, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 309, 311, 312, 313, 314, 315, 316, 318, 319, 320, 322, 323, 324, 325, 326, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 347, 349, 350, 351, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 365, 367, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 381, 383, 384, 385, 386, 388, 390, 391, 392, 393, 394, 395, 396, 397, 399, 400, 401, 402, 403, 405, 406, 407, 408, 409, 410, 411, 413, 415, 416, 417, 418, 419], "outer_test_idx": [0, 5, 11, 21, 24, 27, 30, 32, 36, 38, 39, 40, 47, 55, 58, 61, 65, 76, 86, 95, 100, 106, 109, 115, 118, 125, 129, 131, 136, 148, 150, 151, 153, 156, 158, 159, 168, 172, 179, 183, 184, 185, 202, 204, 210, 212, 213, 228, 233, 237, 242, 252, 255, 256, 259, 268, 269, 274, 275, 276, 282, 297, 307, 308, 310, 317, 321, 327, 340, 344, 348, 352, 364, 366, 368, 379, 380, 382, 387, 389, 398, 404, 412, 414]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.2385472153185827,
"rmse": 0.4884129557235175,
"mae": 0.37417884383882793,
"r2": -0.7317567503291509
},
"delivery": {
"n_samples": 58,
"mse": 0.7980907160636062,
"rmse": 0.8933592312522473,
"mae": 0.6033944039252298,
"r2": 0.2282594525293985
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5952380952380952,
"precision": 0.33809196980096085,
"recall": 0.5263056835637481,
"f1": 0.3583862620559868
},
"ee": {
"n_samples": 84,
"accuracy": 0.7261904761904762,
"precision": 0.6831659493065518,
"recall": 0.7594017094017094,
"f1": 0.7065123352302344
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.4050166777635646,
"js_divergence": 0.10143992174009567
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.12930599750984867,
"lr": 0.0003183893957684731,
"weight_decay": 0.0011797820449629415,
"backbone_lr_ratio": 0.35598913444921026,
"moe_n_experts": 2,
"moe_top_k": 2,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 8,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 75, 76, 77, 80, 81, 85, 86, 88, 89, 90, 92, 94, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 144, 145, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 163, 164, 167, 168, 169, 170, 171, 172, 175, 176, 178, 179, 180, 182, 183, 184, 185, 188, 189, 190, 191, 192, 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 206, 208, 210, 211, 212, 213, 216, 217, 218, 219, 220, 222, 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, 236, 237, 239, 241, 242, 244, 245, 247, 248, 249, 250, 252, 253, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 285, 286, 287, 288, 291, 292, 294, 296, 297, 298, 299, 300, 301, 303, 304, 306, 307, 308, 309, 310, 311, 312, 313, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 332, 333, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 351, 352, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 377, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 393, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 415, 417, 418, 419], "outer_test_idx": [7, 16, 20, 29, 51, 59, 60, 69, 70, 74, 78, 79, 82, 83, 84, 87, 91, 93, 97, 102, 110, 112, 119, 120, 121, 132, 137, 140, 142, 143, 152, 161, 162, 165, 166, 173, 174, 177, 181, 186, 187, 194, 205, 207, 209, 214, 215, 221, 223, 226, 235, 238, 240, 243, 246, 251, 254, 263, 264, 266, 273, 284, 289, 290, 293, 295, 302, 305, 314, 315, 331, 334, 341, 350, 353, 361, 373, 376, 378, 392, 394, 402, 410, 416]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.2816563970171338,
"rmse": 0.5307131023605257,
"mae": 0.27628492734518395,
"r2": 0.06479970039267835
},
"delivery": {
"n_samples": 58,
"mse": 0.5807003895647976,
"rmse": 0.7620370001284699,
"mae": 0.564853833378132,
"r2": 0.26189476312686466
},
"pdi": {
"n_samples": 84,
"accuracy": 0.7857142857142857,
"precision": 0.42781279178338005,
"recall": 0.5944574551131928,
"f1": 0.4533531409168081
},
"ee": {
"n_samples": 84,
"accuracy": 0.6547619047619048,
"precision": 0.6603426956368134,
"recall": 0.7080952380952382,
"f1": 0.6472175061309188
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9827586206896551,
"precision": 0.9912280701754386,
"recall": 0.75,
"f1": 0.8289085545722714
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.2790682434585921,
"js_divergence": 0.06757546969442413
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.14959924395216218,
"lr": 0.00012401964324838103,
"weight_decay": 9.656428689903883e-05,
"backbone_lr_ratio": 0.32683834688760083,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 1,
"llm_lora_r": 32,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 24, 26, 27, 29, 30, 31, 32, 33, 35, 36, 38, 39, 40, 42, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 110, 112, 114, 115, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 132, 136, 137, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 161, 162, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 194, 195, 196, 197, 198, 199, 201, 202, 204, 205, 206, 207, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 225, 226, 228, 229, 231, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 258, 259, 260, 261, 262, 263, 264, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 295, 296, 297, 300, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 333, 334, 335, 337, 338, 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 361, 362, 364, 365, 366, 367, 368, 369, 373, 374, 375, 376, 378, 379, 380, 381, 382, 384, 387, 388, 389, 391, 392, 393, 394, 396, 397, 398, 399, 402, 403, 404, 405, 406, 408, 409, 410, 411, 412, 413, 414, 416, 417, 419], "outer_test_idx": [1, 2, 4, 8, 9, 14, 17, 22, 23, 25, 28, 34, 37, 41, 43, 45, 63, 64, 68, 85, 96, 104, 111, 113, 116, 117, 122, 127, 133, 134, 135, 138, 139, 147, 160, 163, 170, 180, 191, 192, 193, 200, 203, 208, 224, 227, 230, 239, 241, 245, 249, 253, 257, 265, 267, 272, 280, 294, 298, 299, 309, 312, 320, 326, 332, 336, 346, 347, 360, 363, 370, 371, 372, 377, 383, 385, 386, 390, 395, 400, 401, 407, 415, 418]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.08666696329506099,
"rmse": 0.2943925326754417,
"mae": 0.22798642090388707,
"r2": -0.4357809346276156
},
"delivery": {
"n_samples": 61,
"mse": 0.9690008398737997,
"rmse": 0.9843784027871597,
"mae": 0.626403434202075,
"r2": 0.26653621845095465
},
"pdi": {
"n_samples": 84,
"accuracy": 0.4880952380952381,
"precision": 0.27691029900332226,
"recall": 0.2579365079365079,
"f1": 0.24170918367346939
},
"ee": {
"n_samples": 84,
"accuracy": 0.5357142857142857,
"precision": 0.4703263535182041,
"recall": 0.47331240188383045,
"f1": 0.46348793258357346
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.4359101867730315,
"js_divergence": 0.11254492304386336
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.12302210383900847,
"lr": 0.00015510064533248203,
"weight_decay": 0.0037340196924722196,
"backbone_lr_ratio": 0.3036603338505521,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 1,
"llm_lora_r": 16,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 91, 93, 94, 95, 96, 97, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 145, 147, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 181, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 259, 260, 261, 263, 264, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 280, 281, 282, 283, 284, 285, 287, 289, 290, 293, 294, 295, 296, 297, 298, 299, 300, 302, 303, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 360, 361, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 376, 377, 378, 379, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 392, 394, 395, 398, 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 416, 417, 418], "outer_test_idx": [10, 12, 15, 31, 35, 42, 46, 52, 53, 54, 62, 66, 67, 71, 73, 75, 77, 81, 89, 90, 92, 98, 99, 105, 123, 124, 141, 144, 146, 154, 155, 164, 169, 176, 178, 182, 189, 190, 195, 198, 201, 206, 216, 217, 218, 219, 231, 234, 244, 247, 248, 258, 262, 270, 277, 278, 279, 286, 288, 291, 292, 301, 304, 306, 316, 319, 325, 328, 343, 357, 359, 362, 367, 374, 375, 384, 391, 393, 396, 397, 403, 406, 411, 419]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.13747360050361937,
"rmse": 0.3707743255723343,
"mae": 0.2868303656578064,
"r2": -0.4729858432626901
},
"delivery": {
"n_samples": 60,
"mse": 0.7104536138129312,
"rmse": 0.8428841046151785,
"mae": 0.5430462850956246,
"r2": 0.054263101423121185
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6428571428571429,
"precision": 0.45827160493827157,
"recall": 0.7127496159754224,
"f1": 0.4944194569381975
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.6060343270099368,
"recall": 0.6573295985060691,
"f1": 0.6198067632850242
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.28003378134681434,
"js_divergence": 0.0731604987811758
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.11061601330629428,
"lr": 0.0003491022701087641,
"weight_decay": 1.2696904821623371e-05,
"backbone_lr_ratio": 0.39277239063286945,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 32,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, 100, 102, 104, 105, 106, 109, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 127, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 148, 150, 151, 152, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 168, 169, 170, 172, 173, 174, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 193, 194, 195, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 219, 221, 223, 224, 226, 227, 228, 230, 231, 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 278, 279, 280, 282, 284, 286, 288, 289, 290, 291, 292, 293, 294, 295, 297, 298, 299, 301, 302, 304, 305, 306, 307, 308, 309, 310, 312, 314, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 331, 332, 334, 336, 340, 341, 343, 344, 346, 347, 348, 350, 352, 353, 357, 359, 360, 361, 362, 363, 364, 366, 367, 368, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 400, 401, 402, 403, 404, 406, 407, 410, 411, 412, 414, 415, 416, 418, 419], "outer_test_idx": [3, 6, 13, 18, 19, 26, 33, 44, 48, 49, 50, 56, 57, 72, 80, 88, 94, 101, 103, 107, 108, 114, 126, 128, 130, 145, 149, 157, 167, 171, 175, 188, 196, 197, 199, 211, 220, 222, 225, 229, 232, 236, 250, 260, 261, 271, 281, 283, 285, 287, 296, 300, 303, 311, 313, 318, 322, 323, 324, 329, 330, 333, 335, 337, 338, 339, 342, 345, 349, 351, 354, 355, 356, 358, 365, 369, 381, 388, 399, 405, 408, 409, 413, 417]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.32669708395989955,
"rmse": 0.5715742156184965,
"mae": 0.31596550309514426,
"r2": -0.0024820483050997932
},
"delivery": {
"n_samples": 59,
"mse": 0.7029380513850005,
"rmse": 0.8384140095352657,
"mae": 0.5650059677881457,
"r2": 0.31666069734708746
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.3406323185011709,
"recall": 0.5230414746543779,
"f1": 0.3490853658536585
},
"ee": {
"n_samples": 84,
"accuracy": 0.6547619047619048,
"precision": 0.5888888888888889,
"recall": 0.6327300150829562,
"f1": 0.5970695970695971
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.3455956570999495,
"js_divergence": 0.08991455654751294
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.41353294032230026,
"lr": 0.00018606616740103076,
"weight_decay": 9.912252717813433e-05,
"backbone_lr_ratio": 0.32820993966799533,
"moe_n_experts": 4,
"moe_top_k": 1,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 16,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 25, 26, 28, 29, 31, 33, 34, 35, 37, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 56, 57, 59, 60, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 85, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 110, 111, 112, 113, 114, 116, 117, 119, 120, 121, 122, 123, 124, 126, 127, 128, 130, 132, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 149, 152, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180, 181, 182, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 203, 205, 206, 207, 208, 209, 211, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 229, 230, 231, 232, 234, 235, 236, 238, 239, 240, 241, 243, 244, 245, 246, 247, 248, 249, 250, 251, 253, 254, 257, 258, 260, 261, 262, 263, 264, 265, 266, 267, 270, 271, 272, 273, 277, 278, 279, 280, 281, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 309, 311, 312, 313, 314, 315, 316, 318, 319, 320, 322, 323, 324, 325, 326, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 347, 349, 350, 351, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 365, 367, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 381, 383, 384, 385, 386, 388, 390, 391, 392, 393, 394, 395, 396, 397, 399, 400, 401, 402, 403, 405, 406, 407, 408, 409, 410, 411, 413, 415, 416, 417, 418, 419], "outer_test_idx": [0, 5, 11, 21, 24, 27, 30, 32, 36, 38, 39, 40, 47, 55, 58, 61, 65, 76, 86, 95, 100, 106, 109, 115, 118, 125, 129, 131, 136, 148, 150, 151, 153, 156, 158, 159, 168, 172, 179, 183, 184, 185, 202, 204, 210, 212, 213, 228, 233, 237, 242, 252, 255, 256, 259, 268, 269, 274, 275, 276, 282, 297, 307, 308, 310, 317, 321, 327, 340, 344, 348, 352, 364, 366, 368, 379, 380, 382, 387, 389, 398, 404, 412, 414]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.2498053256210641,
"rmse": 0.49980528770818755,
"mae": 0.4012378028460911,
"r2": -0.8134860989037498
},
"delivery": {
"n_samples": 58,
"mse": 0.8713336067211406,
"rmse": 0.9334525198000917,
"mae": 0.6369200194704121,
"r2": 0.1574347863646688
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6190476190476191,
"precision": 0.32608695652173914,
"recall": 0.510752688172043,
"f1": 0.350912975912976
},
"ee": {
"n_samples": 84,
"accuracy": 0.6785714285714286,
"precision": 0.6324786324786325,
"recall": 0.7021367521367522,
"f1": 0.6488452445899254
},
"toxic": {
"n_samples": 59,
"accuracy": 0.9661016949152542,
"precision": 0.8,
"recall": 0.9821428571428572,
"f1": 0.8659090909090909
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.3635802403548602,
"js_divergence": 0.09224357999051915
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.12930599750984867,
"lr": 0.0003183893957684731,
"weight_decay": 0.0011797820449629415,
"backbone_lr_ratio": 0.35598913444921026,
"moe_n_experts": 2,
"moe_top_k": 2,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 8,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 75, 76, 77, 80, 81, 85, 86, 88, 89, 90, 92, 94, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 107, 108, 109, 111, 113, 114, 115, 116, 117, 118, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 144, 145, 146, 147, 148, 149, 150, 151, 153, 154, 155, 156, 157, 158, 159, 160, 163, 164, 167, 168, 169, 170, 171, 172, 175, 176, 178, 179, 180, 182, 183, 184, 185, 188, 189, 190, 191, 192, 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 206, 208, 210, 211, 212, 213, 216, 217, 218, 219, 220, 222, 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, 236, 237, 239, 241, 242, 244, 245, 247, 248, 249, 250, 252, 253, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 285, 286, 287, 288, 291, 292, 294, 296, 297, 298, 299, 300, 301, 303, 304, 306, 307, 308, 309, 310, 311, 312, 313, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 332, 333, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 351, 352, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 377, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 393, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 415, 417, 418, 419], "outer_test_idx": [7, 16, 20, 29, 51, 59, 60, 69, 70, 74, 78, 79, 82, 83, 84, 87, 91, 93, 97, 102, 110, 112, 119, 120, 121, 132, 137, 140, 142, 143, 152, 161, 162, 165, 166, 173, 174, 177, 181, 186, 187, 194, 205, 207, 209, 214, 215, 221, 223, 226, 235, 238, 240, 243, 246, 251, 254, 263, 264, 266, 273, 284, 289, 290, 293, 295, 302, 305, 314, 315, 331, 334, 341, 350, 353, 361, 373, 376, 378, 392, 394, 402, 410, 416]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.3048058934964392,
"rmse": 0.5520922871191366,
"mae": 0.30447895555611115,
"r2": -0.012064934220566759
},
"delivery": {
"n_samples": 58,
"mse": 0.5277170018903071,
"rmse": 0.7264413272180398,
"mae": 0.553587457165122,
"r2": 0.32923984608630563
},
"pdi": {
"n_samples": 84,
"accuracy": 0.7261904761904762,
"precision": 0.3958333333333333,
"recall": 0.5817720530835285,
"f1": 0.43162393162393164
},
"ee": {
"n_samples": 84,
"accuracy": 0.75,
"precision": 0.7124588290649997,
"recall": 0.7785714285714285,
"f1": 0.7248325686863893
},
"toxic": {
"n_samples": 58,
"accuracy": 0.9655172413793104,
"precision": 0.75,
"recall": 0.9821428571428572,
"f1": 0.8242424242424242
},
"biodist": {
"n_samples": 58,
"kl_divergence": 0.2720172018326682,
"js_divergence": 0.060785283409926956
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.14959924395216218,
"lr": 0.00012401964324838103,
"weight_decay": 9.656428689903883e-05,
"backbone_lr_ratio": 0.32683834688760083,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 1,
"llm_lora_r": 32,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 24, 26, 27, 29, 30, 31, 32, 33, 35, 36, 38, 39, 40, 42, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, 66, 67, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 105, 106, 107, 108, 109, 110, 112, 114, 115, 118, 119, 120, 121, 123, 124, 125, 126, 128, 129, 130, 131, 132, 136, 137, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 161, 162, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 194, 195, 196, 197, 198, 199, 201, 202, 204, 205, 206, 207, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 225, 226, 228, 229, 231, 232, 233, 234, 235, 236, 237, 238, 240, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 258, 259, 260, 261, 262, 263, 264, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 295, 296, 297, 300, 301, 302, 303, 304, 305, 306, 307, 308, 310, 311, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 333, 334, 335, 337, 338, 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 361, 362, 364, 365, 366, 367, 368, 369, 373, 374, 375, 376, 378, 379, 380, 381, 382, 384, 387, 388, 389, 391, 392, 393, 394, 396, 397, 398, 399, 402, 403, 404, 405, 406, 408, 409, 410, 411, 412, 413, 414, 416, 417, 419], "outer_test_idx": [1, 2, 4, 8, 9, 14, 17, 22, 23, 25, 28, 34, 37, 41, 43, 45, 63, 64, 68, 85, 96, 104, 111, 113, 116, 117, 122, 127, 133, 134, 135, 138, 139, 147, 160, 163, 170, 180, 191, 192, 193, 200, 203, 208, 224, 227, 230, 239, 241, 245, 249, 253, 257, 265, 267, 272, 280, 294, 298, 299, 309, 312, 320, 326, 332, 336, 346, 347, 360, 363, 370, 371, 372, 377, 383, 385, 386, 390, 395, 400, 401, 407, 415, 418]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.10482404388180623,
"rmse": 0.32376541489449767,
"mae": 0.23482046808515275,
"r2": -0.7365828681878246
},
"delivery": {
"n_samples": 61,
"mse": 0.9723624200125729,
"rmse": 0.9860843878758921,
"mae": 0.6302215732084434,
"r2": 0.2639917446186245
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5952380952380952,
"precision": 0.28258620689655173,
"recall": 0.2698412698412698,
"f1": 0.2714159292035398
},
"ee": {
"n_samples": 84,
"accuracy": 0.5476190476190477,
"precision": 0.48611111111111116,
"recall": 0.4884639170353456,
"f1": 0.4753962887837127
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9508196721311475,
"precision": 0.75,
"recall": 0.9741379310344828,
"f1": 0.8200589970501475
},
"biodist": {
"n_samples": 61,
"kl_divergence": 0.4600248432068658,
"js_divergence": 0.11821523045175072
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.12302210383900847,
"lr": 0.00015510064533248203,
"weight_decay": 0.0037340196924722196,
"backbone_lr_ratio": 0.3036603338505521,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 1,
"llm_lora_r": 16,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 38, 39, 40, 41, 43, 44, 45, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 63, 64, 65, 68, 69, 70, 72, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 91, 93, 94, 95, 96, 97, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 145, 147, 148, 149, 150, 151, 152, 153, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 181, 183, 184, 185, 186, 187, 188, 191, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 259, 260, 261, 263, 264, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 280, 281, 282, 283, 284, 285, 287, 289, 290, 293, 294, 295, 296, 297, 298, 299, 300, 302, 303, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 360, 361, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 376, 377, 378, 379, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 392, 394, 395, 398, 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 416, 417, 418], "outer_test_idx": [10, 12, 15, 31, 35, 42, 46, 52, 53, 54, 62, 66, 67, 71, 73, 75, 77, 81, 89, 90, 92, 98, 99, 105, 123, 124, 141, 144, 146, 154, 155, 164, 169, 176, 178, 182, 189, 190, 195, 198, 201, 206, 216, 217, 218, 219, 231, 234, 244, 247, 248, 258, 262, 270, 277, 278, 279, 286, 288, 291, 292, 301, 304, 306, 316, 319, 325, 328, 343, 357, 359, 362, 367, 374, 375, 384, 391, 393, 396, 397, 403, 406, 411, 419]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 84,
"mse": 0.12549337649644715,
"rmse": 0.35425044318454585,
"mae": 0.2802231794311887,
"r2": -0.34462155879619094
},
"delivery": {
"n_samples": 60,
"mse": 0.6592902402854742,
"rmse": 0.8119668960527111,
"mae": 0.5348013029200956,
"r2": 0.12237041942365745
},
"pdi": {
"n_samples": 84,
"accuracy": 0.5119047619047619,
"precision": 0.4135659661975451,
"recall": 0.6746031746031745,
"f1": 0.4122222222222222
},
"ee": {
"n_samples": 84,
"accuracy": 0.6547619047619048,
"precision": 0.5972649572649572,
"recall": 0.6507936507936507,
"f1": 0.6069243156199677
},
"toxic": {
"n_samples": 61,
"accuracy": 0.9344262295081968,
"precision": 0.7142857142857143,
"recall": 0.9655172413793103,
"f1": 0.7821428571428571
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.2563386788633516,
"js_divergence": 0.06872839042316117
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.11061601330629428,
"lr": 0.0003491022701087641,
"weight_decay": 1.2696904821623371e-05,
"backbone_lr_ratio": 0.39277239063286945,
"moe_n_experts": 4,
"moe_top_k": 2,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 32,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

View File

@ -0,0 +1 @@
{"outer_train_idx": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, 100, 102, 104, 105, 106, 109, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 127, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 146, 147, 148, 150, 151, 152, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 168, 169, 170, 172, 173, 174, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 193, 194, 195, 198, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 218, 219, 221, 223, 224, 226, 227, 228, 230, 231, 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 251, 252, 253, 254, 255, 256, 257, 258, 259, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 278, 279, 280, 282, 284, 286, 288, 289, 290, 291, 292, 293, 294, 295, 297, 298, 299, 301, 302, 304, 305, 306, 307, 308, 309, 310, 312, 314, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 331, 332, 334, 336, 340, 341, 343, 344, 346, 347, 348, 350, 352, 353, 357, 359, 360, 361, 362, 363, 364, 366, 367, 368, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 400, 401, 402, 403, 404, 406, 407, 410, 411, 412, 414, 415, 416, 418, 419], "outer_test_idx": [3, 6, 13, 18, 19, 26, 33, 44, 48, 49, 50, 56, 57, 72, 80, 88, 94, 101, 103, 107, 108, 114, 126, 128, 130, 145, 149, 157, 167, 171, 175, 188, 196, 197, 199, 211, 220, 222, 225, 229, 232, 236, 250, 260, 261, 271, 281, 283, 285, 287, 296, 300, 303, 311, 313, 318, 322, 323, 324, 329, 330, 333, 335, 337, 338, 339, 342, 345, 349, 351, 354, 355, 356, 358, 365, 369, 381, 388, 399, 405, 408, 409, 413, 417]}

View File

@ -0,0 +1,42 @@
{
"size": {
"n_samples": 83,
"mse": 0.30582211903190704,
"rmse": 0.5530118615652896,
"mae": 0.297713055668107,
"r2": 0.06157355129088471
},
"delivery": {
"n_samples": 59,
"mse": 0.7117105624010245,
"rmse": 0.8436293987296937,
"mae": 0.5593153651077616,
"r2": 0.30813277436953124
},
"pdi": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.36681547619047616,
"recall": 0.5662442396313364,
"f1": 0.3804035250463822
},
"ee": {
"n_samples": 84,
"accuracy": 0.6666666666666666,
"precision": 0.5864396721189867,
"recall": 0.6201608848667672,
"f1": 0.5949003714961162
},
"toxic": {
"n_samples": 60,
"accuracy": 0.9333333333333333,
"precision": 0.7142857142857143,
"recall": 0.9649122807017544,
"f1": 0.7818181818181817
},
"biodist": {
"n_samples": 60,
"kl_divergence": 0.31884722326826903,
"js_divergence": 0.08589330459529161
}
}

View File

@ -0,0 +1,16 @@
{
"dropout": 0.41353294032230026,
"lr": 0.00018606616740103076,
"weight_decay": 9.912252717813433e-05,
"backbone_lr_ratio": 0.32820993966799533,
"moe_n_experts": 4,
"moe_top_k": 1,
"moe_expert_hidden_mult": 2,
"llm_lora_r": 16,
"d_model": 256,
"num_heads": 8,
"n_attn_layers": 4,
"fusion_strategy": "attention",
"head_hidden_dim": 128,
"set_transformer_block": "sab"
}

Some files were not shown because too many files have changed in this diff Show More