Fin Maverick
Foundations VocabularyAccounting & ReportingEconomics & MacroQuant Methods & ProgrammingBusiness & Company AnalysisCorporate Finance & ValuationBehavioural Finance
Banking & Market InfrastructureFixed Income & RatesDerivatives & Structured ProductsPublic EquitiesTransactions & DealsPortfolio ConstructionFunds & AMCs
Private Markets & AlternativesRisk, Treasury & ControlAI & Digital FinanceStochastic Calculus & PricingWealth & Personal FinanceIndian Markets & RegulationProfessional Practice
CalculatorComparison
Frameworks
Explore Bootcamps
Equity ResearchPortfolio ManagementMutual Fund MasteryFinancial LiteracyInvestment Banking Analyst
Private Equity AnalystHedge Funds AnalystBreaking Into VCBreaking Into QuantsAI For Finance
Financial Analyst ProgramRisk Management ProgramPrivate Wealth ManagementDebt Capital MarketsDerivatives Foundation
Explore Internships
Equity Research InternMutual Fund Intern
Portfolio Management InternFinancial Literacy Intern
Explore Micro Courses

Equity Research6

Writing an Investment ThesisBuilding a Discounted Cash FlowReading an Annual Report FastReading a Sector Before a CompanySpotting Quality of Earnings Red FlagsBuilding a Revenue Forecast From Drivers

Portfolio Management3

Rebalancing: When, Why and What It CostsStrategic and Tactical Asset AllocationMeasuring Risk in a Portfolio

Mutual Fund Mastery3

Comparing Funds Without Being FooledHow a NAV Is Struck and Which Day You GetReading a Fund Factsheet Properly

Derivatives Unlocked4

Hedging a Real ExposureThe Greeks, PracticallyFutures, the Basis and What Moves ItReading an Option Payoff

AI For Finance2

Retrieval and Grounding for FinanceDocument Extraction in Finance

Breaking Into Quants4

Backtesting a StrategyHypothesis TestingCleaning Financial DataRegression for Finance

Breaking Into VC3

Sizing a MarketReading a Term Sheet as a FounderHow a Venture Round Actually Works

Financial Analyst Program4

Common Size and Trend AnalysisReading a Cash Flow StatementRatio Analysis That Says SomethingBuilding a Working Capital Schedule

Risk Management Program2

Credit Exposure and How It Is ReducedValue at Risk and What It Hides

Investment Banking Analyst3

Precedent Transactions and Why They DifferReading a Term Sheet StructurallyBuilding a Comparable Companies Table

Private Wealth Management3

Tax Aware Portfolio DecisionsBuilding a Client Risk ProfileGoal Based Planning Arithmetic

Debt Capital Markets3

Analysing an Issuer's CreditDuration and What It Does Not Tell YouBond Pricing and Yield Mechanics

Private Equity Analyst2

Fund Waterfalls and CarryThe LBO in Structure

Hedge Funds Analyst2

Short Selling MechanicsLong Short Mechanics
Courses
Explore Career Roadmaps
Investment Banking AnalystEquity Research AnalystVC AnalystPrivate Equity AnalystHedge Funds Analyst
Quant AnalystAI For FinanceFinancial Analyst ProgramPrivate Wealth ManagementDebt Capital Markets
Risk Management ProgramDerivatives FoundationPortfolio ManagementMutual Fund Mastery
PartnershipsShowdown
Log inSign up
AI, Automation & Digital Finance
1AI Foundations
Artificial Intelligence in FinanceAlgorithmNeural Networks and Deep LearningMachine LearningArtificial Intelligence vs Machine…Computer Vision in FinanceTraining Data and LabelsNatural Language Processing in Finance
2Generative AI
Generative AIGenerative AI vs Predictive AILarge Language ModelsEmbeddingsHallucinationFine TuningPrompting vs Fine TuningThe PromptThe Context WindowTool CallingGroundingVector DatabasesRetrieval Augmented GenerationRAG vs Fine Tuning
3Automation and Workflow
Workflow AutomationAutomation vs AugmentationHow to Map a…Straight-Through Processing and Exception…Robotic Process AutomationRule EnginesMachine Learning vs Rule-Based…
4Document and Operations AI
Intelligent Document ProcessingBatch vs Real-Time vs…Document Classification vs Entity…Service Level AgreementsCase ManagementHow to Document Data…Reconciliation AutomationOptical Character Recognition and Data ExtractionConfidence Scores
5Customer Systems, Identity and Digital Assets
Digital IdentityConsent ManagementBlockchain and Distributed LedgerChatbots and Conversational AIFrom Use Case to ProductionDigital Assets and TokenisationDigital SignaturesData Sharing in FinanceElectronic KYC and Digital Onboarding
6Credit and Fraud Systems
The Fraud AlertCredit Decisioning SystemsHuman in the Loop…Adverse ActionAnomaly DetectionThe Decision ThresholdCredit Score vs Credit DecisionAlert Triage and EscalationFraud Detection and Transaction MonitoringFraud Model vs Credit ModelHow to Build Human…
7Governance, Data and Vendors
AI Governance and the AI PolicyHow to Create an…Explainability and Interpretability ComparedThe AI VendorBias and Fairness in Financial AIShadow AIAccess Control and Data MinimisationCloud Computing in FinanceData Lineage and Master DataData ResidencyThe AI Use Case Register and Model InventoryThe Model Owner
8Model Performance, Monitoring and Resilience
Model DriftFalse Positives and False NegativesClassification MetricsAdversarial AttacksModel TestingBias, Fairness and Explainability…Stopping an Automated SystemModel ValidationAI Governance vs Model Risk ManagementPrompt InjectionHow to Create an…

