返校一周
8号 返校来工位 尝试用网格搜索的方法去优化老师项目的超参数。仿照着 菜菜决策树那一章的代码,写了一个。效果并不是很好,在次日的汇报中,被说成了没干活。(也确实)
9号白天更新了一下工位的环境(下了一大堆应用,还有一堆的包,让自己另一个项目可以跑起来),当然在下载的过程中,看了一个博主 包包大人 公众号包包算法笔记 的一系列博客(大佬),里面有个想法说招到了竞赛经历拉满的佬,底下说是挥霍的人生,然后b站搜索知道了真名,周青松。然后想到之前看的燃烧吧天才程序员里面看到过,果然是佬。然后搜了下微信,发现coggle有做关于竞赛人的访谈,看了许久,也知道大体是个怎样的路线(以战养战),也去搜索相关的竞赛,大多都关闭了(像山东大数据竞赛平台,登录注册都进不去),然后和鲸平台也有之前类似于coggle的新人竞赛,就全部报名了,可是发现讨论区没人,只是给了官方的baseline,而且网页版用起来有点奇怪。晚上开会,被交代了新的任务。
10号 完成老师交代的任务,晚上交代任务完成情况的时候顺便问老师接下来的安排。
11号 看之前一个公众号《夕小瑶AI全栈手册》里面的基础,然后是跟着廖雪峰网站温了一下git知识,上传自己的项目到gitee。虽然还是用的 push -f。还是想优化项目模型,可是样本不均,搜索一下了解了分类样本不均可用 focal loss。之后想着昨天看的访谈里面有说了一句LGBM+stacking独行天下,就想着自己也不说去跳调参了,先把这些个模型认全再说吧。
12号 一分钟介绍模型救命了,快快的补齐了一下这些知识。然后开始看九天hector老师的kaggle竞赛讲解,其实这个早就应该看的,明明这么好的资源。
13号 寝室完成任务,写写文档,画画图,PPT画网络模型图还挺好用。参考这里面的LSTM结构
14号 九天老师的视频看完,做了一下笔记,在底下。
15号 记一下周记,然后准备跑一下代码。
git
教材
廖雪峰博客
时间
2022年8月11日13:39:52----2022年8月11日15:59:53
过程
不同区域
先看了一下 不同区域的概念
工作区 不上传瞎写的地方
暂存区 git add之后的地方
本地仓库 git commit 之后的地方
远程仓库 git push 之后在github上面看到的样子
看了一下
深知这些命令如果不用的话,硬记没用。
决定向码云上传一下自己的项目,修改一下,然后 实践一下
上传过程
要点
git log --pretty=oneline 优雅地显示日志
git reflog 可以看到所有操作记录
git restore xxx.txt 要么从暂存区里面取得文件 要么从版本库里面取得文件
ssh-keygen -t rsa -C “youremail@example.com”
然后去 .ssh文件夹里面 找
git remote add origin git@github.com:michaelliao/learngit.git
第一次推送 git push -u origin master -u初始化
后面就是 git push -f 硬推
显示路径
git log --graph --pretty=oneline --abbrev-commit
成果
把项目上传成功了
竞赛方案笔记
- 字典编码,损失了时序特征 eg二月 五月 十月 -》1 2 3
- inf无穷大用 最大值填充
- 建模思路,想象出最后是一个怎样的数据输入(一个信用卡id,对应一个商铺id,后面是商铺的描述等等,所以商铺id就要去重)
- gc包 del删除+变量 gc.collect()
- 通用组合特征,特征创建的意义:希望给出每一个card_id尽可能多维度的信息
- 通用 组合 稀疏 必然 暴力 大多数 无意义
- 统计特征 穷举 sum mean max var方差 unique多少个不同值
- 验证建模思路可以用少许的特征进行快速验证
- 皮尔逊相关系数 连续型 corr
- 因为之前无论是通用还是统计量,(由离散型和连续型组合)生成的连续型的特征,所以这里可用
- 对于sklearn 不进行独热编码 哑变量,就是默认连续型
- 通用的网格搜索过程
- 确定哪种(网络的)网格搜索
- 围绕 网络 选择超参数 特征
- 划定范围
- 构成参数空间
- 两种快速的网格搜索新方法 sklearn randomizedSearchCV 随机子空间,HalvingRandomSearchCV 要求0.24版本 两两PK
- 异常值识别
- 三倍标准差法 越趋近正态分布,这个法子越好,反之,下面的好
- 箱线图
- 天花板盖帽法 用最大值替换无穷大
- filter方法 建模之前利用参数排除;wrapper方法,通过模型来验证
- 回归损失 mse 回归损失
- 均值融合 会受到异常值的干扰而不能很好
- stacking二阶段 回归用逻辑回归,分类用贝叶斯,比较简单,不容易过拟合
- 文本特征 时间序列特征 往往是特征工程的突破口
- 高阶特征衍生=往下挖
- 两阶段建模:两次预测
- stacking 用cv中验证集的预测结果作为标签,作为训练数据。用测试集的预测结果作为测试集。抗过拟合能力强些
- 第一阶段判断是否为异常的可信度,是否对整个评分很重要? 如果你认为前面不靠谱,可以用voting加权来对冲。
- 提升分数两手抓,要么特征工程让数据质量更高:自建特征(文字特征和时序特征的深入理解)和海量特征;要么调整模型:用voting的地方都改用stacking,每次输出结果之前都进行交叉验证,输出平均值。
接下来的计划
什么安排的实习,什么学车呀, 什么算法题,什么小论文,什么数据竞赛。
全力以赴吧,反正总有事情做的,无论次序,都是要完成的。(那两个事情就不用全力以赴了,能拖着就拖着吧,嘻嘻嘻)
预计15、16号 理解九天老师的那个代码。(要求:一定要理解每一步的操作,把自己的思维训练成那个样子,然后去参与那个比赛,提交成功一个比老师最好成绩还要好的成绩,也就是按老师最后说的那几点去进行特征工程,进行模型优化)
后面一天一个竞赛跑竞赛
每天复盘,下周看效果
(冲冲冲冲)
唉 没完成
后话
世界是无序且混乱的,只有自己的行动是真实且固定的,如果连行动都放弃了,那就随着世界去了,自己就变得无序了。(在家的我就是无序的)
来学第一天就买了个 训记,然后跟着上面每天的计划,练6休1,走了一星期,还行。就是睡前练,人会很疲惫。