Gensim - Modelowanie tematyczne

Ten rozdział dotyczy modelowania tematycznego w odniesieniu do Gensim.

Aby opisać nasze dane i zrozumieć strukturę zdań, jedną z najlepszych metod jest użycie obliczeniowych algorytmów lingwistycznych. Bez wątpienia za pomocą tych obliczeniowych algorytmów lingwistycznych możemy zrozumieć drobne szczegóły dotyczące naszych danych, ale

  • Czy możemy wiedzieć, jakie słowa pojawiają się częściej niż inne w naszym korpusie?

  • Czy możemy grupować nasze dane?

  • Czy możemy bazować na motywach w naszych danych?

Bylibyśmy w stanie to wszystko osiągnąć za pomocą modelowania tematycznego. Zagłębmy się więc w koncepcję modeli tematycznych.

Jakie są modele tematyczne?

Model tematyczny można zdefiniować jako model probabilistyczny zawierający informacje o tematach w naszym tekście. Ale tutaj pojawiają się dwa ważne pytania, które są następujące -

Pierwszy, what exactly a topic is?

Temat, jak sama nazwa wskazuje, to leżące u podstaw idee lub tematy przedstawione w naszym tekście. Aby dać ci przykład, korpus zawierającynewspaper articles miałby tematy związane finance, weather, politics, sports, various states news i tak dalej.

Druga, what is the importance of topic models in text processing?

Jak wiemy, aby zidentyfikować podobieństwo w tekście, możemy zastosować techniki wyszukiwania informacji i wyszukiwania przy użyciu słów. Ale za pomocą modeli tematycznych możemy teraz wyszukiwać i porządkować nasze pliki tekstowe, używając tematów zamiast słów.

W tym sensie możemy powiedzieć, że tematy są probabilistycznym rozkładem słów. Dlatego korzystając z modeli tematycznych, możemy opisać nasze dokumenty jako probabilistyczne rozkłady tematów.

Cele modeli tematycznych

Jak wspomniano powyżej, modelowanie tematyczne koncentruje się na podstawowych ideach i tematach. Jego główne cele są następujące -

  • Modele tematyczne mogą być użyte do podsumowania tekstu.

  • Mogą służyć do porządkowania dokumentów. Na przykład, możemy użyć modelowania tematów, aby zgrupować artykuły z wiadomościami w zorganizowaną / połączoną sekcję, taką jak organizowanie wszystkich artykułów związanych zcricket.

  • Mogą poprawić wyniki wyszukiwania. W jaki sposób? W przypadku zapytania wyszukiwania możemy użyć modeli tematycznych, aby ujawnić dokument zawierający kombinację różnych słów kluczowych, ale dotyczą tego samego pomysłu.

  • Pojęcie rekomendacji jest bardzo przydatne w marketingu. Jest używany przez różne strony internetowe zakupów, serwisy informacyjne i wiele innych. Modele tematyczne pomagają w formułowaniu rekomendacji dotyczących tego, co kupić, co przeczytać dalej itp. Robią to poprzez znajdowanie na liście materiałów o wspólnym temacie.

Topic Modeling Algorithms in Gensim

Niewątpliwie Gensim jest najpopularniejszym zestawem narzędzi do modelowania tematycznego. Jego bezpłatna dostępność i bycie w Pythonie sprawiają, że jest bardziej popularny. W tej sekcji omówimy niektóre najpopularniejsze algorytmy modelowania tematycznego. Tutaj skupimy się raczej na „co” niż „jak”, ponieważ Gensim bardzo dobrze je streszcza.

Ukryty przydział Dirichleta (LDA)

Utajona alokacja Dirichleta (LDA) jest najbardziej powszechną i popularną obecnie techniką modelowania tematycznego. Jest to ten, który badacze Facebooka wykorzystali w swoim artykule badawczym opublikowanym w 2013 roku. Po raz pierwszy zaproponowali go David Blei, Andrew Ng i Michael Jordan w 2003 roku. Zaproponowali LDA w swoim artykule zatytułowanym po prostuLatent Dirichlet allocation.

Charakterystyka LDA

Dowiedzmy się więcej o tej wspaniałej technice dzięki jej cechom -

