{"version":2,"relationshipURLBase":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html","relationshipResolution":"Resolve relative relationship URLs against relationshipURLBase; complete records and absolute URLs are in blocks.","title":"LAB 01 · 固定表示：标签预算与读出","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html","markdown":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.md","pages":[{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","unit":"训练留下什么，训练答案又从哪里来？","unitId":"i-reuse-and-targets","chapter":"I","number":1},{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","unit":"训练留下什么，训练答案又从哪里来？","unitId":"i-reuse-and-targets","chapter":"I","number":2},{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","unit":"训练留下什么，训练答案又从哪里来？","unitId":"i-reuse-and-targets","chapter":"I","number":3},{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","unit":"训练留下什么，训练答案又从哪里来？","unitId":"i-reuse-and-targets","chapter":"I","number":4},{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","unit":"训练留下什么，训练答案又从哪里来？","unitId":"i-reuse-and-targets","chapter":"I","number":5}],"aliases":[{"oldId":"b-772ce23fee708efd5ff555f2","targetId":"b-772ce23fee708efd5ff555f2","page":"reading-opening","operation":"move","beforeSHA256":"bc32351da350dbbc3d5e0d84634437be06bf9693012be8e5360aad3343d65a48","afterSHA256":"bc32351da350dbbc3d5e0d84634437be06bf9693012be8e5360aad3343d65a48","reason":"Same source body in authored semantic page"},{"oldId":"b-47d9f12d90b3977bd459fbf9","targetId":"b-47d9f12d90b3977bd459fbf9","page":"reading-opening","operation":"move","beforeSHA256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","afterSHA256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","reason":"Same source body in authored semantic page"},{"oldId":"b-040cec458a6edde747e9c33f","targetId":"b-040cec458a6edde747e9c33f","page":"reading-opening","operation":"move","beforeSHA256":"75bc3d13109b5a891b82a4daefd668c001abde4ddf12e5ad4e20e6fe674663c6","afterSHA256":"75bc3d13109b5a891b82a4daefd668c001abde4ddf12e5ad4e20e6fe674663c6","reason":"Same source body in authored semantic page"},{"oldId":"b-c2f1a7542efc2bd53d1926d3","targetId":"b-c2f1a7542efc2bd53d1926d3","page":"reading-opening","operation":"move","beforeSHA256":"f22152fd55dcdb0090b5653d37145694fd19388d31e10226549464fe8b483578","afterSHA256":"f22152fd55dcdb0090b5653d37145694fd19388d31e10226549464fe8b483578","reason":"Same source body in authored semantic page"},{"oldId":"b-df70d103defa04e9816d7607","targetId":"b-df70d103defa04e9816d7607","page":"reading-opening","operation":"move","beforeSHA256":"efc07be0d238c97b2a0f2a3e1e141f27691e7d1aadb5b0bc2662d7d40218327f","afterSHA256":"efc07be0d238c97b2a0f2a3e1e141f27691e7d1aadb5b0bc2662d7d40218327f","reason":"Same source body in authored semantic page"},{"oldId":"b-3e2573ba5f0c6a1ed5663996","targetId":"b-3e2573ba5f0c6a1ed5663996","page":"reading-opening","operation":"move","beforeSHA256":"cd11a68d93322557400702d7a6c088ae60fd8a2c4f267bd4e62ff54c9f817890","afterSHA256":"cd11a68d93322557400702d7a6c088ae60fd8a2c4f267bd4e62ff54c9f817890","reason":"Same source body in authored semantic page"},{"oldId":"b-473fb436d2dae644c9833562","targetId":"b-473fb436d2dae644c9833562","page":"reading-opening","operation":"move","beforeSHA256":"8c6ca11a6d07f7deab1f701a099249612af06a33b8ec27a3549aceeed20d8170","afterSHA256":"8c6ca11a6d07f7deab1f701a099249612af06a33b8ec27a3549aceeed20d8170","reason":"Same source body in authored semantic page"},{"oldId":"b-bece2aa787b76f29d64bd946","targetId":"b-bece2aa787b76f29d64bd946","page":"reading-opening","operation":"move","beforeSHA256":"9aada59e72bb04d8f3062cdfea16995541a1163b27760692b056446564fe0c87","afterSHA256":"9aada59e72bb04d8f3062cdfea16995541a1163b27760692b056446564fe0c87","reason":"Same source body in authored semantic page"},{"oldId":"b-982d25bb8041284caf0e0ebd","targetId":"b-982d25bb8041284caf0e0ebd","page":"reading-opening","operation":"move","beforeSHA256":"4937a00b535f34afccfe0994c8f1e5ce56f7c575f54a3db449018625882de17a","afterSHA256":"4937a00b535f34afccfe0994c8f1e5ce56f7c575f54a3db449018625882de17a","reason":"Same source body in authored semantic page"},{"oldId":"b-c7172790337a0c8c5dd91b89","targetId":"b-c7172790337a0c8c5dd91b89","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"ecf3b8021175908eda9c18de3a563c6788489d152b67ca470119082792851da0","afterSHA256":"ecf3b8021175908eda9c18de3a563c6788489d152b67ca470119082792851da0","reason":"Same source body in authored semantic page"},{"oldId":"b-17842e4c2fcb5fdfbd528cac","targetId":"b-17842e4c2fcb5fdfbd528cac","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"4ebb0f014e398dc2ae6bf8dbcba937edcb76b2b2c3c0eb1a5daff55a40961d07","afterSHA256":"4ebb0f014e398dc2ae6bf8dbcba937edcb76b2b2c3c0eb1a5daff55a40961d07","reason":"Same source body in authored semantic page"},{"oldId":"b-5dc350007a83dc6d7ccdbed1","targetId":"b-5dc350007a83dc6d7ccdbed1","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"0f2c32f89259030e3551404cdc0f2edfebe5a687a5c075df965b428bffb76dd6","afterSHA256":"0f2c32f89259030e3551404cdc0f2edfebe5a687a5c075df965b428bffb76dd6","reason":"Same source body in authored semantic page"},{"oldId":"b-661c45b31de0b210d3711acf","targetId":"b-661c45b31de0b210d3711acf","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"9243e65353229b7e0cf09235b672662b032235d9e19d00dd53a13edf6dccc534","afterSHA256":"9243e65353229b7e0cf09235b672662b032235d9e19d00dd53a13edf6dccc534","reason":"Same source body in authored semantic page"},{"oldId":"b-d737ab4621370ac3ae3aca44","targetId":"b-d737ab4621370ac3ae3aca44","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"9c22fab644cfde4b4d33c46b459f7db5f0167ad64830741b63643a22dcdce06a","afterSHA256":"9c22fab644cfde4b4d33c46b459f7db5f0167ad64830741b63643a22dcdce06a","reason":"Same source body in authored semantic page"},{"oldId":"b-a0d595611d678c1f6db5c78d","targetId":"b-a0d595611d678c1f6db5c78d","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-737c5bd46c98b098f6e64f98","targetId":"b-737c5bd46c98b098f6e64f98","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"3718859eddf97c7f689f047fbccba3d6eb8acd97c7ed70ad0feedb6950c98a05","afterSHA256":"c4dcbb480b190bc323e298115a4627f8b7012f7a3caa078bfe225cd008dd5c1c","reason":"Same source body in authored semantic page"},{"oldId":"b-0e9a5400c3b47501838e1083","targetId":"b-0e9a5400c3b47501838e1083","page":"reading-block-6d320a4e38464b4f9e43998052ef1572","operation":"move","beforeSHA256":"af294b18db8110a3403b50abcadb7c55bfea8e09350c3a3af8262ebe120b7ef9","afterSHA256":"af294b18db8110a3403b50abcadb7c55bfea8e09350c3a3af8262ebe120b7ef9","reason":"Same source body in authored semantic page"},{"oldId":"b-6c1d0e29a79dafd3374289a5","targetId":"b-6c1d0e29a79dafd3374289a5","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"8cb25382b92a727ebaebfb712e65ce1b413a959178c6a398f038acf2fd1d220f","afterSHA256":"8cb25382b92a727ebaebfb712e65ce1b413a959178c6a398f038acf2fd1d220f","reason":"Same source body in authored semantic page"},{"oldId":"b-8c3fc10fc65a7b6b6959a006","targetId":"b-8c3fc10fc65a7b6b6959a006","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"2e8bcdfb77f7a43c5411ad505709cfa540d0684eb52c7d85a5aaaacaede11f95","afterSHA256":"2e8bcdfb77f7a43c5411ad505709cfa540d0684eb52c7d85a5aaaacaede11f95","reason":"Same source body in authored semantic page"},{"oldId":"b-55ef56701a03c4518b2ce5e0","targetId":"b-55ef56701a03c4518b2ce5e0","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"b9e822539ccd14346c56f0133a31f40d09f6260e87ee416a08d197b5f2016ca7","afterSHA256":"b9e822539ccd14346c56f0133a31f40d09f6260e87ee416a08d197b5f2016ca7","reason":"Same source body in authored semantic page"},{"oldId":"b-4bfe0ce383c5fc2278561340","targetId":"b-4bfe0ce383c5fc2278561340","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"f4c210b6af827fd3ff6cb156f62c98b852b98d098d24ec103aa09b6aa3ba9ebd","afterSHA256":"f4c210b6af827fd3ff6cb156f62c98b852b98d098d24ec103aa09b6aa3ba9ebd","reason":"Same source body in authored semantic page"},{"oldId":"b-8ed2e5538123da63cff6ebba","targetId":"b-8ed2e5538123da63cff6ebba","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-bc57e2b942d60a1c416eb388","targetId":"b-bc57e2b942d60a1c416eb388","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"88217dfa6600370a1dbec109dcd01b99589556eb862accaf5084f8c20edbfbe8","afterSHA256":"e9191491612a160660d6f3e67e9dc93bc0b19111825805a1eb1062ac6cb8d698","reason":"Same source body in authored semantic page"},{"oldId":"b-c6b119d823bd0d175239e564","targetId":"b-c6b119d823bd0d175239e564","page":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","operation":"move","beforeSHA256":"4affbd0d019e7cf4cd1fe38ed2704c8f110f7f541f414d73945562b08c6d3a7e","afterSHA256":"4affbd0d019e7cf4cd1fe38ed2704c8f110f7f541f414d73945562b08c6d3a7e","reason":"Same source body in authored semantic page"},{"oldId":"b-09056e0e3d2a879804eb3fe4","targetId":"b-09056e0e3d2a879804eb3fe4","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"90dbd5024f006acd9480ecc4f1ee53e19a55913b6ec2b818eab71e71b0a58a5f","afterSHA256":"90dbd5024f006acd9480ecc4f1ee53e19a55913b6ec2b818eab71e71b0a58a5f","reason":"Same source body in authored semantic page"},{"oldId":"b-840388654bc444d8eba3e4e1","targetId":"b-840388654bc444d8eba3e4e1","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"92eb8e1c3d1cfdb31bf8fa2745826ad49c2c3f5d75eac20f74580c61e170efb6","afterSHA256":"92eb8e1c3d1cfdb31bf8fa2745826ad49c2c3f5d75eac20f74580c61e170efb6","reason":"Same source body in authored semantic page"},{"oldId":"b-8a6defb94a1a454f13230c20","targetId":"b-8a6defb94a1a454f13230c20","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"ca2bb177b792dfe57b923f396a33ef74cc52ceb9377597281d98586cf985d33f","afterSHA256":"ca2bb177b792dfe57b923f396a33ef74cc52ceb9377597281d98586cf985d33f","reason":"Same source body in authored semantic page"},{"oldId":"b-e96e32bf96719d6e6ea59f2b","targetId":"b-e96e32bf96719d6e6ea59f2b","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"45461aebe261c4839f4a26428848ac509ba1d683b3706b98f376415959d5f951","afterSHA256":"45461aebe261c4839f4a26428848ac509ba1d683b3706b98f376415959d5f951","reason":"Same source body in authored semantic page"},{"oldId":"b-38ff590273136496bff1e072","targetId":"b-38ff590273136496bff1e072","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-a946d464673317dde7817797","targetId":"b-a946d464673317dde7817797","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"e940fcbc2129349e805c6f55851658326a8fadb8a09ef07008f716943da19e0c","afterSHA256":"b5173ed059ad388998b9e27d54886064b2513913d20e0be17af8bbcfe5430985","reason":"Same source body in authored semantic page"},{"oldId":"b-3e091a9b08bee8dd5eab463f","targetId":"b-3e091a9b08bee8dd5eab463f","page":"reading-block-7e44bc6fccd340d7a44992a31346a608","operation":"move","beforeSHA256":"2d1d39ac2cdce124c29406a1a6be804f575045b0939ce95ef81c0c6e5a13e654","afterSHA256":"2d1d39ac2cdce124c29406a1a6be804f575045b0939ce95ef81c0c6e5a13e654","reason":"Same source body in authored semantic page"},{"oldId":"b-40ba792994b8ecd33406b4fa","targetId":"b-40ba792994b8ecd33406b4fa","page":"reading-block-757b3911b197440281dddbe02741c20f","operation":"move","beforeSHA256":"bd339a99200b69b6cb6681e9dab0cdd44b6d0344221e4dde041a71c3dd40d71e","afterSHA256":"bd339a99200b69b6cb6681e9dab0cdd44b6d0344221e4dde041a71c3dd40d71e","reason":"Same source body in authored semantic page"},{"oldId":"b-7d68aa69225b916aa5854708","targetId":"b-7d68aa69225b916aa5854708","page":"reading-block-757b3911b197440281dddbe02741c20f","operation":"move","beforeSHA256":"4605b4b33adc5dc3cd423c0226821aa5564bfa64b90d3397c9681ed3180d93e7","afterSHA256":"4605b4b33adc5dc3cd423c0226821aa5564bfa64b90d3397c9681ed3180d93e7","reason":"Same source body in authored semantic page"},{"oldId":"b-8031f2646cb1a79668d2e275","targetId":"b-8031f2646cb1a79668d2e275","page":"reading-block-757b3911b197440281dddbe02741c20f","operation":"move","beforeSHA256":"6045f944665020a86145a86309235f71d27669145533016867e98e8095d86acc","afterSHA256":"6045f944665020a86145a86309235f71d27669145533016867e98e8095d86acc","reason":"Same source body in authored semantic page"},{"oldId":"b-8681738d84cc4aaeeedbf8c8","targetId":"b-8681738d84cc4aaeeedbf8c8","page":"reading-block-757b3911b197440281dddbe02741c20f","operation":"move","beforeSHA256":"91a0f60a8848805ce3287a0970a1e631809556b7f0c1aa6c2312c349d2ffc022","afterSHA256":"91a0f60a8848805ce3287a0970a1e631809556b7f0c1aa6c2312c349d2ffc022","reason":"Same source body in authored semantic page"},{"oldId":"b-cc5cb91504522cda102ac00d","targetId":"b-cc5cb91504522cda102ac00d","page":"reading-block-757b3911b197440281dddbe02741c20f","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-bffefe639bf734fb804dd965","targetId":"b-bffefe639bf734fb804dd965","page":"reading-block-757b3911b197440281dddbe02741c20f","operation":"move","beforeSHA256":"f5857da2dfabb87c6437877fd21c75623fec6a75237b2252991a768aa55fb1ea","afterSHA256":"f5857da2dfabb87c6437877fd21c75623fec6a75237b2252991a768aa55fb1ea","reason":"Same source body in authored semantic page"}],"blocks":[{"id":"b-772ce23fee708efd5ff555f2","type":"h1","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-772ce23fee708efd5ff555f2","content":"# LAB 01 · 固定表示：标签预算与读出","sha256":"bc32351da350dbbc3d5e0d84634437be06bf9693012be8e5360aad3343d65a48","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-47d9f12d90b3977bd459fbf9","prerequisites":[{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-47d9f12d90b3977bd459fbf9","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-47d9f12d90b3977bd459fbf9","content":"按问题继续","sha256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-772ce23fee708efd5ff555f2","nextBlock":"b-040cec458a6edde747e9c33f","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"}],"relatedBlocks":[]},{"id":"b-040cec458a6edde747e9c33f","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-040cec458a6edde747e9c33f","content":"固定CNN与缓存特征、标签预算、kNN/linear和独立评价","sha256":"75bc3d13109b5a891b82a4daefd668c001abde4ddf12e5ad4e20e6fe674663c6","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-47d9f12d90b3977bd459fbf9","nextBlock":"b-c2f1a7542efc2bd53d1926d3","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-c2f1a7542efc2bd53d1926d3","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-c2f1a7542efc2bd53d1926d3","content":"可先阅读已有结果，再决定是否运行。重算时请核对各节记录的数据、参数、环境与日期。","sha256":"f22152fd55dcdb0090b5653d37145694fd19388d31e10226549464fe8b483578","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-040cec458a6edde747e9c33f","nextBlock":"b-df70d103defa04e9816d7607","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-df70d103defa04e9816d7607","type":"p","scope":"block-a799601f42af4e829f4f480e7556f82e","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-df70d103defa04e9816d7607","content":"**学习路径：** [表示怎样迁移到新任务](/course/study/readout-transfer.html)","sha256":"efc07be0d238c97b2a0f2a3e1e141f27691e7d1aadb5b0bc2662d7d40218327f","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-c2f1a7542efc2bd53d1926d3","nextBlock":"b-3e2573ba5f0c6a1ed5663996","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-3e2573ba5f0c6a1ed5663996","type":"p","scope":"block-a799601f42af4e829f4f480e7556f82e","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-3e2573ba5f0c6a1ed5663996","content":"**已经有一份表示，只增加标签或改变读出，会发生什么？**","sha256":"cd11a68d93322557400702d7a6c088ae60fd8a2c4f267bd4e62ff54c9f817890","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-df70d103defa04e9816d7607","nextBlock":"b-473fb436d2dae644c9833562","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-473fb436d2dae644c9833562","type":"p","scope":"block-a799601f42af4e829f4f480e7556f82e","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-473fb436d2dae644c9833562","content":"先看下方8张固定数字图，接着读32/64/128/256标签预算下的kNN与线性曲线，最后选一个两种读出意见不同的误例。编码器始终冻结；标签训练的是读出，不是图像表示。","sha256":"8c6ca11a6d07f7deab1f701a099249612af06a33b8ec27a3549aceeed20d8170","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-3e2573ba5f0c6a1ed5663996","nextBlock":"b-bece2aa787b76f29d64bd946","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-bece2aa787b76f29d64bd946","type":"p","scope":"block-a799601f42af4e829f4f480e7556f82e","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-bece2aa787b76f29d64bd946","content":"你的产出是一句有数值依据的比较：在相同标签预算下哪一种读出更好，并给出“表示信息”之外的一个可能解释。[P23本页说明](/course/pages/l3-r2-p23.html)与[这项固定表示证据](/course/blocks/fixed-representation-label-budget-evidence.html)保留前后文。","sha256":"9aada59e72bb04d8f3062cdfea16995541a1163b27760692b056446564fe0c87","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-473fb436d2dae644c9833562","nextBlock":"b-982d25bb8041284caf0e0ebd","prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-982d25bb8041284caf0e0ebd","type":"p","scope":"block-a799601f42af4e829f4f480e7556f82e","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-982d25bb8041284caf0e0ebd","content":"需要重算时从准备单元顺序运行；资产和源checkpoint会核对身份。保存输出是已有本地结果。若下一步要允许编码器改变，再接[LAB 02参数适配](https://deepnote.com/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/4bd450d54870432db91c80a4df563b8e)，不必先做其他实验。","sha256":"4937a00b535f34afccfe0994c8f1e5ce56f7c575f54a3db449018625882de17a","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-opening","title":"LAB 01 · 固定表示：标签预算与读出","number":1},"sectionTitle":"LAB 01 · 固定表示：标签预算与读出","currentQuestion":"LAB 01 · 固定表示：标签预算与读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-bece2aa787b76f29d64bd946","nextBlock":null,"prerequisites":[{"id":"b-772ce23fee708efd5ff555f2","url":"#b-772ce23fee708efd5ff555f2","role":"section-title"},{"id":"b-47d9f12d90b3977bd459fbf9","url":"#b-47d9f12d90b3977bd459fbf9","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-c7172790337a0c8c5dd91b89","type":"h3","scope":"block-6d320a4e38464b4f9e43998052ef1572","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-c7172790337a0c8c5dd91b89","content":"### 0 · 固定输入、来源与数据职责","sha256":"ecf3b8021175908eda9c18de3a563c6788489d152b67ca470119082792851da0","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-17842e4c2fcb5fdfbd528cac","prerequisites":[{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-17842e4c2fcb5fdfbd528cac","type":"p","scope":"block-66d701fc5af94115b7ebe33ce49821d1","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-17842e4c2fcb5fdfbd528cac","content":"源模型曾用 MNIST 训练排列的前 12,000 张学习十分类；排列末尾 10,000 张作源验证。本册固定使用同一排列的第 12,000–12,639 张，共 640 张，沿用[L03-LAB 02 参数迁移实验](/course/lab09-transfer.html)的固定划分，分成 **256 训练、128 验证、256 保留评价**。它们不与源训练、源验证重叠。像素除以 255，再整体右移 2 像素，左侧补零、右侧裁切。目标是 `digit >= 5`。","sha256":"4ebb0f014e398dc2ae6bf8dbcba937edcb76b2b2c3c0eb1a5daff55a40961d07","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-c7172790337a0c8c5dd91b89","nextBlock":"b-5dc350007a83dc6d7ccdbed1","prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"}],"relatedBlocks":[]},{"id":"b-5dc350007a83dc6d7ccdbed1","type":"p","scope":"block-66d701fc5af94115b7ebe33ce49821d1","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-5dc350007a83dc6d7ccdbed1","content":"这检查的是样本索引分离。数据未提供写字者分组，不能声称写字者独立。目标数据仍来自同一 MNIST 数据集；它不是跨领域自然图像实验。","sha256":"0f2c32f89259030e3551404cdc0f2edfebe5a687a5c075df965b428bffb76dd6","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-17842e4c2fcb5fdfbd528cac","nextBlock":"b-661c45b31de0b210d3711acf","prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"},{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-661c45b31de0b210d3711acf","type":"p","scope":"block-66d701fc5af94115b7ebe33ce49821d1","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-661c45b31de0b210d3711acf","content":"**本册一次性固定协议：**读出采用 L2 单样本特征归一化；近邻 k=5、均匀投票；线性逻辑回归 C=10。它们不是经过充分调优的最佳基线。标签预算使用同一训练顺序的嵌套前缀 32/64/128/256，不根据评价结果重新抽样。保留集只在各臂拟合完、配置锁定之后评价；若阅读结果后再改方案，应另留新的评价集。","sha256":"9243e65353229b7e0cf09235b672662b032235d9e19d00dd53a13edf6dccc534","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-5dc350007a83dc6d7ccdbed1","nextBlock":"b-d737ab4621370ac3ae3aca44","prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"},{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-d737ab4621370ac3ae3aca44","type":"pre","scope":"block-c0a28317e0b94fe48d5680f6bc6d7fd8","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-d737ab4621370ac3ae3aca44","content":"```\n# 当前项目中的独立材料：已存在则复用，缺失才从本讲原站准备。\nfrom pathlib import Path\nimport io, zipfile, urllib.request\n_base = Path.cwd()\n_folder = 'lab10-readout'\n_sentinel = 'assets/target.npz'\n_choices = [_base/_folder, _base/'lecture03-labs'/_folder, _base]\n_ready = next((p for p in _choices if (p/_sentinel).is_file()), None)\nif _ready is None:\n    _url = 'https://codingai-lec03.pages.dev/course/materials/' + _folder + '.zip'\n    _payload = urllib.request.urlopen(_url, timeout=60).read()\n    with zipfile.ZipFile(io.BytesIO(_payload)) as _archive:\n        _names = [i.filename for i in _archive.infolist() if not i.is_dir()]\n        _prefix = _folder + '/'\n        _prefixed = all(n.startswith(_prefix) for n in _names)\n        _destination = _base if _prefixed else _base/_folder\n        for _item in _archive.infolist():\n            _target = (_destination/_item.filename).resolve()\n            if not _target.is_relative_to(_destination.resolve()):\n                raise ValueError('材料包中有越界路径，停止解压。')\n            if _item.is_dir():\n                _target.mkdir(parents=True, exist_ok=True)\n            elif not _target.exists():\n                _target.parent.mkdir(parents=True, exist_ok=True)\n                _target.write_bytes(_archive.read(_item))\n    _ready = next((p for p in _choices if (p/_sentinel).is_file()), None)\nassert _ready is not None, '请将本讲完整材料包解压到当前项目的 ' + _folder + '/；保留文件结构。'\nLAB_ROOT = _ready\nprint('材料目录已就绪：', LAB_ROOT)\n\nimport json, hashlib, platform, sys, time\nfrom pathlib import Path\nfrom collections import OrderedDict\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport torch\nfrom torch import nn\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.neighbors import KNeighborsClassifier\nfrom sklearn.metrics import accuracy_score\nimport sklearn\n\nROOT=LAB_ROOT\nif not (ROOT/'assets/target.npz').exists() and (ROOT/'lab10-readout/assets/target.npz').exists():\n    ROOT=ROOT/'lab10-readout'\nassert (ROOT/'assets/target.npz').exists(), '请下载完整材料包并解压为项目中的 lab10-readout/；单独 ipynb 只供读取保存输出。'\nOUT=ROOT/'runs/current'; OUT.mkdir(parents=True,exist_ok=True)\nFIG=OUT/'figures'; FIG.mkdir(exist_ok=True)\ntorch.set_num_threads(2); torch.manual_seed(20260918)\ntorch.use_deterministic_algorithms(True)\nplt.rcParams.update({'figure.dpi':120,'font.size':10,'axes.spines.top':False,'axes.spines.right':False})\nBLUE,GOLD,GREEN,PURPLE='#002676','#E6A500','#00856A','#69458D'\ndef sha_file(path): return hashlib.sha256(Path(path).read_bytes()).hexdigest()\ndef savefig(name):\n    if not plt.gcf().get_constrained_layout(): plt.tight_layout()\n    plt.savefig(FIG/name,dpi=140,bbox_inches='tight'); plt.show()\nprovenance=json.loads((ROOT/'assets/provenance.json').read_text())\nassert sha_file(ROOT/'assets/cnn-plain-state.pt')==provenance['source_checkpoint_sha256']\nassert sha_file(ROOT/'assets/target.npz')==provenance['target_asset_sha256']\nassert provenance['source_checkpoint_sha256']=='ba8b738cc67d4ec3cd83d75a5dbe8a70ec548377335ba0abaaa7c23cd14eeba3'\nz=np.load(ROOT/'assets/target.npz',allow_pickle=False)\nimages=z['images']; digits=z['digit_labels']; sample_ids=z['official_train_ids']; split=z['split']\npartition=np.random.default_rng(20260908).permutation(60000)\nassert np.array_equal(sample_ids,partition[12000:12640])\nassert not set(sample_ids)&set(partition[:12000])\nassert not set(sample_ids)&set(partition[50000:])\nassert len(set(sample_ids))==640\ntrain=np.flatnonzero(split==0); val=np.flatnonzero(split==1); heldout=np.flatnonzero(split==2)\nassert not set(train)&set(val) and not set(train)&set(heldout) and not set(val)&set(heldout)\nx=torch.tensor(images,dtype=torch.float32)/255\nshifted=torch.zeros_like(x); shifted[:,:,:,2:]=x[:,:,:,:-2]; x=shifted\ny=(digits>=5).astype(np.int64)\nfig,axes=plt.subplots(1,8,figsize=(12,2.3))\nfor i,ax in enumerate(axes):\n    ax.imshow(x[i,0],cmap='gray',vmin=0,vmax=1); ax.set_title(f'id {sample_ids[i]}\\ndigit {digits[i]} → y={y[i]}',fontsize=9); ax.axis('off')\nsavefig('01-fixed-inputs.png')\nprint('Split sizes:',{'train':len(train),'validation':len(val),'heldout':len(heldout)})\nprint('SOURCE:',provenance['source_checkpoint_sha256'])\nprint('Checks passed: file identity; sample separation; preprocessing.')\n```","sha256":"9c22fab644cfde4b4d33c46b459f7db5f0167ad64830741b63643a22dcdce06a","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-661c45b31de0b210d3711acf","nextBlock":"b-a0d595611d678c1f6db5c78d","prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"},{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-a0d595611d678c1f6db5c78d","type":"p","scope":"block-9d7eedd691a24080aca7286577ebf886","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-a0d595611d678c1f6db5c78d","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-d737ab4621370ac3ae3aca44","nextBlock":"b-737c5bd46c98b098f6e64f98","prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"},{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-737c5bd46c98b098f6e64f98","type":"p","scope":"block-9d7eedd691a24080aca7286577ebf886","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-737c5bd46c98b098f6e64f98","content":"![本地保存图](/assets/display/7c292d90e96c12dfbd1803b6.webp)","sha256":"c4dcbb480b190bc323e298115a4627f8b7012f7a3caa078bfe225cd008dd5c1c","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-a0d595611d678c1f6db5c78d","nextBlock":"b-0e9a5400c3b47501838e1083","prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"},{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-0e9a5400c3b47501838e1083","type":"pre","scope":"block-9d7eedd691a24080aca7286577ebf886","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-0e9a5400c3b47501838e1083","content":"```\nSplit sizes: {'train': 256, 'validation': 128, 'heldout': 256}\nSOURCE: ba8b738cc67d4ec3cd83d75a5dbe8a70ec548377335ba0abaaa7c23cd14eeba3\nChecks passed: file identity; sample separation; preprocessing.\n\n```","sha256":"af294b18db8110a3403b50abcadb7c55bfea8e09350c3a3af8262ebe120b7ef9","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-6d320a4e38464b4f9e43998052ef1572","title":"0 · 固定输入、来源与数据职责","number":2},"sectionTitle":"0 · 固定输入、来源与数据职责","currentQuestion":"0 · 固定输入、来源与数据职责","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-737c5bd46c98b098f6e64f98","nextBlock":null,"prerequisites":[{"id":"b-c7172790337a0c8c5dd91b89","url":"#b-c7172790337a0c8c5dd91b89","role":"section-title"},{"id":"b-17842e4c2fcb5fdfbd528cac","url":"#b-17842e4c2fcb5fdfbd528cac","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-6c1d0e29a79dafd3374289a5","type":"h3","scope":"block-d70a7fcd23d24d71baabd0f2609a454c","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-6c1d0e29a79dafd3374289a5","content":"### 2 · 同一表示，改变标签预算或读出","sha256":"8cb25382b92a727ebaebfb712e65ce1b413a959178c6a398f038acf2fd1d220f","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-8c3fc10fc65a7b6b6959a006","prerequisites":[{"id":"b-8c3fc10fc65a7b6b6959a006","url":"#b-8c3fc10fc65a7b6b6959a006","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-8c3fc10fc65a7b6b6959a006","type":"p","scope":"block-484cd0a1452d4c14857fdf073dc58b31","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-8c3fc10fc65a7b6b6959a006","content":"从源 CNN 中取最后一个 32 维 ReLU 特征，丢弃原十分类头。**编码器参数全部冻结**；kNN 储存目标训练标签，线性读出用目标训练标签拟合权重。因此“冻结表示评价”并不等于“评价过程不需要标签”。","sha256":"2e8bcdfb77f7a43c5411ad505709cfa540d0684eb52c7d85a5aaaacaede11f95","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-6c1d0e29a79dafd3374289a5","nextBlock":"b-55ef56701a03c4518b2ce5e0","prerequisites":[{"id":"b-6c1d0e29a79dafd3374289a5","url":"#b-6c1d0e29a79dafd3374289a5","role":"section-title"}],"relatedBlocks":[]},{"id":"b-55ef56701a03c4518b2ce5e0","type":"p","scope":"block-484cd0a1452d4c14857fdf073dc58b31","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-55ef56701a03c4518b2ce5e0","content":"对同一标签预算比较 kNN/linear，是改变读出；对同一读出比较不同预算，是改变标签数量。共享图像、划分、预处理和源模型排除了这些因素的变动，但一个小任务、一个 seed 和固定超参数仍不足以给出普遍方法排名。","sha256":"b9e822539ccd14346c56f0133a31f40d09f6260e87ee416a08d197b5f2016ca7","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-8c3fc10fc65a7b6b6959a006","nextBlock":"b-4bfe0ce383c5fc2278561340","prerequisites":[{"id":"b-6c1d0e29a79dafd3374289a5","url":"#b-6c1d0e29a79dafd3374289a5","role":"section-title"},{"id":"b-8c3fc10fc65a7b6b6959a006","url":"#b-8c3fc10fc65a7b6b6959a006","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-4bfe0ce383c5fc2278561340","type":"pre","scope":"block-db561b709f8242a987ffb6c13e8e8b75","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-4bfe0ce383c5fc2278561340","content":"```\ndef make_source_cnn():\n    return nn.Sequential(OrderedDict([\n      ('conv1',nn.Conv2d(1,8,3,padding=1)),('relu1',nn.ReLU()),('pool1',nn.MaxPool2d(2)),\n      ('conv2',nn.Conv2d(8,16,3,padding=1)),('relu2',nn.ReLU()),('pool2',nn.MaxPool2d(2)),\n      ('flatten',nn.Flatten()),('hidden',nn.Linear(784,32)),('relu3',nn.ReLU()),('logits',nn.Linear(32,10))]))\nmodel=make_source_cnn()\nmodel.load_state_dict(torch.load(ROOT/'assets/cnn-plain-state.pt',map_location='cpu',weights_only=True))\nassert sum(p.numel() for p in model.parameters())==26698\nmodel.eval()\nfor param in model.parameters(): param.requires_grad_(False)\nbefore={k:v.detach().clone() for k,v in model.state_dict().items()}\nencoder=nn.Sequential(OrderedDict(list(model.named_children())[:-1]))\nwith torch.no_grad(): raw_features=encoder(x).numpy()\nfeatures=raw_features/np.maximum(np.linalg.norm(raw_features,axis=1,keepdims=True),1e-12)\nassert features.shape==(640,32)\nassert all(torch.equal(v,before[k]) for k,v in model.state_dict().items())\nnp.savez_compressed(OUT/'frozen-features.npz',features=features,raw_features=raw_features,sample_ids=sample_ids,split=split)\nprint('Frozen features:',features.shape,'; all parameters unchanged.')\n\nLABEL_BUDGETS=[32,64,128,256]\nK=5\nC=10.0\nrecords=[]; fitted={}\nfor budget in LABEL_BUDGETS:\n    labeled=train[:budget]\n    # Identical labeled sample identities for both readouts at this budget.\n    methods={'kNN':KNeighborsClassifier(n_neighbors=K,weights='uniform',metric='euclidean'),\n             'linear':LogisticRegression(C=C,max_iter=2000,solver='lbfgs',random_state=20260918)}\n    for method,readout in methods.items():\n        readout.fit(features[labeled],y[labeled])\n        fitted[(method,budget)]=readout\n        records.append({'method':method,'budget':budget,'labeled_ids':sample_ids[labeled].tolist(),\n                        'train_accuracy':float(readout.score(features[labeled],y[labeled])),\n                        'validation_accuracy':float(readout.score(features[val],y[val]))})\n# The methods and hyperparameters are now locked. Held-out labels enter evaluation only.\nfor record in records:\n    pred=fitted[(record['method'],record['budget'])].predict(features[heldout])\n    record['heldout_accuracy']=float(accuracy_score(y[heldout],pred))\n    record['heldout_predictions']=pred.tolist()\n    record['heldout_errors']=int((pred!=y[heldout]).sum())\nassert all(torch.equal(v,before[k]) for k,v in model.state_dict().items())\nreadout_results={'evidence':'actual local CPU run','protocol':{'target_task':'digit >= 5','shift_right':2,\n 'feature':'last 32-dimensional ReLU, then per-sample L2 normalization','label_budgets':LABEL_BUDGETS,\n 'k':K,'C':C,'tuning':'none; fixed before evaluation','seed':20260918,'encoder_sha256':provenance['source_checkpoint_sha256']},\n 'records':records,'limitations':['one fixed split; no seed-sweep uncertainty','not a supervised-vs-SSL comparison','MNIST source training differs from natural-image pretraining']}\n(OUT/'readout-results.json').write_text(json.dumps(readout_results,indent=2))\nprint('method | labels | train | validation | heldout | heldout errors / 256')\nfor r in records: print(r['method'],r['budget'],*[round(r[k],4) for k in ['train_accuracy','validation_accuracy','heldout_accuracy']],r['heldout_errors'])\nfig,axes=plt.subplots(1,2,figsize=(10,3.8),sharey=True)\nfor method,color in [('kNN',BLUE),('linear',GREEN)]:\n    rows=[r for r in records if r['method']==method]\n    for ax,metric in zip(axes,['validation_accuracy','heldout_accuracy']):\n        ax.plot([r['budget'] for r in rows],[r[metric] for r in rows],marker='o',color=color,label=method)\nfor ax,title in zip(axes,['Validation (128 images)','Held-out evaluation (256 images)']):\n    ax.set(xlabel='Labeled training images',ylabel='Binary accuracy',ylim=(0,1.01),title=title,xticks=LABEL_BUDGETS);ax.legend();ax.grid(alpha=.18)\nsavefig('03-readout-budget.png')\n```","sha256":"f4c210b6af827fd3ff6cb156f62c98b852b98d098d24ec103aa09b6aa3ba9ebd","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-55ef56701a03c4518b2ce5e0","nextBlock":"b-8ed2e5538123da63cff6ebba","prerequisites":[{"id":"b-6c1d0e29a79dafd3374289a5","url":"#b-6c1d0e29a79dafd3374289a5","role":"section-title"},{"id":"b-8c3fc10fc65a7b6b6959a006","url":"#b-8c3fc10fc65a7b6b6959a006","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-8ed2e5538123da63cff6ebba","type":"p","scope":"block-0b4f1a8f114e48fd8c42a661c87b7303","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-8ed2e5538123da63cff6ebba","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-4bfe0ce383c5fc2278561340","nextBlock":"b-bc57e2b942d60a1c416eb388","prerequisites":[{"id":"b-6c1d0e29a79dafd3374289a5","url":"#b-6c1d0e29a79dafd3374289a5","role":"section-title"},{"id":"b-8c3fc10fc65a7b6b6959a006","url":"#b-8c3fc10fc65a7b6b6959a006","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-bc57e2b942d60a1c416eb388","type":"p","scope":"block-0b4f1a8f114e48fd8c42a661c87b7303","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-bc57e2b942d60a1c416eb388","content":"![本地保存图](/assets/display/d8ea2ed2099c1fdacd6f169c.webp)","sha256":"e9191491612a160660d6f3e67e9dc93bc0b19111825805a1eb1062ac6cb8d698","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-8ed2e5538123da63cff6ebba","nextBlock":"b-c6b119d823bd0d175239e564","prerequisites":[{"id":"b-6c1d0e29a79dafd3374289a5","url":"#b-6c1d0e29a79dafd3374289a5","role":"section-title"},{"id":"b-8c3fc10fc65a7b6b6959a006","url":"#b-8c3fc10fc65a7b6b6959a006","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-c6b119d823bd0d175239e564","type":"pre","scope":"block-0b4f1a8f114e48fd8c42a661c87b7303","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-c6b119d823bd0d175239e564","content":"```\nFrozen features: (640, 32) ; all parameters unchanged.\nmethod | labels | train | validation | heldout | heldout errors / 256\nkNN 32 0.8438 0.7266 0.7148 73\nlinear 32 0.8438 0.6406 0.6133 99\nkNN 64 0.9062 0.8828 0.9141 22\nlinear 64 0.8281 0.7422 0.6953 78\nkNN 128 0.9375 0.9453 0.9453 14\nlinear 128 0.8359 0.7969 0.8125 48\nkNN 256 0.9609 0.9609 0.9492 13\nlinear 256 0.8555 0.8203 0.8359 42\n\n```","sha256":"4affbd0d019e7cf4cd1fe38ed2704c8f110f7f541f414d73945562b08c6d3a7e","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-d70a7fcd23d24d71baabd0f2609a454c","title":"2 · 同一表示，改变标签预算或读出","number":3},"sectionTitle":"2 · 同一表示，改变标签预算或读出","currentQuestion":"2 · 同一表示，改变标签预算或读出","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-bc57e2b942d60a1c416eb388","nextBlock":null,"prerequisites":[{"id":"b-6c1d0e29a79dafd3374289a5","url":"#b-6c1d0e29a79dafd3374289a5","role":"section-title"},{"id":"b-8c3fc10fc65a7b6b6959a006","url":"#b-8c3fc10fc65a7b6b6959a006","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-09056e0e3d2a879804eb3fe4","type":"h4","scope":"block-7e44bc6fccd340d7a44992a31346a608","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-09056e0e3d2a879804eb3fe4","content":"#### 不只看一条平均曲线","sha256":"90dbd5024f006acd9480ecc4f1ee53e19a55913b6ec2b818eab71e71b0a58a5f","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-840388654bc444d8eba3e4e1","prerequisites":[{"id":"b-840388654bc444d8eba3e4e1","url":"#b-840388654bc444d8eba3e4e1","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-840388654bc444d8eba3e4e1","type":"p","scope":"block-81101f3e7acd46c1b08625aaedecc156","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-840388654bc444d8eba3e4e1","content":"下面固定 256 个标签，显示保留集上任一读出犯错的前 8 张图。顺序按固定评价索引，不挑最戏剧化的例子。每幅标注真实数字、二分类答案及两种读出。","sha256":"92eb8e1c3d1cfdb31bf8fa2745826ad49c2c3f5d75eac20f74580c61e170efb6","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-09056e0e3d2a879804eb3fe4","nextBlock":"b-8a6defb94a1a454f13230c20","prerequisites":[{"id":"b-09056e0e3d2a879804eb3fe4","url":"#b-09056e0e3d2a879804eb3fe4","role":"section-title"}],"relatedBlocks":[]},{"id":"b-8a6defb94a1a454f13230c20","type":"p","scope":"block-81101f3e7acd46c1b08625aaedecc156","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-8a6defb94a1a454f13230c20","content":"先解释一种失败，再考虑竞争解释：表示里是否存在信息但不够线性可分？是否只是正则化或距离度量选择不合适？预算增大时差距是否持续？本节只能支撑这个固定实验下的观察，不能把差距全部归因于预训练目标。","sha256":"ca2bb177b792dfe57b923f396a33ef74cc52ceb9377597281d98586cf985d33f","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-840388654bc444d8eba3e4e1","nextBlock":"b-e96e32bf96719d6e6ea59f2b","prerequisites":[{"id":"b-09056e0e3d2a879804eb3fe4","url":"#b-09056e0e3d2a879804eb3fe4","role":"section-title"},{"id":"b-840388654bc444d8eba3e4e1","url":"#b-840388654bc444d8eba3e4e1","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-e96e32bf96719d6e6ea59f2b","type":"pre","scope":"block-2cef56135a514fec939187e24ec21bf6","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-e96e32bf96719d6e6ea59f2b","content":"```\npred_knn=fitted[('kNN',256)].predict(features[heldout]); pred_linear=fitted[('linear',256)].predict(features[heldout])\nerror_local=np.flatnonzero((pred_knn!=y[heldout])|(pred_linear!=y[heldout]))[:8]\nfig,axes=plt.subplots(2,4,figsize=(10,5.5))\nfor ax in axes.ravel():ax.axis('off')\nfor ax,j in zip(axes.ravel(),error_local):\n    i=heldout[j];ax.imshow(x[i,0],cmap='gray',vmin=0,vmax=1)\n    ax.set_title(f'id {sample_ids[i]} · digit={digits[i]}, y={y[i]}\\nkNN={pred_knn[j]}, linear={pred_linear[j]}',fontsize=9)\nsavefig('04-readout-errors.png')\nagreement={'both_correct':int(((pred_knn==y[heldout])&(pred_linear==y[heldout])).sum()),\n 'knn_only_correct':int(((pred_knn==y[heldout])&(pred_linear!=y[heldout])).sum()),\n 'linear_only_correct':int(((pred_knn!=y[heldout])&(pred_linear==y[heldout])).sum()),\n 'both_wrong':int(((pred_knn!=y[heldout])&(pred_linear!=y[heldout])).sum())}\nassert sum(agreement.values())==len(heldout)\n(OUT/'error-groups.json').write_text(json.dumps(agreement,indent=2));print(agreement)\n```","sha256":"45461aebe261c4839f4a26428848ac509ba1d683b3706b98f376415959d5f951","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-8a6defb94a1a454f13230c20","nextBlock":"b-38ff590273136496bff1e072","prerequisites":[{"id":"b-09056e0e3d2a879804eb3fe4","url":"#b-09056e0e3d2a879804eb3fe4","role":"section-title"},{"id":"b-840388654bc444d8eba3e4e1","url":"#b-840388654bc444d8eba3e4e1","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-38ff590273136496bff1e072","type":"p","scope":"block-967475dd58d34ef2b1a84cc12ca41a56","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-38ff590273136496bff1e072","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-e96e32bf96719d6e6ea59f2b","nextBlock":"b-a946d464673317dde7817797","prerequisites":[{"id":"b-09056e0e3d2a879804eb3fe4","url":"#b-09056e0e3d2a879804eb3fe4","role":"section-title"},{"id":"b-840388654bc444d8eba3e4e1","url":"#b-840388654bc444d8eba3e4e1","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-a946d464673317dde7817797","type":"p","scope":"block-967475dd58d34ef2b1a84cc12ca41a56","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-a946d464673317dde7817797","content":"![本地保存图](/assets/display/dac6022323b5c0c2726ea1af.webp)","sha256":"b5173ed059ad388998b9e27d54886064b2513913d20e0be17af8bbcfe5430985","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-38ff590273136496bff1e072","nextBlock":"b-3e091a9b08bee8dd5eab463f","prerequisites":[{"id":"b-09056e0e3d2a879804eb3fe4","url":"#b-09056e0e3d2a879804eb3fe4","role":"section-title"},{"id":"b-840388654bc444d8eba3e4e1","url":"#b-840388654bc444d8eba3e4e1","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-3e091a9b08bee8dd5eab463f","type":"pre","scope":"block-967475dd58d34ef2b1a84cc12ca41a56","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-3e091a9b08bee8dd5eab463f","content":"```\n{'both_correct': 208, 'knn_only_correct': 35, 'linear_only_correct': 6, 'both_wrong': 7}\n\n```","sha256":"2d1d39ac2cdce124c29406a1a6be804f575045b0939ce95ef81c0c6e5a13e654","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-7e44bc6fccd340d7a44992a31346a608","title":"不只看一条平均曲线","number":4},"sectionTitle":"不只看一条平均曲线","currentQuestion":"不只看一条平均曲线","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-a946d464673317dde7817797","nextBlock":null,"prerequisites":[{"id":"b-09056e0e3d2a879804eb3fe4","url":"#b-09056e0e3d2a879804eb3fe4","role":"section-title"},{"id":"b-840388654bc444d8eba3e4e1","url":"#b-840388654bc444d8eba3e4e1","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-40ba792994b8ecd33406b4fa","type":"h3","scope":"block-757b3911b197440281dddbe02741c20f","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-40ba792994b8ecd33406b4fa","content":"### 4 · 写出竞争解释","sha256":"bd339a99200b69b6cb6681e9dab0cdd44b6d0344221e4dde041a71c3dd40d71e","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","number":5},"sectionTitle":"4 · 写出竞争解释","currentQuestion":"4 · 写出竞争解释","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-7d68aa69225b916aa5854708","prerequisites":[{"id":"b-7d68aa69225b916aa5854708","url":"#b-7d68aa69225b916aa5854708","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-7d68aa69225b916aa5854708","type":"p","scope":"block-8001e16df6f248beb3bd8dc56f114493","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-7d68aa69225b916aa5854708","content":"请 AI 只改变 k 或 C，先核对编码器、样本索引、归一化和标签预算没有被顺手改动。先按验证结果选择，再评价独立保留集。本册保留集一旦看过就属于已知资料；正式新结论需要另留评价。","sha256":"4605b4b33adc5dc3cd423c0226821aa5564bfa64b90d3397c9681ed3180d93e7","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","number":5},"sectionTitle":"4 · 写出竞争解释","currentQuestion":"4 · 写出竞争解释","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-40ba792994b8ecd33406b4fa","nextBlock":"b-8031f2646cb1a79668d2e275","prerequisites":[{"id":"b-40ba792994b8ecd33406b4fa","url":"#b-40ba792994b8ecd33406b4fa","role":"section-title"}],"relatedBlocks":[]},{"id":"b-8031f2646cb1a79668d2e275","type":"p","scope":"block-8001e16df6f248beb3bd8dc56f114493","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-8031f2646cb1a79668d2e275","content":"这始终是同一个监督 CNN 的读出实验，不是 SSL 训练机制复现，也不是等预训练数据的模型排行榜。","sha256":"6045f944665020a86145a86309235f71d27669145533016867e98e8095d86acc","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","number":5},"sectionTitle":"4 · 写出竞争解释","currentQuestion":"4 · 写出竞争解释","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-7d68aa69225b916aa5854708","nextBlock":"b-8681738d84cc4aaeeedbf8c8","prerequisites":[{"id":"b-40ba792994b8ecd33406b4fa","url":"#b-40ba792994b8ecd33406b4fa","role":"section-title"},{"id":"b-7d68aa69225b916aa5854708","url":"#b-7d68aa69225b916aa5854708","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-8681738d84cc4aaeeedbf8c8","type":"pre","scope":"block-b141f26853a042f4970bc2e0023a04ed","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-8681738d84cc4aaeeedbf8c8","content":"```\n# 当前单元无法确认宿主平台或是否使用全新进程；unknown 不等于 False。\nverification={'identity':'v17 independent frozen readout','fresh_process':'unknown','local_run':'unknown','cloud_run':'unknown','source_model_unchanged':all(torch.equal(v,before[k]) for k,v in model.state_dict().items()),'source_target_sample_overlap':False,'source_target_writer_overlap':'unknown','heldout_used_for_tuning':False,'clip_loaded':False,'environment':{'python':platform.python_version(),'torch':torch.__version__,'numpy':np.__version__,'sklearn':sklearn.__version__},'checkpoint_sha256':sha_file(ROOT/'assets/cnn-plain-state.pt'),'target_sha256':sha_file(ROOT/'assets/target.npz')}\n(OUT/'verification.json').write_text(json.dumps(verification,indent=2));print(json.dumps(verification,indent=2))\n\n```","sha256":"91a0f60a8848805ce3287a0970a1e631809556b7f0c1aa6c2312c349d2ffc022","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","number":5},"sectionTitle":"4 · 写出竞争解释","currentQuestion":"4 · 写出竞争解释","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-8031f2646cb1a79668d2e275","nextBlock":"b-cc5cb91504522cda102ac00d","prerequisites":[{"id":"b-40ba792994b8ecd33406b4fa","url":"#b-40ba792994b8ecd33406b4fa","role":"section-title"},{"id":"b-7d68aa69225b916aa5854708","url":"#b-7d68aa69225b916aa5854708","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-cc5cb91504522cda102ac00d","type":"p","scope":"block-387907024b124f8c8dfc828f39acf1f9","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-cc5cb91504522cda102ac00d","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","number":5},"sectionTitle":"4 · 写出竞争解释","currentQuestion":"4 · 写出竞争解释","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-8681738d84cc4aaeeedbf8c8","nextBlock":"b-bffefe639bf734fb804dd965","prerequisites":[{"id":"b-40ba792994b8ecd33406b4fa","url":"#b-40ba792994b8ecd33406b4fa","role":"section-title"},{"id":"b-7d68aa69225b916aa5854708","url":"#b-7d68aa69225b916aa5854708","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-bffefe639bf734fb804dd965","type":"pre","scope":"block-387907024b124f8c8dfc828f39acf1f9","url":"https://codingai-lec03.pages.dev/course/notebooks/4dd8605ed9904820919ea9e13d9e7d7c.html#b-bffefe639bf734fb804dd965","content":"```\n{\n  \"identity\": \"v17 independent frozen readout\",\n  \"fresh_process\": true,\n  \"local_run\": true,\n  \"cloud_run\": false,\n  \"source_model_unchanged\": true,\n  \"source_target_sample_overlap\": false,\n  \"source_target_writer_overlap\": \"unknown\",\n  \"heldout_used_for_tuning\": false,\n  \"clip_loaded\": false,\n  \"environment\": {\n    \"python\": \"3.12.14\",\n    \"torch\": \"2.14.0+cpu\",\n    \"numpy\": \"2.3.5\",\n    \"sklearn\": \"1.8.0\"\n  },\n  \"checkpoint_sha256\": \"ba8b738cc67d4ec3cd83d75a5dbe8a70ec548377335ba0abaaa7c23cd14eeba3\",\n  \"target_sha256\": \"ca069f616b511b5aa9d3e9ab88b6fd12741a5b9c1b66a8befe467e44a796ddd1\"\n}\n\n```","sha256":"f5857da2dfabb87c6437877fd21c75623fec6a75237b2252991a768aa55fb1ea","chapter":{"id":"I","title":"学习信号与表示"},"unit":{"id":"i-reuse-and-targets","title":"训练留下什么，训练答案又从哪里来？"},"page":{"id":"reading-block-757b3911b197440281dddbe02741c20f","title":"4 · 写出竞争解释","number":5},"sectionTitle":"4 · 写出竞争解释","currentQuestion":"4 · 写出竞争解释","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-cc5cb91504522cda102ac00d","nextBlock":null,"prerequisites":[{"id":"b-40ba792994b8ecd33406b4fa","url":"#b-40ba792994b8ecd33406b4fa","role":"section-title"},{"id":"b-7d68aa69225b916aa5854708","url":"#b-7d68aa69225b916aa5854708","role":"problem-context"}],"relatedBlocks":[]}]}
