学习日记day56

Day56_0113

专注时间:目标是:5h30~6h。实际:4h20min

每日任务:饭后的休息(25min),学习间歇的休息(15min)都用手表计时器来监督

40min=二刷1道力扣hot100(如果是hard,只做一道就好完成情况及时长:?1h35min);【学习资源:PyTorch官方文档:https://docs.pytorch.ac.cn/tutorials/beginner/basics/intro.html】1.5h=PyTorch工程实操(完成情况及时长:0把第二个pytorch网页的“局部禁用梯度计算”看懂,就去看第一个pytorch网页);1h=周志华机器学习(完成情况及时长:50min+6);1.5h+(claude的RL4LLM学习路径,时长:40min+50+25)

学完机器学习,然后是深度学习。学完PyTorch,之后是Transformer与大模型架构(见Gemini3pro生成的阶段2)。学快一点。准备一个GitHub Repo把所有手撕过的算法整理进去,这会是最好的复习资料。

必须熟记的API、最简洁的GPT实现、带注释的Transformer实现、推荐系统模型库(包含主流模型实现)还有“Let's build GPT”系列学习视频见Claude的第20页。冰哥听讲座,老师说:GPT是最好的老师,不需要其他家教,清华学生智商120,GPT有140。多用大模型来帮助学习。

学习内容:

总结与心得:学习过程中感觉claude说的真对“不要死磕理论,而是先上手代码,跑通之后再去学细节”。如果先学理论,比如tensor,等代码里真正接触到tensor时候已经忘光了理论知识。目前这个学习效率非常高啊,机器学习和RL4LLM都在有序推进,但是专注时长不够,不然能同时学习pytorch了!还要努力。专注时间进步了,但是早上起来和洗澡回来的时间没用好,刷抖音了。

《105.从前序与中序遍历序列构造二叉树》

# Definition for a binary tree node. # class TreeNode(object): # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # self.right = right class Solution(object): def buildTree(self, preorder, inorder): """ :type preorder: List[int] :type inorder: List[int] :rtype: Optional[TreeNode] """ #注意这个解法只适用于无重复值的二叉树 #遇到了三个问题:找元素索引的方法错误、数组切片范围不确定、对返回值的正确性有疑问。 #审题审错了,是前序和中序 #找index: list.index(val) if not preorder or not inorder: return None val = preorder[0] mid = inorder.index(val) root = TreeNode(val) #数组切片范围,尤其是node.right时候的,想不出来,因为知道要去划分preorder但是不知道怎么写 #因为没想到用*元素数量*来划分 root.left = self.buildTree(preorder[1:mid+1],inorder[:mid]) root.right = self.buildTree(preorder[mid+1:],inorder[mid+1:]) return root

学习defaultdict(int):

```python

# 导入Python标准库collections中的defaultdict类

# defaultdict是dict的子类,用于解决普通字典访问不存在的键时抛出KeyError的问题

from collections import defaultdict

# 创建一个defaultdict实例,指定默认工厂函数为int

# 1. defaultdict的核心特性:当访问不存在的键时,会自动调用默认工厂函数生成一个默认值并赋值给该键

# 2. 这里int作为默认工厂函数,无参数调用时返回0(int()的默认返回值)

# 3. 变量名cnt是count的缩写,通常用于表示"计数器",符合该变量的使用场景

# 4. 该对象兼具字典的所有特性,同时新增了默认值自动生成的功能

cnt = defaultdict(int)

```

### 补充说明:

1. **默认值逻辑**:当执行 `cnt['new_key']` 时,若 `'new_key'` 不存在,会自动执行 `int()` 生成默认值 `0`,并将 `'new_key': 0` 存入字典

2. **常见用途**:用于统计元素出现次数(如统计字符串中字符频率、列表中元素频次等)

3. **与普通dict的区别**:普通dict需通过 `dict.get(key, 0)` 手动指定默认值,而defaultdict会自动处理

4. **扩展场景**:若将默认工厂函数改为 `list`,则默认值为空列表 `[]`,可用于分组统计等场景

《437.路径总和3》