Probabilistic topic modeling technique

LDA to probabilistyczna technika modelowania tematycznego. Jak omówiliśmy powyżej, w modelowaniu tematycznym zakładamy, że w każdym zbiorze powiązanych ze sobą dokumentów (mogą to być artykuły naukowe, artykuły prasowe, posty na Facebooku, tweety, e-maile itp.), W każdym dokumencie znajdują się kombinacje tematów .

Głównym celem probabilistycznego modelowania tematycznego jest odkrycie ukrytej struktury tematycznej dla gromadzenia powiązanych ze sobą dokumentów. Struktura tematów obejmuje zazwyczaj trzy rzeczy:

  • Topics

  • Statystyczny rozkład tematów w dokumentach

  • Słowa w dokumencie zawierającym temat

Work in an unsupervised way

LDA działa bez nadzoru. Dzieje się tak, ponieważ LDA używa prawdopodobieństw warunkowych, aby odkryć ukrytą strukturę tematu. Zakłada, że ​​tematy są nierównomiernie rozłożone w zbiorze powiązanych ze sobą dokumentów.

Very easy to create it in Gensim

W Gensim bardzo łatwo jest stworzyć model LDA. musimy tylko określić korpus, mapowanie słownika i liczbę tematów, których chcielibyśmy użyć w naszym modelu.

Model=models.LdaModel(corpus, id2word=dictionary, num_topics=100)

May face computationally intractable problem

Obliczenie prawdopodobieństwa każdej możliwej struktury tematu jest wyzwaniem obliczeniowym, przed którym stoi LDA. Jest to trudne, ponieważ musi obliczyć prawdopodobieństwo każdego zaobserwowanego słowa w każdej możliwej strukturze tematu. Jeśli mamy dużą liczbę tematów i słów, LDA może napotkać trudny obliczeniowo problem.

Ukryte indeksowanie semantyczne (LSI)

Algorytmy modelowania tematu, które zostały po raz pierwszy zaimplementowane w Gensim z Latent Dirichlet Allocation (LDA) jest Latent Semantic Indexing (LSI). Nazywa się to równieżLatent Semantic Analysis (LSA).

Został opatentowany w 1988 roku przez Scotta Deerwestera, Susan Dumais, George'a Furnasa, Richarda Harshmana, Thomasa Landaura, Karen Lochbaum i Lynn Streeter. W tej sekcji mamy zamiar skonfigurować nasz model LSI. Można to zrobić w ten sam sposób, jak konfigurując model LDA. musimy zaimportować model LSI zgensim.models.

Rola LSI

W rzeczywistości LSI jest techniką NLP, zwłaszcza w semantyce dystrybucyjnej. Analizuje związek między zbiorem dokumentów a terminami, które te dokumenty zawierają. Jeśli mówimy o jego działaniu, konstruuje on macierz, która zawiera liczbę słów w dokumencie z dużego fragmentu tekstu.

Po skonstruowaniu, w celu zmniejszenia liczby wierszy, model LSI wykorzystuje technikę matematyczną zwaną dekompozycją wartości osobliwej (SVD). Wraz ze zmniejszeniem liczby wierszy zachowuje również strukturę podobieństwa między kolumnami. W macierzy wiersze reprezentują unikalne słowa, a kolumny reprezentują każdy dokument. Działa w oparciu o hipotezę dystrybucyjną, tzn. Zakłada, że ​​słowa bliskie znaczenia pojawią się w tym samym rodzaju tekstu.

Model=models.LsiModel(corpus, id2word=dictionary, num_topics=100)

Hierarchiczny proces Dirichleta (HDP)

Modele tematyczne, takie jak LDA i LSI, pomagają w podsumowywaniu i organizowaniu dużych archiwów tekstów, których nie można przeanalizować ręcznie. Oprócz LDA i LSI, innym potężnym modelem tematycznym w Gensim jest HDP (Hierarchical Dirichlet Process). Jest to w zasadzie model członkostwa mieszanego do nienadzorowanej analizy zgrupowanych danych. W przeciwieństwie do LDA (jej skończony odpowiednik), HDP wnioskuje liczbę tematów na podstawie danych.

Model=models.HdpModel(corpus, id2word=dictionary