Tying Word Vectors and Word Classifiers: A Loss Framework for Language Modeling

Hakan Inan, Khashayar Khosravi, Richard Socher

Introduction

Neural network models have recently made tremendous progress in a variety of NLP applications such as speech recognition (Irie et al., 2016), sentiment analysis (Socher et al., 2013), text summarization (Rush et al., 2015; Nallapati et al., 2016), and machine translation (Firat et al., 2016).

Despite the overwhelming success achieved by recurrent neural networks in modeling long range dependencies between words, current recurrent neural network language models (RNNLM) are based on the conventional classification framework, which has two major drawbacks: First, there is no assumed metric on the output classes, whereas there is evidence suggesting that learning is improved when one can define a natural metric on the output space (Frogner et al., 2015). In language modeling, there is a well established metric space for the outputs (words in the language) based on word embeddings, with meaningful distances between words (Mikolov et al., 2013; Pennington et al., 2014). Second, in the classical framework, inputs and outputs are considered as isolated entities with no semantic link between them. This is clearly not the case for language modeling, where inputs and outputs in fact live in identical spaces. Therefore, even for models with moderately sized vocabularies, the classical framework could be a vast source of inefficiency in terms of the number of variables in the model, and in terms of utilizing the information gathered by different parts of the model (e.g. inputs and outputs).

In this work, we introduce a novel loss framework for language modeling to remedy the above two problems. Our framework is comprised of two closely linked improvements. First, we augment the classical cross-entropy loss with an additional term which minimizes the KL-divergence between the model’s prediction and an estimated target distribution based on the word embeddings space. This estimated distribution uses knowledge of word vector similarity. We then theoretically analyze this loss, and this leads to a second and synergistic improvement: tying together two large matrices by reusing the input word embedding matrix as the output classification matrix. We empirically validate our theory in a practical setting, with much milder assumptions than those in theory. We also find empirically that for large networks, most of the improvement could be achieved by only reusing the word embeddings.

We test our framework by performing extensive experiments on the Penn Treebank corpus, a dataset widely used for benchmarking language models (Mikolov et al., 2010; Merity et al., 2016). We demonstrate that models trained using our proposed framework significantly outperform models trained using the conventional framework. We also perform experiments on the newly introduced Wikitext-2 dataset (Merity et al., 2016), and verify that the empirical performance of our proposed framework is consistent across different datasets.

Background: Recurrent neural network language model

In any variant of recurrent neural network language model (RNNLM), the goal is to predict the next word indexed by tt in a sequence of one-hot word tokens (y1,yN)(y^{*}_{1},\ldots y^{*}_{N}) as follows:

𝑊subscriptℎ𝑡𝑏\displaystyle=\text{softmax}\left(Wh_{t}+b\right). (2.3) The matrix LRdx×VL\in{\mathbb{R}}^{d_{x}\times|V|} is the word embedding matrix, where dxd_{x} is the word embedding dimension and V|V| is the size of the vocabulary. The function f(.,.)f(.,.) represents the recurrent neural network which takes in the current input and the previous hidden state and produces the next hidden state. WRV×dhW\in{\mathbb{R}}^{|V|\times d_{h}} and bRVb\in{\mathbb{R}}^{|V|} are the the output projection matrix and the bias, respectively, and dhd_{h} is the size of the RNN hidden state. The V|V| dimensional yty_{t} models the discrete probability distribution for the next word.

Note that the above formulation does not make any assumptions about the specifics of the recurrent neural units, and ff could be replaced with a standard recurrent unit, a gated recurrent unit (GRU) (Cho et al., 2014), a long-short term memory (LSTM) unit (Hochreiter & Schmidhuber, 1997), etc. For our experiments, we use LSTM units with two layers.

Given yty_{t} for the ttht^{\text{th}} example, a loss is calculated for that example. The loss used in the RNNLMs is almost exclusively the cross-entropy between yty_{t} and the observed one-hot word token, yty^{*}_{t}:

We shall refer to yty_{t} as the model prediction distribution for the ttht^{\text{th}} example, and yty^{*}_{t} as the empirical target distribution (both are in fact conditional distributions given the history). Since cross-entropy and Kullback-Leibler divergence are equivalent when the target distribution is one-hot, we can rewrite the loss for the ttht^{\text{th}} example as

