G-reen/encoder-decoder-trial-stat
Encoder/decoder trial: encoder-marginal report Dataset: G-reen/encoder-decoder-trial-stat Rows analysed: 122,933 (every kept (encoder, decoder, source row) triple; source G-reen/cc-re-2021-filtered shard 0, 2000 rows of at most 4000 words) Prompt file: prompts/indirect_reference_dataset_train.json (turn 0 encodes the document, turn 1 reconstructs it from the encoding alone) Encoders: 9 (granite-4.2-30b-nvfp4 [0], Ornith-1.5-35B-A3B-NVFP4 [1], Llama-3.3-70B-Instruct-NVFP4 [2]… See the full description on the dataset page: https://huggingface.co/datasets/G-reen/encoder-decoder-trial-stat.
Encoder/decoder trial: encoder-marginal report
- Dataset:
G-reen/encoder-decoder-trial-stat - Rows analysed: 122,933 (every kept (encoder, decoder, source row) triple; source
G-reen/cc-re-2021-filteredshard 0, 2000 rows of at most 4000 words) - Prompt file:
prompts/indirect_reference_dataset_train.json(turn 0 encodes the document, turn 1 reconstructs it from the encoding alone) - Encoders: 9 (granite-4.2-30b-nvfp4 [0], Ornith-1.5-35B-A3B-NVFP4 [1], Llama-3.3-70B-Instruct-NVFP4 [2], Qwen3.8-27B-AWQ-INT4 [3], Mistral-Small-4-119B-2603-NVFP4 [4], gemma-4-31B-it-AWQ-4bit [5], Laguna-S-2.1-NVFP4 [6], claude-sonnet-5 [8], gpt-5.6-terra [9])
- Decoders: 7 (granite-4.2-30b-nvfp4 [0], Ornith-1.5-35B-A3B-NVFP4 [1], Llama-3.3-70B-Instruct-NVFP4 [2], Qwen3.8-27B-AWQ-INT4 [3], Mistral-Small-4-119B-2603-NVFP4 [4], gemma-4-31B-it-AWQ-4bit [5], Laguna-S-2.1-NVFP4 [6])
Models (trial index: config):
- 0:
config/gen/train/shard_0.toml - 1:
config/gen/train/shard_1.toml - 2:
config/gen/train/shard_2.toml - 3:
config/gen/train/shard_3.toml - 4:
config/gen/train/shard_4.toml - 5:
config/gen/train/shard_5.toml - 6:
config/gen/train/shard_6.toml - 7:
config/gen/train/shard_7.toml(decode only) - 8:
config/encdec/claude_sonnet_5.toml(encode only) - 9:
config/encdec/gpt_5_6_terra.toml(encode only)
Statistics:
- every configured statistic was present.
Summary: per-encoder means, marginalised over decoders
Every encoder encoded the same 2000 rows and every decoder decoded all of every encoder's encodings (the same source rows for every encoder), so each encoder's row is an average over the same decoders and source texts. Values are the decoder-balanced means (mean of the per-decoder means); Rows counts the kept rows behind each. For reference, the human source texts score 0.0615 (std 0.1016) on the same EditLens model.
✔️ marks the highest EditLens score (most AI-like reconstructions), ❗ the lowest.
Kept rows per encoder x decoder (after the decoders' post-processing):
Decoder post-processing:
- Decoder 0 (
granite-4.2-30b-nvfp4): 17,393 kept / 603 trashed of 17,996; last pass decoded 9,000 rows; failed requests 6; runtime 4.2 h (rejection reasons, last pass: empty or too short: 83, refusal: 12, filler output: 4, unfilled placeholder: 93, task meta-commentary: 14, echoed instruction: 10, identical to source: 18) - Decoder 1 (
Ornith-1.5-35B-A3B-NVFP4): 17,573 kept / 423 trashed of 17,996; last pass decoded 15,296 rows; failed requests 2; runtime 2.2 h (rejection reasons, last pass: empty or too short: 23, refusal: 71, filler output: 25, unfilled placeholder: 85, task meta-commentary: 101, echoed instruction: 2, identical to source: 62) - Decoder 2 (
Llama-3.3-70B-Instruct-NVFP4): 17,805 kept / 191 trashed of 17,996; last pass decoded 15,296 rows; failed requests 2; runtime 9.7 h (rejection reasons, last pass: empty or too short: 45, refusal: 19, filler output: 3, unfilled placeholder: 53, task meta-commentary: 8, echoed instruction: 14, identical to source: 36) - Decoder 3 (
Qwen3.8-27B-AWQ-INT4): 17,530 kept / 466 trashed of 17,996; last pass decoded 9,000 rows; failed requests 4; runtime 5.9 h (rejection reasons, last pass: empty or too short: 85, refusal: 29, filler output: 4, unfilled placeholder: 69, task meta-commentary: 26, echoed instruction: 3, identical to source: 23) - Decoder 4 (
Mistral-Small-4-119B-2603-NVFP4): 17,591 kept / 405 trashed of 17,996; last pass decoded 9,000 rows; failed requests 0; runtime 1.6 h (rejection reasons, last pass: empty or too short: 50, refusal: 2, filler output: 7, unfilled placeholder: 151, task meta-commentary: 7, echoed instruction: 2, identical to source: 21) - Decoder 5 (
gemma-4-31B-it-AWQ-4bit): 17,630 kept / 366 trashed of 17,996; last pass decoded 9,000 rows; failed requests 0; runtime 6.3 h (rejection reasons, last pass: empty or too short: 37, refusal: 104, filler output: 2, unfilled placeholder: 79, task meta-commentary: 24, echoed instruction: 1, identical to source: 20) - Decoder 6 (
Laguna-S-2.1-NVFP4): 17,411 kept / 585 trashed of 17,996; last pass decoded 9,000 rows; failed requests 5; runtime 2.4 h (rejection reasons, last pass: empty or too short: 35, refusal: 36, filler output: 5, unfilled placeholder: 117, task meta-commentary: 27, echoed instruction: 5, identical to source: 19)
Encoding length per encoder
Length of each encoder's turn-0 output over all of its encodings, in whitespace-separated words and in characters. Empty encodings (failed requests) are counted in Empty and left out of the means. A run of emoji without spaces counts as one word, so the character column is given as well. For reference, the source texts average 569 words.
✔️ marks the longest encodings on average, ❗ the shortest.
Mean words per encoding family:
Detection: TPR at 0.1% FPR and AUROC
EditLens used as a detector. The threshold is calibrated on the whole human pool of G-reen/cc-re-2021-filtered: 387,327 human texts (20 shards, checkpoint pangram/editlens_roberta-large). At a 0.1% false positive budget the threshold is 0.9570: a text counts as AI when its score is above it, which flags 0.100% of the human pool. As a check, 0.10% of the trial's own 2,000 source texts score above it. TPR is the share of decoded texts above the threshold; AUROC ranks each slice of decoded texts against the same human pool.
Detection by encoding family
Detection by encoder
TPR Decoder Balanced is the mean of the per-decoder TPRs.
✔️ marks the highest TPR (easiest to detect), ❗ the lowest.
AUROC per encoder and encoding family:
TPR at 0.1% FPR per encoder and encoding family:
Detection by decoder
Detection excluding translation
The same threshold (0.9570) and human pool, with the decoded texts of the translation family left out (detection_excluded_families in the trial config). 91,515 of 122,933 decoded texts remain.
By encoder:
✔️ marks the highest TPR (easiest to detect), ❗ the lowest.
By decoder:
Detection by encoding instruction
Rows filtered out per encoder
Decoded rows that the decoders' post-processing rejected, per encoder (summed over decoders). A rejected row may carry several reasons, so the reason columns can add up to more than Trashed. Empty Encodings At Encode counts the encoder's own failed requests (those rows were never sent to a decoder).
Trashed rows per encoder x decoder:
Contents
- EditLens score (higher = more AI-like) (`final_response_editlens_score_roberta_large`)
- EditLens bucket (higher = more AI-like) (`final_response_editlens_bucket_roberta_large`)
- Jaccard-1 distance to the source (`jaccard_1`)
- Jaccard-2 distance to the source (`jaccard_2`)
- Levenshtein distance to the source (`levenshtein`)
- Soft n-gram distance to the source (`softngram`)
- Embedding cosine distance to the source (`cosdist`)
- BERTScore distance to the source (`bertscore`)
- BERTScore precision distance (`bertscore_precision`)
- BERTScore recall distance (`bertscore_recall`)
- MoverScore distance to the source (`moverscore`)
- Reranker distance to the source (`reranker`)
Statistics
EditLens score (higher = more AI-like) (final_response_editlens_score_roberta_large)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
EditLens bucket (higher = more AI-like) (final_response_editlens_bucket_roberta_large)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
Jaccard-1 distance to the source (jaccard_1)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
Jaccard-2 distance to the source (jaccard_2)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
Levenshtein distance to the source (levenshtein)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
Soft n-gram distance to the source (softngram)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
Embedding cosine distance to the source (cosdist)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
BERTScore distance to the source (bertscore)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
BERTScore precision distance (bertscore_precision)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
BERTScore recall distance (bertscore_recall)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
MoverScore distance to the source (moverscore)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
Reranker distance to the source (reranker)
Per encoder, marginalised over every decoder. Pooled Mean weights every kept row equally; Decoder Balanced Mean is the mean of the per-decoder means, and Spread Across Decoders their standard deviation.
Encoder x decoder cell means:
Per decoder, marginalised over every encoder (for contrast):
Per encoding instruction, marginalised over every encoder and decoder:
