迁移学习
迁移学习(Transfer Learning)根据 领域 和 任务的相似性,可以这样划分: 根据 源Domain和目前Domain 之间的关系,源Task 和 目标Task之间的关系,以及任务方法更详细的整理为下表: 学习类型 源Domain & 目标Domain 源Task & 目标Task 源Data & 目标Data 任务方法 传统机器学习 相同 相同 有标签 | 有标签 归纳式迁移学习 相同/相关 相关 多任务学习 - 有标签 | 有标签 分类回归 自我学习 - 无标签 | 有标签 直推式迁移学习 相关 相同...
基于特征的迁移学习
特征变换迁移法 目标是:如何求解特征变换 $T$,使得特征变化后的源域和目标域的概率分布差异达到最小。 如何求解这样的特征变换?我们将特征变换法大致分为两大类别:统计特征变换和几何特征变换。其中,统计特征变换的目标是通过显式最小化源域和目标域的分布差异来进行求解;而几何特征变换的目标则是从几何分布出发,隐式地最小化二者的分布差异。 从生成对抗网络的观点来看,网络中的判别器用来判断数据来自真实图像还是噪声,当其无法分别真实图像和噪声产生的图像时,我们认为判别器学习到了领域不变的特征。这种判别器可以被看成一种隐式距离。
模型预训练迁移法
模型预训练迁移法第三种比较常用的方法则是模型预训练迁移法。也就是说,如果已经有一个在源域上训练好的模型 $f_{s}$,并且目标域本身有一些可供学习的有标签数据,则可以直接将 $f$ 应用于目标域上,再进行微调。此时可以重点关注在微调过程中目标域的情况,而不用额外考虑迁移正则化项(或者一并考虑)。这种预训练 - 微调(Pretrain-finetune)的模式,已被广泛应用于计算机视觉(如 ImageNet 上预训练模型)、自然语言处理(Transformer、BERT)等领域。
领域自适应和领域泛化
Domain Generalization | 域适应、域泛化、OOD、开放集问题定义 在实际场景中,训练集和测试集往往存在分布差异,导致模型不work。领域自适应是解决这类问题的一种方法,但是它需要测试数据的一些先验知识。但是很多时候,在测试数据到来前我们往往对它们是一无所知的,因此近年来很多人开始考虑一种更有实际意义的研究场景,也就是领域泛化。 下面我们先就来梳理一下领域自适应(Domain Adaptation, DA),领域泛化(Domain Generalization, DG),分布外泛化(Out-of-Distribution Generalization, OODG)...
零样本学习
在zero-shot-learning里面呢?跟刚才讲的task是一样的,source data有label,target data每天label。在刚才task里面可以把source data当做training data,把target data当做testing data,但是实际上在zero-shot learning里面,它的difine又更加严格一点。它的difine是:今天在source data和target data里面,它的task是不一样的。 比如说在影像上面(你可能要分辨猫跟狗),你的source data可能有猫的class,也有狗的class。但是你的targ...
决策树
决策树是一个非常常见并且优秀的机器学习算法,它易于理解、可解释性强,其可作为分类算法,也可用于回归模型。 1. ID3ID3 算法是建立在奥卡姆剃刀(用较少的东西,同样可以做好事情)的基础上:越是小型的决策树越优于大的决策树。 1.1 思想从信息论的知识中我们知道:信息熵越大,从而样本纯度越低,。ID3 算法的核心思想就是以信息增益来度量特征选择,选择信息增益最大的特征进行分裂。算法采用自顶向下的贪婪搜索遍历可能的决策树空间(C4.5 也是贪婪搜索)。 其大致步骤为: 初始化特征集合和数据集合; 计算数据集合信息熵和所有特征的条件熵,选择信息增益最大的特征作为当前决策节点; 更新数据集...
SGBoost
【机器学习】决策树(下)——XGBoost、LightGBM(非常详细) 本文是决策树的第三篇,主要介绍基于 Boosting 框架的主流集成算法,包括 XGBoost 和 LightGBM。 不知道为什么知乎文章封面的照片会显示不全,在这里补上完整的思维导图: 1. XGBoostXGBoost 是大规模并行 boosting tree 的工具,它是目前最快最好的开源 boosting tree 工具包,比常见的工具包快 10 倍以上。Xgboost 和 GBDT 两者都是 boosting 方法,除了工程实现、解决问题上的一些差异外,最大的不同就是目标函数的定义。故本文将从...
LightGBM
2. LightGBMLightGBM 由微软提出,主要用于解决 GDBT 在海量数据中遇到的问题,以便其可以更好更快地用于工业实践中。 从 LightGBM 名字我们可以看出其是轻量级(Light)的梯度提升机(GBM),其相对 XGBoost 具有训练速度快、内存占用低的特点。下图分别显示了 XGBoost、XGBoost_hist(利用梯度直方图的 XGBoost) 和 LightGBM 三者之间针对不同数据集情况下的内存和训练时间的对比: 那么 LightGBM 到底如何做到更快的训练速度和更低的内存使用的呢? 我们刚刚分析了 XGBoost 的缺点,LightGBM 为了...
概述
背景Transformer:以其注意力机制而闻名,其中序列的任何部分都可以动态地与任何其他部分相互作用,特别是具有因果注意力机制的的Transformer,擅长处理序列中的单个元素。但是它们带来了显著的计算和内存成本,与序列长度的平方(L²)成比例。 循环神经网络(rnn): rnn只考虑当前输入和最后一个隐藏状态,按顺序更新隐藏状态。这种方法允许它们潜在地处理无限序列长度和恒定的内存需求。但是rnn的简单性是一个缺点,限制了它们记住长期依赖关系的能力。此外,rnn中的时间反向传播(BPTT)是内存密集型的,并且可能遭受梯度消失或爆炸的影响,尽管有LSTM等创新部分结解决了这个问题。 S...
集成学习
集成学习概述集成学习(ensemble learning)本身不是一个单独的机器学习算法,而是通过构建并结合多个机器学习器来完成学习任务。也就是我们常说的“博采众长”。集成学习可以用于分类问题集成,回归问题集成,特征选取集成,异常点检测集成等等,可以说所有的机器学习领域都可以看到集成学习的身影。 从下图,我们可以对集成学习的思想做一个概括。对于训练集数据,我们通过训练若干个个体学习器(individual learner),通过一定的结合策略,就可以最终形成一个强学习器,以达到博采众长的目的。 也就是说,集成学习有两个主要的问题需要解决,第一是如何得到若干个个体学习器,第二是如何选择...
符号说明
符号 维度 符号说明 默认值 $A$ $B$ batch size $C$ $D$ channels $E$ a controllable expansion factor 2 $L$ length $N$