Model Testing: What Is Checked Before a Model Goes Live

Testing before go-live asks whether the thing behaves as intended on data it has not seen, on every population it will meet, and when something expected does not arrive. One invented bank wrote down seven tests. The bank ran four before go-live and three afterwards, and the missing one is precisely the test that would have caught the fault that arrived in month 8.

A test is a question asked before anybody is harmed by the answer. The advantage a test holds over every other control a firm has is also, exactly, its limit. A test can only ask about a condition somebody has thought of, using data somebody already holds. So the tests that get postponed under a deadline are the ones about conditions nobody in the building has met yet, and those are exactly the conditions that arrive later.

What is testing before go-live actually asking?

Consider hiring a cook for a wedding. Not a small one, the full thing, four hundred people. Nobody hires on a conversation. The first step is to taste a few dishes the cook has already made. The cook chose those dishes, so they tell the family something real and nothing it did not already suspect. So the family names a dish itself, on the day, from ingredients it supplies. The first kind of question is about performance on something the person being tested did not choose.

Then comes a second kind of question, about scale and about spread. Cooking beautifully for six is not the same skill as cooking acceptably for four hundred, and the four hundred will not eat the same things: there will be children, elderly relatives, people who eat no onion. A cook who is wonderful on one of those groups and poor on another has an average that looks fine and a wedding that does not. The second kind of question is about populations.

And then there is a third question that almost nobody asks. How does the cook handle something going wrong that was never part of the plan? The vegetable delivery does not arrive. The gas runs out at seven in the evening. A tray of something arrives spoiled. None of those is a test of cooking. Each is a test of what happens at the edge, when the arrangement's own assumption simply is not there. Most people hiring a cook ask the first two questions thoroughly and skip the third entirely, and the reason is always the same: the delivery has always turned up before.

A pre-deployment testA question asked of a system before anybody is affected by the answer. asks those same three questions of a system. Does it behave as intended on data it has not seen? Does it behave as intended on every population it will actually meet, rather than on the average of them? And what does it do when something it expects does not arrive, or arrives in a shape nobody wrote down? Every one of the seven tests below is one of those three, plus one more about whether the whole assembly works when the parts are joined together.

Try it out

What are the three things testing before go-live is asking about?

AI For Finance Bootcamp — Fin Maverick

What are the seven tests, and what is each one for?

Sumeru Bank Limited, invented, runs a retail loan intake chain of nine numbered components, five of which are fitted to data. Before it put that chain in front of customers, it wrote down seven tests. The seven are the bank's own set, not anybody's list, not a standard and not a requirement of any authority: one firm's working practice rather than a template. Their value is not that they are the right seven but that they are a real seven, with a real record of which were run and which were not.

SEVEN TESTS, THREE QUESTIONS, AND ONE ASSEMBLY CHECK Green edge = run before go-live. Red edge = postponed. DATA IT HAS NOT SEEN 1 A slice of data deliberately held back from the fitting 2 A stretch of time after the fitting window POPULATIONS IT WILL MEET 3 Each channel, separately 4 Each kind of document 6 The outcome spread across the groups SOMETHING ARRIVING WRONG 5 What the chain does when a field is absent or arrives in a shape nobody expected THE WHOLE CHAIN AT ONCE 7 The whole chain end to end, on files people had already decided Sumeru Bank Limited is invented, and the seven tests are that bank's own set rather than anybody's list.
The seven tests answer only three questions between them, about unseen data, about populations and about things arriving wrong, and the third question is covered by a single test that this bank postponed.

Two of the seven are about data the chain has not seen. Test 1 runs it on held-back dataData deliberately kept out of the fitting so it can be used as something the model has not seen., a slice deliberately kept out of the fitting so it can stand in for the unfamiliar. Test 2 is an out-of-period testA test on a stretch of time after the window the model was fitted on. and runs it on a stretch of time after the fitting window closed. How that slice is chosen and how a reading on it is computed are questions about fitting and evaluation, covered separately. The question each test asks, and the price each test charges, are the two things to hold on to.

