\section{Cieľ} Hlavným cieľom je zistiť, aké tematické oblasti sa prirodzene vyskytujú v kolekcii textov bez toho, aby boli vopred určené triedy alebo kategórie. Ide teda o úlohu učenia bez učiteľa. Na základe štatistického rozdelenia výrazov a podobností medzi dokumentmi zoskupíme články do niekoľkých zhlukov, pričom každý z nich by mal zodpovedať určitej téme. \section{Matematická reprezentácia textu} Na to, aby bolo možné texty matematicky spracovať, je potrebné ich previesť do vektorovej podoby. Využitá bola reprezentácia TF-IDF (\textit{Term Frequency–Inverse Document Frequency}), ktorá priraďuje vyššiu váhu slovám, ktoré sú pre daný dokument typické, ale nie príliš časté. Frekvencia slov (TF) sa počíta pomocou logaritmickej mierky: \begin{equation} \text{TF}(w,d) = \log(1 + f(w,d)) \label{eq:tf} \end{equation} kde $f(w,d)$ označuje počet výskytov slova $w$ v dokumente $d$. Inverzná frekvencia dokumentov (IDF) vyjadruje, ako informačne je slovo prínosné vzhľadom na svoj výskyt v súbore dokumentov $D$: \begin{equation} \text{IDF}(w,D) = \log\left(\frac{N}{f(w,D) + 1}\right) \label{eq:idf} \end{equation} kde $N$ predstavuje celkový počet dokumentov. Finálna hodnota TF-IDF je daná súčinom týchto dvoch členov. \section{Optimalizácia a redukcia šumu} Vektory TF-IDF obsahujú aj značný šum a redundantné informácie, čo môže negatívne ovplyvniť kvalitu zhlukovania. Preto bola použitá metóda hlavných komponentov (PCA), aby sa znížili rozmery dát a zároveň zachovali čo najviac variabilitu. PCA premieta pôvodné dáta do priestoru hlavných komponentov, ktoré sú lineárne nezávislé a postupne zachytávajú najväčší rozptyl v dátach. Projekciou na prvých niekoľko komponentov sa odstránia menej informatívne rozmery a tým sa model zjednoduší. \section{Zhlukovanie} Na samotné zhlukovanie bol použitý algoritmus K-means. Ide o iteratívny algoritmus, ktorý rozdeľuje priestor príznakov do $k$ skupín a minimalizuje nasledujúcu funkciu nezhody: \begin{equation} L(\Theta) = \frac{1}{n} \sum_{i=1}^n \min_{m=1,\dots,k} \|x_i - \theta_m\|_2^2 \end{equation} kde $\theta_m$ označuje vektor súradníc $m$-tého centra. Aby algoritmus neskončil v lokálnom minime, bola zvolená viacnásobná inicializácia a výsledok s najnižšou vnútrozhlukovou sumou štvorcov WSS. \section{Stanovenie granularity tém} Počet výsledných zhlukov $k$ nebol určený dopredu, ale bol odhadovaný pomocou metódy lakťa. Sleduje sa pritom pokles hodnoty WSS v závislosti od počtu $k$: \begin{equation} \text{WSS} = \sum_{i=1}^n l_\Theta^k(x_i) \end{equation} Pri zvyšovaní $k$ hodnota WSS spravidla klesá. Optimálna hodnota $k$ sa zvolí v mieste, kde sa krivka začne postupne vyrovnávať, teda v „lakti“. Tento bod predstavuje kompromis medzi presnosťou a zložitosťou modelu. \begin{figure}[h] \centering \includegraphics[width=0.8\textwidth]{wss_plot.eps} \caption{Závislosť sumy štvorcov (WSS) od počtu zhlukov $k$. Lakeť indikuje optimálnu granularitu tém.} \label{fig:elbow} \end{figure} \section{Interpretácia objavených tém} Po vykonaní zhlukovania boli centrá jednotlivých zhlukov interpretované ako reprezentanti tém. Použitá bola inverzná transformácia: \begin{equation} x_{ij} \approx \sum_{k=1}^m \phi_{jk} z_{ik} \end{equation} Na základe hodnôt v centre sa vybrali tie výrazy, ktoré mali najvyššie váhy (koeficienty $\phi_{jk}$). Tieto slová vystihujú obsah príslušného zhluku a umožňujú kvalitatívne posúdiť, aké témy boli v kolekcii textov objavené. \section{Záver} Redukcia rozmerov pomocou PCA zlepšila stabilitu a čitateľnosť výsledkov. Zhlukovanie metódou K-means v kombinácii s výpočtom WSS poskytlo praktický nástroj na určenie počtu tém. Pre finálny model s $k=8$ boli identifikované nasledujúce tematické oblasti (zoradené podľa dôležitosti slov v centre): \begin{itemize} \item Gastronómia: food, city, restaurants, new, york, restaurant, wine. \item Biznis a správy: company, business, said, week, years, year. \item Šéfkuchári a menu: restaurant, mr, chef, opens, news, bar, menu. \item Literatúra a život: life, world, new, book, home, family, father. \item Spoločnosť a ľudia: black, white, people, says, men, women, century. \item Film a TV: movie, tv, times, film, series, story, based. \item Dizajn a architektúra: house, designer, design, early, years, century. \item Umenie a práca: work, artist, art, day, young, life. \end{itemize}