{"version":2,"relationshipURLBase":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html","relationshipResolution":"Resolve relative relationship URLs against relationshipURLBase; complete records and absolute URLs are in blocks.","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html","markdown":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.md","pages":[{"id":"reading-opening","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","unit":"2. “冻住”到底冻住哪些参数？ · 实现代码","unitId":"notebook-blocks/79753dc070ca46108d4cc8ab56dbe083","chapter":"course","number":1}],"aliases":[{"oldId":"b-59ee07300e9ffb1be92ef972","targetId":"b-59ee07300e9ffb1be92ef972","page":"reading-opening","operation":"move","beforeSHA256":"f107bd31e942a5cf605f3183c89731efbb5349a4bf8c063087e5d29bebde50b5","afterSHA256":"f107bd31e942a5cf605f3183c89731efbb5349a4bf8c063087e5d29bebde50b5","reason":"Same source body in authored semantic page"},{"oldId":"b-34c8736eaa53338c7b6794c9","targetId":"b-34c8736eaa53338c7b6794c9","page":"reading-opening","operation":"move","beforeSHA256":"df99b5801050e4f9e3ac93b3d911ea375700e5c7938c702cebb271604bd461e7","afterSHA256":"df99b5801050e4f9e3ac93b3d911ea375700e5c7938c702cebb271604bd461e7","reason":"Same source body in authored semantic page"},{"oldId":"b-d5d6f006437c658c743ddf2e","targetId":"b-d5d6f006437c658c743ddf2e","page":"reading-opening","operation":"move","beforeSHA256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","afterSHA256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","reason":"Same source body in authored semantic page"},{"oldId":"b-24a50237a31bd102fc1ce1d3","targetId":"b-24a50237a31bd102fc1ce1d3","page":"reading-opening","operation":"move","beforeSHA256":"5f1e2e7a35a6afaca427b0b03cfec448b4aac4324b16108f14671986a2d98b38","afterSHA256":"5f1e2e7a35a6afaca427b0b03cfec448b4aac4324b16108f14671986a2d98b38","reason":"Same source body in authored semantic page"},{"oldId":"b-4a9811e8ba1398e4e44324f3","targetId":"b-4a9811e8ba1398e4e44324f3","page":"reading-opening","operation":"move","beforeSHA256":"50df0b56441a59cc0172558e60fc91669887bef661ad949627c013ccd35dbf34","afterSHA256":"50df0b56441a59cc0172558e60fc91669887bef661ad949627c013ccd35dbf34","reason":"Same source body in authored semantic page"}],"blocks":[{"id":"b-59ee07300e9ffb1be92ef972","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html#b-59ee07300e9ffb1be92ef972","content":"[LAB 02 · 参数迁移：冻结、局部与全量微调](/course/notebooks/4bd450d54870432db91c80a4df563b8e.html)","sha256":"f107bd31e942a5cf605f3183c89731efbb5349a4bf8c063087e5d29bebde50b5","chapter":{"id":"course","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"unit":{"id":"notebook-blocks/79753dc070ca46108d4cc8ab56dbe083","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"page":{"id":"reading-opening","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","number":1},"sectionTitle":"2. “冻住”到底冻住哪些参数？ · 实现代码","currentQuestion":"2. “冻住”到底冻住哪些参数？ · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-34c8736eaa53338c7b6794c9","prerequisites":[],"relatedBlocks":[]},{"id":"b-34c8736eaa53338c7b6794c9","type":"h1","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html#b-34c8736eaa53338c7b6794c9","content":"# 2. “冻住”到底冻住哪些参数？ · 实现代码","sha256":"df99b5801050e4f9e3ac93b3d911ea375700e5c7938c702cebb271604bd461e7","chapter":{"id":"course","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"unit":{"id":"notebook-blocks/79753dc070ca46108d4cc8ab56dbe083","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"page":{"id":"reading-opening","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","number":1},"sectionTitle":"2. “冻住”到底冻住哪些参数？ · 实现代码","currentQuestion":"2. “冻住”到底冻住哪些参数？ · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-59ee07300e9ffb1be92ef972","nextBlock":"b-d5d6f006437c658c743ddf2e","prerequisites":[{"id":"b-59ee07300e9ffb1be92ef972","url":"#b-59ee07300e9ffb1be92ef972","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-d5d6f006437c658c743ddf2e","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html#b-d5d6f006437c658c743ddf2e","content":"按问题继续","sha256":"e91f24e4e4ca40e2099a0d81d30db6568f4bf2074b499eeee6e3959617bd97ac","chapter":{"id":"course","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"unit":{"id":"notebook-blocks/79753dc070ca46108d4cc8ab56dbe083","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"page":{"id":"reading-opening","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","number":1},"sectionTitle":"2. “冻住”到底冻住哪些参数？ · 实现代码","currentQuestion":"2. “冻住”到底冻住哪些参数？ · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-34c8736eaa53338c7b6794c9","nextBlock":"b-24a50237a31bd102fc1ce1d3","prerequisites":[{"id":"b-34c8736eaa53338c7b6794c9","url":"#b-34c8736eaa53338c7b6794c9","role":"section-title"},{"id":"b-59ee07300e9ffb1be92ef972","url":"#b-59ee07300e9ffb1be92ef972","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-24a50237a31bd102fc1ce1d3","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html#b-24a50237a31bd102fc1ce1d3","content":"同源参数的冻结/局部/全量/scratch与BN模式辨析","sha256":"5f1e2e7a35a6afaca427b0b03cfec448b4aac4324b16108f14671986a2d98b38","chapter":{"id":"course","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"unit":{"id":"notebook-blocks/79753dc070ca46108d4cc8ab56dbe083","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"page":{"id":"reading-opening","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","number":1},"sectionTitle":"2. “冻住”到底冻住哪些参数？ · 实现代码","currentQuestion":"2. “冻住”到底冻住哪些参数？ · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-d5d6f006437c658c743ddf2e","nextBlock":"b-4a9811e8ba1398e4e44324f3","prerequisites":[{"id":"b-34c8736eaa53338c7b6794c9","url":"#b-34c8736eaa53338c7b6794c9","role":"section-title"},{"id":"b-59ee07300e9ffb1be92ef972","url":"#b-59ee07300e9ffb1be92ef972","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-4a9811e8ba1398e4e44324f3","type":"pre","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/79753dc070ca46108d4cc8ab56dbe083.html#b-4a9811e8ba1398e4e44324f3","content":"```\nMODES=['head','late','all','scratch']\ndef make_target_model(mode):\n    assert mode in MODES\n    torch.manual_seed(SEED)\n    model=make_cnn()\n    if mode!='scratch':model.load_state_dict(source_state)\n    torch.manual_seed(SEED+1)\n    model.logits=nn.Linear(32,2)\n    for name,param in model.named_parameters():\n        param.requires_grad_(mode in ('all','scratch') or name.startswith('logits.') or (mode=='late' and name.startswith(('conv2.','hidden.'))))\n    return model\nscope_table=[]\nfor mode in MODES:\n    model=make_target_model(mode)\n    scope_table.append({'mode':mode,'trainable':sum(p.numel() for p in model.parameters() if p.requires_grad),'total':sum(p.numel() for p in model.parameters())})\nprint(json.dumps(scope_table,indent=2))\n\n```","sha256":"50df0b56441a59cc0172558e60fc91669887bef661ad949627c013ccd35dbf34","chapter":{"id":"course","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"unit":{"id":"notebook-blocks/79753dc070ca46108d4cc8ab56dbe083","title":"2. “冻住”到底冻住哪些参数？ · 实现代码"},"page":{"id":"reading-opening","title":"2. “冻住”到底冻住哪些参数？ · 实现代码","number":1},"sectionTitle":"2. “冻住”到底冻住哪些参数？ · 实现代码","currentQuestion":"2. “冻住”到底冻住哪些参数？ · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-24a50237a31bd102fc1ce1d3","nextBlock":null,"prerequisites":[{"id":"b-34c8736eaa53338c7b6794c9","url":"#b-34c8736eaa53338c7b6794c9","role":"section-title"},{"id":"b-59ee07300e9ffb1be92ef972","url":"#b-59ee07300e9ffb1be92ef972","role":"problem-context"}],"relatedBlocks":[]}]}