Three of the seven are about populations. A chain fitted mostly on one channel need not behave the same way on another, so test 3 reads the chain on each channel separately. Test 4 reads it on each kind of documentA category of document, distinct from the channel a document arrived through. separately, a different cut entirely: a channel is where something came from, a kind is what it is, and the two must never be merged. Test 6 reads the spread of outcomes across the groups the bank can actually construct from what it records. Whether those outcomes are fair, whether the chain repeats itself and whether a stated reason holds up are set out under bias, fairness and explainability testing, and are not settled by test 6 alone.

One of the seven is about things arriving wrong. Test 5, an absent field testA check of what the chain does when something it expects does not arrive, or arrives in a different shape., asks how the chain behaves when a field it expects is absent, or arrives in a format nobody wrote down. And one is about the assembly rather than the parts. Test 7 runs the whole chain end to end on files people had already decided, and at this bank test 7 was the pilot. Six of the seven can only ask about data that already exists somewhere, and exactly one of them, test 5, needs no data at all. The whole argument turns on that one test.

Why is the order they are run in not arbitrary?

Order matters because each test is only readable once the earlier ones have passed. Suppose the work starts at the other end, with test 7 first, the whole chain on real files, and the answers come back disappointing. Only one thing has been learned: something in a chain of nine components is wrong. Every component contributed to every answer, so which one cannot be said, and the only way on is to work backwards through the whole chain to find where the loss sits. The chain test is an excellent last test and a useless first one.

THE ORDER, AND WHAT A FAILURE AT EACH STEP MEANS Read left to right. Each step is interpretable only because the step to its left has already passed. STEP 1 TESTS 1 AND 2 Data it has not seen IF IT FAILS HERE: the fitting is wrong STEP 2 TESTS 3, 4 AND 6 Populations it will meet IF IT FAILS HERE: the weakness has an address STEP 3 TEST 5 Something arriving wrong IF IT FAILS HERE: the chain has no rule for it STEP 4 TEST 7 The whole chain at once IF IT FAILS HERE: nothing beyond the fact that it failed Run step 4 first and a failure names nothing at all. Nine components contributed to every answer, so the reading points at the chain and not at a part of it. The order is Sumeru Bank Limited's own, and every figure attached to it is that invented bank's.
The order is not housekeeping, because a failure at each step carries a different amount of information, and only the last step says nothing about where the loss sits.

Read the four boxes as a ladder of shrinking information. A failure at step 1 says the fitting itself is wrong: bad news arriving early and cheaply. A failure at step 2 gives the weakness an address: this channel, that kind of document, this group. A failure at step 3 says the chain has no written behaviour for something arriving wrong, not a performance finding at all but a missing decision. Only at step 4 does a failure stop naming anything, and that is why the chain test belongs last rather than first, however tempting it is to start with the realistic one.

Which four did this bank run before go-live, and which three waited?

Sumeru Bank Limited ran tests 1, 2, 3 and 7 before go-live and ran tests 4, 5 and 6 only afterwards. Four run plus three not run is seven. The interesting thing is not the count but which three fell on the wrong side of the line.

No.What the test asksWhat must already exist before it can be runBefore go-live
1Does it behave on a slice of data held back from the fitting?A slice deliberately kept out at fitting timeYes
2Does it behave on a stretch of time after the fitting window?A later period, and outcomes for itYes
3Does it behave the same on each channel taken separately?The channel recorded on every exampleYes
4Does it behave the same on each kind of document taken separately?The kind recorded on every exampleNo
5What does the chain do when a field is absent or arrives in an unexpected format?Nothing but a decision, written once for each fieldNo
6How do outcomes spread across the groups the bank can construct from what it records?The groups, and outcomes for themNo
7Does the whole chain end to end agree with people on files already decided?The whole chain built, decided files, and three monthsYes
Run before anybody was decided about by the chain4 of 7

Postponing tests is completely ordinary and it is not the failure in this episode. Every deployment in every industry ships with a list of things scheduled for after go-live, and a team that refuses to ship until all seven are done is usually a team that never ships. The decision worth recording is never how many tests were postponed but which ones. The three that waited at this bank contained the cheapest test on the board and the only one of the seven that asks about something arriving wrong.

Try it out

A team runs four of seven tests before go-live and schedules three for afterwards. Is that unreasonable?

What did the pilot buy, and what did its shadow decisions show?

Test 7 at this bank was a pilotA limited run beside the existing process, on real files, with the outcomes not acted on.. Months 1 to 3, on one channel, at about 400 files a month, the chain ran beside the process that was actually deciding. Every file went to a person as it always had, and the chain recorded what it would have done, without doing it. Three months at about 400 a month is 1,200 shadow decisionsA decision the system records without acting on it, beside the process that is actually deciding.: real files, real customers, and outcomes that touched nobody.

A pilot buys something no other test can buy. The pilot runs on the real thing, in the real order, with the real documents arriving in the real mess they arrive in. A shadow decision by construction cannot harm anybody, so the arrangement costs the applicant nothing. Back at the wedding, it is the equivalent of the new cook working three smaller functions alongside the cook the family already trusts, plating everything, and nobody serving any of it.

