title: Predicting correct match of French to English food descriptions
body: <p>I have a training and test set of food descriptions pairs (please, see example below)
  First name in a pair is a name of food in French
  and second word is this food description in English.
  Training set has also a <code>trans</code> field that is True for correct descriptions
  and False for wrong descriptions.
  The task is to predict <code>trans</code> field in a test set, in other words to predict
  which food description is correct and which is wrong.</p>
  <pre><code>dishes = [{&quot;fr&quot;:&quot;Agneau de lait&quot;, &quot;eng&quot;:&quot;Baby milk-fed lamb&quot;, &quot;trans&quot;: True},
  {&quot;fr&quot;:&quot;Agrume&quot;, &quot;eng&quot;:&quot;Blackcurrants&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Algue&quot;, &quot;eng&quot;:&quot;Buttermilk&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Aligot&quot;, &quot;eng&quot;:&quot;potatoes mashed with fresh mountain cheese&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Baba au rhum&quot;, &quot;eng&quot;:&quot;Star anise&quot;, &quot;trans&quot;: True},
  {&quot;fr&quot;:&quot;Babeurre&quot;, &quot;eng&quot;:&quot;seaweed&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Badiane&quot;, &quot;eng&quot;:&quot;Sponge cake (often soaked in rum)&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Boeuf bourguignon&quot;, &quot;eng&quot;:&quot;Créole curry&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Carbonade flamande&quot;, &quot;eng&quot;:&quot;Beef Stew&quot;, &quot;trans&quot;: True},
  {&quot;fr&quot;:&quot;Cari&quot;, &quot;eng&quot;:&quot;Beef stewed in red wine&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Cassis&quot;, &quot;eng&quot;:&quot;citrus&quot;, &quot;trans&quot;: False},
  {&quot;fr&quot;:&quot;Cassoulet&quot;, &quot;eng&quot;:&quot;Stew from the South-West of France&quot;, &quot;trans&quot;: True},
  {&quot;fr&quot;:&quot;Céleri-rave&quot;, &quot;eng&quot;:&quot;Celery root&quot;, &quot;trans&quot;: True}]
  
  df = pd.DataFrame(dishes)
  
      fr                  eng                                          trans
  0   Agneau de lait      Baby milk-fed lamb                           True
  1   Agrume              Blackcurrants                                False
  2   Algue               Buttermilk                                   False
  3   Aligot              potatoes mashed with fresh mountain cheese   False
  4   Baba au rhum        Star anise                                   True
  5   Babeurre            seaweed                                      False
  6   Badiane             Sponge cake (often soaked in rum)            False
  7   Boeuf bourguignon   Créole curry                                 False
  8   Carbonade flamande  Beef Stew                                    True
  9   Cari                Beef stewed in red wine                      False
  10  Cassis              citrus                                       False
  11  Cassoulet           Stew from the South-West of France           True
  12  Céleri-rave         Celery root                                  True
  </code></pre>
  <p>I think to solve this as text classification problem, where text is a concatenation of French name and English description embeddings.</p>
  <p>Questions:</p>
  <ul>
  <li>Which embeddings to use and how concatenate them?</li>
  <li>Any other ideas on approach to this problem? BERT?</li>
  </ul>
  <p><strong>Update:</strong></p>
  <p>How about the following approach:</p>
  <ul>
  <li>Translate (with BERT?) French names to English</li>
  <li>Use embeddings to create two vectors: v1 - translated English vector and v2 - English description vector (from data set)</li>
  <li>Compute v1 - v2</li>
  <li>Create new data set with two columns: <code>v1 - v2</code> and <code>trans</code></li>
  <li>Train classifier on this new data set</li>
  </ul>
  <p><strong>Update 2:</strong></p>
  <p>It looks like <em>cross-lingual classification</em> may be the right solution for my problem:</p>
  <p><a href="https://github.com/facebookresearch/XLM#iv-applications-cross-lingual-text-classification-xnli" rel="nofollow noreferrer">https://github.com/facebookresearch/XLM#iv-applications-cross-lingual-text-classification-xnli</a></p>
  <p>It is not clear yet from the description given on the page with the link above, where to fit my own training data set and how to run classifier on my test set. Please help to figure this out. It would be ideal to find end-to-end example / tutorial on cross-lingual classification.</p>