Therefore, we can think of the optimization of the conventional loss in an RNNLM as trying to minimize the distance111We note, however, that Kullback-Leibler divergence is not a valid distance metric. between the model prediction distribution (yy) and the empirical target distribution (yy^{*}), which, with many training examples, will get close to minimizing distance to the actual target distribution. In the framework which we will introduce, we utilize Kullback-Leibler divergence as opposed to cross-entropy due to its intuitive interpretation as a distance between distributions, although the two are not equivalent in our framework.

Augmenting the Cross-Entropy Loss

We propose to augment the conventional cross-entropy loss with an additional loss term as follows:

subscript𝐽𝑡𝛼subscriptsuperscript𝐽aug𝑡\displaystyle=J_{t}+\alpha J^{\emph{aug}}_{t}. (3.3) In above, α\alpha is a hyperparameter to be adjusted, and y^t{\hat{y}}_{t} is almost identical to the regular model prediction distribution yty_{t} with the exception that the logits are divided by a temperature parameter τ\tau. We define y~t{\tilde{y}}_{t} as some probability distribution that estimates the true data distribution (conditioned on the word history) which satisfies Ey~t=Eyt{\mathbb{E}}{{\tilde{y}}_{t}}={\mathbb{E}}{y^{*}_{t}}. The goal of this framework is to minimize the distribution distance between the prediction distribution and a more accurate estimate of the true data distribution.

To understand the effect of optimizing in this setting, let’s focus on an ideal case in which we are given the true data distribution so that y~t=Eyt{\tilde{y}}_{t}={\mathbb{E}}{y^{*}_{t}}, and we only use the augmented loss, JaugJ^{\emph{aug}}. We will carry out our investigation through stochastic gradient descent, which is the technique dominantly used for training neural networks. The gradient of JtaugJ^{\emph{aug}}_{t} with respect to the logits WhtWh_{t} is

Let’s denote by ejRVe_{j}\in{\mathbb{R}}^{|V|} the vector whose jthj^{\text{th}} entry is 1, and others are zero. We can then rewrite (3.4) as

Implication of (3.5) is the following: Every time the optimizer sees one training example, it takes a step not only on account of the label seen, but it proceeds taking into account all the class labels for which the conditional probability is not zero, and the relative step size for each step is given by the conditional probability for that label, y~t,i{\tilde{y}}_{t,i}. Furthermore, this is a much less noisy update since the target distribution is exact and deterministic. Therefore, unless all the examples exclusively belong to a specific class with probability 11, the optimization will act much differently and train with greatly improved supervision.

The idea proposed in the recent work by Hinton et al. (2015) might be considered as an application of this framework, where they try to obtain a good set of y~{\tilde{y}}’s by training very large models and using the model prediction distributions of those.

Although finding a good y~{\tilde{y}} in general is rather nontrivial, in the context of language modeling we can hope to achieve this by exploiting the inherent metric space of classes encoded into the model, namely the space of word embeddings. Specifically, we propose the following for y~{\tilde{y}}:

In words, we first find the target word vector which corresponds to the target word token (resulting in utu_{t}), and then take the inner product of the target word vector with all the other word vectors to get an unnormalized probability distribution. We adjust this with the same temperature parameter τ\tau used for obtaining y^t{\hat{y}}_{t} and apply softmax. The target distribution estimate, y~{\tilde{y}}, therefore measures the similarity between the word vectors and assigns similar probability masses to words that the language model deems close. Note that the estimation of y~{\tilde{y}} with this procedure is iterative, and the estimates of y~{\tilde{y}} in the initial phase of the training are not necessarily informative. However, as training procedes, we expect y~{\tilde{y}} to capture the word statistics better and yield a consistently more accurate estimate of the true data distribution.

Theoretically Driven Reuse of Word Embeddings

We now theoretically motivate and introduce a second modification to improve learning in the language model. We do this by analyzing the proposed augmented loss in a particular setting, and observe an implicit core mechanism of this loss. We then make our proposition by making this mechanism explicit.

We start by introducing our setting for the analysis. We restrict our attention to the case where the input embedding dimension is equal to the dimension of the RNN hidden state, i.e. ddx=dhd\triangleq d_{x}=d_{h}. We also set b=0b=0 in (2.3) so that yt=Whty_{t}=Wh_{t}. We only use the augmented loss, i.e. Jtot=JaugJ^{tot}=J^{\emph{aug}}, and we assume that we can achieve zero training loss. Finally, we set the temperature parameter τ\tau to be large.