1,200 SHADOW DECISIONS, AND WHERE THE INFORMATION SITS Months 1 to 3, one channel, about 400 files a month, none of the outcomes acted on. 1,200 1,092 agreed, 91.0 per cent 108, being 9.0 per cent WHAT THE 1,092 SHOWS That the chain is not obviously broken. Reassuring, and nothing more than that. WHAT THE 108 SHOWS Every question the pilot raised is in here. 1,092 plus 108 is 1,200. Sumeru Bank Limited is invented and every figure here is that bank's own.
The agreement figure of 91.0 per cent is the number that gets reported and the disagreement figure of 9.0 per cent is the number that carries information, and both have to be said in the same breath.

Now watch what happens to those two numbers in a meeting. The 1,092 is the number that goes on the slide. A reading of 91.0 per cent sounds like a pass and reads as reassurance. The 108 is the number people skim past. The order is exactly the wrong way round. Agreement shows only that the chain is not obviously broken, and every question the pilot actually raised sits inside the 108 files where the chain and a person reached different outcomes. A pilot that produces no disagreements has shown nothing at all; it has shown only that the chain repeats what people were doing anyway.

Financial Analyst Program Bootcamp — Fin Maverick

What is a disagreement evidence of, and what is it not?

A disagreementA file where the system and the person reached different outcomes, which is a question rather than a verdict. is a file where the chain and the person landed differently. A disagreement is a question, not a verdict, and the reason is simple: nobody in the room knows who was right. The person is not an oracle. On a credit file, finding out who was right means waiting to see whether the borrower repays. The wait runs as long as the outcome takes to arrive, and that is well over a year on this bank's own definitions.

THE 108 DISAGREEMENTS ARE NOT ONE POPULATION BUT TWO 72 36 108 72 + 36 = 108 72 FILES, ONE DIRECTION The chain accepted. The person had referred. Reads as: the chain is looser than the person. Two thirds of the 108, being 66.7 per cent. 36 FILES, THE OTHER The chain referred. The person had accepted. The chain is tighter. Averaging the two directions into one disagreement rate destroys the only thing they were showing. Sumeru Bank Limited is invented and both counts are that bank's own.
Splitting the 108 by direction shows two populations of 72 and 36 that mean opposite things about the design, which a single disagreement rate of 9.0 per cent hides completely.

The split is the useful part. Of the 108, seventy two were files the chain accepted and a person had referred, and thirty six were files the chain referred and a person had accepted. Seventy two plus thirty six is 108. The two groups are not two halves of one finding; they point in opposite directions. The first says the chain is looser than the people were, and if the chain is wrong on those, the cost lands on the bank in bad lending. The second says the chain is tighter, and if the chain is wrong on those, the cost lands on the applicant, who waits and may be refused something they should have had.

The errors, if they are errors, fall on two different people and cost two different things, and a single disagreement rate of 9.0 per cent averages away exactly that. O'Neil, in Weapons of Math Destruction, 2016, makes the general point that a model's errors do not fall evenly across the people it decides about, and a two direction split is the cheapest instrument a firm has for seeing that at all.

Try it out

In the pilot, 72 files were accepted by the chain and had been referred by a person. Is the chain wrong on those 72?

Investment Banking Analyst Bootcamp — Fin Maverick

Why could a pilot of 1,200 files never have found what arrived in month 8?

The pilot was a good test. The pilot was real, it was three months long, and it produced a split worth arguing about. The pilot also could not possibly have found the fault that arrived later. The obvious answer to why is wrong, so the reason is worth being precise about.

The obvious answer is size. The pilot ran 1,200 files. The chain later decided 8,600 files every month, so 1,200 over 8,600 is 13.95 per cent, being 14.0 per cent of a single month. Put that next to a fault that occurs in one file in nine hundred and the arithmetic is stark: 1,200 divided by 900 is 1.33, so a set that size holds one such file, sometimes two, sometimes none. One file inside 1,200 is not a reading, it is an anecdote, and it is indistinguishable from a keying slip. Push the rarity out past one file in 1,200 and the expected count falls below one, so the set is expected to hold none at all. The honest floor on what any test set of a given size can reach is arithmetic rather than an opinion about diligence.

WHEN THE PILOT RAN, AND WHEN THE FAULT ARRIVED TEST 7, THE PILOT: MONTHS 1 TO 3, ONE CHANNEL 1,200 GO-LIVE, MONTH 4 ALL CHANNELS, MONTH 5 0 1 2 3 4 5 6 7 8 9 10 11 12 MONTHS FROM THE DAY THE USE CASE WAS APPROVED. NO CALENDAR DATE IS STATED. 30 working days MONTH 8, WEEK 2 An income field changes format MONTH 9, WEEK 3 Monitoring flags it The pilot's last file was decided at the end of month 3, more than four months before the field ever changed shape. Sumeru Bank Limited is invented. Months are numbered from approval and no calendar date is used.
The pilot ended at the close of month 3 and the field changed format in month 8, so no test set drawn from the pilot could have contained the condition however many files it held.

