记录下两个竞赛大佬分享会的内容
风电机
sigmoid拟合
- 改写sigmoid函数,形成一个扁平夹子,带状区域,筛掉异常点
- 还有一个方法没听清
- 把每个风机异常下的点都画出来,某一天的数据如果比较好,那就是对应风机的正常曲线,拟合那天的数据为标准筛选
- 对于中间弃风数据,也是拟合sigmoid,曲线拟合,还能够去掉中间的异常点
分段拟合
- 广义线性回归+分段回归
- 看三次曲线系数,发现大部分都是接近1的,这样可以去掉其他的分支曲线
- 对上下部分的数据再次三次曲线拟合
交通比赛
- 对数据进行预处理,去冗余,或者无效数据等
- 很清楚知道,一个交叉口,交叉口越近的关联性越大,越远越小。
- 如何知道当前交叉口和远处交叉口的关联性?
- 将交叉口按照和中心点距离分组
- 分为N组,然后进行组内归一化
- 得到每组里和中心点关联性比较大的区域
- 在一定程度上消除距离因素
- 通过实际数据分析确定可行性
- 关联性用Apriori等方法
面向数据完全治理的数据内容智能发现与分级分类
- 预处理
- bert,512-> —- ->728
- 无监督降维聚类T-SNE+K_MEANS, UMAP+DBSCAN, PCA(多种方法结合看结果,不一定某种方法就一定比较好,不同的方法有不同的表现,比如dbscan可以在训练集部分看,后面对混乱部分的可以用tsne+kmeans分,因为他们可以把数据分得很开)
- 可视化验证
- 在聚类的结果中找关键词
- 测试集中可能存在一些训练集中没出现过的情况,对于这类混乱的情况,可以人工看,然后自己试着标注,标完再继续训练。通过多次提交检验。
通用的/CV tricks
- 赛题有自己的pipeline,要能很快的迁移到当前的比赛
- 模型选择轻量型的(Resnet18/24 efficient bo),先选轻的,快速迭代,再选最强的
- Optimizer Adam SGD
- 数据增强
- loss等
- 如何搭建自己的pipeline
- 从优秀开源学习,kaggle上有很多discussion
- 对自己以前写过的整理,并模仿top solution
- 不断实践优化
- 分类
- Topk-loss,把top k个loss进行回传,而不是所有的batch loss
- weighted loss, 每个类别关注度不同
- dual pooling 双池化层 max mean
- 通用
- TTA,在图像中,测试集,把图片进行翻转做预测,比如翻转四次90度,得到四个结果,取平均
- 多尺度训练/融合,不同size图像或者什么,训练集训练完之后进行融合,或者取平均
- Ensemble stacing,不同模型的关注点不同,ensemble会更好/ 随机权重平均 SWA
- semi-supervised 伪标签(假的标签,如在95%acc情况下,对测试集进行预测,得到label,加入到训练集中继续训练)/知识蒸馏
- 图像中数据增强
- 各种翻转
- random crop /center crop and resize (resize to origin size)
- random cutout,切掉部分区域作为新的图
- auto augment (比较耗费资源)
- mixup 两张图,像素点像素点累加,得到新的图,注意计算loss的时候,什么比例mixup的,就要按照什么比例回算loss
准备竞赛流程
- 仔细读题,做调研(看是否适合自己,前期要多做,看自己哪些类型的比较擅长
- 头脑风暴,看有什么idea
- 开始复现
- 记录思路过程