{"version":2,"relationshipURLBase":"https://codingai-lec03.pages.dev/course/lab10-patch.html","relationshipResolution":"Resolve relative relationship URLs against relationshipURLBase; complete records and absolute URLs are in blocks.","title":"LAB 05 · 像素 patch 词典：拟合与重建","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html","markdown":"https://codingai-lec03.pages.dev/course/lab10-patch.md","pages":[{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","unit":"LAB 05 · 像素 patch 词典：拟合与重建","unitId":"lab10-patch","chapter":"course","number":1},{"id":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","title":"1 · 准备与固定输入","unit":"LAB 05 · 像素 patch 词典：拟合与重建","unitId":"lab10-patch","chapter":"course","number":2},{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","unit":"LAB 05 · 像素 patch 词典：拟合与重建","unitId":"lab10-patch","chapter":"course","number":3},{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","unit":"LAB 05 · 像素 patch 词典：拟合与重建","unitId":"lab10-patch","chapter":"course","number":4},{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","unit":"LAB 05 · 像素 patch 词典：拟合与重建","unitId":"lab10-patch","chapter":"course","number":5}],"aliases":[{"oldId":"b-34ae6a3161eb7294e5557558","targetId":"b-34ae6a3161eb7294e5557558","page":"reading-opening","operation":"move","beforeSHA256":"d1799238a80b17467abe5a1cf9b3b2a7cab0fcdff55511b1488d55e560cee005","afterSHA256":"d1799238a80b17467abe5a1cf9b3b2a7cab0fcdff55511b1488d55e560cee005","reason":"Same source body in authored semantic page"},{"oldId":"b-ffa5a406538365474e3fa07a","targetId":"b-ffa5a406538365474e3fa07a","page":"reading-opening","operation":"move","beforeSHA256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","afterSHA256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","reason":"Same source body in authored semantic page"},{"oldId":"b-0db1d792bbd3bdeadd62db70","targetId":"b-0db1d792bbd3bdeadd62db70","page":"reading-opening","operation":"move","beforeSHA256":"74f0ef9a0e12c18b5c762e1998a58610fd064887211de86861e624d8f17a1e93","afterSHA256":"74f0ef9a0e12c18b5c762e1998a58610fd064887211de86861e624d8f17a1e93","reason":"Same source body in authored semantic page"},{"oldId":"b-2f84097188bea57102206b76","targetId":"b-2f84097188bea57102206b76","page":"reading-opening","operation":"move","beforeSHA256":"f22152fd55dcdb0090b5653d37145694fd19388d31e10226549464fe8b483578","afterSHA256":"f22152fd55dcdb0090b5653d37145694fd19388d31e10226549464fe8b483578","reason":"Same source body in authored semantic page"},{"oldId":"b-738ee0b53560e11d377b731b","targetId":"b-738ee0b53560e11d377b731b","page":"reading-opening","operation":"move","beforeSHA256":"8556351a0a818e5fa2ef8199862458dc0e7165abe7355c0f371bb6d655e593e9","afterSHA256":"8556351a0a818e5fa2ef8199862458dc0e7165abe7355c0f371bb6d655e593e9","reason":"Same source body in authored semantic page"},{"oldId":"b-de3e6a7f715674833d6074e9","targetId":"b-de3e6a7f715674833d6074e9","page":"reading-opening","operation":"move","beforeSHA256":"5d55158be8b6353feb0d4563a7f504cf048fa3436cb40f4080a8914ff99a7e27","afterSHA256":"5d55158be8b6353feb0d4563a7f504cf048fa3436cb40f4080a8914ff99a7e27","reason":"Same source body in authored semantic page"},{"oldId":"b-e8602927e045f93c23ff3c5c","targetId":"b-e8602927e045f93c23ff3c5c","page":"reading-opening","operation":"move","beforeSHA256":"dbf84b15bebe78022347d31b0839fe3d29d232533acaa2deeee23d510f2ae816","afterSHA256":"dbf84b15bebe78022347d31b0839fe3d29d232533acaa2deeee23d510f2ae816","reason":"Same source body in authored semantic page"},{"oldId":"b-7944d2a2213d6305c1993177","targetId":"b-7944d2a2213d6305c1993177","page":"reading-opening","operation":"move","beforeSHA256":"6a46d9a2d3630c246532ee830a95bcb0e942fd53c898b9e3a6ccb3bc7374a110","afterSHA256":"6a46d9a2d3630c246532ee830a95bcb0e942fd53c898b9e3a6ccb3bc7374a110","reason":"Same source body in authored semantic page"},{"oldId":"b-8730602be9ae3741fcacc3d6","targetId":"b-8730602be9ae3741fcacc3d6","page":"reading-opening","operation":"move","beforeSHA256":"fd5dd1acc919d72dac070ea86975759318d1849bb9059fcd493456cca7f4104b","afterSHA256":"fd5dd1acc919d72dac070ea86975759318d1849bb9059fcd493456cca7f4104b","reason":"Same source body in authored semantic page"},{"oldId":"b-71c2ecaee8702ee66134ce28","targetId":"b-71c2ecaee8702ee66134ce28","page":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","operation":"move","beforeSHA256":"315ef08b50a0b323fae00ad56df7471ae7c132d51c19c4a677c98386cde12293","afterSHA256":"315ef08b50a0b323fae00ad56df7471ae7c132d51c19c4a677c98386cde12293","reason":"Same source body in authored semantic page"},{"oldId":"b-6663f272f488bbe3dcd468bb","targetId":"b-6663f272f488bbe3dcd468bb","page":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","operation":"move","beforeSHA256":"1a56ea345a52fa878ce9a5b8081ae3b9ee2a0822c475b8bbd90f02169d30ec2a","afterSHA256":"1a56ea345a52fa878ce9a5b8081ae3b9ee2a0822c475b8bbd90f02169d30ec2a","reason":"Same source body in authored semantic page"},{"oldId":"b-c477bfaf7f2e515758c839a0","targetId":"b-c477bfaf7f2e515758c839a0","page":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","operation":"move","beforeSHA256":"500df777638cd79849d07a4519b06a69550a8b60d73754112a36532a011d600d","afterSHA256":"500df777638cd79849d07a4519b06a69550a8b60d73754112a36532a011d600d","reason":"Same source body in authored semantic page"},{"oldId":"b-8493600086dd0bcd0d1418d6","targetId":"b-8493600086dd0bcd0d1418d6","page":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-738408a3d421e26e9ca8ac72","targetId":"b-738408a3d421e26e9ca8ac72","page":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","operation":"move","beforeSHA256":"72bbf33a8f9ea96226fc30b52369d3deed58207ae9c5c6f20862e3a987ae541e","afterSHA256":"72bbf33a8f9ea96226fc30b52369d3deed58207ae9c5c6f20862e3a987ae541e","reason":"Same source body in authored semantic page"},{"oldId":"b-4c991d0b8950c5fc82f7d1fa","targetId":"b-4c991d0b8950c5fc82f7d1fa","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"45b1827c9a433b3a101ebcb698de2be2ca9e4733f6d1053dfc0f7157be327bd4","afterSHA256":"45b1827c9a433b3a101ebcb698de2be2ca9e4733f6d1053dfc0f7157be327bd4","reason":"Same source body in authored semantic page"},{"oldId":"b-b52ef15959a665adfe17ea40","targetId":"b-b52ef15959a665adfe17ea40","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"03813ef9144d8d18dd0bff567f4b82da7a228ee944b11e4279759dfbbd9d5bde","afterSHA256":"03813ef9144d8d18dd0bff567f4b82da7a228ee944b11e4279759dfbbd9d5bde","reason":"Same source body in authored semantic page"},{"oldId":"b-14d98049b81fab24406010d5","targetId":"b-14d98049b81fab24406010d5","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"1ad1c7532a741815e0ddb1fad16351fe19fa25774d57ac128b7c9b592e24436b","afterSHA256":"1ad1c7532a741815e0ddb1fad16351fe19fa25774d57ac128b7c9b592e24436b","reason":"Same source body in authored semantic page"},{"oldId":"b-92edf7dfc05f1ed31812ec1c","targetId":"b-92edf7dfc05f1ed31812ec1c","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"9cc36d4ff6902af2820b799f48c9096051a537912fc5b75d27a5dbc975c37577","afterSHA256":"9cc36d4ff6902af2820b799f48c9096051a537912fc5b75d27a5dbc975c37577","reason":"Same source body in authored semantic page"},{"oldId":"b-a10cfe0bb74257278b3a8b3f","targetId":"b-a10cfe0bb74257278b3a8b3f","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"27c38f4dc9ef22b94d1816133be947b45d9e20692856c41f56df4d76419bc2ec","afterSHA256":"27c38f4dc9ef22b94d1816133be947b45d9e20692856c41f56df4d76419bc2ec","reason":"Same source body in authored semantic page"},{"oldId":"b-3fe446e987fd0a9632afd8f4","targetId":"b-3fe446e987fd0a9632afd8f4","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-e2ecc1adab62c28652a7ef5a","targetId":"b-e2ecc1adab62c28652a7ef5a","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"dd06f0044e69627b2c8cc901489acc1eda287a2765d26322523f625904f76948","afterSHA256":"842a2859f16e84a7d3b493289fc79303f35cd2097a12434de03ca309a586d71b","reason":"Same source body in authored semantic page"},{"oldId":"b-9bdbce683788d11329fbb77c","targetId":"b-9bdbce683788d11329fbb77c","page":"reading-block-a846afb448004d09bf400a885833d6ea","operation":"move","beforeSHA256":"3a5e2763ff53fa02e29489b37246536f373db998d83fcb91add1e0c3be9874a6","afterSHA256":"3a5e2763ff53fa02e29489b37246536f373db998d83fcb91add1e0c3be9874a6","reason":"Same source body in authored semantic page"},{"oldId":"b-420a8e3ab4217f61842160db","targetId":"b-420a8e3ab4217f61842160db","page":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","operation":"move","beforeSHA256":"7067b34c6f3af58fece8b9e0195a88ab397dd2d05ee80f6919cd5fcea83cf30d","afterSHA256":"7067b34c6f3af58fece8b9e0195a88ab397dd2d05ee80f6919cd5fcea83cf30d","reason":"Same source body in authored semantic page"},{"oldId":"b-4e336ed81c07829846551e89","targetId":"b-4e336ed81c07829846551e89","page":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","operation":"move","beforeSHA256":"c8a3337ee3ac32bf969ea9eed7cd58be7c0d944d98b65e9562b96957f76ecd37","afterSHA256":"c8a3337ee3ac32bf969ea9eed7cd58be7c0d944d98b65e9562b96957f76ecd37","reason":"Same source body in authored semantic page"},{"oldId":"b-6caa794c4444695ccfad03d9","targetId":"b-6caa794c4444695ccfad03d9","page":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","operation":"move","beforeSHA256":"676ed57890182e9efd0f6ff96d6214ab605b80c23d26af5628e0296658ce85a4","afterSHA256":"676ed57890182e9efd0f6ff96d6214ab605b80c23d26af5628e0296658ce85a4","reason":"Same source body in authored semantic page"},{"oldId":"b-f7c5a093ac325aec24688fcc","targetId":"b-f7c5a093ac325aec24688fcc","page":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","operation":"move","beforeSHA256":"ecbabe67cf61696281f87331aa8c52ecb108150ea030c009a056df8785c5ffbb","afterSHA256":"ecbabe67cf61696281f87331aa8c52ecb108150ea030c009a056df8785c5ffbb","reason":"Same source body in authored semantic page"},{"oldId":"b-1fa4f20ed64b7d18a94af264","targetId":"b-1fa4f20ed64b7d18a94af264","page":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","operation":"move","beforeSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","afterSHA256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","reason":"Same source body in authored semantic page"},{"oldId":"b-ae8761409c503dab787f70f3","targetId":"b-ae8761409c503dab787f70f3","page":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","operation":"move","beforeSHA256":"584ca01e62d08bbeb173fa6d742300162df99075597f206081b29564cd5a32f8","afterSHA256":"584ca01e62d08bbeb173fa6d742300162df99075597f206081b29564cd5a32f8","reason":"Same source body in authored semantic page"},{"oldId":"b-40d7052c2cce31a157076cd2","targetId":"b-40d7052c2cce31a157076cd2","page":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","operation":"move","beforeSHA256":"62389228516f8fb7c099bdbb36b486d7673d757788ec3c741e5c6b6ec27ff025","afterSHA256":"62389228516f8fb7c099bdbb36b486d7673d757788ec3c741e5c6b6ec27ff025","reason":"Same source body in authored semantic page"},{"oldId":"b-49987c8e71647ef6f45a08f8","targetId":"b-49987c8e71647ef6f45a08f8","page":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","operation":"move","beforeSHA256":"4fbfee3ab8a0a2a53e096b597d95e54b70aea633f885d174767f9b98e853957f","afterSHA256":"4fbfee3ab8a0a2a53e096b597d95e54b70aea633f885d174767f9b98e853957f","reason":"Same source body in authored semantic page"},{"oldId":"b-c701330ed09ee16168fe165f","targetId":"b-c701330ed09ee16168fe165f","page":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","operation":"move","beforeSHA256":"99861842d610abfda3ce77408588089f256e9c4853fa2178a0efd5fa11e80f66","afterSHA256":"99861842d610abfda3ce77408588089f256e9c4853fa2178a0efd5fa11e80f66","reason":"Same source body in authored semantic page"},{"oldId":"b-1dfd35d3fa38f89ac10e1739","targetId":"b-1dfd35d3fa38f89ac10e1739","page":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","operation":"move","beforeSHA256":"41c95234842cc91206a4bed88534cd8a097107da29065d684c9dc47e44a8726e","afterSHA256":"41c95234842cc91206a4bed88534cd8a097107da29065d684c9dc47e44a8726e","reason":"Same source body in authored semantic page"},{"oldId":"b-15c0a045a7e26fe47d07deef","targetId":"b-15c0a045a7e26fe47d07deef","page":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","operation":"move","beforeSHA256":"f8f53d1f5befa9be7270d71ccfeecd0d08cc8403cf2e53aa4e9756701c5d7c04","afterSHA256":"f8f53d1f5befa9be7270d71ccfeecd0d08cc8403cf2e53aa4e9756701c5d7c04","reason":"Same source body in authored semantic page"},{"oldId":"b-c836b8839489103f78f8ba2c","targetId":"b-c836b8839489103f78f8ba2c","page":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","operation":"move","beforeSHA256":"bdfa4e8f725c91b576c8c61223c757b6e91ae601f6dbf4c4cb85fe484dfb8c24","afterSHA256":"bdfa4e8f725c91b576c8c61223c757b6e91ae601f6dbf4c4cb85fe484dfb8c24","reason":"Same source body in authored semantic page"},{"oldId":"block-c2c6ecd7ada84187bccc2b611e21dd00--词典实验到这里结束其他目标按需选读","targetId":"b-40d7052c2cce31a157076cd2","operation":"retain-source-identity"}],"blocks":[{"id":"b-34ae6a3161eb7294e5557558","type":"h1","scope":"document","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-34ae6a3161eb7294e5557558","content":"# LAB 05 · 像素 patch 词典：拟合与重建","sha256":"d1799238a80b17467abe5a1cf9b3b2a7cab0fcdff55511b1488d55e560cee005","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-ffa5a406538365474e3fa07a","prerequisites":[{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-ffa5a406538365474e3fa07a","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-ffa5a406538365474e3fa07a","content":"按问题继续","sha256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-34ae6a3161eb7294e5557558","nextBlock":"b-0db1d792bbd3bdeadd62db70","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"}],"relatedBlocks":[]},{"id":"b-0db1d792bbd3bdeadd62db70","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-0db1d792bbd3bdeadd62db70","content":"真实MNIST patch的Lloyd拟合、词典中心、保留误差与历史输出","sha256":"74f0ef9a0e12c18b5c762e1998a58610fd064887211de86861e624d8f17a1e93","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-ffa5a406538365474e3fa07a","nextBlock":"b-2f84097188bea57102206b76","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-2f84097188bea57102206b76","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-2f84097188bea57102206b76","content":"可先阅读已有结果，再决定是否运行。重算时请核对各节记录的数据、参数、环境与日期。","sha256":"f22152fd55dcdb0090b5653d37145694fd19388d31e10226549464fe8b483578","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-0db1d792bbd3bdeadd62db70","nextBlock":"b-738ee0b53560e11d377b731b","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-738ee0b53560e11d377b731b","type":"p","scope":"block-f5110118913442269208cf213f242d3f","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-738ee0b53560e11d377b731b","content":"**学习路径：** [从遮挡重建到表示评价](/course/study/masked-reconstruction.html)","sha256":"8556351a0a818e5fa2ef8199862458dc0e7165abe7355c0f371bb6d655e593e9","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-2f84097188bea57102206b76","nextBlock":"b-de3e6a7f715674833d6074e9","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-de3e6a7f715674833d6074e9","type":"p","scope":"block-f5110118913442269208cf213f242d3f","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-de3e6a7f715674833d6074e9","content":"**不提供数字类别，能否从局部像素学出一套压缩词典？**","sha256":"5d55158be8b6353feb0d4563a7f504cf048fa3436cb40f4080a8914ff99a7e27","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-738ee0b53560e11d377b731b","nextBlock":"b-e8602927e045f93c23ff3c5c","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-e8602927e045f93c23ff3c5c","type":"p","scope":"block-f5110118913442269208cf213f242d3f","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-e8602927e045f93c23ff3c5c","content":"先看16个7×7中心和训练距离曲线，再沿“分给最近中心→重算中心”走一轮，最后查看保留图的重建误差。训练排除近空白patch，评价包含全部patch，两项误差不能直接相减当泛化间距。","sha256":"dbf84b15bebe78022347d31b0839fe3d29d232533acaa2deeee23d510f2ae816","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-de3e6a7f715674833d6074e9","nextBlock":"b-7944d2a2213d6305c1993177","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-7944d2a2213d6305c1993177","type":"p","scope":"block-f5110118913442269208cf213f242d3f","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-7944d2a2213d6305c1993177","content":"可交付的一项判断是：把词典从16个中心改成8个时，你预计哪些笔画更难保留，运行结果是否支持？只改词典大小，先保持数据、patch大小和划分。","sha256":"6a46d9a2d3630c246532ee830a95bcb0e942fd53c898b9e3a6ccb3bc7374a110","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-e8602927e045f93c23ff3c5c","nextBlock":"b-8730602be9ae3741fcacc3d6","prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-8730602be9ae3741fcacc3d6","type":"p","scope":"block-f5110118913442269208cf213f242d3f","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-8730602be9ae3741fcacc3d6","content":"本册是[CLS 04重建约束](https://deepnote.com/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/23b0affc4b824723927bd0938fd2bbda)的基础支路；[P19本页说明](/course/pages/l3-r2-p19.html)连接MAE。拟合不读取类别标签，也不等于学到数字语义。想比较可学习瓶颈与遮挡目标，再选[LAB 08](https://deepnote.com/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/b5ba27f2c5ba4ec0922208a7d5dc80a4)。","sha256":"fd5dd1acc919d72dac070ea86975759318d1849bb9059fcd493456cca7f4104b","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-opening","title":"LAB 05 · 像素 patch 词典：拟合与重建","number":1},"sectionTitle":"LAB 05 · 像素 patch 词典：拟合与重建","currentQuestion":"LAB 05 · 像素 patch 词典：拟合与重建","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-7944d2a2213d6305c1993177","nextBlock":null,"prerequisites":[{"id":"b-34ae6a3161eb7294e5557558","url":"#b-34ae6a3161eb7294e5557558","role":"section-title"},{"id":"b-ffa5a406538365474e3fa07a","url":"#b-ffa5a406538365474e3fa07a","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-71c2ecaee8702ee66134ce28","type":"h3","scope":"block-6a7a48604cfb4b66894002d4e6c25d71","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-71c2ecaee8702ee66134ce28","content":"### 1 · 准备与固定输入","sha256":"315ef08b50a0b323fae00ad56df7471ae7c132d51c19c4a677c98386cde12293","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","title":"1 · 准备与固定输入","number":2},"sectionTitle":"1 · 准备与固定输入","currentQuestion":"1 · 准备与固定输入","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-6663f272f488bbe3dcd468bb","prerequisites":[{"id":"b-6663f272f488bbe3dcd468bb","url":"#b-6663f272f488bbe3dcd468bb","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-6663f272f488bbe3dcd468bb","type":"p","scope":"block-cedabc632fde46aab93d92c28e9d9d53","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-6663f272f488bbe3dcd468bb","content":"只读取固定640张MNIST像素及样本身份；256张用于词典 fit，256张留作重建评价。像素 /255、右移2px。源包有数字标签，但本册不读取它们。","sha256":"1a56ea345a52fa878ce9a5b8081ae3b9ee2a0822c475b8bbd90f02169d30ec2a","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","title":"1 · 准备与固定输入","number":2},"sectionTitle":"1 · 准备与固定输入","currentQuestion":"1 · 准备与固定输入","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-71c2ecaee8702ee66134ce28","nextBlock":"b-c477bfaf7f2e515758c839a0","prerequisites":[{"id":"b-71c2ecaee8702ee66134ce28","url":"#b-71c2ecaee8702ee66134ce28","role":"section-title"}],"relatedBlocks":[]},{"id":"b-c477bfaf7f2e515758c839a0","type":"pre","scope":"block-d9b6b1782dd5404895a80b24f6a87f64","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-c477bfaf7f2e515758c839a0","content":"```\n# 当前项目中的独立材料：已存在则复用，缺失才从本讲原站准备。\nfrom pathlib import Path\nimport io, zipfile, urllib.request\n_base = Path.cwd()\n_folder = 'lab10-patch'\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\nfrom pathlib import Path\nimport numpy as np\nimport matplotlib.pyplot as plt\nROOT=LAB_ROOT\nif not (ROOT/'assets').is_dir() and (ROOT/'lab10-patch'/'assets').is_dir():ROOT=ROOT/'lab10-patch'\nassert (ROOT/'assets').is_dir(), '请解压本实验完整包，并在该目录或其父目录运行。'\nOUT=ROOT/'runs/current'; OUT.mkdir(parents=True,exist_ok=True)\nFIG=OUT/'figures'; FIG.mkdir(exist_ok=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()\n\nprovenance=json.loads((ROOT/'assets/provenance.json').read_text())\nassert sha_file(ROOT/'assets/target.npz')==provenance['target_asset_sha256']\nwith np.load(ROOT/'assets/target.npz',allow_pickle=False) as z:\n    images=z['images'];sample_ids=z['official_train_ids'];split=z['split']\n# digit_labels are in the source archive but deliberately never read here.\nassert len(set(sample_ids))==640\ntrain=np.flatnonzero(split==0);heldout=np.flatnonzero(split==2)\nassert not set(sample_ids[train])&set(sample_ids[heldout])\npartition=np.random.default_rng(20260908).permutation(60000)\nassert np.array_equal(sample_ids,partition[12000:12640])\nx=images.astype(np.float32)/255\nshifted=np.zeros_like(x);shifted[:,:,:,2:]=x[:,:,:,:-2];x=shifted\nassert x.shape==(640,1,28,28)\nprint('无标签 fit 输入：',len(train),'张；保留：',len(heldout),'张。没有导入 torch、加载 CNN 或读取类别标签。')\n\n```","sha256":"500df777638cd79849d07a4519b06a69550a8b60d73754112a36532a011d600d","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","title":"1 · 准备与固定输入","number":2},"sectionTitle":"1 · 准备与固定输入","currentQuestion":"1 · 准备与固定输入","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-6663f272f488bbe3dcd468bb","nextBlock":"b-8493600086dd0bcd0d1418d6","prerequisites":[{"id":"b-71c2ecaee8702ee66134ce28","url":"#b-71c2ecaee8702ee66134ce28","role":"section-title"},{"id":"b-6663f272f488bbe3dcd468bb","url":"#b-6663f272f488bbe3dcd468bb","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-8493600086dd0bcd0d1418d6","type":"p","scope":"block-a4933c58cc07483e87ea57b6088ffffe","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-8493600086dd0bcd0d1418d6","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","title":"1 · 准备与固定输入","number":2},"sectionTitle":"1 · 准备与固定输入","currentQuestion":"1 · 准备与固定输入","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-c477bfaf7f2e515758c839a0","nextBlock":"b-738408a3d421e26e9ca8ac72","prerequisites":[{"id":"b-71c2ecaee8702ee66134ce28","url":"#b-71c2ecaee8702ee66134ce28","role":"section-title"},{"id":"b-6663f272f488bbe3dcd468bb","url":"#b-6663f272f488bbe3dcd468bb","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-738408a3d421e26e9ca8ac72","type":"pre","scope":"block-a4933c58cc07483e87ea57b6088ffffe","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-738408a3d421e26e9ca8ac72","content":"```\n无标签 fit 输入： 256 张；保留： 256 张。没有导入 torch、加载 CNN 或读取类别标签。\n\n```","sha256":"72bbf33a8f9ea96226fc30b52369d3deed58207ae9c5c6f20862e3a987ae541e","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-6a7a48604cfb4b66894002d4e6c25d71","title":"1 · 准备与固定输入","number":2},"sectionTitle":"1 · 准备与固定输入","currentQuestion":"1 · 准备与固定输入","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-8493600086dd0bcd0d1418d6","nextBlock":null,"prerequisites":[{"id":"b-71c2ecaee8702ee66134ce28","url":"#b-71c2ecaee8702ee66134ce28","role":"section-title"},{"id":"b-6663f272f488bbe3dcd468bb","url":"#b-6663f272f488bbe3dcd468bb","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-4c991d0b8950c5fc82f7d1fa","type":"h3","scope":"block-a846afb448004d09bf400a885833d6ea","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-4c991d0b8950c5fc82f7d1fa","content":"### 1 · 没有类别标签，词典到底学了什么？","sha256":"45b1827c9a433b3a101ebcb698de2be2ca9e4733f6d1053dfc0f7157be327bd4","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-b52ef15959a665adfe17ea40","prerequisites":[{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-b52ef15959a665adfe17ea40","type":"p","scope":"block-b114c530db554435857d485212f2ecba","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-b52ef15959a665adfe17ea40","content":"历史 LAB07 原先的两个中心来自预设分组均值；后来加入的 Lloyd 拟合确实执行了优化，但输入仍是构造的二维描述子。本节另建实验身份，改用本册**训练图像的真实 7×7 像素 patch**。每张图切成不重叠的 4×4 个 patch，保留平均亮度大于 0.01 的 patch，学习 16 个中心。训练目标是 patch 到最近中心的平方距离和。","sha256":"03813ef9144d8d18dd0bff567f4b82da7a228ee944b11e4279759dfbbd9d5bde","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-4c991d0b8950c5fc82f7d1fa","nextBlock":"b-14d98049b81fab24406010d5","prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"}],"relatedBlocks":[]},{"id":"b-14d98049b81fab24406010d5","type":"p","scope":"block-b114c530db554435857d485212f2ecba","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-14d98049b81fab24406010d5","content":"这里没有把数字类别交给词典。它学到的是压缩这些局部像素模式的一组中心；它没有因此证明自己学到了“数字概念”。这也不是 SIFT 描述子拟合，更不是 SimCLR、MAE 或 DINO 的复现。与现代方法的联系在问题层面：学习目标可以来自数据结构，而不一定来自固定类别名称。","sha256":"1ad1c7532a741815e0ddb1fad16351fe19fa25774d57ac128b7c9b592e24436b","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-b52ef15959a665adfe17ea40","nextBlock":"b-92edf7dfc05f1ed31812ec1c","prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"},{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-92edf7dfc05f1ed31812ec1c","type":"p","scope":"block-b114c530db554435857d485212f2ecba","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-92edf7dfc05f1ed31812ec1c","content":"**预测 → 改一个条件：**先看 16 个中心，再只改 `N_WORDS` 为 8。重跑本节，对照训练距离、保留 patch 重建误差及可辨认笔画。不要同时改 patch 大小与词典大小。","sha256":"9cc36d4ff6902af2820b799f48c9096051a537912fc5b75d27a5dbc975c37577","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-14d98049b81fab24406010d5","nextBlock":"b-a10cfe0bb74257278b3a8b3f","prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"},{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-a10cfe0bb74257278b3a8b3f","type":"pre","scope":"block-e56644fbd8a5464084c3e83da669726c","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-a10cfe0bb74257278b3a8b3f","content":"```\n# Actual Lloyd updates on image patches. Labels are deliberately absent from fit().\nN_WORDS=16\nPATCH=7\npatches=x.reshape(640,1,4,PATCH,4,PATCH).transpose(0,2,4,1,3,5).reshape(640,16,PATCH*PATCH)\nfit_patches=patches[train].reshape(-1,PATCH*PATCH)\nfit_patches=fit_patches[fit_patches.mean(1)>.01].astype(np.float64)\ndef fit_lloyd_unlabeled(a,k,seed=20260918,max_iter=80):\n    rng=np.random.default_rng(seed)\n    centers=a[rng.choice(len(a),k,replace=False)].copy()\n    trace=[]\n    for iteration in range(max_iter):\n        distances=((a[:,None,:]-centers[None,:,:])**2).sum(2)\n        assignments=distances.argmin(1)\n        new=np.stack([a[assignments==j].mean(0) if np.any(assignments==j) else centers[j] for j in range(k)])\n        new_distances=((a[:,None,:]-new[None,:,:])**2).sum(2)\n        sse=float(new_distances.min(1).sum())\n        trace.append(sse)\n        if np.allclose(new,centers,rtol=0,atol=1e-10):\n            centers=new; break\n        centers=new\n    assert np.all(np.diff(trace)<=1e-7)\n    return centers,trace\ncenters,trace=fit_lloyd_unlabeled(fit_patches,N_WORDS)\nfrozen_centers=centers.copy()\ntest_patches=patches[heldout].reshape(-1,49)\ntest_dist=((test_patches[:,None,:]-frozen_centers[None,:,:])**2).sum(2)\ntest_assignment=test_dist.argmin(1)\nassert np.array_equal(centers,frozen_centers)\nkmeans_result={'identity':'L-A true MNIST pixel-patch Lloyd fit','labels_used_in_fit':False,\n 'patch_shape':[7,7],'n_words':N_WORDS,'train_images':len(train),'train_nonblank_patches':len(fit_patches),\n 'fit_sample_ids':sample_ids[train].tolist(),'evaluation_sample_ids':sample_ids[heldout].tolist(),\n 'train_sse_trace':trace,'heldout_mean_squared_pixel_error':float(test_dist.min(1).mean()/49),\n 'warning':'train excludes nearblank patches; heldout covers all patches, so these objectives are not identically weighted'}\nnp.savez_compressed(OUT/'kmeans-centers.npz',centers=centers)\n(OUT/'kmeans-results.json').write_text(json.dumps(kmeans_result,indent=2))\nfig=plt.figure(figsize=(12,4.4),layout='constrained')\nouter=fig.add_gridspec(1,2,width_ratios=[1,1.3],wspace=.12)\ngrid=outer[0].subgridspec(int(np.ceil(N_WORDS/4)),4,wspace=.06,hspace=.12)\nfor j,c in enumerate(centers):\n    ax=fig.add_subplot(grid[j//4,j%4]);ax.imshow(c.reshape(7,7),cmap='gray',vmin=0,vmax=1);ax.set_title(f'word {j}',fontsize=8);ax.axis('off')\nax=fig.add_subplot(outer[1]);ax.plot(np.arange(1,len(trace)+1),trace,color=BLUE,marker='.',ms=4)\nax.set(xlabel='Lloyd iteration',ylabel='Training sum of squared distances',title='Real image patches; no digit labels')\nsavefig('02-unlabeled-fit.png')\nprint('Fitted nonblank patches:',len(fit_patches),'iterations:',len(trace))\nprint('Held-out pixel reconstruction MSE:',kmeans_result['heldout_mean_squared_pixel_error'])\n```","sha256":"27c38f4dc9ef22b94d1816133be947b45d9e20692856c41f56df4d76419bc2ec","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-92edf7dfc05f1ed31812ec1c","nextBlock":"b-3fe446e987fd0a9632afd8f4","prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"},{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-3fe446e987fd0a9632afd8f4","type":"p","scope":"block-3f03f0e237f04abb89e76ad9b8564a2a","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-3fe446e987fd0a9632afd8f4","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-a10cfe0bb74257278b3a8b3f","nextBlock":"b-e2ecc1adab62c28652a7ef5a","prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"},{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-e2ecc1adab62c28652a7ef5a","type":"p","scope":"block-3f03f0e237f04abb89e76ad9b8564a2a","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-e2ecc1adab62c28652a7ef5a","content":"![本地保存图](/assets/display/32ef74715b4bea413d1f5b93.webp)","sha256":"842a2859f16e84a7d3b493289fc79303f35cd2097a12434de03ca309a586d71b","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-3fe446e987fd0a9632afd8f4","nextBlock":"b-9bdbce683788d11329fbb77c","prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"},{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-9bdbce683788d11329fbb77c","type":"pre","scope":"block-3f03f0e237f04abb89e76ad9b8564a2a","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-9bdbce683788d11329fbb77c","content":"```\nFitted nonblank patches: 2280 iterations: 21\nHeld-out pixel reconstruction MSE: 0.037023347509276223\n\n```","sha256":"3a5e2763ff53fa02e29489b37246536f373db998d83fcb91add1e0c3be9874a6","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-a846afb448004d09bf400a885833d6ea","title":"1 · 没有类别标签，词典到底学了什么？","number":3},"sectionTitle":"1 · 没有类别标签，词典到底学了什么？","currentQuestion":"1 · 没有类别标签，词典到底学了什么？","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-e2ecc1adab62c28652a7ef5a","nextBlock":null,"prerequisites":[{"id":"b-4c991d0b8950c5fc82f7d1fa","url":"#b-4c991d0b8950c5fc82f7d1fa","role":"section-title"},{"id":"b-b52ef15959a665adfe17ea40","url":"#b-b52ef15959a665adfe17ea40","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-420a8e3ab4217f61842160db","type":"h3","scope":"block-82e1814b9b2c425e8df6cb2ed657dc67","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-420a8e3ab4217f61842160db","content":"### 3 · 解释与下一项对照","sha256":"7067b34c6f3af58fece8b9e0195a88ab397dd2d05ee80f6919cd5fcea83cf30d","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","number":4},"sectionTitle":"3 · 解释与下一项对照","currentQuestion":"3 · 解释与下一项对照","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-4e336ed81c07829846551e89","prerequisites":[{"id":"b-4e336ed81c07829846551e89","url":"#b-4e336ed81c07829846551e89","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-4e336ed81c07829846551e89","type":"p","scope":"block-79ba67e8303e4c129fed9fa65769fee6","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-4e336ed81c07829846551e89","content":"中心确实经过优化产生，评价时只分配给冻结中心。训练距离下降不证明它保留了类别信息。训练时排除近空白 patch，保留评价包含全部 patch，两项误差的权重不同，不能直接相减当泛化间距。","sha256":"c8a3337ee3ac32bf969ea9eed7cd58be7c0d944d98b65e9562b96957f76ecd37","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","number":4},"sectionTitle":"3 · 解释与下一项对照","currentQuestion":"3 · 解释与下一项对照","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-420a8e3ab4217f61842160db","nextBlock":"b-6caa794c4444695ccfad03d9","prerequisites":[{"id":"b-420a8e3ab4217f61842160db","url":"#b-420a8e3ab4217f61842160db","role":"section-title"}],"relatedBlocks":[]},{"id":"b-6caa794c4444695ccfad03d9","type":"p","scope":"block-79ba67e8303e4c129fed9fa65769fee6","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-6caa794c4444695ccfad03d9","content":"先记录预测，再请 AI 只把 `N_WORDS` 改成8，并检查输出中心数、形状与 fit/evaluation 分离。目标和保留集固定；不要同时改变 patch 大小。再问需要怎样的标签读出，才能检验类别信息。","sha256":"676ed57890182e9efd0f6ff96d6214ab605b80c23d26af5628e0296658ce85a4","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","number":4},"sectionTitle":"3 · 解释与下一项对照","currentQuestion":"3 · 解释与下一项对照","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-4e336ed81c07829846551e89","nextBlock":"b-f7c5a093ac325aec24688fcc","prerequisites":[{"id":"b-420a8e3ab4217f61842160db","url":"#b-420a8e3ab4217f61842160db","role":"section-title"},{"id":"b-4e336ed81c07829846551e89","url":"#b-4e336ed81c07829846551e89","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-f7c5a093ac325aec24688fcc","type":"pre","scope":"block-52428de33b024c91b6d336766334bf2d","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-f7c5a093ac325aec24688fcc","content":"```\n# 当前单元无法确认宿主平台或是否使用全新进程；unknown 不等于 False。\nverification={'identity':'v17 independent patch-fit','fresh_process':'unknown','model_loaded':False,'labels_read':False,'labels_used_in_fit':False,'dictionary_frozen_during_evaluation':bool(np.array_equal(centers,frozen_centers)),'monotonic_sse':bool(np.all(np.diff(trace)<=1e-7)),'local_run':'unknown','cloud_run':'unknown','environment':{'python':platform.python_version(),'numpy':np.__version__},'target_sha256':sha_file(ROOT/'assets/target.npz'),'heldout_mse':kmeans_result['heldout_mean_squared_pixel_error']}\n(OUT/'verification.json').write_text(json.dumps(verification,indent=2));print(json.dumps(verification,indent=2))\n\n```","sha256":"ecbabe67cf61696281f87331aa8c52ecb108150ea030c009a056df8785c5ffbb","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","number":4},"sectionTitle":"3 · 解释与下一项对照","currentQuestion":"3 · 解释与下一项对照","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-6caa794c4444695ccfad03d9","nextBlock":"b-1fa4f20ed64b7d18a94af264","prerequisites":[{"id":"b-420a8e3ab4217f61842160db","url":"#b-420a8e3ab4217f61842160db","role":"section-title"},{"id":"b-4e336ed81c07829846551e89","url":"#b-4e336ed81c07829846551e89","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-1fa4f20ed64b7d18a94af264","type":"p","scope":"block-6fe298d4e9cf48e982b845f2e5541b85","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-1fa4f20ed64b7d18a94af264","content":"**本地保存输出（非 Deepnote 云端运行）**","sha256":"299dde2261afc779a24cf1ae75d95db124c4172bdc20f07be698f22dadfa7947","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","number":4},"sectionTitle":"3 · 解释与下一项对照","currentQuestion":"3 · 解释与下一项对照","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-f7c5a093ac325aec24688fcc","nextBlock":"b-ae8761409c503dab787f70f3","prerequisites":[{"id":"b-420a8e3ab4217f61842160db","url":"#b-420a8e3ab4217f61842160db","role":"section-title"},{"id":"b-4e336ed81c07829846551e89","url":"#b-4e336ed81c07829846551e89","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-ae8761409c503dab787f70f3","type":"pre","scope":"block-6fe298d4e9cf48e982b845f2e5541b85","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-ae8761409c503dab787f70f3","content":"```\n{\n  \"identity\": \"v17 independent patch-fit\",\n  \"fresh_process\": true,\n  \"model_loaded\": false,\n  \"labels_read\": false,\n  \"labels_used_in_fit\": false,\n  \"dictionary_frozen_during_evaluation\": true,\n  \"monotonic_sse\": true,\n  \"local_run\": true,\n  \"cloud_run\": false,\n  \"environment\": {\n    \"python\": \"3.12.14\",\n    \"numpy\": \"2.3.5\"\n  },\n  \"target_sha256\": \"ca069f616b511b5aa9d3e9ab88b6fd12741a5b9c1b66a8befe467e44a796ddd1\",\n  \"heldout_mse\": 0.037023347509276223\n}\n\n```","sha256":"584ca01e62d08bbeb173fa6d742300162df99075597f206081b29564cd5a32f8","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-82e1814b9b2c425e8df6cb2ed657dc67","title":"3 · 解释与下一项对照","number":4},"sectionTitle":"3 · 解释与下一项对照","currentQuestion":"3 · 解释与下一项对照","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-1fa4f20ed64b7d18a94af264","nextBlock":null,"prerequisites":[{"id":"b-420a8e3ab4217f61842160db","url":"#b-420a8e3ab4217f61842160db","role":"section-title"},{"id":"b-4e336ed81c07829846551e89","url":"#b-4e336ed81c07829846551e89","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-40d7052c2cce31a157076cd2","type":"h2","scope":"block-c2c6ecd7ada84187bccc2b611e21dd00","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-40d7052c2cce31a157076cd2","content":"## 词典实验到这里结束；其他目标按需选读","sha256":"62389228516f8fb7c099bdbb36b486d7673d757788ec3c741e5c6b6ec27ff025","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","number":5},"sectionTitle":"词典实验到这里结束；其他目标按需选读","currentQuestion":"词典实验到这里结束；其他目标按需选读","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-49987c8e71647ef6f45a08f8","prerequisites":[{"id":"b-49987c8e71647ef6f45a08f8","url":"#b-49987c8e71647ef6f45a08f8","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-49987c8e71647ef6f45a08f8","type":"p","scope":"block-c2c6ecd7ada84187bccc2b611e21dd00","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-49987c8e71647ef6f45a08f8","content":"本册已经完成真实patch词典的拟合与保留重建。教师信号、坍塌与结构—目标配合是有价值的旁支，但不应在这里再开一段必读课程。","sha256":"4fbfee3ab8a0a2a53e096b597d95e54b70aea633f885d174767f9b98e853957f","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","number":5},"sectionTitle":"词典实验到这里结束；其他目标按需选读","currentQuestion":"词典实验到这里结束；其他目标按需选读","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-40d7052c2cce31a157076cd2","nextBlock":"b-c701330ed09ee16168fe165f","prerequisites":[{"id":"b-40d7052c2cce31a157076cd2","url":"#b-40d7052c2cce31a157076cd2","role":"section-title"}],"relatedBlocks":[]},{"id":"b-c701330ed09ee16168fe165f","type":"ul","scope":"block-c2c6ecd7ada84187bccc2b611e21dd00","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-c701330ed09ee16168fe165f","content":"- 对“没有类别标签，谁给答案”有兴趣：读 [CLS 06 · 表示的三个检查：目标、信息与新域](https://deepnote.com/workspace/ise3309jingao-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/c0645a4db6e04188ab5b119e87c53bed?utm_source=openai&utm_medium=mcp&utm_campaign=openaimcp&utm_content=c0645a4db6e04188ab5b119e87c53bed&utm_term=get_notebook) 中的固定教师与EMA教师，或直接 [教师模型提供的是哪一种答案？](/course/blocks/teacher-target-source-and-collapse.html)。\n\n- 想从词典走向可学习非线性重建：读 [CLS 04 · 重建：约束、位置与表示评价](https://deepnote.com/workspace/ise3309jingao-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/23b0affc4b824723927bd0938fd2bbda?utm_source=openai&utm_medium=mcp&utm_campaign=openaimcp&utm_content=23b0affc4b824723927bd0938fd2bbda&utm_term=get_notebook)，再选 [LAB 08 · 图像重建：遮挡损失与表示评价](https://deepnote.com/workspace/ise3309jingao-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/b5ba27f2c5ba4ec0922208a7d5dc80a4?utm_source=openai&utm_medium=mcp&utm_campaign=openaimcp&utm_content=b5ba27f2c5ba4ec0922208a7d5dc80a4&utm_term=get_notebook)。","sha256":"99861842d610abfda3ce77408588089f256e9c4853fa2178a0efd5fa11e80f66","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","number":5},"sectionTitle":"词典实验到这里结束；其他目标按需选读","currentQuestion":"词典实验到这里结束；其他目标按需选读","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-49987c8e71647ef6f45a08f8","nextBlock":"b-1dfd35d3fa38f89ac10e1739","prerequisites":[{"id":"b-40d7052c2cce31a157076cd2","url":"#b-40d7052c2cce31a157076cd2","role":"section-title"},{"id":"b-49987c8e71647ef6f45a08f8","url":"#b-49987c8e71647ef6f45a08f8","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-1dfd35d3fa38f89ac10e1739","type":"li","scope":"block-c2c6ecd7ada84187bccc2b611e21dd00","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-1dfd35d3fa38f89ac10e1739","content":"- 对“没有类别标签，谁给答案”有兴趣：读 [CLS 06 · 表示的三个检查：目标、信息与新域](https://deepnote.com/workspace/ise3309jingao-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/c0645a4db6e04188ab5b119e87c53bed?utm_source=openai&utm_medium=mcp&utm_campaign=openaimcp&utm_content=c0645a4db6e04188ab5b119e87c53bed&utm_term=get_notebook) 中的固定教师与EMA教师，或直接 [教师模型提供的是哪一种答案？](/course/blocks/teacher-target-source-and-collapse.html)。","sha256":"41c95234842cc91206a4bed88534cd8a097107da29065d684c9dc47e44a8726e","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","number":5},"sectionTitle":"词典实验到这里结束；其他目标按需选读","currentQuestion":"词典实验到这里结束；其他目标按需选读","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-c701330ed09ee16168fe165f","nextBlock":"b-15c0a045a7e26fe47d07deef","prerequisites":[{"id":"b-40d7052c2cce31a157076cd2","url":"#b-40d7052c2cce31a157076cd2","role":"section-title"},{"id":"b-49987c8e71647ef6f45a08f8","url":"#b-49987c8e71647ef6f45a08f8","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-15c0a045a7e26fe47d07deef","type":"li","scope":"block-c2c6ecd7ada84187bccc2b611e21dd00","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-15c0a045a7e26fe47d07deef","content":"- 想从词典走向可学习非线性重建：读 [CLS 04 · 重建：约束、位置与表示评价](https://deepnote.com/workspace/ise3309jingao-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/23b0affc4b824723927bd0938fd2bbda?utm_source=openai&utm_medium=mcp&utm_campaign=openaimcp&utm_content=23b0affc4b824723927bd0938fd2bbda&utm_term=get_notebook)，再选 [LAB 08 · 图像重建：遮挡损失与表示评价](https://deepnote.com/workspace/ise3309jingao-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/38755e4e-23f6-4f5f-8c68-8a2e4114b1c1/notebook/b5ba27f2c5ba4ec0922208a7d5dc80a4?utm_source=openai&utm_medium=mcp&utm_campaign=openaimcp&utm_content=b5ba27f2c5ba4ec0922208a7d5dc80a4&utm_term=get_notebook)。","sha256":"f8f53d1f5befa9be7270d71ccfeecd0d08cc8403cf2e53aa4e9756701c5d7c04","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","number":5},"sectionTitle":"词典实验到这里结束；其他目标按需选读","currentQuestion":"词典实验到这里结束；其他目标按需选读","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-1dfd35d3fa38f89ac10e1739","nextBlock":"b-c836b8839489103f78f8ba2c","prerequisites":[{"id":"b-40d7052c2cce31a157076cd2","url":"#b-40d7052c2cce31a157076cd2","role":"section-title"},{"id":"b-49987c8e71647ef6f45a08f8","url":"#b-49987c8e71647ef6f45a08f8","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-c836b8839489103f78f8ba2c","type":"p","scope":"block-c2c6ecd7ada84187bccc2b611e21dd00","url":"https://codingai-lec03.pages.dev/course/lab10-patch.html#b-c836b8839489103f78f8ba2c","content":"DINO已归入CLS 06；ConvNeXt V2的结构—目标配合与原文Table 3保存为 [选读：结构与遮挡目标为什么要共同设计](/course/blocks/architecture-objective-co-design.html)，可单独引用。本册默认阅读停在词典的训练目标、中心和保留误差，不把独立论文表格混成这次实验的结果。","sha256":"bdfa4e8f725c91b576c8c61223c757b6e91ae601f6dbf4c4cb85fe484dfb8c24","chapter":{"id":"course","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"unit":{"id":"lab10-patch","title":"LAB 05 · 像素 patch 词典：拟合与重建"},"page":{"id":"reading-block-c2c6ecd7ada84187bccc2b611e21dd00","title":"词典实验到这里结束；其他目标按需选读","number":5},"sectionTitle":"词典实验到这里结束；其他目标按需选读","currentQuestion":"词典实验到这里结束；其他目标按需选读","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-15c0a045a7e26fe47d07deef","nextBlock":null,"prerequisites":[{"id":"b-40d7052c2cce31a157076cd2","url":"#b-40d7052c2cce31a157076cd2","role":"section-title"},{"id":"b-49987c8e71647ef6f45a08f8","url":"#b-49987c8e71647ef6f45a08f8","role":"problem-context"}],"relatedBlocks":[]}]}