Now check that arithmetic against the actual fault, and watch the size argument collapse. Once the income field started arriving in the new format, about 12,900 files were decided across 30 working days and 176 of them moved from accept into the referral band. The rate is one file in 73, and a set of 1,200 files at that rate holds about sixteen of them. The fault did not exist while the pilot was running, so the pilot was more than large enough to see this fault and still could not have seen it. The pilot's last file was decided at the end of month 3 and the field changed shape in month 8, week 2, more than four months later.

The same collapse happens on the other fault the bank later met. Had the fifth kind of document been arriving during the pilot at the 8 per cent of monthly documents it later represented, a 1,200 file pilot carrying four documents a file holds 4,800 documents, of which 384 would have been of that kind. Three hundred and eighty four is plenty to read. So size was not the constraint there either. The constraint was what the pilot recorded, agreement with a person file by file, and never a reading taken separately for each kind of document.

Put the two together and the conclusion is uncomfortable but exact. A test set can fail in three quite different ways: it can be too small, it can be big enough but ask the wrong question, or it can be perfectly designed and simply predate the condition. Only the first of those is fixed by running more files, and it is the only one anybody ever budgets for.

Try it out

Before the control below is moved: which of the seven tests would have caught an income field changing format?

Play with it

Switch the seven tests on and off, and watch three faults go dark

One control: which of the seven tests are switched on, in any combination. One consequence: how many of the three faults this deployment actually met are answered before go-live rather than met live. The default is the bank's actual set, tests 1, 2, 3 and 7, and that set catches one of the three. Adding test 4 gives two of three. Adding test 5 gives three of three. Tests 1, 2, 6 and 7 catch none of these three, and the control shows it.

The seven tests, click to switch each on or off
Or jump to a set
WHICH TESTS ARE ON, AND WHICH OF THREE FAULTS THAT ANSWERS TEST 1 ON TEST 2 ON TEST 3 ON TEST 4 OFF TEST 5 OFF TEST 6 OFF TEST 7 ON THE CHANNEL DIFFERENCE 94.1 per cent on the channel that gave 62 per cent of the fitting examples, and 87.9 on the others. A gap of 6.2 points. CAUGHT BEFORE GO-LIVE ANSWERED BY TEST 3, AND NO OTHER Known before anybody was decided about by the chain. A FIFTH KIND OF DOCUMENT 71.0 per cent against 96.2 on the four kinds it was fitted on. A gap of 25.2 points that moves the overall reading only 2.0 points, to 94.2. MET LIVE, NOT CAUGHT ANSWERED BY TEST 4, AND NO OTHER Found only when test 4 was finally run, after go-live. AN INPUT FIELD CHANGES FORMAT Month 8, week 2. Nothing stopped and nothing was flagged. About 12,900 files decided over 30 working days and 176 moved into the referral band. MET LIVE, NOT CAUGHT ANSWERED BY TEST 5, AND NO OTHER Ran for 30 working days before anybody knew. 1 of 3 caught before go-live Tests on: 1, 2, 3 and 7
Tests switched on
4
Faults caught before go-live
1
Faults met live
2

With tests 1, 2, 3 and 7 switched on, one of the three faults is answered before go-live. The chain meets the rest live: a fifth kind of document read correctly 71.0 per cent of the time against 96.2, a gap of 25.2 points that moves the overall reading only 2.0; and an input field changing format in month 8 week 2, about 12,900 files decided over 30 working days and 176 moved from accept into the referral band.

Educational illustration. Figures are Sumeru Bank Limited's own and describe one deployment. The three faults are the three this invented bank actually met, and they are not a list of everything that can go wrong: this control shows what these seven tests would have answered about these three faults and nothing more. Tests 1, 2, 6 and 7 answer none of these three, and answering none does not make them worthless, only irrelevant to this particular three. Catching is shown as knowing rather than as fixing: test 3 was run and the 6.2 point channel gap was known, and the chain went live anyway. Test 4 catches the fifth kind by making the reading a per-kind reading rather than one number, so a new kind is measured instead of absorbed. A fault nobody has thought of is answered by no test at all.
Cleaning Financial Data — free micro-course from Fin Maverick

Which single missing test would have caught the fault that arrived?

Test 5 asks how the chain behaves when a field is absent or arrives in a format nobody wrote down. In month 8, week 2, an income field arriving from one channel arrived in a format nobody had written down. The mapping is not rhetorical. The test and the fault are the same sentence twice, once as a question and once as an event.

The week that followed is the part worth sitting with. Nothing stopped. Nothing errored. Nothing was flagged. The chain read the field, did something with it, and carried on producing decisions that looked exactly like the decisions of the week before. Over the next 30 working days about 12,900 files were decided and 176 of them moved from accept into the referral band. The failure left no error message anywhere. Nobody had ever written down what that field should do when it arrived wrong, so there was no rule that could be broken.