We first show that when the temperature parameter, τ\tau, is high enough, JtaugJ^{\emph{aug}}_{t} acts to match the logits of the prediction distribution to the logits of the the more informative labels, y~{\tilde{y}}. We proceed in the same way as was done in Hinton et al. (2015) to make an identical argument. Particularly, we consider the derivative of JtaugJ^{\emph{aug}}_{t} with respect to the entries of the logits produced by the neural network.

Let’s denote by lil_{i} the ithi^{\text{th}} column of L. Using the first order approximation of exponential function around zero (exp(x)1+x\exp\left(x\right)\approx 1+x), we can approximate y~t{\tilde{y}}_{t} (same holds for y^t{\hat{y}}_{t}) at high temperatures as follows:

1subscript𝑢𝑡subscript𝑙𝑖𝜏𝑉subscript𝑗𝑉subscript𝑢𝑡subscript𝑙𝑗𝜏\displaystyle{\tilde{y}}_{t,i}=\frac{\exp\left(\langle u_{t},l_{i}\rangle/\tau\right)}{\sum_{j\in V}\exp\left(\langle u_{t},l_{j}\rangle/\tau\right)}\approx\frac{1+\langle u_{t},l_{i}\rangle/\tau}{|V|+\sum_{j\in V}\langle u_{t},l_{j}\rangle/\tau}. (4.1) We can further simplify (4.1) if we assume that ut,lj=0\langle u_{t},l_{j}\rangle=0 on average:

1subscript𝑢𝑡subscript𝑙𝑖𝜏𝑉\displaystyle{\tilde{y}}_{t,i}\approx\frac{1+\langle u_{t},l_{i}\rangle/\tau}{|V|}. (4.2) By replacing y~t{\tilde{y}}_{t} and y^t{\hat{y}}_{t} in (3.4) with their simplified forms according to (4.2), we get

subscriptsuperscript𝐽aug𝑡subscript𝑊subscriptℎ𝑡𝑖1superscript𝜏2𝑉subscript𝑊subscriptℎ𝑡superscript𝐿𝑇subscript𝑢𝑡𝑖→as 𝜏\displaystyle\frac{\partial J^{\emph{aug}}_{t}}{\partial\left(Wh_{t}\right)_{i}}\rightarrow\frac{1}{\tau^{2}|V|}\left(Wh_{t}-L^{T}u_{t}\right)_{i}\ \ \ \text{as }\tau\rightarrow\infty, (4.3) which is the desired result that augmented loss tries to match the logits of the model to the logits of y~{\tilde{y}}’s. Since the training loss is zero by assumption, we necessarily have

for each training example, i.e., gradient contributed by each example is zero. Provided that WW and LL are full rank matrices and there are more linearly independent examples of hth_{t}’s than the embedding dimension dd, we get that the space spanned by the columns of LTL^{T} is equivalent to that spanned by the columns of WW. Let’s now introduce a square matrix AA such that W=LTAW=L^{T}A. (We know AA exists since LTL^{T} and WW span the same column space). In this case, we can rewrite

In other words, by reusing the embedding matrix in the output projection layer (with a transpose) and letting the neural network do the necessary linear mapping hAhh\rightarrow Ah, we get the same result as we would have in the first place.

Although the above scenario could be difficult to exactly replicate in practice, it uncovers a mechanism through which our proposed loss augmentation acts, which is trying to constrain the output (unnormalized) probability space to a small subspace governed by the embedding matrix. This suggests that we can make this mechanism explicit and constrain W=LTW=L^{T} during training while setting the output bias, bb, to zero. Doing so would not only eliminate a big matrix which dominates the network size for models with even moderately sized vocabularies, but it would also be optimal in our setting of loss augmentation as it would eliminate much work to be done by the augmented loss.

Related Work

Since their introduction in Mikolov et al. (2010), many improvements have been proposed for RNNLMs , including different dropout methods (Zaremba et al., 2014; Gal, 2015), novel recurrent units (Zilly et al., 2016), and use of pointer networks to complement the recurrent neural network (Merity et al., 2016). However, none of the improvements dealt with the loss structure, and to the best of our knowledge, our work is the first to offer a new loss framework.

Our technique is closely related to the one in Hinton et al. (2015), where they also try to estimate a more informed data distribution and augment the conventional loss with KL divergence between model prediction distribution and the estimated data distribution. However, they estimate their data distribution by training large networks on the data and then use it to improve learning in smaller networks. This is fundamentally different from our approach, where we improve learning by transferring knowledge between different parts of the same network, in a self contained manner.