from collections import defaultdict from typing import Optional # 定义二叉树节点(题目中已给出,这里补充方便理解) class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right class Solution: def pathSum(self, root: Optional[TreeNode], targetSum: int) -> int: # 哈希表:key=前缀和,value=该前缀和出现的次数 cnt = defaultdict(int) # 初始化:前缀和为0的情况出现1次(处理从根节点开始的路径) cnt[0] = 1 ans = 0 # 最终答案,统计符合条件的路径数 # 递归函数: # node:当前遍历的节点 # s:从根节点到当前节点的父节点的前缀和(当前节点值还没加进去) def dfs(node: Optional[TreeNode], s: int) -> None: # 递归终止条件:节点为空,直接返回 if node is None: return # 声明ans是外部函数的变量(非局部变量),否则无法修改 nonlocal ans # 把当前节点值加入前缀和,得到「根到当前节点」的前缀和 s += node.val # 核心逻辑: # 找有多少个前缀和等于 s - targetSum,这就是以当前节点为终点的符合条件的路径数 # 比如s=10,targetSum=5,那么找前缀和为5的次数,就是有多少个起点能到当前节点和为5 ans += cnt[s - targetSum] # 把当前节点的前缀和加入哈希表(供子节点使用) cnt[s] += 1 # 递归遍历左子树 dfs(node.left, s) # 递归遍历右子树 dfs(node.right, s) # 回溯:撤销当前前缀和的计数(因为遍历完当前节点的子树后,要回到父节点,不能影响其他分支) cnt[s] -= 1 # 从根节点开始遍历,初始前缀和为0(根节点的父节点不存在,前缀和为0) dfs(root, 0) return ans
class Solution: def pathSum(self, root: Optional[TreeNode], targetSum: int) -> int: # 统计以node为起点,路径和等于target的数量 def count_path(node, target): if not node: return 0 # 当前节点值等于target,算1条;否则继续找 res = 1 if node.val == target else 0 # 递归找左子树(剩余目标:target - node.val) res += count_path(node.left, target - node.val) # 递归找右子树 res += count_path(node.right, target - node.val) return res if not root: return 0 # 总数量 = 以当前节点为起点的数量 + 左子树所有节点为起点的数量 + 右子树所有节点为起点的数量 total = count_path(root, targetSum) total += self.pathSum(root.left, targetSum) total += self.pathSum(root.right, targetSum) return total

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1159154.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

革新肺结节检测:Lung-DETR,用Transformer变体高效解决稀疏异常检测难题

文章目录 Lung-DETR:变形检测Transformer在稀疏肺结节异常检测中的创新实践——从框架解析到端到端实现的深度指南 第一章:数据基石——从LUNA16 CT扫描到可训练管道的精炼 第二章:模型铸魂——从DETR基线到Lung-DETR的变形升级 第三章:验证落地——从mAP曲线到临床部署的桥…

吐血推荐!8款AI论文工具测评,本科生写毕业论文必备

吐血推荐!8款AI论文工具测评,本科生写毕业论文必备 为什么需要这份AI论文工具测评? 随着人工智能技术的不断进步,越来越多的本科生开始借助AI工具提升论文写作效率。然而,面对市场上琳琅满目的AI论文工具,如…

易企秀源码系统,轻松对接CRM、ERP及内部数据库

温馨提示:文末有资源获取方式是否曾因缺乏专业技术团队,而对制作炫酷的H5营销页面望而却步?是否在寻找一款既能实现强大功能,又能让运营、设计甚至市场人员轻松上手的解决方案?最新发布的V27.8版H5场景秀源码系统&…

千万不能错过!揭秘运城最强品牌策划团队,效果震撼超乎想象!

千万不能错过!揭秘运城最强品牌策划团队,效果震撼超乎想象!在当今竞争激烈的市场环境中,品牌策划已成为企业成功的关键因素之一。一个优秀的品牌策划团队能够帮助企业塑造独特的品牌形象,提升市场竞争力。在运城&#…

攻克三维肺部结节检测:基于3D Faster R-CNN实现高精度智能辅助诊断系统(全流程解析)

文章目录 毕设攻坚:3D Faster R-CNN实现肺部结节检测系统全流程,从CT影像到智能诊断 一、先懂“3D肺部结节检测”的毕设意义 二、技术拆解:3D Faster R-CNN的核心逻辑 1. 3D Faster R-CNN的架构解析 2. 肺部结节检测的核心挑战 三、实战:3D肺部结节检测系统的毕设级实现 1.…

基于SpringBoot的公共交通路线应用系统设计与实践

一、系统开发背景与需求 随着城市化进程加快,城市公共交通网络日益复杂,市民对便捷、精准的出行导航需求愈发迫切。传统公共交通查询方式,如纸质站牌、人工咨询等,存在信息更新不及时、查询效率低等问题,难以满足市民动…

定义新范式:FedU-Net——在隐私保护下实现多模态脑肿瘤精准分割

文章目录 FedU-Net:联邦学习赋能的多模态脑肿瘤分割框架——从隐私挑战到临床应用的完整实践路径 第一章:数据基石——从BraTS扫描到可训练管道的搭建 第二章:模型铸造——U-Net主干到联邦注入的渐进融合 第三章:验证与扩展——从热图到临床报告的落地桥接 尾声:你的FedU-…

解决网站禁止复制功能

1.有些网页文本需登录后复制2.可以直接跳过去1.直接F12打开控制台 2.选择elements > Event Listeners 3.找到Copy事件删除 4.删除后就可已正常复制了,ctrlV不行的话 可以右键复制

五步搞定YOLO-World模型训练:数据、标注、配置、训练、部署全指南

基于YOLO-world训练模型的完整教程:从数据准备到微调训练 前言 目标检测作为计算机视觉中的重要任务,在许多领域中具有广泛的应用,如自动驾驶、安防监控、人机交互等。YOLO(You Only Look Once)系列算法凭借其高效、快速的特点,已经成为了目标检测领域的主流方法之一。…

中国电网Java面试被问:Dubbo的服务目录和路由链实现