THE RECORD ITSELF: ITEM 6, WHAT HAPPENS WHEN THIS FIELD IS ABSENT One cell for each of the 14 fields the reading step extracts. 1 YES 2 YES 3 YES 4 NO 5 NO 6 NO 7 NO 8 NO 9 NO 10 NO 11 NO 12 NO 13 NO 14 NO Written down for 3 of the 14 fields, being 21.4 per cent. Missing for 11, being 78.6 per cent. 3 + 11 = 14. WHAT TEST 5 ASKS What does the chain do when a field it expects is absent, or arrives in a shape nobody wrote down? WHAT ARRIVED, MONTH 8 WEEK 2 An income field from one channel began arriving in a shape nobody wrote down. Nothing stopped. Nothing was flagged. 30 working days. About 12,900 files decided. 176 moved from accept into the referral band. Test 5 needed no fresh data at all. It needed one written decision for each of the 14 fields. Sumeru Bank Limited is invented, and the 14 fields, the 3 and the 11 are that bank's own record.
The gap in the field record and the fault in month 8 are the same gap, because a chain that has no written behaviour for a field arriving wrong cannot flag one when it does.

The same absence shows up in the bank's own paperwork before it ever showed up in a decision. For every field the chain consumes, the bank keeps eight numbered items, and item 6 is what happens when the field is absent. Of the fourteen fields the reading step extracts, item 6 is written down for 3, being 21.4 per cent, and missing for 11, being 78.6 per cent. Three plus eleven is fourteen. The field record existed, in that state, for months before month 8. The fault did not appear out of nowhere in month 8; it had been sitting in a spreadsheet as eleven blank cells since before the chain went live, and nobody read it as a test result because it did not look like one.

THE SEVEN, RANKED BY WHAT MUST ALREADY EXIST BEFORE THE TEST CAN BE RUN Least demanding at the top. The ranking is what each test requires, not a costing this bank performed. RANK TEST WHAT MUST ALREADY EXIST BEFORE GO-LIVE 1 TEST 5 Nothing but a decision, written down once for each field POSTPONED 2 TEST 1 A slice of data deliberately held back at fitting time RUN 3 TEST 3 The channel recorded on every example RUN 4 TEST 4 The kind of document recorded on every example POSTPONED 5 TEST 6 The groups the bank can build, and outcomes for them POSTPONED 6 TEST 2 A later stretch of time, and its outcomes RUN 7 TEST 7 The whole chain built, decided files, and three months RUN The test needing least of all was the one that waited, and it is the one that maps onto the fault.
Ranked by what each test requires before it can be run at all, test 5 sits first and needs nothing but a written decision, and it is the one this bank postponed.

The ranking is the sting. Test 7, the pilot, took three months of calendar time and a working version of the whole chain. Test 2 needed a later stretch of time to have happened and outcomes to exist for it. Test 5 needed a person, a list of fourteen fields and an afternoon of deciding what each should do when it arrives wrong. The chain itself cost Sumeru Bank Limited Rs 2,40,00,000/- to build and Rs 65,00,000/- a year to run. At the bank's own assumed fully loaded Rs 9,00,000/- a year a post, spread over the 240 working days its own arithmetic uses, one working day of one person is Rs 3,750/-.

So why was it skipped? For the same reason nobody in a household ever asks what happens if the milk does not arrive on Tuesday. The milk always arrives. There is no incident, no complaint and no near miss pointing at it, and a test with no story behind it loses every argument about what fits in the remaining fortnight. Nothing had ever gone wrong with those fields, and test 5 was postponed for the exact reason cheap tests are always postponed: a test that has never had anything to find looks indistinguishable from a test that will never find anything.

Try it out

Why is test 5 the least demanding of the seven?

Cleaning Financial Data teaches you to find the errors that survive every check and break every model. Document Extraction in Finance — free micro-course from Fin Maverick

What did test 4 find when it was finally run?

Test 4 was one of the three that waited, and when it was eventually run it produced a reading nobody had seen before. The document classifier reads the four kinds of document it was fitted on correctly 96.2 per cent of the time. A fifth kind had begun arriving from one channel, and on that fifth kind it reads correctly 71.0 per cent of the time. Ninety six point two less seventy one point zero is a gap of 25.2 points.

Hold that gap next to what the reported figure did. The fifth kind is 8 per cent of monthly documents, so the overall reading becomes 92 per cent of 96.2 plus 8 per cent of 71.0, or 94.2. The headline moved from 96.2 to 94.2, a movement of 2.0 points. A population reading 25.2 points worse than the rest moved the number anybody actually looks at by 2.0 points. Tests 3 and 4 exist as separate tests rather than as a footnote to the overall figure for exactly that reason.

