Replace clustering with a catalogue, and hand-write the references to judge it against
The pipeline's embed-and-cluster step is dead, and this commit holds both the evidence for that and the step proposed to replace it. Predicaments. Scenes are re-described as "what the person is up against", with no names, jobs or places, then embedded and clustered (redescribe.py, topic_words.py, topic_share.py). The pilot chose qwen3:14b over 3b by reading both side by side. Two defects the pilot exposed are fixed: split.py missed titles in quotes and a contents subtitle after a dash, so three stories had been merged into their neighbours, and strip_names.py read New York place names as people. The corrected corpus is probe/v2 (97 stories, 839 scenes); carry_summaries.py reuses the 829 unchanged v1 summaries. Topic share fell from 20% to 13% at k=60, short of the pre-registered 10%. Hand references. Three corpora were read scene by scene and written up by hand, under the same prompt rules the local models get, as a baseline to judge them against: O. Henry (probe/v2/claude, 839 scenes, 20 situations), Wharton's Descent of Man (probe/wharton, 262 scenes, 16 groups) and Jacobs's The Lady of the Barge (probe/jacobs, 157 scenes, 19 groups). Each has its own README and a readable page. No inference was used for any of them. Catalogue. probe/catalogue maps every hand group in the three references onto 36 situation entries, with an answer key per corpus and one recurrence rule applied to all three. classify.py assigns a scene one entry or none, leave-one-corpus- out; score.py checks it against the key, with a self-test on random labels. Why clustering is out: hand-written predicaments, embedded and clustered exactly as the model's were, agree with the hand grouping at ARI 0.05 — no better than the 14B text's 0.07. Better rewriting cannot rescue it. Embeddings cannot even shortlist: the hand label is the nearest entry 13% of the time and in the top 8 half the time. The classification runs are not here. The dev and test runs are pre-registered in probe/catalogue/README.md with the bar set beforehand, and are blocked on the inference host, whose GPU has fallen off the PCIe bus three times. The 30-scene partial output in out/ is not a result. Review page. The situation review is now a browser page rather than JSON edited by hand (review_page.py, review_page_logic.cjs with Node tests, format schema v2). It has never been rendered in a real browser. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014BygvsUXV9eU6oHkTCkKZ1
This commit is contained in:
co-authored by
Claude Opus 5
parent
fa3769d0fe
commit
e5617b86ba
@@ -0,0 +1,47 @@
|
||||
[
|
||||
{"chunk":728,"story":83,"summary":"A tailor's apprentice with his week's twelve dollars goes to the cafe where the district's political leader is celebrating victory.","predicament":"Someone at the bottom worships the powerful person at the top of their small world."},
|
||||
{"chunk":729,"story":83,"summary":"Emboldened, he shakes the great man's hand and spends his whole week's wages buying wine for him and his lieutenants.","predicament":"Someone spends everything they have for a moment's acknowledgement from a superior."},
|
||||
{"chunk":730,"story":83,"summary":"His family shrieks and strikes at him over the lost wages, but he is ecstatic; the leader himself cannot enter the best houses.","predicament":"Someone considers a public humiliation worth it for the honour they gained."},
|
||||
{"chunk":731,"story":83,"summary":"At a fashionable restaurant the political leader dines gloomily, ignored; across the room sits a millionaire of the oldest society.","predicament":"Someone powerful in their own world is nobody in the world they want to enter."},
|
||||
{"chunk":732,"story":83,"summary":"The leader walks over and offers help with the aristocrat's reforms; the handshake raises him in every eye, and he orders wine for all.","predicament":"Someone gains standing by offering service to the person whose acceptance they crave."},
|
||||
{"chunk":733,"story":83,"summary":"The aristocrat drives his fiancee through the slums, pointing out where he will build kitchens and replace the old death-traps.","predicament":"Someone at the very top seeks meaning by helping those at the very bottom."},
|
||||
{"chunk":734,"story":83,"summary":"On impulse he grasps the hand of a squalid young man coming out of a tenement, and feels almost happy: it is the apprentice.","predicament":"Each person in the chain seeks the approval of the one above and gives it below."},
|
||||
{"chunk":735,"story":84,"summary":"Two shop girls plan new dresses for the store's holiday dinner, one purple, one red, each hoping to charm the head clerk.","predicament":"Two coworkers compete quietly for the notice of the same person."},
|
||||
{"chunk":736,"story":84,"summary":"She has saved eighteen dollars over eight months and needs four more to collect the dress the day before the holiday.","predicament":"Someone has saved for months toward a single occasion and is nearly there."},
|
||||
{"chunk":737,"story":84,"summary":"The head clerk is a gentleman and a health crank, and every girl in the store dreams of becoming his wife.","predicament":"Everyone in a workplace hopes to win the same well-placed person."},
|
||||
{"chunk":738,"story":84,"summary":"The night before, her rival is locked out over four dollars of rent; she gives her the four dollars meant for the dress.","predicament":"Someone gives a rival the money they needed to reach their own goal."},
|
||||
{"chunk":739,"story":84,"summary":"Her rival goes to the dinner in red; she stays home by the window, then tells the tailor she cannot pay.","predicament":"Someone misses the occasion they saved for, having given their chance away."},
|
||||
{"chunk":740,"story":84,"summary":"The tailor, who has watched her pass for two years, gives her the dress to pay later; she walks out happy into the rain.","predicament":"Someone is trusted on credit by a stranger who has quietly observed their character."},
|
||||
{"chunk":741,"story":84,"summary":"The head clerk meets her walking bareheaded in the rain, praises her dress and her good sense, and asks to walk with her.","predicament":"Someone who gave up their chance is noticed anyway, by accident, by the person they hoped for."},
|
||||
{"chunk":742,"story":85,"summary":"A fire company's cart driver follows a foreign war obsessively on a pinned map, cheering one side and cursing the other.","predicament":"Someone takes fierce sides in a distant quarrel that has nothing to do with them."},
|
||||
{"chunk":743,"story":85,"summary":"The firemen live by an unwritten code; meanwhile a grinning, bewildered immigrant is put ashore and wanders into the city.","predicament":"Someone arrives in a strange country with nothing and understands nothing around them."},
|
||||
{"chunk":744,"story":85,"summary":"The immigrant steps in front of the racing hose cart; the driver swerves into a pillar, breaking his shoulder and the horse's leg.","predicament":"Someone's duty to spare a stranger costs them dearly and ruins something they love."},
|
||||
{"chunk":745,"story":85,"summary":"The beloved horse is shot; the firemen drag the immigrant back to the station and abuse him as worthless foreign rubbish.","predicament":"Someone grieving blames the helpless stranger who caused the loss."},
|
||||
{"chunk":746,"story":85,"summary":"A shopkeeper who claims many languages cannot place him and calls him a fool; the firemen kick him into the street.","predicament":"Someone nobody can understand is judged worthless and thrown out."},
|
||||
{"chunk":747,"story":85,"summary":"The stranger keeps returning to apologise and is kicked out daily, until the driver's small son befriends him.","predicament":"Someone despised keeps coming back to make amends until one person accepts them."},
|
||||
{"chunk":748,"story":85,"summary":"The boy sets a motor car running away; the stranger leaps on the remaining horse bareback and snatches him from it.","predicament":"Someone despised saves the life of a child belonging to those who scorned them."},
|
||||
{"chunk":749,"story":85,"summary":"The driver grips his hand; told the stranger is a Cossack, a kind of Russian, he promptly changes sides in the war.","predicament":"Someone's gratitude to one person changes their opinion of that person's whole people."},
|
||||
{"chunk":750,"story":86,"summary":"A sober, capable bartender loves his employer's daughter but cannot say a word to her.","predicament":"Someone competent at everything else is helpless before the person they love."},
|
||||
{"chunk":751,"story":86,"summary":"Speechless before her, he talks only of rain; two men in the back room spend their days mixing and discarding drinks.","predicament":"Someone shy manages only small talk with the person they hope to marry."},
|
||||
{"chunk":752,"story":86,"summary":"The men explain that to dodge a heavy duty abroad they dumped all their bottles into two barrels, one vile, one sublime.","predicament":"Two people stumbled once on a success they cannot reproduce."},
|
||||
{"chunk":753,"story":86,"summary":"The second barrel gave courage, ambition and nerve; they sold it by the glass until a whole country nearly declared war.","predicament":"Someone had one extraordinary success and has spent everything since trying to repeat it."},
|
||||
{"chunk":754,"story":86,"summary":"For ten months they have mixed every liquor they own trying to find it again, pouring each failure away.","predicament":"Someone keeps searching for the one missing ingredient they cannot identify."},
|
||||
{"chunk":755,"story":86,"summary":"The bartender repeats the daughter's remark about water; they realise the missing element and are soon arrested for fighting and singing.","predicament":"Someone's casual remark gives others the answer they could not find."},
|
||||
{"chunk":756,"story":86,"summary":"He drinks the last two spoonfuls of the golden blend, lifts the daughter off her feet, and announces they are to be married.","predicament":"Someone suddenly finds the nerve they lacked and says the one thing they wanted to."},
|
||||
{"chunk":757,"story":87,"summary":"A young wife proudly shows her friend the bruises her husband gives her, saying a man who does not beat you does not care.","predicament":"Someone mistakes cruelty followed by gifts for proof of love."},
|
||||
{"chunk":758,"story":87,"summary":"The friend asks whether it hurts and why he does it; she laughs that it earns her theatre tickets and silk.","predicament":"Someone asks another to explain a way of life they cannot understand."},
|
||||
{"chunk":759,"story":87,"summary":"She says he beats her when drunk; the friend confesses her own husband never strikes her and never takes her anywhere either.","predicament":"Someone compares their dull marriage with a violent one and starts to envy it."},
|
||||
{"chunk":760,"story":87,"summary":"The husband bursts in with bundles, theatre tickets and the promised silk waist, and the envious friend goes upstairs.","predicament":"Someone watches another receive the reward they believe is missing from their own life."},
|
||||
{"chunk":761,"story":87,"summary":"The friend cries without reason; her husband comes home, grunts at supper, and reads in his stocking feet.","predicament":"Someone feels neglected by a partner who is steady, dull and silent."},
|
||||
{"chunk":762,"story":87,"summary":"On the holiday her friend is merry in new silk; seized by jealousy, she resolves to provoke her own husband into striking her.","predicament":"Someone decides to provoke the reaction they think proves they are cared for."},
|
||||
{"chunk":763,"story":87,"summary":"She rails at him and strikes him twice in the face, closing her eyes and waiting for the blow she longs for.","predicament":"Someone deliberately picks a fight to make a quiet partner show feeling."},
|
||||
{"chunk":764,"story":87,"summary":"Her friend runs up to see; she sobs that he never touched her, and has instead begun washing the clothes.","predicament":"Someone's provocation is answered with a kindness that feels like a humiliation."},
|
||||
{"chunk":765,"story":88,"summary":"A tired father reading by the window refuses to play with his young daughter and sends her out to play in the street.","predicament":"Someone too tired to give attention sends a child out to find it elsewhere."},
|
||||
{"chunk":766,"story":88,"summary":"Years on, a gang leader bets he will take another girl to the dance, and his friend warns him not to cross his fiancee.","predicament":"Someone risks the loyal person who loves them to prove a point about who owns whom."},
|
||||
{"chunk":767,"story":88,"summary":"He wants to teach his fiancee a lesson for her jealousy and drinking; his friend recalls he gave her her first drink.","predicament":"Someone blames another for faults they themselves introduced."},
|
||||
{"chunk":768,"story":88,"summary":"She drinks whisky in a cafe and tells the waiter that if he takes the other girl to the dance she will kill him.","predicament":"Someone betrayed by the person they depend on vows revenge over drink."},
|
||||
{"chunk":769,"story":88,"summary":"She recalls sitting on doorsteps as a child with nothing at home, then sits and teaches a small girl a string game.","predicament":"Someone who had nothing as a child sees their own beginning in another child."},
|
||||
{"chunk":770,"story":88,"summary":"At the dance she steps out and stabs him, then runs, pursued down the street by a howling crowd.","predicament":"Someone driven past bearing turns on the person who shaped and then betrayed them."},
|
||||
{"chunk":771,"story":88,"summary":"She throws herself into the river; the narrator dreams of a heavenly court where she is brought up for judgment.","predicament":"Someone destroyed by circumstances is judged as though they alone were responsible."},
|
||||
{"chunk":772,"story":88,"summary":"The court discharges her and sends the officer after the guilty party: the father who sat reading while his children played in the street.","predicament":"Someone who neglected a child years ago is named as the true cause of their ruin."}
|
||||
]
|
||||
Reference in New Issue
Block a user