A Survey on Multi-output Learning
1. Introduction
1.1. The 4 Vs Challenges of Multiple Outputs
- 4Vs:volume, velocity, variety, veracity。
- 通常 4Vs 指的是输入数据,但亦可用于输出标记,但因此也引入一系列挑战:
- Volume 指的是输出标记的爆炸式增长,这给 MOL 带来了很多挑战。首先输出空间会非常庞大,第二是标记标注者的负担将很重,而使得数据集中标注数量过少导致训练困难。结果就是,这会导致在测试阶段出现从未见过的输出。第三,标记不平衡问题。
- Velocity 是指如何快速获取输出标签,其中包括 concept drift 的现象[6]。 Velocity 会因输出分布的变化而带来挑战,目标输出会以无法预料的方式随时间变化。
- Variety 是指输出标签的异质本质。 输出标记是从多个来源收集的,这些标记是具有不同结构的各种数据格式。 特别是,具有复杂结构的输出标签可能会在 MOL 中带来多个挑战,例如找到一种对输出依赖度建模的适当方法,或者如何设计多元损失函数,或者如何设计有效的算法。
- Veracity 是指输出标记的质量差异。诸如噪声、缺失值、不完备数据、异常等等都是 Veracity 的特征。
1.2. Purpose and Organization of This Survey
本文的目的是对多输出学习范例进行全面概述,使用 4V 来分析该研究领域所面临的挑战。MOL 已吸引了许多机器学习学科的极大关注,例如 part-of-speech sequence tagging, language translation, NLP, motion tracking, optical character recognition in CV, document categorization, ranking in information retrieval 等等。
2. Lift cycle of output labels
输出标记在 MOL 中起着重要作用,因为模型性能很大程度上取决于这些标记的质量。图一描述了一个标记生命周期的三个阶段:annotation, representation, evaluation.
2.1. How is Data Labeled
Label annotation 简介
- Label annotation 需要人类根据语义标注一条数据,这一步骤是训练 MOL 模型的关键步骤。
- 我们可以直接使用数据的基本注释,或将其汇总便于进一步分析。
- 根据任务的不同,label annotation 有多种类型。
- 用于 classification 的图片要使用标签或关键字标记
- segmentation 要求图像中的每个对象都用框框定位出来
- 字幕任务将要求图像带有一些文本描述的标记
获取标记的途径
- 社交媒体可帮助研究者搜寻有标记的数据集。例如 Facebook 和 Flickr,其用户可发布带有标签的图片和评论。诸如 WordNet 和 Wikipedia 之类的开源集合亦是一种来源。
- 众包平台有偿招募人们来帮助研究者标记数据。由于众包的效率,该方法现非常流行。ImageNet [7]就是众包的数据集。它的图像数据库被组织成了 WordNet 层次结构。
- 注释工具可用来注释不同类型的数据。
- LabelMe [8]为用户提供了一种便捷的方式来标记图像中的每个对象并纠正其他用户注释的标记。
- BRAT [9]专门为自然语言处理任务而设计,例如命名实体识别和POS标记(词性标记)。
- TURKSENT [10]是一种为社交媒体推文情感分析任务而设计的注释工具。
2.2. Forms of Label Representations
五种标记表示形式
- binary vector
- real-valued vectors
- binary vectors of the associations between a tag's attributes
- hierarchical label embedding vector
- semantic word vector**
具体介绍
最常见的是 binary vector,它的 size 等于标签的词汇量 size。有注释样本(例如带有标记的样本)的值分配为1,其余的样本分配0。binary vector 对于更复杂的 MOL 任务并非最佳,因为这些 Representation 不能保留所有有用的信息,比如语义或固有结构之类的细节将丢失。为了解决这个问题,人们已经开发了可替代的 Representation method。
- real-valued vectors[11]使用实数值来刻画有注释标记的强度和程度。
- Binary vectors of the associations between a tag’s attributes 已被用于指明标签的特征。
- Hierarchical label embedding vectors [12] 捕获标签中的结构信息。
- 诸如 Word2Vec [13]之类的 Semantic word vectors(有语义的词向量)可用于表示标签和文本描述的语义或上下文。
2.3. Label Evaluation and Challenges
Label evaluation 的三个方面:
- 注释的质量高不高
- 所使用的 Label Representation 是否能很好地表示标签
- 提供的标记集合是否足以覆盖数据集(Label Set)
从以下几个角度出发来改善上述三个方面: - 「Issues of Label Annotation」前述注释方法在没有专家的情况下,极有可能导致噪音,比如注释缺失和错误的注释。 产生噪声标签的原因多种多样,例如,使用缺乏所需领域知识的众包工作者,社交媒体用户的图像或推文中包含不相关的标签,或字幕中的文字模糊不清。
- 「Issues of Label Representation」输出标记也可能具有内部结构,通常,此结构信息对于 MOL 的性能至关重要。但是,让 label representation 有效整合结构信息并非易事。这是因为通常数据很多,并且需要领域知识来定义其结构。此外,输出空间可能包含歧义。例如,在 NLP 中使用 BOW 作为一个标记空间的 Representation,但是 BOW 包含词义模糊性(因为两个不同的词可能具有相同的含义,而一个词可能指的是多种含义)
- 「Issues of the Label Set」为数据注释构建一个 label set 需要专家经验。 另外,常见的是,可能由于数据的快速增长或某些标记的出现率低,所提供的 label set 没有足够的数据 label。 因此,测试数据中可能会出现未见标记,从而导致 open-set[16],zero-shot[17], concept drift[18] 等问题。
3. Multi-output learning
与传统的 SOL 相反,MOL 可以同时预测多个输出。输出可以具有各种类型和结构,可以解决的问题是多种多样的。
3.1. Myriads of Output Structures
复杂决策任务的发展导致了具有复杂结构的新输出形式。随着社交媒体,社交网络和各种在线服务的普及,研究人员可以收集到各种各样的输出标记。输出标记可以是任何东西:文本,图像,音频或视频,也可以是多媒体的组合。举两个例子:
- 以一个长文档作为输入,输出可能是用文本形式表示的输入的一个综合
- 给定一些文本片段,输出可能是图像,其内容由输入文本描述
- 根据输入可生成音频
除了不同的输出类型外,还有许多可能的输出结构。在这里,我们使用 Fig2 中的示例给出几种典型的输出结构,以图像作为输入,以此说明在所有不同输入类型上可能有多少个输出结构。
3.1.1. Independent Vector
介绍:Independent Vector 是具有孤立维度的向量,其中每个维度代表一个特定的标签,不一定依赖于其他标签。Binary vector 可用于将给定数据表示成 tags, attributes, BOW,bag-of-visual-words, hash codes, etc。Real-valued vectors 为每个维度加上一个权重,以表示实例与对应标记的强度。如图2(1)所示,可以使用一个 Independent Vector 表示图像的标签,其中所有标记——People, dinner, table, wine 的权重均相等。
应用:annotation or classification of text, images, or video with binary vectors [19]–[21], demand or energy prediction with real-valued vectors [23]。
3.1.2. Distribution
介绍:与 Independent Vector 不同,Distribution 会提供一个概率信息(描述度)。 在图2(2)中,权重最大的标签是 People。
应用:head pose estimation[25],facial age estimation[26],text mining[27]。
3.1.3. Ranking
介绍:输出也可能以 ranking 的形式出现,ranking 会显示从最重要到最不重要的标签排序。Distribution learning model 的结果可以转换为 ranking,但是一个 ranking model 并不仅限于 Distribution learning model。
应用:text categorization [28], question answering [29], visual object recognition [30]
3.1.4. Text
介绍:Text 可以是关键字、句子、段落甚至是文档。图2(4)举了个例子,text output 是图片的字幕 "People are having dinner"。
应用:document summarization [45], paragraph generation [46].
3.1.5. Sequence
Sequence 输出指的是从一个 label set 中选出的一些元素。序列根据当前输入以及先前元素的输出来预测当前元素。输出序列对应于输入序列。例如,在语音识别中,输出是与给定音频序列相对应的文本序列[47]。 在翻译任务中,输出是一个句子[32]。 在图2(5)所示的例子中,输入是图片的字幕,输出的是字幕中每个单词的词性(POS)的标记序列。
3.1.6. Tree
Tree output 本质上是层次结构形式的输出。输出(通常是标签)具有内部结构,其中每个输出都有一个标记,该标记连接它在树中的祖先节点。 例如,在语法分析[35]中,如图2(6)所示,一个输入语句的每个输出都是 POS 标签,而整个输出是一个解析树。 "People" 被标记为名词 N,但根据树,它也是名词短语 NP。
3.1.7. Image
Image 是一种特殊的输出形式,它由多重像素值组成,其中的每个像素都根据输入以及其周围的像素进行预测。 图2(7)展示了 Super-resolution construction[37]。Super-resolution construction 是指从低分辨率图像构建高分辨率图像。
应用:Super-resolution construction, text-to-image synthesis(generates images from natural language descriptions) [48], face generation [49].
3.1.8. Bounding Box
常用于目标检测。在 Fig2(8) 中,每个人脸都由边界框定位。
3.1.9. Link
Links output 用以描述网络中的两个节点的关联。Fig2(9) 给出了一个任务,该任务用于预测两个当前无链接的用户在给定分区的社交网络将来是否能成为朋友,边缘代表用户之间的友谊。
3.1.10. Graph
Graph 通常用以对彼此的关系建模。它们由一组节点和边组成,其中一个节点代表一个对象,一个边代表两个对象之间的关系。例如,场景图 [50] 通常作为描述图像内容 [34] 的一种方式输出。Fig2(10) 显示,给定输入图像,输出是图形定义,其中节点是图像中出现的对象,即 "people", "dinner", "table", "wine",边缘是这些对象之间的关系。场景图对于诸如 image generation[51], visual question answering[52] 之类的任务非常有用。
3.1.11. Others
还有一些其他的输出标记形式:
- 在「Object Detection」中,contour and polygon outputs 与 Bounding Box 相似,都可以用作标记。
- 在「Information Retrieval」中,输出可以是与待查字段类似的结果的列表。
- 在「Image Segmentation」中,输出通常是不同对象的 segmentation masks。
- 在「Signal Processing」中,输出可能是语音或音乐的音频。
此外,某些实际应用程序可能需要与多个任务相关的更复杂的输出结构。比如: - 可能需要同时识别和定位对象。
- 在 co-saliency(发现多个图像的共同显着性[53])中,同时在给定多个图像的同时对相似对象进行分割 [54]。
- 在 object co-detection [55]中,检测和识别多个图像中的对象。
3.2. Problem Definition of Multi-output Learning
Assume \(X = R^d\) is a d-dimensional input space, and \(Y = R^m\) is an m-dimensional output label space. The aim of multi-output learning is to learn a function \(f : X \rightarrow Y\) from the training set \(D = \{ (x_i , y_i ) \vert 1 \leq i \leq n \}\). For each training example \((x_i , y_i )\), \(x_i \in X\) is a d-dimensional feature vector, and \(y_i \in Y\) is the corresponding output associated with \(x_i\). The general definition of MOL is given as: Finding a function \(F : X \times Y \rightarrow R\) based on the training sample of input-output pairs, where \(F(x, y)\) is a compatibility function that evaluates how compatible the input x and the output y are. Then, given an unseen instance x at the test state, the output is predicted to be the one with the largest compatibility score, namely \(f(x) = \widetilde{y} = argmax _{y \in Y} F(x, y)\) [56].
3.2.1. Multi-label Learning
其任务是学习一个函数 \(f( \cdot )\) 来预测未见实例的 label sets。此任务中,每个实例都与一系列标记相关联并且由一个 sparse binary label vector 表示。\(Y = \{ -1, +1 \} ^m\)。
3.2.2. Multi-target Regression
其目的是对一个实例同时预测多个 real-valued output variable。在此,每个 output variable 的值表示该实例与对应标记的关联强度。因此 \(Y = R^m\)。
3.2.3. Label Distribution Learning
LDL 决定了每个标记的相对重要性。这与 MLL 不同,MLL 仅仅是简单预测实例所关联的一系列标记。但是正如在 Fig2 中所示,the idea of label distribution learning is to predict multiple labels with a degree value that represents how well each label describes the instance. 因此 degree value 的和必须等于 1。\(y_i = (y_i^1, y_i^2, ..., y_i^m) \in Y = R^m, y_i^j \in [0, 1], 1 \leq j \leq m, \sum_{j=1}^m y_i ^j = 1\)
3.2.4. Label Ranking
The goal of label ranking is to map instances to a total order over a finite set of predefined labels [4].
在 label ranking 中,每个实例都与多个标签的排序相关联。因此,问题的输出是每个实例的所有标签的整体顺序。
Let \(L = \{ \lambda _1 , \lambda _2 , ..., \lambda _m \}\) denotes the predefined label set. A ranking can be represented as a permutation \(\pi\) on \(\{1, 2, ..., m\}\), such that \(\pi (j) = \pi (\lambda _j)\) is the position of the label \(\lambda _j\) in the ranking. Therefore, given an unseen instance \(x \in X\), the learned label ranking function \(f( \cdot )\) predicts a permutation f(x) = (y^{\pi (1)}, y^{\pi (2)}, ..., y^{\pi (m)}) \in Y as the output.
3.2.5. Sequence Alignment Learning
- SAL aims to identify the regions of relationships between two or more sequences.
- The outputs in this task are a sequence of multiple labels for the input instance.
- \(y_i \in Y = \{ 0, 1, ..., c \}^m\), where c denotes the total number of labels.
- \(m\) may vary depending on the input.
- All of the predicted labels in the output vector form the predicted sequence for \(x\).
3.2.6. Network Analysis
- NA explores the relationships between objects in a network structure, and link prediction is a task within this subfield.
- Let \(G = (V, E)\) denotes the graph of a network. \(V\) is the set of nodes(objects), \(E\) is the set of edges(relationships between objects).
- The goal of link prediction is to infer whether a connection exists between two nodes.
- The output vector \(y_i \in Y = \{ -1, +1 \}^m\) is a binary vector whose value represents whether there is an edge \(e=(u, v)\) between any pair of nodes \(u, v \in V\) and \(e \notin E\)
- \(m\) is the number of node pairs that does not appear in the current graph G and each dimension in \(y_i\) represents a pair of nodes that are not currently connected.
3.2.7. Data Generation
- DG aims to create and then output structured data of a certain distribution.
- The generated data is in the form of text, image, or audio. And the output labels in these problems are words, pixel values, or audio tones respectively.
- The output vector of image generation has the constraints $y_i \in Y = { 0, 1, ..., 255 }^{w \times h \times 3}, where \(w, h\) are the width and height of the image.
3.2.8. Semantic Retrieval
- SR means finds the meanings within some given information.
- Suppose that each input instance has semantic labels that can be used to help retrieval [59]
- Each instance representation comprises semantic labels as the output \(y_i \in Y = R^m\).
- Given an unseen instance \(x \in X\), \(f( \cdot )\) predicts a real-valued vector \(f(x) \in Y\) as the intermediate output result.
- The intermediate output result can be used to retrieve a list of similar instances from the database by using a proper distance-based retrieval method.
3.2.9. Time-series Prediction
- Its goal is to predict the feture values in a series based on previous observations.
- Given previously observed values, the learned function outputs consecutive future values.
- \(y_i = (y_i^0, ..., y_i^t, ..., y_i^T)\)
3.3. Special Cases of Multi-output Learning
3.3.1. Multi-class Classification
如果输出类可表示为整数编码或独热编码,则可以将 Multi-class Classification 归类为传统的单输出学习范例。
3.3.2. Fine-grained Classification
- FGC 是一个具有挑战性的 multi-classification 任务,它的 class 可能仅具有细微的视觉差异 [61]。
- 尽管 FGC 的输出与 multi-class classification 有相同的向量表示,但是这些向量的内部却不相同。
- 在 label hierarchy 上,具有相同父母的 labels 比不同父母的 labels 有更强的相关性。
3.3.3. Multi-task Learning
- MTL 的目的是通过同时学习多个相关任务来提高模型泛化能力[62], [63]。
- 问题的每个任务输出一个单独的 label 或 value,这与多输出相类似。
- MTL 利用任务之间的相关性来改善模型的性能。
- MTL 和 MOL 的差异是,MTL 中不同的任务可能在不同的训练集(特征)上训练,但是 MOL 中是共享一个训练集的。
3.4. Model Evaluation Metrics
3.4.1. Metrics Groups
整体可分为 Classification-based, Regression-based 以及一些 new metrics。Classification-based 又可分为 example-based, label-based 与 ranking-based。
- Example-based Metrics 用 test instance 来评估模型性能。首先,用每个 test instance 来计算性能,然后所有 test instance 的结果求均值获得整个模型的性能。二分类问题中的很多 metrics 均可用来计算 MOL 模型的性能。
- Label-based Metrics 用 output label 来评估模型性能。这些 metrics 会整合所有 label 的贡献来获得模型的平均性能。macro-averaging 和 micro-averageing 可用于获得 label-based metrics。Macro-based approach 单独计算每个标记的metrics 然后计算所有标记的平均值。相比而言,Micro-based approach 给每个 data sample 赋予同等的权重。
- Ranking-based Metrics 根据 output label 的 order 来计算模型性能。
- Regression-based Metrics 用以评估回归 MOL 任务的性能,比如 object localization,image generation 等等。
- New Metrics,Data generation 是 MOL 的一个新兴子领域,它利用生成模型输出具有某种分布的结构化数据。基于此类任务的特殊性,这类模型性能的评估可有两个方面:1. 生成数据是否的确服从真实数据分布;2. 生成样本的质量。诸如 average log-likelihood [67], coverage metric [68], maximum mean discrepancy (MMD) [69], geometry score [70] 等 metric 常用来评估分布的真实性。如何量化生成数据的质量有很大的挑战。现在常用的是 inception scores (IS) [71], mode score (MS) [72], Frchet inception distance (FID) [73] and kernel inception distance (KID) [74]。Precision, recall, F1 score 也用来量化 GAN 模型过拟合的程度。
3.4.2. Mathematical Symbols
- test dataset: \(T = \{ (x_i, y_i) \vert 1 \leq i \leq N \}\)
- learning model: \(f(\cdot )\)
- the set of labels(true /predicted): \(Y_i \ / \ \hat{Y}_i\)
- indicator: \(\mathbb{I}(g) = 1 \ if \ g \ is \ true \ else \ 0\)
- label set: \(\mathbb{L}\)
- the predicted ranking value of label \(\lambda\) for the test instance \(x_i\): \(\pi _i(\lambda )\)
3.4.3. Metrics
Hamming loss
Macro-averaging
where B is a binary evaluation metric (accuracy, precision, recall, etc.).
Micro-averaging
One-error
- One-error is the number of times that the top-ranked label is not
in the true label set. - This approach only considers the most confident predicted label of the model.
Ranking loss
Ranking loss indicates the average proportion of incorrectly ordered label pairs.
where \(E = (\lambda _a, \lambda _b) : \pi _i (\lambda _a) > \pi _i (\lambda _b), \ (\lambda _a , \lambda _b) \in Y_i \times \overline{Y}_i, \ \overline{Y}_i = \mathbb{L} - Y_i\) , which means how many pairs are mis-ranked in all pairs of labels.
Average precision(AP)
Mean absolute error(MAE)
Mean squared error(MSE)
Average correlation coefficient(ACC)
Intersection over union threshold(IoU)
It is a specifically- designed metric for assessing object localization or segmentation.