TGINSIGHT CHAT
Data Science Archive
@DataScienceArchive
Technologies小熊猫的个人工具收纳箱,还包括一些零碎的笔记,大概会有这些: * 有趣/有价值/SOTA的会议论文和代码分享 * 自然语言处理,计算机视觉,语音信号领域进展 * Kaggle 和其他算法竞赛经验 * 反作弊,搜索和个性化推荐算法产品的工程化 * 统计学习,矩阵计算,贝叶斯相关的工具 * 可视化、算法服务相关的存储、并行和分布式计算工具 希望我收集的信息也可以帮到你,如果有其他建议,或者寻找工作机会,都可以给我发邮件: [email protected]
Recent posts
Page 1 of 10 · 118 posts
Posted Apr 1
来自 Google的一个图像数据生成器,用自带的基础构建元素加上 blender 做渲染生成别的图,任务类型基本都是涵盖了,对于内嵌的这些元素我觉得还是有点少,如果有社区(GitHub 或者 Blender)贡献应该前途光明。有时候数据采集不是问题,合规是大问题。 https://github.com/google-research/kubric
Posted Feb 15
一个新的分子式推算生成工具,FastFlows。从名字也可以看出来基本上就是用了 NF,从功能的角度来说和 VAE,GAN 什么的区别并不大,不过NF 的目标换成了去寻找一个和数据集后验分布一样的分布,也可以计算似然,用双射映射的一系列操作把原始分布弄成新的分布,经典案例就是对高斯分布作各种花里胡哨的转换。我个人对 NF 没有太多特别的感觉,这个框架感觉也只是用了 NF 做一个实验,没看出来有什么量化效果比 VAE 或者 GAN更好。 不过这个 repo 挺牛逼的,都是化学,生物,和材料领域一些深度学习的应用,tutorial 挺全的。 https://github.com/deepchem/deepchem/
Posted Feb 8
之前推过一篇 Facebook 的 ConvNeXT,今天又看到一个上个星期新出来的 XFormer,直接把二次的 attention 换成了线性 attention,也是在 ViTs 的基础上想办法减少资源使用。没看到什么别的新奇的地方。主要就是减少 GPU 使用,对数据量要求也低了不少,我没做实验。https://arxiv.org/abs/2201.10271,作者给了代码:https://github.com/pranavphoenix/cxv
Posted Jan 31
今天看了一篇介绍屏障法的文章,图文并茂,还有真代码一行一行解有约束的含有不等式的最优化问题。虽然标题有内点法,但是没有提内点法中的原始对偶方法。其实这两个方法都是在面对 KKT 条件的时候的思考,不过对对偶变量的处理看待角度不同,朴素的求解都是用牛顿法。如果你对普通的等式约束,KKT 条件,拉格朗日方法有了解的,这篇文章读起来就更容易了。https://towardsdatascience.com/how-to-solve-constrained-optimization-problem-the-interior-point-methods-1733095f9eb5
Posted Jan 30
分享一篇介绍 Data Leak 的文章,说起 data leak 我早期是真的深受其害,毕竟真实世界的线上业务永远有一个特别的维度:时间。理论上完全服从独立同分布业务数据/问题并不多,所以很多时候我们是直接把时间维度忽略掉。若干年前参加过知乎的一次给短文本预测 tag 的竞赛最后也是因为当时原始数据存在一些 data leak(知乎作为举办方提供数据的时候把时间轴抹掉,但是数据本身又其实是时间排序的),最后的排名引起挺大的争议。对于 data leak 系统地考虑是线上数据科学工作非常重要的一环。https://towardsdatascience.com/data-science-mistakes-to-avoid-data-leakage-e447f88aae1c
Posted Jan 30
今天收拾东西返乡,祝大家春节愉快!
Posted Jan 29
新看到一个 MLOps 的工具,比较新,比较好看,其他暂时没发现什么别的特别之处。https://github.com/polyaxon/polyaxon
Posted Jan 28
分享一篇很有趣的 文章。用梯度提升的方法来改进 ARIMA,AutoARIMA 先拿到起始参数,Boosting 过程和普通 GBM 一样都是用残差代替梯度计算。角度倒是听新颖的, 就是听着可能速度有点慢,而且不能确定序列角度来说 Boosting 是否真的有意义,作者在 Kaggle 去年的 M4 上做了些实验,看着还行,有点意思。轮子在这里:https://github.com/tblume1992/ThymeBoost
Posted Jan 27
今天读到一篇不错的文章,讨论了 IBM FreaAI 的一些分析过程,前面还有两篇概要也可以一起读。文章着重对树模型划分出来的各个小区间做评估,找到隐患最大的地方。大体的流程上是对原始特征做直方图,随后到 PDF,再不断便利 Y 轴找到既定的 metric 剧烈变化的地方。可以配合树模型自己算出来的信息熵一起用。这个技巧不是太常见,我只在两年前某一次 Kaggle 竞赛中遇到,举办方弄了一些诡异的合成数据…… https://towardsdatascience.com/how-to-find-weaknesses-in-your-machine-learning-models-3bcce3c7d71e
Posted Jan 26
MAPIE:https://github.com/scikit-learn-contrib/MAPIE, NIPS 2020 spotlight有一篇讨论预测边界/区间的 文章,蛮有意思的,当年作者原来的实现也被系统集成进了新的轮子里面,值得一玩。理论偏多,我非常建议读读文章,对 jackknife+, CV+, predictive inference, 不确定性估计不太了解的可以在这个 repo 里面随便翻一些文章做些背景了解。
Posted Jan 26
说到特征降维/选择的问题,大部分EDA的套路都是从model训练的loss来判断feature importance。其实有一个简单易行而且很有效的办法是在CV里面用做feature permutation,对原始特征shuffle得到shadow(也可以加一些噪音),在通过zscore比较两者差异来判断importance,不断遍历筛选。在ESLII中593页有提到这个办法。R里面有一个包Boruta可以做这件事,py也有:https://github.com/scikit-learn-contrib/boruta_py
Posted Jan 26
单纯的 Boruta 判断特征的时候会依照二项分布的接受或者拒绝来判定对前面生成的影子特征进行筛选。所以如果把 Boruta 的第二阶段(特征metric排序以及筛选)单独拿出来,其实是可以用别的方案进行替换的,比如 SHAP(这里的引用来源也是我之前推荐的一本电子书《interpretable-ML》,强烈推荐)。也确实有轮子在做这样的事情,我自己找了一个 Kaggle 上的 Tabular Dataset 试了一下独立工作效果不太明显,不过提供另外一种特征筛选的方法来做 ensemble 应该是有提升的(吧)。轮子在这里:BorutaShap https://github.com/Ekeany/Boruta-Shap