У меня есть такие данные
Sentences
XYZ ABC Asset Management UK Limited
XYZ ABC BDDF - Informations et Etudes Comm...
XYZ ABC (Suisse) SA
XYZ ABC Comm Bank
XYZ ABC, Tokyo Branch
XYZ ABC Securities Services
XYZ ABC INVESTMENT PARTNERS BELGIUM
GIE XYZ ABC Assurance
XYZ ABC Energy Trading GP (f/k/a Fortis En...
TKB XYZ ABC Investment Partners
XYZ ABC LEASE GROUP FR
XYZ ABC
Я хочу объединить их под именем "XYZ AB C", так как все они содержат эти два слова, и слово также встречается в списке предложений (на последнем). Точно так же, как это, есть другие имена, имеющие 2 или более одинаковых слова. Как я собираю их в нечто вроде этого:
sentences grouped under
XYZ ABC Asset Management UK Limited XYZ ABC
XYZ ABC BDDF - Informations et Etudes Comm... XYZ ABC
GIE XYZ ABC Assurance XYZ ABC
XYZ ABC Energy Trading GP (f/k/a Fortis En... XYZ ABC
TKB XYZ ABC Investment Partners XYZ ABC
XYZ ABC LEASE GROUP FR XYZ ABC
XYZ ABC XYZ ABC
.......
ABC DEFGH IJKL Americas ABC DEFGH IJKL
ABC DEFGH IJKL Investment Grade Bonds ABC DEFGH IJKL
ABC DEFGH IJKL Reality Television Series ABC DEFGH IJKL
ABC DEFGH IJKL Delhi Branch ABC DEFGH IJKL
ABC DEFGH IJKL Suiesssee KPL ONG Ltd ABC DEFGH IJKL
ABC DEFGH IJKL ABC DEFGH IJKL
Условие должно состоять в том, чтобы сгруппированное имя содержало 2 или более слов и имело быть во всех предложениях, а также должно быть отдельным предложением само по себе (последние предложения в обоих приведенных выше примерах). Я пытался использовать косинусное сходство и подход word2ve c, но безуспешно. Есть ли способ сделать это?