CBOW v.s. skip-gram: why invert context and target words? : <p>In <a href="https://www.tensorflow.org/versions/r0.9/tutorials/word2vec/index.html#vector-representations-of-words" rel="noreferrer">this</a> page, it is said that: </p>

<blockquote>
  <p>[...] skip-gram inverts contexts and targets, and tries to predict each context word from its target word [...]</p>
</blockquote>

<p>However, looking at the training dataset it produces, the content of the X and Y pair seems to be interexchangeable, as those two pairs of (X, Y): </p>

<blockquote>
  <p><code>(quick, brown), (brown, quick)</code></p>
</blockquote>

<p>So, why distinguish that much between context and targets if it is the same thing in the end? </p>

<p>Also, doing <a href="https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/udacity/5_word2vec.ipynb" rel="noreferrer">Udacity's Deep Learning course exercise on word2vec</a>, I wonder why they seem to do the difference between those two approaches that much in this problem: </p>

<blockquote>
  <p>An alternative to skip-gram is another Word2Vec model called CBOW (Continuous Bag of Words). In the CBOW model, instead of predicting a context word from a word vector, you predict a word from the sum of all the word vectors in its context. Implement and evaluate a CBOW model trained on the text8 dataset.</p>
</blockquote>

<p>Would not this yields the same results?</p>
