Who Was Allowed to Teach the Model?
The Training Set Is an Input Someone Can Change
BOTIE
Biggio, Nelson and Laskov studied this problem for support vector machines in 2012. They constructed training examples to increase later test error, examining how a learner could be influenced through its data supply. Our smaller workshop uses the average of accepted targets so the effect of each record is visible. Before fitting it, we will decide which sources and reviewed labels this release is allowed to use, and keep the accepted record identities with the result.
The New Feedback Batch Changed What Counts as Normal
Botie uses the average of recorded maintenance targets as a simple starting prediction. Now a supplier proposes another set of targets, including a very large value. If that record enters the average, Botie’s prediction moves toward it. The fitting code can work exactly as written while learning from a contribution that nobody authorised.
We need to ask who could contribute records, which labels were reviewed and which release used them. That gives us a boundary to defend before fitting begins. Unusual data is not automatically malicious, and a familiar source is not automatically trustworthy forever.
The source identities and review decisions are already trusted fixtures here. The components apply that evidence to a mean calculation; authenticating sources and judging labels happen outside this workshop.
Step 1 of 1
Inspect the supply path before fitting
These are records proposed for one training release, not evidence that any real supplier acted maliciously.
| Record | Resolved source ID | Label review | Numerical target |
|---|---|---|---|
| a | inspections-v1 | Complete | 1 |
| b | inspections-v1 | Complete | 3 |
| proposal-x | unapproved-feed | Claimed complete | 100 |
a
- Resolved source ID
- inspections-v1
- Label review
- Complete
- Numerical target
- 1
b
- Resolved source ID
- inspections-v1
- Label review
- Complete
- Numerical target
- 3
proposal-x
- Resolved source ID
- unapproved-feed
- Label review
- Claimed complete
- Numerical target
- 100
Name the influence an attacker could obtain
Every retained numerical contribution has the same retained record identity.
Keep the training contribution attached to its evidence
A new feed supplies numerical targets, but this release has not approved its source. Botie needs to keep it out of the fit while retaining the accepted records’ identities.
BOTIE
Accepted record IDs and their illustrative fitted target mean
[
[
"a",
"b"
],
2
]Follow the operations
1. Proposed training records with resolved evidence
[ { "id": "a", "source": "field", "target": 1, "reviewed": true }, { "id": "b", "source": "field", "target": 3, "reviewed": true } ]2. Keep training record identities
- 0a
- 1b
3. Source IDs approved for this release
- 0field
4. Check the recorded source against the release policy
- 01
- 11
5. Require a completed label review
- 01
- 11
6. Multiply
- 01
- 11
7. Select real entries
- 0a
- 1b
8. Read the aligned training targets
- 01
- 13
9. Select real entries
- 01
- 13
10. Report a mean only when evidence remains
2
11. Collect two results
[ [ "a", "b" ], 2 ]12. Result
[ [ "a", "b" ], 2 ]
The source identities and review decisions are already trusted fixtures here. The components apply that evidence to a mean calculation; authenticating sources and judging labels happen outside this workshop.
1. Name the influence an attacker could obtain
A poisoning attempt changes something used during learning, such as training examples, labels or an update supplied to a collaborative training system. Its goal might be broadly worse predictions or a particular wrong decision. The attacker’s available channel matters as much as the model type.
For our maintenance baseline, the threat is an unapproved feedback feed entering the training set. This is different from a legitimate new operating condition whose measurements deserve investigation.
A detector that flags unusual values can identify review candidates. It cannot infer intent from unusualness alone.
2. Keep provenance beside a record identity
If a target later turns out to be wrong, we need to find where it came from and which models used it. That record of origin and handling is provenance. Give a record an ID that stays attached to it, then retain its collection source and review status through the transformations that follow. A dataset release should name the records it included.
Evidence about the source must come from outside the record’s own claim. Depending on the system, that may involve authenticating the producer or checking a trusted signed manifest. A matching file hash confirms expected bytes; it cannot establish that a label inside those bytes is correct.
The workshop receives source IDs and review flags already resolved by a trusted ingestion process. It does not implement that process or verify signatures.
3. Apply the release policy before calculating the fit
This release accepts a record only when its source is on the approved list and its label review is complete. Use the same eligibility mask for IDs and numerical targets. Filtering values without their identities would lose the evidence we need to reproduce the model.
proposed targets = [1,3,100]
approved-source flags = [1,1,0]
completed-review flags = [1,1,1]
accepted flags = [1,1,0]
accepted targets = [1,3]
fitted baseline = (1 + 3) / 2 = 2The calculation shows the consequence of this policy. It does not establish that every approved source is honest.
Retain one rejected source in the review ledger
This small program selects IDs only. The challenge adds reviewed-label gating and the numerical summary.
rows = [{"id":"a","source":"field"},{"id":"x","source":"proposal"}]
approved = {"field"}
print([row["id"] for row in rows if row["source"] in approved])['a']The rejected row need not disappear from the audit trail. It simply does not enter this fitted release.
4. A trusted channel can still carry bad labels
A compromised approved source can pass an allowlist. A review process can also make systematic mistakes. Separate source authentication from label evidence and examine disagreements, repeated examples and changes in class or target distributions.
Duplicates can give one contribution more influence than expected. Group records by their actual contributing source or subject where the learning policy needs contribution limits. A count of distinct row IDs does not establish independent evidence.
There is no universal clipping threshold or outlier filter that makes a poisoned dataset safe. Strong screening also risks discarding legitimate rare examples.
Check yourself
Questions on Parts 1 to 4
Question 1 of 2
What does the text establish?
Use the information below.
A row says source="trusted" in its own JSON, but the ingestion process has not authenticated that source.5. Keep release evaluation outside the same contribution channel
Suppose the new supplier provides the training targets and the answers used to evaluate the model. A good score could mean that the model learned the supplier’s mistaken or manipulated convention. Reserve evaluation evidence with an appropriately independent collection and review process.
Look at relevant subsets as well as the total score. These subsets are often called slices: records from one source, for example, or one operating condition. A small affected group can disappear inside an average over many unaffected records.
An independent test set is useful evidence. It is not a guarantee against threats outside its coverage.
6. Quarantine a proposal without inventing a fitted result
Keep unapproved or unresolved contributions outside the training release while they are reviewed. If the filter leaves no accepted records, report that there is no fitted mean. Returning zero would make missing evidence look like a measured baseline.
Keep the reason for exclusion and the policy version so a later review can reproduce the decision. Avoid copying sensitive raw examples into broad operational logs.
The workshop represents the no-evidence result with null. The service consuming that result needs an explicit stop or review path.
7. Repair the release as well as the input feed
Stopping the source does not remove influence already learned by a deployed model. Use lineage to identify affected training runs, evaluation artifacts and deployments. Rebuild from a reviewed dataset, compare against an independent baseline and roll out the replacement through the normal release process.
Do not assume deleting a row retroactively unlearns its effect. Retain the incident fixture and ingestion checks so the same contribution path is tested before the next release.
The replacement release should identify the reviewed dataset, evaluation evidence and fitted artifact used in the repair.
Check yourself
Questions on Parts 1 to 7
Question 1 of 4
Which IDs enter this release policy?
Use the information below.
Accepted-source flags[1,1,0] and completed-review flags[1,0,1] describe IDs[a,b,c].Try it with Botie
Build with Botie
Write and run Python