THE SAME TWO NUMBERS, DRAWN TO THE SAME SCALE READ CORRECTLY, BY KIND OF DOCUMENT THE OVERALL READING THAT GETS REPORTED 0 25 50 75 100 a gap of 25.2 points FOUR FITTED KINDS 96.2% THE FIFTH KIND 71.0% 0 25 50 75 100 a movement of 2.0 points BEFORE 96.2% AFTER 94.2% THE SAME MOVEMENT ON THE RIGHT, MAGNIFIED: A SCALE RUNNING ONLY FROM 93 TO 97 93 94 95 96 97 96.2 94.2
Drawn on one scale, a 25.2 point gap on a small population is unmistakable and the 2.0 point movement it produces in the headline is almost invisible, which is why the headline is not a test.

One separation matters and it is easy to fumble. The 71.0 per cent is a reading on a kind of document. The channel reading is a different measurement, where the chain reads 94.1 per cent on the channel that supplied 62 per cent of the fitting examples and 87.9 per cent on the others, a gap of 6.2 points. A channel is where something came from. A kind is what it is. Test 3 asks the first question and test 4 asks the second, and merging the two readings into one story about the classifier would be wrong in both directions.

Try it out

The overall reading moved 2.0 points when a fifth kind of document started arriving. What was the gap on that kind?

Document Extraction in Finance teaches you to design an extraction pipeline for a financial document and set the confidence threshold honestly.

What can no amount of testing show?

Suppose every one of the seven tests had been run before go-live and every one had passed. The finding would be real and narrow: the chain behaves as intended on conditions somebody thought of, using data somebody already held. A finding like that is genuinely worth having. And it is, precisely, everything seven passes can establish.

A test is a question, and a question nobody asked has no answer. There is no reading, no percentage and no pass mark that covers the conditions nobody in the building has met yet. More testing means more questions from the same people with the same experience of the same past, so more testing does not close that gap. A passing test set is a starting position rather than a conclusion, and monitoring after go-live exists for exactly that reason.

There is a second limit, quieter and easier to miss. A test that is run is not a test that is acted on. Sumeru Bank Limited ran test 3 before go-live, so the 6.2 point difference between one channel and the others was measured, written down and known while the chain was still deciding nothing. The chain went live anyway. Going live may well have been the right call. Either way, the one fault of the three the bank's own test set caught is also a fault the bank went live carrying, so a count of tests run overstates what a test set actually protects anybody from.

Try it out

Every one of the seven tests passes. What has been established?

How to Test an AI System Before Production Deployment: what does a run of the seven actually look like?

Everything above collapses into a working sequence, and a firm that has been through it has a test set rather than a set of reassurances. The sequence runs in five moves, and none of them is statistical.

First, every condition the thing will meet is written down, not every condition it was fitted on. The two lists are different and the second is always shorter. Channels, kinds of document, groups that can be constructed from the firm's own records, and the ways an expected field can fail to arrive. Second, each condition becomes a question with a name and a number, so a postponed test is a visible row rather than a silence. Third, they are ordered so that a failure at each step names something: parts before assembly, always. Fourth, the tests that need no data are run first, as only those can be finished before anything else exists. Fifth, whichever are postponed are recorded as postponed, with a name against the decision. The postponement is the part of the record that will matter later.

The fourth move is the one this bank inverted. Test 5 required nothing and was scheduled last; test 7 required the whole chain and three months and was run first. The tests that need nothing are the tests that can be completed while everything else is still being built, and they are therefore the only ones a deadline cannot legitimately squeeze.

What does a person actually do with this on a Monday morning?

Take three people looking at the same seven rows. Revathi Balan, the named accountable person for the scoring model, is not reading the readings; she is reading the fourth column, the one that says what each test needed before it could be run, and asking which rows are empty for a reason and which are empty because nobody argued for them. Ashok Pillai, in technology risk, is doing something narrower and more useful: he is putting the seven tests next to the fourteen fields and noticing that eleven of them have no written behaviour when absent. Eleven blank cells is a test result sitting in a spreadsheet rather than in a test report.

Ismail Sheikh, who runs the exception desk, is the one with the sharpest instrument and the least formal standing. He sees the disagreements. He knows which files the chain and his people read differently, and the desk works the cases, so he knows it within a week rather than within a year. A firm that treats the desk's disagreement as an operations statistic rather than as the cheapest live test it has is throwing away the one signal in the building that keeps producing after go-live.

And for anybody outside a bank reading a claim about an automated arrangement, the useful question is not what its overall reading is. The useful question is much shorter: on which populations was that reading taken separately, and what does the arrangement do when an input arrives in a shape nobody wrote down? An overall figure with no per population readings behind it, and no written behaviour for a missing field, is a claim about the average of a thing rather than about the thing.

How is this different from monitoring and from independent challenge?

Three arrangements are easy to confuse because all three involve somebody checking something. The three ask different questions at different times and none substitutes for another.

