- 博客(31)
- 收藏
- 关注
原创 Machine Learning HW2 report:语音辨识(Hongyi Lee)
narrower and deeper和wider and shallower在此次任务上差别不大,后者表现略好Colab会限额,建议在kaggle notebook上训练,后者GPU性能和分配的时间都明显好于前者。kaggle notebook上训练时,记得改训练、测试用的数据文件地址和输出文件地址。kaggle notebook上训练完成后,在下载结果文件.csv前不要stop session,否则文件会被销毁!在如果要在自己电脑上运行。
2025-07-18 19:37:48
995
原创 Supplement Note: 机器学习Classification Introduction
分类是机器学习中常见任务,旨在将输入数据分配到不同的类别中。本文简短介绍了分类,不涉及太多原理。
2025-06-30 11:05:33
426
原创 Note2.4 机器学习:Batch Normalization Introduction
Batch Normalization(批标准化,BN)通过标准化数据的操作,使得损失函数的优化地形(optimization landscape)更加平滑,从而达到更好地训练效果。BN常用于卷积神经网络(CNN)等。
2025-06-28 19:17:00
469
原创 Note2.3 机器学习:Adaptive Learning Rate
Adaptive Learning Rate是一种有效的训练技巧,可以解决training stuck的问题,基础思想:根据具体情况,给每个参数不同的Learning rate,并动态调整。
2025-06-28 17:02:27
1042
原创 Note2.2 机器学习训练技巧:Batch and Momentum(Machine Learning by Hung-yi Lee)
small batch和momentum都是训练的常见技巧,可以escape critical points,取得更好的结果
2025-06-28 13:17:55
519
原创 Note2.1 处理critical point(Machine Learning by Hung-yi Lee)
训练时常出现loss很高但趋于稳定的情况,直觉是卡在了local minima(极小值),但可能的情况还包括local maxima、saddle point(鞍点),这些点都会出现gradient为0的情况,统称critical point。本文介绍了如何判断类型及相应处理
2025-06-28 11:58:41
387
原创 Note2:机器学习基本攻略(Machine Learning by Hung-yi Lee)
即使是一个很废物的模型,只要通过一直调参,不断上传,也可能在得到一个很好的结果。这是因为很多testing set是全部公开的,没有划分public和private,所以通过不断调参,可以得到好的结果。,如果又根据public上的结果反复调整,可能出现模型fit在public testing set这种上述提及的情况。模型弹性太大,可能出现这个问题,模型过度“记忆”了训练数据的细节(包括噪声和异常值),而非学习其内在规律。,后者不参与模型的调参,用模型在后者上的结果表示训练结果。
2025-06-27 11:54:24
986
原创 HW1 code analysis (Machine Learning by Hung-yi Lee)
这段代码是使用 gdown命令行工具从 Google Drive 下载文件的命令,:Google Colab、Jupyter Notebook 或其他支持!执行终端命令的 Python 环境。
2025-05-01 13:56:17
774
原创 Machine Learning HW1 report(Hongyi Lee)
kaggle这个任务score越低越好,因为表示的是与真实值的差距。优化思路:选择更好的features,改神经网络架构,L2正则化。
2025-05-01 13:38:03
523
原创 Visual Studio2022 配置 SDL3及拓展库
SDL(Simple DirectMedia Layer)是一个开源的跨平台多媒体开发库,使用C语言编写,主要用于游戏、模拟器和媒体播放器等多媒体应用的开发。它提供了控制图像、声音、输入输出等功能的函数,使开发者能够用相同的代码开发跨平台(如Linux、Windows、macOS等)的应用程序。本文使用VS2022。
2025-04-23 17:26:11
1598
1
原创 数字逻辑与计算机组成易错知识点
以IEEE754 32位单精度格式为例(即C语言中的float类型),其中尾数有23位(注意有隐藏位)例:C语言中定义float a=-1.1,写出a的机器数(用16进制表示)
2025-03-11 19:15:53
226
原创 C++单向链表常见错误
操作时往往不需要当前节点的指针,而是需要上一节点的。merge函数merge函数用于把另一链表合并到当前链表尾部常见错误:1. 当前列表list_size没有更新2.merge相当于转移空间所有权,other.head成为了没有意义的指针,但没有通过置空回收。
2025-03-07 19:12:12
750
原创 C++隐式拷贝构造函数与用于计数的静态数据成员造成的bug
上述代码的预期结果是 1 2 3 2,因为进入display函数内部时,会调用拷贝构造函数创建一个新的Date对象,而离开display函数作用域时会调用析构函数。如果想正确追踪程序运行时对象的个数,可以显式定义一个拷贝构造函数,并在其中增加。但实际结果是1 2 2 1,原因。中,临时对象的创建不会导致。默认拷贝构造函数不会增加。临时对象的销毁会导致。从 2 减少到 1。
2025-03-06 20:55:03
441
1
原创 PyTorch Introduction
目录What is PyTorchTraining & Testing Neural Networks in PytorchDataset & Dataloader概念解析1. Batch(批次)2. Epoch(轮次)3. Shuffle(打乱)Tensorstorch.nnNeural Network Training概念解析1. Validation Set(验证集)2. Test Set(测试集)3. Validation 和 Test 的区别4. 数据集划分的常见比例Save/LoadMore
2025-03-01 17:54:18
1147
原创 C++字符串传参错误
c++中字符串常量 ,如"Hello World!",其类型是 const char*。一个函数要接受字符串作为参数时,参数类型不能定为char*——C++ 不允许将 const char* 隐式转换为 char* ,因为字符串常量是只读的,直接修改会导致未定义行为。
2025-02-26 17:19:24
330
原创 Supplement Note: Regression(Machine Learning by Hung-yi Lee)
回归(Regression)是机器学习中的一种基本方法,主要用于预测连续值。例如,预测房价、气温或股票价格等任务都属于回归问题,其输出是一个单一的实数值。本文以pokemon(宝可梦)为例。
2025-02-26 17:02:34
701
原创 Supplement Note: Backpropagation(Machine Learning by Hung-yi Lee)
Backpropagation(反向传播算法)简称BP,是训练neutral network一种方法,它通过计算loss函数相对于网络参数(weight和bias)的descend(梯度)来优化这些参数。BP结合了gradient descend(梯度下降法)或其他优化算法来最小化损失函数,从而提高模型的预测准确性。neutral network有着极多的参数,BP提供了一种高效的方法。
2025-01-20 23:49:28
955
原创 Note 1:Concept (Machine Learning by Hung-yi Lee)
function可分为三类:regression(回归:预测连续值输入,如明天的空气污染指数),classification(分类:预测离散值输出,如垃圾邮件分类),clustering(聚类:一种无监督学习方法,寻找数据内在的结构、模式)
2025-01-19 23:20:25
312
原创 C++魔塔基础版
本文将基于C++与EasyX图形库,实现魔塔的基础改编版,相较于原版,增加了升级、血量上限等功能,设计了四层地图与出乎意料的结局,并合理安排数值,使游戏趣味性与挑战性兼具
2025-01-08 13:22:00
1512
原创 GetAsyncKeyState函数实现一键一动
GetAsyncKeyState函数可以检测指定键是否按下,常用于在检测游戏中玩家的按键输入。但GetAsyncKeyState只能检测状态,即如果用在一个循环试图检测“a”被按下,按下一次则执行相应的操作,则会出现按下“a”执行多次操作的问题。下文将实现一键一动。
2025-01-07 23:39:17
551
原创 Python: str与repr的区别
str和repr都是用于表示object(对象),str可读性强,repr强调准确性。str是string的缩写,repr是representation的缩写。
2025-01-02 06:00:00
215
原创 Python:闭包陷阱
原因:以上写法认为每次向r中存入函数时,a的值会传进去,如当a为1时,认为传入的函数为lambda x :x+1。实则不然,lambda函数体只有在被调用时才求值,以上代码调用函数时a已经变为了3。闭包会捕获并“记住”它们被创建时的环境,如果不正确理解这一点,可能会产生一些意外的结果。运行结果分别为 [2, 2, 2] 和 [0, 1, 2]以下代码在r列表中存入函数,试图输出 1 2 3。在每次存入函数时,对a求值即可。但实际结果为3 3 3。
2025-01-01 18:43:24
360
原创 Python:理解高阶函数核心
b返回一个函数,则c成为函数,且c对应的函数传入0个参数,所以这段代码运行的结果是19。c本质上变成了f1函数,所以d最终结果为12*9=108。高阶函数的本质在于返回一个函数。f1(9)本质变为了f2函数!注意:直接调用f2函数会报错。
2025-01-01 18:12:03
405
原创 Python中class易错点
编译器会报错,原因是foo函数的frame是Global frame,Global frame中并没有a的定义。1.class不会创建新的frame。修改: print(self.a)
2025-01-01 15:04:58
130
用c语言编写选择排序程序
2025-03-01
记忆化斐波拉契数列,C语言
2025-03-01
C语言归并排序代码(复杂度为n对数)
2025-03-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人