## 4 Results
### Pipeline Optimization  
Table 3 summarizes the outcome of the stop word engineering process to identify the best NLP pipeline for model optimization. The process identified 179 English stop words and 372 domain-specific stop words, resulting in 3058 unique tokens in the cleaned corpus, which was approximately 35% of the unique tokens in the original corpus. Vectorization with lower and upper outlier filtering for too frequent and too rare words further reduced the number of tokens (features) to 612, which was only about 7% of the unique tokens in the original corpus. This result highlights the efficiency of the text cleaning process to produce a minimal set of features for ML. Table 4 summarizes the performance of each NLP pipeline in terms of their alignment index components and the H-index. There were four combinations of tokenizers (T) and normalizers based on the best algorithms identified in Table 2. The NLP pipeline included a mix of the CountVectorizer measuring term frequency (TF) and the TfidfVectorizer measuring TF-IDF (TI), each with options for no filtering (0F) and dual filtering (2F) of extreme importance values. The NLP pipeline included combinations of the LDA and NMF topic modelers. Hence, there were 4 (tokenizer/normalizer) \(\times\) 2 (vectorizers) \(\times\) 2 (filters) \(\times\) 2 (topic modelers) = 32 combinations of NLP algorithms in the NLP pipeline. The results show that NLP pipeline 31 yielded the best H-index. \begin{table}
\begin{tabular}{c c c c c c c c c c} \hline \hline
**Pipe** & **Tokenize \& Normalize** & **TF** & **TI** & **0F** & **2F** & **LDA** & **NMF** & **Purity** & **Dispersion** & **Mean** & **H-Index** \\ \hline
1 & Spacy T \& Spacy L & x & & x & & 0.386 & 0.091 & 0.238 & 0.147 \\
2 & Word T \& Word L & x & & x & & 0.391 & 0.182 & 0.286 & 0.248 \\
3 & Word T \& Snowball S & x & & x & & 0.443 & 0.091 & 0.267 & 0.151 \\
4 & Word T \& Porter S & x & & x & & 0.462 & 0.091 & 0.276 & 0.152 \\
5 & Spacy T \& Spacy L & x & & x & x & 0.347 & 0.545 & 0.446 & 0.424 \\
6 & Word T \& Word L & x & & x & x & 0.323 & 0.636 & 0.480 & 0.429 \\
7 & Word T \& Snowball S & x & & x & x & 0.349 & 0.727 & 0.636 & 0.472 \\
8 & Word T \& Porter S & x & & x & & 0.365 & 0.727 & 0.546 & 0.486 \\
9 & Spacy T \& Spacy L & & x & & x & 0.392 & 0.091 & 0.241 & 0.148 \\
10 & [PERSON] \& Word L & x & x & & x & 0.428 & 0.182 & 0.305 & 0.255 \\
11 & [PERSON] \& Snowball S & x & x & & x & 0.442 & 0.091 & 0.267 & 0.151 \\
12 & [PERSON] \& Porter S & x & & x & & 0.452 & 0.091 & 0.271 & 0.151 \\
13 & Spacy T \& Spacy L & & x & x & & 1.000 & 0.091 & 0.545 & 0.167 \\
14 & [PERSON] \& Word L & x & & x & & 0.641 & 0.182 & 0.412 & 0.283 \\
15 & [PERSON] \& Snowball S & x & & x & x & 0.904 & 0.091 & 0.498 & 0.165 \\
16 & [PERSON] \& Porter S & x & & x & & 0.953 & 0.091 & 0.522 & 0.166 \\
17 & Spacy T \& Spacy L & x & & & x & 0.372 & 0.182 & 0.277 & 0.244 \\
18 & Word T \& Word L & x & & & & x & 0.378 & 0.182 & 0.280 & 0.245 \\
19 & Word T \& Snowball S & x & & & x & 0.403 & 0.182 & 0.292 & 0.250 \\
20 & Word T \& Porter S & x & & & x & 0.411 & 0.182 & 0.297 & 0.252 \\
21 & Spacy T \& Spacy L & x & & x & & x & 0.728 & 0.182 & 0.455 & 0.291 \\
22 & Word T \& Word L & x & & x & & x & 0.585 & 0.182 & 0.383 & 0.277 \\
23 & Word T \& Snowball S & x & & x & & x & 0.537 & 0.364 & 0.450 & 0.434 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: NLP pipelines for \(11\) topics and alignment indices. \begin{table}
\begin{tabular}{c c} \hline \hline
**Text Cleaning** & **Tokens** \\ \hline Unique tokens in the original corpus & 8872 \\ Number of English stop words & 179 \\ Number of engineered stop words & 372 \\ Unique tokens in cleaned corpus & 3058 \\ Number of filtered tokens in vectorized dictionary & 612 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Outcome of stop word engineering. Figure 4 is a visualization of the data in Table 4 to show trends. The figure shows the NLP pipelines in eight groups. The following are some observations and insights:  
1.