The work we present in this paper is based on a report which was made public in Inan & Khosravi (2016). We have recently come across a concurrent preprint (Press & Wolf, 2016) where the authors reuse the word embedding matrix in the output projection to improve language modeling. However, their work is purely empirical, and they do not provide any theoretical justification for their approach. Finally, we would like to note that the idea of using the same representation for input and output words has been explored in the past, and there exists language models which could be interpreted as simple neural networks with shared input and output embeddings (Bengio et al., 2001; Mnih & Hinton, 2007). However, shared input and output representations were implicitly built into these models, rather than proposed as a supplement to a baseline. Consequently, possibility of improvement was not particularly pursued by sharing input and output representations.

Experiments

In our experiments, we use the Penn Treebank corpus (PTB) (Marcus et al., 1993), and the Wikitext-2 dataset (Merity et al., 2016). PTB has been a standard dataset used for benchmarking language models. It consists of 923923k training, 7373k validation, and 8282k test words. The version of this dataset which we use is the one processed in Mikolov et al. (2010), with the most frequent 1010k words selected to be in the vocabulary and rest replaced with a an <<unk>> token 222PTB can be downloaded at http://www.fit.vutbr.cz/ imikolov/rnnlm/simple-examples.tgz. Wikitext-2 is a dataset released recently as an alternative to PTB333Wikitext-2 can be downloaded at https://s3.amazonaws.com/research.metamind.io/wikitext/wikitext-2-v1.zip. It contains 2,0882,088k training, 217217k validation, and 245245k test tokens, and has a vocabulary of 33,27833,278 words; therefore, in comparison to PTB, it is roughly 2 times larger in dataset size, and 3 times larger in vocabulary.

We closely follow the LSTM based language model proposed in Zaremba et al. (2014) for constructing our baseline model. Specifically, we use a 22-layer LSTM with the same number of hidden units in each layer, and we use 33 different network sizes: small (200200 units), medium (650650 units), and large (15001500 units). We train our models using stochastic gradient descent, and we use a variant of the dropout method proposed in Gal (2015). We defer further details regarding training the models to section A of the appendix. We refer to our baseline network as variational dropout LSTM, or VD-LSTM in short.

2 Empirical Validation for the Theory of Reusing Word Embeddings

In Section 4, we showed that the particular loss augmentation scheme we choose constrains the output projection matrix to be close to the input embedding matrix, without explicitly doing so by reusing the input embedding matrix. As a first experiment, we set out to validate this theoretical result. To do this, we try to simulate the setting in Section 4 by doing the following: We select a randomly chosen 20,00020,000 contiguous word sequence in the PTB training set, and train a 2-layer LSTM language model with 300 units in each layer with loss augmentation by minimizing the following loss:

𝛽superscript𝐽augsuperscript𝜏2𝑉1𝛽𝐽\displaystyle J^{tot}=\beta J^{\emph{aug}}\tau^{2}|V|+(1-\beta)J. (6.1) Here, β\beta is the proportion of the augmented loss used in the total loss, and JaugJ^{\emph{aug}} is scaled by τ2V\tau^{2}|V| to approximately match the magnitudes of the derivatives of JJ and JaugJ^{\emph{aug}} (see (4.3)). Since we aim to achieve the minimum training loss possible, and the goal is to show a particular result rather than to achieve good generalization, we do not use any kind of regularization in the neural network (e.g. weight decay, dropout). For this set of experiments, we also constrain each row of the input embedding matrix to have a norm of 11 because training becomes difficult without this constraint when only augmented loss is used. After training, we compute a metric that measures distance between the subspace spanned by the rows of the input embedding matrix, LL, and that spanned by the columns of the output projection matrix, WW. For this, we use a common metric based on the relative residual norm from projection of one matrix onto another (Björck & Golub, 1973). The computed distance between the subspaces is 11 when they are orthogonal, and when they are the same. Interested reader may refer to section B in the appendix for the details of this metric.

Figure 1 shows the results from two tests. In one (panel a), we test the effect of using the augmented loss by sweeping β\beta in (6.1) from to 11 at a reasonably high temperature (τ=10\tau=10). With no loss augmentation (β=0\beta=0), the distance is almost 11, and as more and more augmented loss is used the distance decreases rapidly, and eventually reaches around 0.060.06 when only augmented loss is used. In the second test (panel b), we set β=1\beta=1, and try to see the effect of the temperature on the subspace distance (remember the theory predicts low distance when τ\tau\rightarrow\infty). Notably, the augmented loss causes WW to approach LTL^{T} sufficiently even at temperatures as low as 22, although higher temperatures still lead to smaller subspace distances.