THREE QUESTIONS, THREE TIMES, THREE BLIND SPOTS TESTING BEFORE GO-LIVE MONITORING INDEPENDENT CHALLENGE IT ASKS Does it behave as intended on conditions somebody thought of? IT ASKS Is it still behaving that way, on what is arriving now? IT ASKS Were the choices behind it reasonable in the first place? WHEN Before anybody is affected WHEN Continuously, while people are being affected WHEN Periodically, by somebody who did not build it IT CANNOT SEE A condition nobody has met yet, or anything after go-live IT CANNOT SEE Anything at a position in the chain where nothing is watched IT CANNOT SEE An episode that falls between two of its own visits The first two ask whether it does what it was built to do. Only the third asks whether that was well defined.
Testing asks before anybody is affected, monitoring asks while they are, and independent challenge asks whether the choices behind the thing were reasonable, so no one of the three replaces another.

The last column is the one firms most often think they can economise on, and the reasoning sounds solid: with thorough testing and thorough monitoring, what is a third party going to add? The answer is that both of the first two check behaviour, and neither checks the choices. The definition of a bad outcome, the window it is measured over, the population it is measured on and the cases excluded are decisions somebody made before any of this was built. A chain can pass every test and every alert rule while resting on a definition of a bad outcome that nobody outside the team building it has ever read. Examining those choices is the work of independent challenge, covered separately.

Try it out

A firm has thorough testing and thorough monitoring. Does it still need somebody independent to look?

The error that gets made, and what it costs

The tempting reading of this episode is that the bank was careless, that four of seven is a poor score, and that the answer is more testing. Follow it through on these figures and it buys less than it promises. Adding tests without changing which ones, and in what order, produces the same shape at a higher cost: test 6 is a perfectly good test and answers none of the three faults this deployment actually met, and so do tests 1, 2 and 7. A firm that responds to this by mandating all seven, in the order the team happens to find convenient, has bought the whole cost of the set and only some of its value.

The reverse error is quieter and it is the one that produced the outcome. The mistake is to treat a test that needs no data as documentation rather than as a test. Test 5 does not look like testing. Test 5 has no sample, no reading and no percentage at the end of it, only fourteen written decisions, so it reads as paperwork and gets scheduled with the paperwork. A test that produces a written rule rather than a number was filed with things that can wait, and the whole of the month 8 episode sits in that one category error.

And there is a cost neither error touches. The postponement did its damage to the record rather than to the decisions. When the chain did start behaving differently in month 8, nobody could tell quickly whether it was a fault or a change somebody had made. No written statement existed anywhere of what the chain was supposed to do when that field arrived wrong. Test 5 would have produced that statement as a by-product. Its real value was never catching the fault on the day; it was that the answer to what should happen would have already existed, in writing, before anybody needed it.

India

What the reader has to confirm at source

Where a regulated lender deploys an automated decisioning arrangement, the expectations about what a firm should be able to show it checked before deployment sit with the Reserve Bank of India and are published at rbi.org.in. The standing international discipline from which model risk practice originates is published by the Bank for International Settlements at bis.org, and what actually applies to a bank in India is what the Reserve Bank of India states rather than what the international material says. Read the current position at the source.

The seven tests are Sumeru Bank Limited's own set rather than anybody's list, and the split of four run and three postponed is that invented bank's own record.

How a model is fitted and how a slice of data is held back are covered separately, and which question each evaluation measure answers is set out under classification metrics. Testing for unequal outcomes, for repeatability and for whether a stated reason holds up is set out under bias, fairness and explainability testing. Independent challenge by somebody who did not build the thing is covered separately, as is model drift and monitoring after go-live. How a firm acts once something has been flagged, and how a stop is actually carried out, are set out under stopping an automated system. Every number belongs to one invented bank and one deployment.
Breaking Into Quants Bootcamp — Fin Maverick

Sources

SourceDocumentSite
Reserve Bank of IndiaPublished expectations on a regulated lender covering digital lending, outsourcing, data and consent, and what a firm should be able to show about arrangements that decide customer outcomes. The position that applies to a bank in India is stated by the Reserve Bank of Indiarbi.org.in
Bank for International SettlementsInternational supervisory material from which the standing discipline of model risk work originates, an origin rather than the position that applies in Indiabis.org
O'NeilWeapons of Math Destruction, 2016, on a model's errors falling unevenly across the people it decides aboutprinted book

Sumeru Bank Limited, its intake chain, Revathi Balan, Ismail Sheikh and Ashok Pillai are invented.
Educational material. Not advice on any investment, tax, budget or market position.

Covered in this topic

Subtopics

How to Test an AI System Before Production Deployment
← PreviousNext →
Fin Maverick Micro CoursesExplore Micro Courses
Fin Maverick BootcampsExplore Bootcamps
Fin Maverick

Finance education that ends in a job, not a certificate that gathers dust. Built for young India.

LEARN
CalculatorsFrameworksComparisonsCareersShowdown
RESOURCES
All CoursesMicro CoursesBootcampsInternships
COMPANY
AboutJob openingPartnership
LEGAL
Privacy PolicyTerms & ConditionsContent LicenseReturn & Refund Policy
© 2026 FIN MAVERICK / BUILT FOR INDIA.DO FINANCE, DO NOT JUST READ ABOUT IT.