一、服务目录(Directory)核心设计 1. 服务目录的核心作用 图表 代码 复制 下载 全屏 graph TBA[服务消费者] --> B[服务目录Directory]B --> C[RegistryDirectory]B --> D[StaticDirectory]C --> E[服务发现]C --> F[配置变更监听]C …

通透理解Mamba:三步实现从理论推导到手撕代码,一行不落的实战保姆指南

文章目录 从0玩转Mamba神经网络:理论+实战的保姆级教程 一、Mamba:序列任务的“效率新贵” 二、核心原理:Mamba的“制胜逻辑” 1. 状态空间模型(SSM)的魔力 2. Mamba vs Transformer:核心差异 三、实战入门:搭建简易Mamba模型 1. 环境搭建 2. 代码实现:Mamba文本分类器…

手把手搞定毕设:基于YOLOv8从0到1构建检测系统,全流程详解(环境→训练→部署→答辩)

文章目录 基于YOLOv8的智能物体检测系统:毕设实战全流程,从搭建到上线,一路陪你跑通 第一步:环境搭建,别让基础坑了你后劲 第二步:数据集准备,喂对“食”才能长壮 第三步:模型训练,调参如炼丹,稳扎稳打出金 第四步:验证与推理,让模型“睁眼”看世界 第五步:优化导…

6D姿态估计落地难?拆解DenseFusion核心模块PoseRefineNet,附可复现的训练代码与损失函数详解

文章目录 《从DenseFusion突破6D姿态估计:手把手拆解PoseRefineNet与损失函数,让你的研究“姿态精准落地”》 一、技术内核:PoseRefineNet与多模态损失如何让6D姿态“精准估计”? (一)PoseRefineNet:让“位姿迭代”精细到微米 (二)多模态损失函数:让“信息融合”无死…

一站式掌握TensorRT量化:从PTQ到QAT实战,实现模型推理速度飞升

文章目录 TensorRT量化实战教程:从PTQ到QAT,让你的模型推理速度飞起来 引读 一、TensorRT量化技术全景:PTQ与QAT核心认知 1. TensorRT为何是量化首选? 2. PTQ(Post-Training Quantization):训练后量化的高效性 3. QAT(Quantization-Aware Training):带量化感知的训练…

毕设做物体检测无从下手?YOLOv8项目一条龙教程,从搭建到上线,让你少走弯路

文章目录 基于YOLOv8的智能物体检测系统:毕设实战全流程,从搭建到上线,一路陪你跑通 第一步:环境搭建,别让基础坑了你后劲 第二步:数据集准备,喂对“食”才能长壮 第三步:模型训练,调参如炼丹,稳扎稳打出金 第四步:验证与推理,让模型“睁眼”看世界 第五步:优化导…

艺术与科技结合:基于YOLOv5的艺术展品识别系统,一个完整可运行的毕业设计项目

文章目录 《深度学习实战:基于YOLOv5的公共艺术展艺术品识别毕设全指南》 一、为什么选择“公共艺术展艺术品识别”做毕设? 二、第一步:搞懂艺术品识别的“技术逻辑” 三、第二步:数据准备,给模型“喂”足艺术样本 1. 数据集从哪来? 2. 标注数据:给艺术品“画框框” 3. …

Nginx 配置实战:从摸鱼到部署,手把手教你搞定生产级配置

先灵魂拷问一下:写了一堆接口却不会部署?服务器被恶意请求打崩过?静态资源加载慢到用户想摔手机?别慌!Nginx 作为后端工程师的「部署瑞士军刀」,能搞定反向代理、负载均衡、限流防刷等一堆骚操作。记住咯&a…

保姆级教程:手把手教你训练自己的YOLO-World,轻松实现定制目标检测

基于YOLO-world训练模型的完整教程:从数据准备到微调训练 前言 目标检测作为计算机视觉中的重要任务,在许多领域中具有广泛的应用,如自动驾驶、安防监控、人机交互等。YOLO(You Only Look Once)系列算法凭借其高效、快速的特点,已经成为了目标检测领域的主流方法之一。…

三步完成毕设:用YOLOv5实现艺术品识别(从数据采集到模型部署,轻松落地与展示)

文章目录 《深度学习实战:基于YOLOv5的公共艺术展艺术品识别毕设全指南》 一、为什么选择“公共艺术展艺术品识别”做毕设? 二、第一步:搞懂艺术品识别的“技术逻辑” 三、第二步:数据准备,给模型“喂”足艺术样本 1. 数据集从哪来? 2. 标注数据:给艺术品“画框框” 3. …

手把手毕设指南:基于YOLO的电动车识别(含数据集+代码),从环境搭建到模型部署上线

文章目录 《深度学习实战:基于YOLO系列的公共场所电动车识别毕设全流程指南》 一、为什么选择“公共场所电动车识别”做毕设? 二、第一步:搞懂YOLO系列,选对“武器”再开工 1. YOLOv5:经典且易上手 2. YOLOv8:性能全面升级 3. YOLOv10:最新旗舰模型 三、第二步:数据准备…