These results confirm the mechanism through which our proposed loss pushes WW to learn the same column space as LTL^{T}, and it suggests that reusing the input embedding matrix by explicitly constraining W=LTW=L^{T} is not simply a kind of regularization, but is in fact an optimal choice in our framework. What can be achieved separately with each of the two proposed improvements as well as with the two of them combined is a question of empirical nature, which we investigate in the next section.

3 Results on PTB and Wikitext-2 Datasets

In order to investigate the extent to which each of our proposed improvements helps with learning, we train 4 different models for each network size: (1) 2-Layer LSTM with variational dropout (VD-LSTM) (2) 2-Layer LSTM with variational dropout and augmented loss (VD-LSTM +AL) (3) 2-Layer LSTM with variational dropout and reused embeddings (VD-LSTM +RE) (4) 2-Layer LSTM with variational dropout and both RE and AL (VD-LSTM +REAL).

Figure 2 shows the validation perplexities of the four models during training on the PTB corpus for small (panel a) and large (panel b) networks. All of AL, RE, and REAL networks significantly outperform the baseline in both cases. Table 6.3 compares the final validation and test perplexities of the four models on both PTB and Wikitext-2 for each network size. In both datasets, both AL and RE improve upon the baseline individually, and using RE and AL together leads to the best performance. Based on performance comparisons, we make the following notes on the two proposed improvements:

AL provides better performance gains for smaller networks. This is not surprising given the fact that small models are rather inflexible, and one would expect to see improved learning by training against a more informative data distribution (contributed by the augmented loss) (see Hinton et al. (2015)). For the smaller PTB dataset, performance with AL surpasses that with RE. In comparison, for the larger Wikitext-2 dataset, improvement by AL is more limited. This is expected given larger training sets better represent the true data distribution, mitigating the supervision problem. In fact, we set out to validate this reasoning in a direct manner, and additionally train the small networks separately on the first and second halves of the Wikitext-2 training set. This results in two distinct datasets which are each about the same size as PTB (1044K vs 929K). As can be seen in Table 6.3, AL has significantly improved competitive performance against RE and REAL despite the fact that embedding size is 3 times larger compared to PTB. These results support our argument that the proposed augmented loss term acts to improve the amount of information gathered from the dataset.

RE significantly outperforms AL for larger networks. This indicates that, for large models, the more effective mechanism of our proposed framework is the one which enforces proximity between the output projection space and the input embedding space. From a model complexity perspective, the nontrivial gains offered by RE for all network sizes and for both datasets could be largely attributed to its explicit function to reduce the model size while preserving the representational power according to our framework.

We list in Table 3 the comparison of models with and without our proposed modifications on the Penn Treebank Corpus. The best LSTM model (VD-LSTM+REAL) outperforms all previous work which uses conventional framework, including large ensembles. The recently proposed recurrent highway networks (Zilly et al., 2016) when trained with reused embeddings (VD-RHN +RE) achieves the best overall performance, improving on VD-RHN by a perplexity of 2.52.5.

One important feature of our framework that leads to better word predictions is the explicit mechanism to assign probabilities to words not merely according to the observed output statistics, but also considering the metric similarity between words. We observe direct consequences of this mechanism qualitatively in the Penn Treebank in different ways: First, we notice that the probability of generating the <<unk>> token with our proposed network (VD-LSTM +REAL) is significantly lower compared to the baseline network (VD-LSTM) across many words. This could be explained by noting the fact that the <<unk>> token is an aggregated token rather than a specific word, and it is often not expected to be close to specific words in the word embedding space. We observe the same behavior with very frequent words such as ”a”, ”an”, and ”the”, owing to the same fact that they are not correlated with particular words. Second, we not only observe better probability assignments for the target words, but we also observe relatively higher probability weights associated with the words close to the targets. Sometimes this happens in the form of predicting words semantically close together which are plausible even when the target word is not successfully captured by the model. We provide a few examples from the PTB test set which compare the prediction performance of 15001500 unit VD-LSTM and 15001500 unit VD-LSTM +REAL in table 4. We would like to note that prediction performance of VD-LSTM +RE is similar to VD-LSTM +REAL for the large network.

Conclusion

In this work, we introduced a novel loss framework for language modeling. Particularly, we showed that the metric encoded into the space of word embeddings could be used to generate a more informed data distribution than the one-hot targets, and that additionally training against this distribution improves learning. We also showed theoretically that this approach lends itself to a second improvement, which is simply reusing the input embedding matrix in the output projection layer. This has an additional benefit of reducing the number of trainable variables in the model. We empirically validated the theoretical link, and verified that both proposed changes do in fact belong to the same framework. In our experiments on the Penn Treebank corpus and Wikitext-2, we showed that our framework outperforms the conventional one, and that even the simple modification of reusing the word embedding in the output projection layer is sufficient for large networks.

The improvements achieved by our framework are not unique to vanilla language modeling, and are readily applicable to other tasks which utilize language models such as neural machine translation, speech recognition, and text summarization. This could lead to significant improvements in such models especially with large vocabularies, with the additional benefit of greatly reducing the number of parameters to be trained.

References

Chapter \thechapter APPENDIX

We begin training with a learning rate of 11 and start decaying it with a constant rate after a certain epoch. This is 55, 1010, and 11 for the small, medium, and large networks respectively. The decay rate is 0.90.9 for the small and medium networks, and 0.970.97 for the large network.

For both PTB and Wikitext-2 datasets, we unroll the network for 3535 steps for backpropagation.

We use gradient clipping (Pascanu et al., 2013b); i.e. we rescale the gradients using the global norm if it exceeds a certain value. For both datasets, this is 55 for the small and the medium network, and 66 for the large network.

We use the dropout method introduced in Gal (2015); particularly, we use the same dropout mask for each example through the unrolled network. Differently from what was proposed in Gal (2015), we tie the dropout weights for hidden states further, and we use the same mask when they are propagated as states in the current layer and when they are used as inputs for the next layer. We don’t use dropout in the input embedding layer, and we use the same dropout probability for inputs and hidden states. For PTB, dropout probabilities are 0.70.7, 0.50.5 and 0.350.35 for small, medium and large networks respectively. For Wikitext-2, probabilities are 0.80.8 for the small and 0.60.6 for the medium networks.

When training the networks with the augmented loss (AL), we use a temperature τ=20\tau=20. We have empirically observed that setting α\alpha, the weight of the augmented loss, according to α=γτ\alpha=\gamma\tau for all the networks works satisfactorily. We set γ\gamma to values between 0.50.5 and 0.80.8 for the PTB dataset, and between 1.01.0 and 1.51.5 for the Wikitext-2 dataset. We would like to note that we have not observed sudden deteriorations in the performance with respect to moderate variations in either τ\tau or α\alpha.

Appendix B Metric for Calculating Subspace Distances

In this section, we detail the metric used for computing the subspace distance between two matrices. The computed metric is closely related with the principle angles between subspaces, first defined in Jordan (1875).

Our aim is to compute a metric distance between two given matrices, XX and YY. We do this in three steps:

Obtain two matrices with orthonormal columns, UU and VV, such that span(U)(U)=span(X)(X) and span(V)(V)=span(Y)(Y). UU and VV could be obtained with a QR decomposition.

Calculate the projection of either one of UU and VV onto the other; e.g. do S=UUTVS=UU^{T}V, where SS is the projection of VV onto UU. Then calculate the residual matrix as R=VSR=V-S.

Let .Fr\|.\|_{Fr} denote the frobenious norm, and let CC be the number of columns of RR. Then the distance metric is found as dd where d2=1CRFr2=1CTrace(RTR)d^{2}=\frac{1}{C}\|R\|_{Fr}^{2}=\frac{1}{C}\text{Trace}(R^{T}R).

We note that dd as calculated above is a valid metric up to the equivalence set of matrices which span the same column space, although we are not going to show it. Instead, we will mention some metric properties of dd, and relate it to the principal angles between the subspaces. We first work out an expression for dd:

where ρi\rho_{i} is the ithi^{\text{th}} singular value of UTVU^{T}V, commonly referred to as the ithi^{\text{th}} principle angle between the subspaces of XX and YY, θi\theta_{i}. In above, we used the cyclic permutation property of the trace in the third and the fourth lines.

Since d2d^{2} is 1CTrace(RTR)\frac{1}{C}\text{Trace}(R^{T}R), it is always nonnegative, and it is only zero when the residual is zero, which is the case when span(X)=span(Y)\text{span}(X)=\text{span(Y)}. Further, it is symmetric between UU and VV due to the form of (B) (singular values of VTUV^{T}U and VTUV^{T}U are the same). Also, d2=1Ci=1Csin2(θi)d^{2}=\frac{1}{C}\sum_{i=1}^{C}\sin^{2}(\theta_{i}), namely the average of the sines of the principle angles, which is a quantity between and 11.