From aeaee40c59c52beb624b3592214743d73e57ad64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Sun, 19 Oct 2025 20:04:39 +0200 Subject: [PATCH 01/16] Added optimization methods for determining number of components --- turftopic/optimization.py | 112 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 turftopic/optimization.py diff --git a/turftopic/optimization.py b/turftopic/optimization.py new file mode 100644 index 0000000..1ce1798 --- /dev/null +++ b/turftopic/optimization.py @@ -0,0 +1,112 @@ +from functools import cache +from typing import Callable + +import numpy as np +from scipy import optimize +from scipy.sparse import issparse + + +def decomposition_gaussian_bic( + n_components: int, decomp_class, X, random_state: int = 42 +) -> float: + """Computes Bayesian information criterion for + a decomposition model with assumed Gaussian noise. + + Parameters + ---------- + n_components: int + Number of components in the model. + decomp_class + Class of the decomposition model, e.g. `decomp_class=FastICA`. + X: array + Training data to decompose. + random_state: int, default 42 + Seed to pass to the decomposition algorithm. + """ + decomp = decomp_class(n_components=n_components, random_state=42) + doc_topic = decomp.fit_transform(X) + if not hasattr(decomp, "reconstruction_err_"): + X_reconstruction = decomp.inverse_transform(doc_topic) + # Computing residual sum of squares + if issparse(X): + X = np.asarray(X.todense()) + rss = np.sum(np.square(X - X_reconstruction)) + else: + rss = np.square(decomp.reconstruction_err_) + n_params = decomp.components_.size + np.prod(doc_topic.shape) + n_datapoints = np.prod(X.shape) + # Computing Bayesian information criterion assuming IID + bic = n_params * np.log(n_datapoints) + n_datapoints * np.log( + rss / n_datapoints + ) + return bic + + +def optimize_n_components( + f_ic: Callable[int, float], max_n: int = 250, verbose=False +) -> int: + """Optimizes the nuber of components using the Brent minimum finding + algorithm given an information criterion. + The bracket is found by exponentially incrementing n_components. + + Parameters + ---------- + f_ic: Callable[int, float] + Information criterion given N components. + max_n: int + Maximum value of N, in case the algorithm doesn't converge. + """ + + # Caching and adding debugging statements + @cache + def _f_ic(n_components) -> float: + # Making sure n_components is an integer + # The optimization algorithm definitely give it a float + n_components = int(n_components) + val = f_ic(n_components) + if verbose: + print( + f"Running information criterion with {n_components}: {val:.2f}" + ) + return val + + # Finding bracket + if verbose: + print("Finding bracket...") + low = 1 + n_comp = 2 + while not _f_ic(n_comp) < _f_ic(1): + n_comp += 1 + if n_comp >= 10: + if verbose: + print( + "Couldn't find lower value than n=1 up to n=10, stopping." + ) + return 1 + min_n = n_comp + current = _f_ic(min_n) + inc = 5 + while not current > _f_ic(min_n): + n_comp += inc + if n_comp >= max_n: + if verbose: + print(f"Bracket didn't converge, returning max N: {max_n}") + return max_n + current = _f_ic(n_comp) + if current < _f_ic(min_n): + low = n_comp - inc + min_n = n_comp + inc *= 2 + bracket = low, min_n, n_comp + if verbose: + print(f"Running optimization with bracket: {bracket}") + # Optimizing + res = optimize.minimize_scalar( + _f_ic, + method="brent", + bracket=(low, min_n, n_comp), + options=dict(xtol=0.2), + ) + if verbose: + print(f"Converged after {res.nit} iterations.") + return int(res.x) From f696ff4c23f80fc6f05873640c22daeea427f90a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Sun, 19 Oct 2025 20:05:05 +0200 Subject: [PATCH 02/16] Added 'auto' n_components to KeyNMF --- turftopic/models/_keynmf.py | 31 +++++++++++++++++++++++++++++-- turftopic/models/keynmf.py | 2 +- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/turftopic/models/_keynmf.py b/turftopic/models/_keynmf.py index 3a27628..639f030 100644 --- a/turftopic/models/_keynmf.py +++ b/turftopic/models/_keynmf.py @@ -2,7 +2,8 @@ import warnings from collections import defaultdict from datetime import datetime -from typing import Iterable, Literal, Optional +from functools import partial +from typing import Iterable, Literal, Optional, Union import igraph as ig import numpy as np @@ -21,6 +22,10 @@ from sklearn.utils.validation import check_non_negative from turftopic.base import Encoder +from turftopic.optimization import ( + decomposition_gaussian_bic, + optimize_n_components, +) NOT_MATCHING_ERROR = ( "Document embedding dimensionality ({n_dims}) doesn't match term embedding dimensionality ({n_word_dims}). " @@ -242,7 +247,7 @@ def batch_extract_keywords( class KeywordNMF: def __init__( self, - n_components: int, + n_components: Union[int, Literal["auto"]], seed: Optional[int] = None, top_n: Optional[int] = None, ): @@ -318,6 +323,15 @@ def vectorize( def fit_transform(self, keywords: list[dict[str, float]]) -> np.ndarray: X = self.vectorize(keywords, fitting=True) + if self.n_components == "auto": + # Finding N components with BIC + bic_fn = partial( + decomposition_gaussian_bic, + decomp_class=NMF, + X=X, + ) + n_components = optimize_n_components(bic_fn, verbose=True) + self.n_components = n_components check_non_negative(X, "NMF (input X)") W, H = _initialize_nmf(X, self.n_components, random_state=self.seed) W, H, self.n_iter = NMF( @@ -339,6 +353,10 @@ def transform(self, keywords: list[dict[str, float]]): return W.astype(X.dtype) def partial_fit(self, keyword_batch: list[dict[str, float]]): + if self.n_components == "auto": + raise ValueError( + "Cannot infer number of components with BIC when online fitting the model." + ) X = self.vectorize(keyword_batch, fitting=True) try: check_non_negative(X, "NMF (input X)") @@ -365,6 +383,15 @@ def fit_transform_dynamic( n_bins = len(time_bin_edges) - 1 document_term_matrix = self.vectorize(keywords, fitting=True) check_non_negative(document_term_matrix, "NMF (input X)") + if self.n_components == "auto": + # Finding N components with BIC + bic_fn = partial( + decomposition_gaussian_bic, + decomp_class=NMF, + X=X, + ) + n_components = optimize_n_components(bic_fn, verbose=True) + self.n_components = n_components document_topic_matrix, H = _initialize_nmf( document_term_matrix, self.n_components, diff --git a/turftopic/models/keynmf.py b/turftopic/models/keynmf.py index 3d26b9b..18751da 100644 --- a/turftopic/models/keynmf.py +++ b/turftopic/models/keynmf.py @@ -71,7 +71,7 @@ class KeyNMF(ContextualModel, DynamicTopicModel, MultimodalModel): def __init__( self, - n_components: int, + n_components: Union[int, Literal["auto"]], encoder: Union[ Encoder, str, MultimodalEncoder ] = "sentence-transformers/all-MiniLM-L6-v2", From 234101fda9582ff738df40115a515b57d94a586c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 20 Oct 2025 20:27:54 +0200 Subject: [PATCH 03/16] Added chunk embedding to encoder utils --- turftopic/encoders/utils.py | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/turftopic/encoders/utils.py b/turftopic/encoders/utils.py index 4a527f4..0f5c16c 100644 --- a/turftopic/encoders/utils.py +++ b/turftopic/encoders/utils.py @@ -1,6 +1,10 @@ import itertools from typing import Iterable, List +import numpy as np +import torch +from tqdm import trange + def batched(iterable, n: int) -> Iterable[List[str]]: "Batch data into tuples of length n. The last batch may be shorter." @@ -10,3 +14,45 @@ def batched(iterable, n: int) -> Iterable[List[str]]: it = iter(iterable) while batch := list(itertools.islice(it, n)): yield batch + + +def encode_chunks( + encoder, + sentences, + batch_size=64, + window_size=50, + step_size=40, + return_chunks=False, + show_progress_bar=False, +): + chunks = [] + chunk_embeddings = [] + for start_index in trange( + 0, + len(sentences), + batch_size, + desc="Encoding batches...", + disable=not show_progress_bar, + ): + batch = sentences[start_index : start_index + batch_size] + features = encoder.tokenize(batch) + with torch.no_grad(): + output_features = encoder.forward(features) + n_tokens = output_features["attention_mask"].sum(axis=1) + for i_doc in range(len(batch)): + for chunk_start in range(0, n_tokens[i_doc], step_size): + chunk_end = min(chunk_start + window_size, n_tokens[i_doc]) + _emb = output_features["token_embeddings"][ + i_doc, chunk_start:chunk_end, : + ].mean(axis=0) + chunk_embeddings.append(_emb) + if return_chunks: + chunks.append( + encoder.tokenizer.decode( + features["input_ids"][i_doc, chunk_start:chunk_end] + ) + ) + if not return_chunks: + chunks = None + chunk_embeddings = np.stack(chunk_embeddings) + return chunk_embeddings, chunks From 64a6bbb6142fed4cbb8527525c5e0644d40205d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Tue, 21 Oct 2025 09:20:57 +0200 Subject: [PATCH 04/16] Added min_n parameter and better logging to optimize_n_components --- turftopic/optimization.py | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/turftopic/optimization.py b/turftopic/optimization.py index 1ce1798..76763a0 100644 --- a/turftopic/optimization.py +++ b/turftopic/optimization.py @@ -43,7 +43,7 @@ def decomposition_gaussian_bic( def optimize_n_components( - f_ic: Callable[int, float], max_n: int = 250, verbose=False + f_ic: Callable[int, float], min_n: int = 2, max_n: int = 250, verbose=False ) -> int: """Optimizes the nuber of components using the Brent minimum finding algorithm given an information criterion. @@ -53,9 +53,13 @@ def optimize_n_components( ---------- f_ic: Callable[int, float] Information criterion given N components. + min_n: int + Minimum value of N. max_n: int Maximum value of N, in case the algorithm doesn't converge. """ + if verbose: + print("Optimizing N based on an information criterion...") # Caching and adding debugging statements @cache @@ -65,48 +69,46 @@ def _f_ic(n_components) -> float: n_components = int(n_components) val = f_ic(n_components) if verbose: - print( - f"Running information criterion with {n_components}: {val:.2f}" - ) + print(f" - IC(N={n_components})={val:.2f}") return val # Finding bracket if verbose: - print("Finding bracket...") - low = 1 + print(" - Finding bracket...") + low = min_n n_comp = 2 - while not _f_ic(n_comp) < _f_ic(1): + while not _f_ic(n_comp) < _f_ic(min_n): n_comp += 1 if n_comp >= 10: if verbose: print( - "Couldn't find lower value than n=1 up to n=10, stopping." + " - Couldn't find lower value than n=1 up to n=10, stopping." ) return 1 - min_n = n_comp - current = _f_ic(min_n) + middle = n_comp + current = _f_ic(middle) inc = 5 - while not current > _f_ic(min_n): + while not current > _f_ic(middle): n_comp += inc if n_comp >= max_n: if verbose: - print(f"Bracket didn't converge, returning max N: {max_n}") + print(f" - Bracket didn't converge, returning max N: {max_n}") return max_n current = _f_ic(n_comp) - if current < _f_ic(min_n): + if current < _f_ic(middle): low = n_comp - inc - min_n = n_comp + middle = n_comp inc *= 2 - bracket = low, min_n, n_comp + bracket = low, middle, n_comp if verbose: - print(f"Running optimization with bracket: {bracket}") + print(f" - Running optimization with bracket: {bracket}") # Optimizing res = optimize.minimize_scalar( _f_ic, method="brent", - bracket=(low, min_n, n_comp), + bracket=(low, middle, n_comp), options=dict(xtol=0.2), ) if verbose: - print(f"Converged after {res.nit} iterations.") + print(f" - Converged after {res.nit} iterations.") return int(res.x) From 180674785669785faefc51d6e24835e60396cb63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Tue, 21 Oct 2025 09:21:26 +0200 Subject: [PATCH 05/16] Batch encoding now removes [clf] and [sep] tokens --- turftopic/encoders/utils.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/turftopic/encoders/utils.py b/turftopic/encoders/utils.py index 0f5c16c..ba3a749 100644 --- a/turftopic/encoders/utils.py +++ b/turftopic/encoders/utils.py @@ -51,6 +51,8 @@ def encode_chunks( encoder.tokenizer.decode( features["input_ids"][i_doc, chunk_start:chunk_end] ) + .replace("[CLS]", "") + .replace("[SEP]", "") ) if not return_chunks: chunks = None From 0f27e64e1922473eeed7cb11f995c0fcecae76a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Tue, 21 Oct 2025 09:22:04 +0200 Subject: [PATCH 06/16] Added auto to docs on KeyNMF --- turftopic/models/keynmf.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/turftopic/models/keynmf.py b/turftopic/models/keynmf.py index 18751da..c9618a7 100644 --- a/turftopic/models/keynmf.py +++ b/turftopic/models/keynmf.py @@ -43,8 +43,10 @@ class KeyNMF(ContextualModel, DynamicTopicModel, MultimodalModel): Parameters ---------- - n_components: int + n_components: int or "auto" Number of topics. + Auto selects the number of topics using + the Bayesian Information Criterion. encoder: str or SentenceTransformer Model to encode documents/terms, all-MiniLM-L6-v2 is the default. vectorizer: CountVectorizer, default None From 31ea913747d8d4f3dbbf7b9866fa0a87eae6076e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Tue, 21 Oct 2025 09:22:37 +0200 Subject: [PATCH 07/16] Set min_n to 1 on KeyNMF --- turftopic/models/_keynmf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/turftopic/models/_keynmf.py b/turftopic/models/_keynmf.py index 639f030..5e135e8 100644 --- a/turftopic/models/_keynmf.py +++ b/turftopic/models/_keynmf.py @@ -330,7 +330,7 @@ def fit_transform(self, keywords: list[dict[str, float]]) -> np.ndarray: decomp_class=NMF, X=X, ) - n_components = optimize_n_components(bic_fn, verbose=True) + n_components = optimize_n_components(bic_fn, min_n=1, verbose=True) self.n_components = n_components check_non_negative(X, "NMF (input X)") W, H = _initialize_nmf(X, self.n_components, random_state=self.seed) From de21d1047fb85e0c68f471da4bc24564eaa1d53d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Tue, 21 Oct 2025 09:23:24 +0200 Subject: [PATCH 08/16] Added feature importance methods and n_component selection to GMM --- turftopic/models/gmm.py | 183 ++++++++++++++++++++++++++++++++-------- 1 file changed, 146 insertions(+), 37 deletions(-) diff --git a/turftopic/models/gmm.py b/turftopic/models/gmm.py index 9760ed4..4750d0a 100644 --- a/turftopic/models/gmm.py +++ b/turftopic/models/gmm.py @@ -1,4 +1,6 @@ +import warnings from datetime import datetime +from functools import partial from typing import Literal, Optional, Union import numpy as np @@ -12,15 +14,34 @@ from turftopic.base import ContextualModel, Encoder from turftopic.dynamic import DynamicTopicModel from turftopic.encoders.multimodal import MultimodalEncoder -from turftopic.feature_importance import soft_ctf_idf +from turftopic.feature_importance import ( + ctf_idf, + fighting_words, + npmi, + soft_ctf_idf, +) from turftopic.multimodal import ( Image, ImageRepr, MultimodalEmbeddings, MultimodalModel, ) +from turftopic.optimization import optimize_n_components from turftopic.vectorizers.default import default_vectorizer +FEATURE_IMPORTANCE_METHODS = { + "soft-c-tf-idf": soft_ctf_idf, + "c-tf-idf": ctf_idf, + "fighting-words": fighting_words, + "npmi": partial(npmi, smoothing=2), +} +LexicalWordImportance = Literal[ + "soft-c-tf-idf", + "c-tf-idf", + "npmi", + "fighting-words", +] + class GMM(ContextualModel, DynamicTopicModel, MultimodalModel): """Multivariate Gaussian Mixture Model over document embeddings. @@ -37,9 +58,11 @@ class GMM(ContextualModel, DynamicTopicModel, MultimodalModel): Parameters ---------- - n_components: int - Number of topics. If you're using priors on the weight, - feel free to overshoot with this value. + n_components: int or "auto" + Number of topics. + If "auto", the Bayesian Information criterion + will be used to estimate this quantity. + *Note that "auto" can only be used when no priors as specified*. encoder: str or SentenceTransformer Model to encode documents/terms, all-MiniLM-L6-v2 is the default. vectorizer: CountVectorizer, default None @@ -61,6 +84,10 @@ class GMM(ContextualModel, DynamicTopicModel, MultimodalModel): result in Gaussian components. For even larger datasets you can use IncrementalPCA to reduce memory load. + feature_importance: LexicalWordImportance, default 'soft-c-tf-idf' + Feature importance method to use. + *Note that only lexical methods can be used with GMM, + not embedding-based ones.* random_state: int, default None Random state to use so that results are exactly reproducible. @@ -72,12 +99,13 @@ class GMM(ContextualModel, DynamicTopicModel, MultimodalModel): def __init__( self, - n_components: int, + n_components: Union[int, Literal["auto"]], encoder: Union[ Encoder, str, MultimodalEncoder ] = "sentence-transformers/all-MiniLM-L6-v2", vectorizer: Optional[CountVectorizer] = None, dimensionality_reduction: Optional[TransformerMixin] = None, + feature_importance: LexicalWordImportance = "soft-c-tf-idf", weight_prior: Literal["dirichlet", "dirichlet_process", None] = None, gamma: Optional[float] = None, random_state: Optional[int] = None, @@ -96,7 +124,63 @@ def __init__( self.vectorizer = default_vectorizer() else: self.vectorizer = vectorizer + if feature_importance not in FEATURE_IMPORTANCE_METHODS: + valid = list(FEATURE_IMPORTANCE_METHODS.keys()) + raise ValueError( + f"{feature_importance} not in list of valid feature importance methods: {valid}" + ) + self.feature_importance = feature_importance self.dimensionality_reduction = dimensionality_reduction + if (self.n_components == "auto") and (self.weight_prior is not None): + raise ValueError( + "You cannot use N='auto' with a prior. Try setting weight_prior=None." + ) + + def estimate_components( + self, + feature_importance: Optional[LexicalWordImportance] = None, + doc_topic_matrix=None, + doc_term_matrix=None, + ) -> np.ndarray: + feature_importance = feature_importance or self.feature_importance + imp_fn = FEATURE_IMPORTANCE_METHODS[feature_importance] + doc_topic_matrix = ( + doc_topic_matrix + if doc_topic_matrix is not None + else self.doc_topic_matrix + ) + doc_term_matrix = ( + doc_term_matrix + if doc_term_matrix is not None + else self.doc_term_matrix + ) + self.components_ = imp_fn(doc_topic_matrix, doc_term_matrix) + return self.components_ + + def _create_bic(self, embeddings: np.ndarray): + def f_bic(n_components: int): + random_state = 42 + success = False + n_tries = 1 + while not success and (n_tries <= 5): + try: + # This can sometimes run into problems especially + # with covariance estimation + model = GaussianMixture( + n_components, random_state=self.random_state + ) + model.fit(embeddings) + success = True + except Exception: + random_state += 1 + n_tries += 1 + if n_tries > 5: + return 0 + return model.bic(embeddings) + + return f_bic + + def _init_model(self, n_components: int): if self.weight_prior is not None: mixture = BayesianGaussianMixture( n_components=n_components, @@ -105,17 +189,14 @@ def __init__( if self.weight_prior == "dirichlet" else "dirichlet_process" ), - weight_concentration_prior=gamma, + weight_concentration_prior=self.gamma, random_state=self.random_state, ) else: mixture = GaussianMixture( n_components, random_state=self.random_state ) - if dimensionality_reduction is not None: - self.gmm_ = make_pipeline(dimensionality_reduction, mixture) - else: - self.gmm_ = mixture + return mixture def fit_transform( self, raw_documents, y=None, embeddings: Optional[np.ndarray] = None @@ -126,22 +207,34 @@ def fit_transform( status.update("Encoding documents") embeddings = self.encoder_.encode(raw_documents) console.log("Documents encoded.") + self.embeddings = embeddings status.update("Extracting terms.") - document_term_matrix = self.vectorizer.fit_transform(raw_documents) + self.doc_term_matrix = self.vectorizer.fit_transform(raw_documents) console.log("Term extraction done.") + X = embeddings + if self.dimensionality_reduction is not None: + status.update("Reducing embedding dimensionality.") + X = self.dimensionality_reduction.fit_transform(embeddings) + console.log("Dimensionality reduction complete.") + self.reduced_embeddings = X + n_components = self.n_components + if self.n_components == "auto": + status.update("Finding optimal value of N") + f_bic = self._create_bic(X) + n_components = optimize_n_components(f_bic, verbose=True) + console.log(f"Found optimal N={n_components}.") status.update("Fitting mixture model.") - self.gmm_.fit(embeddings) + self.gmm_ = self._init_model(n_components) + self.gmm_.fit(X) console.log("Mixture model fitted.") status.update("Estimating term importances.") - document_topic_matrix = self.gmm_.predict_proba(embeddings) - self.components_ = soft_ctf_idf( - document_topic_matrix, document_term_matrix - ) + self.doc_topic_matrix = self.gmm_.predict_proba(X) + self.components_ = self.estimate_components() console.log("Model fitting done.") self.top_documents = self.get_top_documents( - raw_documents, document_topic_matrix=document_topic_matrix + raw_documents, document_topic_matrix=self.doc_topic_matrix ) - return document_topic_matrix + return self.doc_topic_matrix def fit_transform_multimodal( self, @@ -161,31 +254,45 @@ def fit_transform_multimodal( ) console.log("Documents encoded.") status.update("Extracting terms.") - document_term_matrix = self.vectorizer.fit_transform(raw_documents) + self.doc_term_matrix = self.vectorizer.fit_transform(raw_documents) console.log("Term extraction done.") + X = self.multimodal_embeddings["document_embeddings"] + if self.dimensionality_reduction is not None: + status.update("Reducing embedding dimensionality.") + X = self.dimensionality_reduction.fit_transform(embeddings) + console.log("Dimensionality reduction complete.") + n_components = self.n_components + if self.n_components == "auto": + status.update("Finding optimal value of N") + f_bic = self._create_bic(X) + n_components = optimize_n_components(f_bic, verbose=True) + console.log(f"Found optimal N={n_components}.") status.update("Fitting mixture model.") - self.gmm_.fit(self.multimodal_embeddings["document_embeddings"]) + self.gmm_ = self._init_model(n_components) + self.gmm_.fit(X) console.log("Mixture model fitted.") status.update("Estimating term importances.") - document_topic_matrix = self.gmm_.predict_proba( - self.multimodal_embeddings["document_embeddings"] - ) - self.components_ = soft_ctf_idf( - document_topic_matrix, document_term_matrix - ) + self.doc_topic_matrix = self.gmm_.predict_proba(X) + self.components_ = self.estimate_components() console.log("Model fitting done.") - self.image_topic_matrix = self.transform( - raw_documents, - embeddings=self.multimodal_embeddings["document_embeddings"], - ) + try: + self.image_topic_matrix = self.transform( + raw_documents, + embeddings=self.multimodal_embeddings["image_embeddings"], + ) + except Exception as e: + warnings.warn( + f"Couldn't produce image topic matrix due to exception: {e}, using doc-topic matrix." + ) + self.image_topic_matrix = self.doc_topic_matrix self.top_images: list[list[Image.Image]] = self.collect_top_images( images, self.image_topic_matrix ) self.top_documents = self.get_top_documents( - raw_documents, document_topic_matrix=document_topic_matrix + raw_documents, document_topic_matrix=self.doc_topic_matrix ) console.log("Transformation done.") - return document_topic_matrix + return self.doc_topic_matrix @property def weights_(self) -> np.ndarray: @@ -214,6 +321,8 @@ def transform( """ if embeddings is None: embeddings = self.encoder_.encode(raw_documents) + if self.dimensionality_reduction is not None: + embeddings = self.dimensionality_reduction.transform(embeddings) return self.gmm_.predict_proba(embeddings) def fit_transform_dynamic( @@ -234,11 +343,11 @@ def fit_transform_dynamic( doc_topic_matrix = self.fit_transform( raw_documents, embeddings=embeddings ) - document_term_matrix = self.vectorizer.transform(raw_documents) + self.doc_term_matrix = self.vectorizer.transform(raw_documents) n_comp, n_vocab = self.components_.shape n_bins = len(self.time_bin_edges) - 1 self.temporal_components_ = np.zeros( - (n_bins, n_comp, n_vocab), dtype=document_term_matrix.dtype + (n_bins, n_comp, n_vocab), dtype=self.doc_term_matrix.dtype ) self.temporal_importance_ = np.zeros((n_bins, n_comp)) for i_timebin in np.unique(time_labels): @@ -247,9 +356,9 @@ def fit_transform_dynamic( ) # Normalizing topic_importances = topic_importances / topic_importances.sum() - components = soft_ctf_idf( - doc_topic_matrix[time_labels == i_timebin], - document_term_matrix[time_labels == i_timebin], # type: ignore + components = self.estimate_components( + doc_topic_matrix=doc_topic_matrix[time_labels == i_timebin], + doc_term_matrix=self.doc_term_matrix[time_labels == i_timebin], # type: ignore ) self.temporal_components_[i_timebin] = components self.temporal_importance_[i_timebin] = topic_importances From aaa036d3bfa4ffae40f5736534fd05d1e15d44f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sat, 25 Oct 2025 18:47:38 +0200 Subject: [PATCH 09/16] Added density plotting and datamapplot to GMM --- turftopic/models/gmm.py | 146 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 145 insertions(+), 1 deletion(-) diff --git a/turftopic/models/gmm.py b/turftopic/models/gmm.py index 4750d0a..41d8b90 100644 --- a/turftopic/models/gmm.py +++ b/turftopic/models/gmm.py @@ -9,8 +9,9 @@ from sklearn.base import TransformerMixin from sklearn.feature_extraction.text import CountVectorizer from sklearn.mixture import BayesianGaussianMixture, GaussianMixture -from sklearn.pipeline import Pipeline, make_pipeline +from sklearn.pipeline import Pipeline +from turftopic._datamapplot import build_datamapplot from turftopic.base import ContextualModel, Encoder from turftopic.dynamic import DynamicTopicModel from turftopic.encoders.multimodal import MultimodalEncoder @@ -363,3 +364,146 @@ def fit_transform_dynamic( self.temporal_components_[i_timebin] = components self.temporal_importance_[i_timebin] = topic_importances return doc_topic_matrix + + def plot_components_datamapplot( + self, + coordinates: Optional[np.ndarray] = None, + hover_text: Optional[list[str]] = None, + **kwargs, + ): + """Creates an interactive browser plot of the topics in your data using datamapplot. + + Parameters + ---------- + coordinates: np.ndarray, default None + Lower dimensional projection of the embeddings. + If None, will try to use the projections from the + dimensionality_reduction method of the model. + hover_text: list of str, optional + Text to show when hovering over a document. + + Returns + ------- + plot + Interactive datamap plot, you can call the `.show()` method to + display it in your default browser or save it as static HTML using `.write_html()`. + """ + if coordinates is None: + if not hasattr(self, "reduced_embeddings"): + raise ValueError( + "Coordinates not specified, but the model does not contain reduced embeddings." + ) + coordinates = self.reduced_embeddings[:, (0, 1)] + labels = np.argmax(self.doc_topic_matrix, axis=1) + plot = build_datamapplot( + coordinates=coordinates, + topic_names=self.topic_names, + labels=labels, + classes=np.arange(self.gmm_.n_components), + top_words=self.get_top_words(), + hover_text=hover_text, + topic_descriptions=getattr(self, "topic_descriptions", None), + **kwargs, + ) + return plot + + def plot_density( + self, hover_text: list[str] = None, show_points=False, light_mode=False + ): + try: + import plotly.graph_objects as go + except (ImportError, ModuleNotFoundError) as e: + raise ModuleNotFoundError( + "Please install plotly if you intend to use plots in Turftopic." + ) from e + + if not hasattr(self, "reduced_embeddings"): + raise ValueError( + "No reduced embeddings found, can't display in 2d space." + ) + if self.reduced_embeddings.shape[1] != 2: + warnings.warn( + "Embeddings are not in 2d space, only using first 2 dimensions" + ) + + coord_min, coord_max = np.min(self.reduced_embeddings), np.max( + self.reduced_embeddings + ) + coord_spread = coord_max - coord_min + coord_min = coord_min - coord_spread * 0.05 + coord_max = coord_max + coord_spread * 0.05 + coord = np.linspace(coord_min, coord_max, num=100) + z = [] + for yval in coord: + points = np.stack([coord, np.full(coord.shape, yval)]).T + prob = np.exp(self.gmm_.score_samples(points)) + z.append(prob) + z = np.stack(z) + color_grid = [0.0, 0.25, 0.5, 0.75, 1.0] + colorscale = [ + "#01014B", + "#000080", + "#5D5DEF", + "#B7B7FF", + "#ffffff", + ] + if light_mode: + colorscale = colorscale[::-1] + traces = [ + go.Contour( + z=z, + colorscale=list(zip(color_grid, colorscale)), + showscale=False, + x=coord, + y=coord, + hoverinfo="skip", + ), + ] + if show_points: + scatter = go.Scatter( + x=self.reduced_embeddings[:, 0], + y=self.reduced_embeddings[:, 1], + mode="markers", + showlegend=False, + text=hover_text, + marker=dict( + symbol="circle", + opacity=0.5, + color="white", + size=8, + line=dict(width=1), + ), + ) + traces.append(scatter) + fig = go.Figure(data=traces) + fig = fig.update_layout( + showlegend=False, margin=dict(r=0, l=0, t=0, b=0) + ) + fig = fig.update_xaxes(showticklabels=False) + fig = fig.update_yaxes(showticklabels=False) + for mean, name, keywords in zip( + self.gmm_.means_, self.topic_names, self.get_top_words() + ): + _keys = "" + for i, key in enumerate(keywords): + if (i % 5) == 0: + _keys += "
" + _keys += key + if i < (len(keywords) - 1): + _keys += "," + _keys += " " + text = f"{name} {_keys} " + fig.add_annotation( + text=text, + x=mean[0], + y=mean[1], + align="left", + showarrow=False, + xshift=0, + yshift=50, + font=dict(family="Roboto Mono", size=18, color="black"), + bgcolor="rgba(255,255,255,0.9)", + bordercolor="black", + borderwidth=2, + ) + return fig From afc74263273eae5f9737c1a09d3594bd449537ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sat, 25 Oct 2025 18:48:00 +0200 Subject: [PATCH 10/16] Removed unnecessary import --- turftopic/models/gmm.py | 89 ++++++++++++++++++++--------------------- 1 file changed, 44 insertions(+), 45 deletions(-) diff --git a/turftopic/models/gmm.py b/turftopic/models/gmm.py index 41d8b90..bfe0a60 100644 --- a/turftopic/models/gmm.py +++ b/turftopic/models/gmm.py @@ -46,56 +46,55 @@ class GMM(ContextualModel, DynamicTopicModel, MultimodalModel): """Multivariate Gaussian Mixture Model over document embeddings. - Models topics as mixture components. - - ```python - from turftopic import GMM + Models topics as mixture components. + ```python + from turftopic import GMM corpus: list[str] = ["some text", "more text", ...] - model = GMM(10, weight_prior="dirichlet_process").fit(corpus) - model.print_topics() - ``` + model = GMM(10, weight_prior="dirichlet_process").fit(corpus) + model.print_topics() + ``` - Parameters - ---------- - n_components: int or "auto" - Number of topics. - If "auto", the Bayesian Information criterion - will be used to estimate this quantity. - *Note that "auto" can only be used when no priors as specified*. - encoder: str or SentenceTransformer - Model to encode documents/terms, all-MiniLM-L6-v2 is the default. - vectorizer: CountVectorizer, default None - Vectorizer used for term extraction. - Can be used to prune or filter the vocabulary. - weight_prior: 'dirichlet', 'dirichlet_process' or None, default 'dirichlet' - Prior to impose on component weights, if None, - maximum likelihood is optimized with expectation maximization, - otherwise variational inference is used. - gamma: float, default None - Concentration parameter of the symmetric prior. - By default 1/n_components is used. - Ignored when weight_prior is None. - dimensionality_reduction: TransformerMixin, default None - Optional dimensionality reduction step before GMM is run. - This is recommended for very large datasets with high dimensionality, - as the number of parameters grows vast in the model otherwise. - We recommend using PCA, as it is a linear solution, and will likely - result in Gaussian components. - For even larger datasets you can use IncrementalPCA to reduce - memory load. - feature_importance: LexicalWordImportance, default 'soft-c-tf-idf' - Feature importance method to use. - *Note that only lexical methods can be used with GMM, - not embedding-based ones.* - random_state: int, default None - Random state to use so that results are exactly reproducible. + Parameters + ---------- + n_components: int or "auto" + Number of topics. + If "auto", the Bayesian Information criterion + will be used to estimate this quantity. + *Note that "auto" can only be used when no priors as specified*. + encoder: str or SentenceTransformer + Model to encode documents/terms, all-MiniLM-L6-v2 is the default. + vectorizer: CountVectorizer, default None + Vectorizer used for term extraction. + Can be used to prune or filter the vocabulary. + weight_prior: 'dirichlet', 'dirichlet_process' or None, default 'dirichlet' + Prior to impose on component weights, if None, + maximum likelihood is optimized with expectation maximization, + otherwise variational inference is used. + gamma: float, default None + Concentration parameter of the symmetric prior. + By default 1/n_components is used. + Ignored when weight_prior is None. + dimensionality_reduction: TransformerMixin, default None + Optional dimensionality reduction step before GMM is run. + This is recommended for very large datasets with high dimensionality, + as the number of parameters grows vast in the model otherwise. + We recommend using PCA, as it is a linear solution, and will likely + result in Gaussian components. + For even larger datasets you can use IncrementalPCA to reduce + memory load. + feature_importance: LexicalWordImportance, default 'soft-c-tf-idf' + Feature importance method to use. + *Note that only lexical methods can be used with GMM, + not embedding-based ones.* + random_state: int, default None + Random state to use so that results are exactly reproducible. - Attributes - ---------- - weights_: ndarray of shape (n_components) - Weights of the different mixture components. + Attributes + ---------- + weights_: ndarray of shape (n_components) + Weights of the different mixture components. """ def __init__( From 1046a61a7f834c2d83385813056c0d1b4034e26b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sat, 25 Oct 2025 18:49:14 +0200 Subject: [PATCH 11/16] Added Topeax --- turftopic/__init__.py | 2 + turftopic/models/topeax.py | 122 +++++++++++++++++++++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 turftopic/models/topeax.py diff --git a/turftopic/__init__.py b/turftopic/__init__.py index cc3ab74..99250de 100644 --- a/turftopic/__init__.py +++ b/turftopic/__init__.py @@ -7,6 +7,7 @@ from turftopic.models.fastopic import FASTopic from turftopic.models.gmm import GMM from turftopic.models.keynmf import KeyNMF +from turftopic.models.topeax import Topeax from turftopic.serialization import load_model try: @@ -20,6 +21,7 @@ "ClusteringTopicModel", "SemanticSignalSeparation", "GMM", + "Topeax", "KeyNMF", "AutoEncodingTopicModel", "ContextualModel", diff --git a/turftopic/models/topeax.py b/turftopic/models/topeax.py new file mode 100644 index 0000000..3f419ff --- /dev/null +++ b/turftopic/models/topeax.py @@ -0,0 +1,122 @@ +from functools import partial +from typing import Literal, Optional, Union + +import numpy as np +from scipy.ndimage.filters import maximum_filter +from scipy.ndimage.morphology import binary_erosion, generate_binary_structure +from scipy.stats import gaussian_kde +from sklearn.base import BaseEstimator, ClusterMixin, TransformerMixin +from sklearn.feature_extraction.text import CountVectorizer +from sklearn.manifold import TSNE +from sklearn.mixture import GaussianMixture + +from turftopic.base import Encoder +from turftopic.encoders.multimodal import MultimodalEncoder +from turftopic.feature_importance import ( + ctf_idf, + fighting_words, + npmi, + soft_ctf_idf, +) +from turftopic.models.gmm import GMM + +FEATURE_IMPORTANCE_METHODS = { + "soft-c-tf-idf": soft_ctf_idf, + "c-tf-idf": ctf_idf, + "fighting-words": fighting_words, + "npmi": partial(npmi, smoothing=2), +} +LexicalWordImportance = Literal[ + "soft-c-tf-idf", + "c-tf-idf", + "npmi", + "fighting-words", +] + + +def detect_peaks(image): + # define an 8-connected neighborhood + neighborhood = generate_binary_structure(2, 25) + local_max = maximum_filter(image, footprint=neighborhood) == image + # local_max is a mask that contains the peaks we are + # looking for, but also the background. + # In order to isolate the peaks we must remove the background from the mask. + # we create the mask of the background + background = image == 0 + # a little technicality: we must erode the background in order to + # successfully subtract it form local_max, otherwise a line will + # appear along the background border (artifact of the local maximum filter) + eroded_background = binary_erosion( + background, structure=neighborhood, border_value=1 + ) + # we obtain the final mask, containing only peaks, + # by removing the background from the local_max mask (xor operation) + detected_peaks = local_max ^ eroded_background + return detected_peaks + + +class Peax(ClusterMixin, BaseEstimator): + def __init__(self, random_state: Optional[int] = None): + self.random_state = random_state + + def fit(self, X, y=None): + self.X_range = np.min(X), np.max(X) + self.density = gaussian_kde(X.T, "scott") + coord = np.linspace(*self.X_range, num=100) + z = [] + for yval in coord: + points = np.stack([coord, np.full(coord.shape, yval)]).T + prob = np.exp(self.density.logpdf(points.T)) + z.append(prob) + z = np.stack(z) + peaks = detect_peaks(z.T) + peak_ind = np.nonzero(peaks) + peak_pos = np.stack([coord[peak_ind[0]], coord[peak_ind[1]]]).T + weights = self.density.pdf(peak_pos.T) + weights = weights / weights.sum() + self.gmm_ = GaussianMixture( + peak_pos.shape[0], + means_init=peak_pos, + weights_init=weights, + random_state=self.random_state, + ) + self.labels_ = self.gmm_.fit_predict(X) + self.classes_ = np.sort(np.unique(self.labels_)) + self.means_ = self.gmm_.means_ + return self.labels_ + + def predict_proba(self, X): + return self.gmm_.predict_proba(X) + + def score_samples(self, X): + return self.density.logpdf(X.T) + + def score(self, X): + return np.mean(self.score_samples(X)) + + +class Topeax(GMM): + def __init__( + self, + encoder: Union[ + Encoder, str, MultimodalEncoder + ] = "sentence-transformers/all-MiniLM-L6-v2", + vectorizer: Optional[CountVectorizer] = None, + dimensionality_reduction: Optional[TransformerMixin] = None, + feature_importance: LexicalWordImportance = "soft-c-tf-idf", + random_state: Optional[int] = None, + ): + if dimensionality_reduction is None: + dimensionality_reduction = TSNE(2, metric="cosine", perplexity=100) + super().__init__( + n_components=0, + encoder=encoder, + vectorizer=vectorizer, + dimensionality_reduction=dimensionality_reduction, + feature_importance=feature_importance, + random_state=random_state, + ) + + def _init_model(self, n_components: int): + mixture = Peax() + return mixture From e858309d8fd36abe46a032a8a0f08b230406ff0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Mon, 27 Oct 2025 14:56:38 +0100 Subject: [PATCH 12/16] Added fixed means and better term importance estimation --- turftopic/models/topeax.py | 124 ++++++++++++++++++++++++++++--------- 1 file changed, 95 insertions(+), 29 deletions(-) diff --git a/turftopic/models/topeax.py b/turftopic/models/topeax.py index 3f419ff..bebfbda 100644 --- a/turftopic/models/topeax.py +++ b/turftopic/models/topeax.py @@ -1,37 +1,27 @@ -from functools import partial -from typing import Literal, Optional, Union +from typing import Optional, Union import numpy as np from scipy.ndimage.filters import maximum_filter from scipy.ndimage.morphology import binary_erosion, generate_binary_structure from scipy.stats import gaussian_kde -from sklearn.base import BaseEstimator, ClusterMixin, TransformerMixin +from sklearn.base import BaseEstimator, ClusterMixin from sklearn.feature_extraction.text import CountVectorizer from sklearn.manifold import TSNE +from sklearn.metrics.pairwise import cosine_similarity from sklearn.mixture import GaussianMixture +from sklearn.mixture._gaussian_mixture import ( + _compute_precision_cholesky, + _estimate_gaussian_parameters, +) from turftopic.base import Encoder from turftopic.encoders.multimodal import MultimodalEncoder -from turftopic.feature_importance import ( - ctf_idf, - fighting_words, - npmi, - soft_ctf_idf, -) -from turftopic.models.gmm import GMM - -FEATURE_IMPORTANCE_METHODS = { - "soft-c-tf-idf": soft_ctf_idf, - "c-tf-idf": ctf_idf, - "fighting-words": fighting_words, - "npmi": partial(npmi, smoothing=2), -} -LexicalWordImportance = Literal[ - "soft-c-tf-idf", - "c-tf-idf", - "npmi", - "fighting-words", -] +from turftopic.models.gmm import GMM, LexicalWordImportance + + +def minmax(a): + min_a = np.min(a) + return (a - min_a) / (np.max(a) - min_a) def detect_peaks(image): @@ -55,6 +45,18 @@ def detect_peaks(image): return detected_peaks +class FixedMeanGaussianMixture(GaussianMixture): + def _m_step(self, X, log_resp): + # Skipping mean update + self.weights_, _, self.covariances_ = _estimate_gaussian_parameters( + X, np.exp(log_resp), self.reg_covar, self.covariance_type + ) + self.weights_ /= self.weights_.sum() + self.precisions_cholesky_ = _compute_precision_cholesky( + self.covariances_, self.covariance_type + ) + + class Peax(ClusterMixin, BaseEstimator): def __init__(self, random_state: Optional[int] = None): self.random_state = random_state @@ -74,7 +76,24 @@ def fit(self, X, y=None): peak_pos = np.stack([coord[peak_ind[0]], coord[peak_ind[1]]]).T weights = self.density.pdf(peak_pos.T) weights = weights / weights.sum() - self.gmm_ = GaussianMixture( + self.gmm_ = FixedMeanGaussianMixture( + peak_pos.shape[0], + means_init=peak_pos, + weights_init=weights, + random_state=self.random_state, + ) + self.labels_ = self.gmm_.fit_predict(X) + # Checking whether there are close to zero components + is_zero = np.isclose(self.gmm_.weights_, 0) + n_zero = np.sum(is_zero) + if n_zero > 0: + print( + f"{n_zero} components have zero weight, removing them and refitting." + ) + peak_pos = peak_pos[~is_zero] + weights = self.gmm_.weights_[~is_zero] + weights = weights / weights.sum() + self.gmm_ = FixedMeanGaussianMixture( peak_pos.shape[0], means_init=peak_pos, weights_init=weights, @@ -83,8 +102,13 @@ def fit(self, X, y=None): self.labels_ = self.gmm_.fit_predict(X) self.classes_ = np.sort(np.unique(self.labels_)) self.means_ = self.gmm_.means_ + self.weights_ = self.gmm_.weights_ return self.labels_ + @property + def n_components(self) -> int: + return self.gmm_.n_components + def predict_proba(self, X): return self.gmm_.predict_proba(X) @@ -102,21 +126,63 @@ def __init__( Encoder, str, MultimodalEncoder ] = "sentence-transformers/all-MiniLM-L6-v2", vectorizer: Optional[CountVectorizer] = None, - dimensionality_reduction: Optional[TransformerMixin] = None, - feature_importance: LexicalWordImportance = "soft-c-tf-idf", + perplexity: int = 50, random_state: Optional[int] = None, ): - if dimensionality_reduction is None: - dimensionality_reduction = TSNE(2, metric="cosine", perplexity=100) + dimensionality_reduction = TSNE( + 2, + metric="cosine", + perplexity=perplexity, + random_state=random_state, + ) super().__init__( n_components=0, encoder=encoder, vectorizer=vectorizer, dimensionality_reduction=dimensionality_reduction, - feature_importance=feature_importance, random_state=random_state, ) + def estimate_components( + self, + feature_importance: Optional[LexicalWordImportance] = None, + doc_topic_matrix=None, + doc_term_matrix=None, + ) -> np.ndarray: + doc_topic_matrix = ( + doc_topic_matrix + if doc_topic_matrix is not None + else self.doc_topic_matrix + ) + doc_term_matrix = ( + doc_term_matrix + if doc_term_matrix is not None + else self.doc_term_matrix + ) + lexical_components = super().estimate_components( + "npmi", doc_topic_matrix, doc_term_matrix + ) + vocab = self.get_vocab() + if getattr(self, "vocab_embeddings", None) is None or ( + self.vocab_embeddings.shape[0] != vocab.shape[0] + ): + self.vocab_embeddings = self.encode_documents(vocab) + topic_embeddings = [] + for weight in doc_topic_matrix.T: + topic_embeddings.append( + np.average(self.embeddings, axis=0, weights=weight) + ) + self.topic_embeddings = np.stack(topic_embeddings) + semantic_components = cosine_similarity( + self.topic_embeddings, self.vocab_embeddings + ) + # Transforming to positive values from 0 to 1 + # Then taking geometric average of the two values + self.components_ = np.sqrt( + ((1 + lexical_components) / 2) * ((1 + semantic_components) / 2) + ) + return self.components_ + def _init_model(self, n_components: int): mixture = Peax() return mixture From 14551bebb058a8ad02ef5168eae4a6333c1aa62c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 30 Oct 2025 13:50:54 +0100 Subject: [PATCH 13/16] Added labels_ property to GMM --- turftopic/models/gmm.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/turftopic/models/gmm.py b/turftopic/models/gmm.py index bfe0a60..69ebad0 100644 --- a/turftopic/models/gmm.py +++ b/turftopic/models/gmm.py @@ -294,6 +294,10 @@ def fit_transform_multimodal( console.log("Transformation done.") return self.doc_topic_matrix + @property + def labels_(self): + return np.argmax(self.doc_topic_matrix, axis=1) + @property def weights_(self) -> np.ndarray: if isinstance(self.gmm_, Pipeline): From 1587e775d997612627a5f1445fcaab0906722232 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 30 Oct 2025 14:09:30 +0100 Subject: [PATCH 14/16] Added docstrings to Topeax --- turftopic/models/topeax.py | 37 ++++++++++++++++++++++++++++++------- 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/turftopic/models/topeax.py b/turftopic/models/topeax.py index bebfbda..7f17608 100644 --- a/turftopic/models/topeax.py +++ b/turftopic/models/topeax.py @@ -1,8 +1,11 @@ from typing import Optional, Union import numpy as np -from scipy.ndimage.filters import maximum_filter -from scipy.ndimage.morphology import binary_erosion, generate_binary_structure +from scipy.ndimage import ( + binary_erosion, + generate_binary_structure, + maximum_filter, +) from scipy.stats import gaussian_kde from sklearn.base import BaseEstimator, ClusterMixin from sklearn.feature_extraction.text import CountVectorizer @@ -19,11 +22,6 @@ from turftopic.models.gmm import GMM, LexicalWordImportance -def minmax(a): - min_a = np.min(a) - return (a - min_a) / (np.max(a) - min_a) - - def detect_peaks(image): # define an 8-connected neighborhood neighborhood = generate_binary_structure(2, 25) @@ -58,6 +56,14 @@ def _m_step(self, X, log_resp): class Peax(ClusterMixin, BaseEstimator): + """Clustering model based on density peaks. + + Parameters + ---------- + random_state: int, default None + Random seed to use for fitting gaussian mixture to peaks. + """ + def __init__(self, random_state: Optional[int] = None): self.random_state = random_state @@ -120,6 +126,23 @@ def score(self, X): class Topeax(GMM): + """Topic model based on the Peax clustering algorithm. + The algorithm discovers the number of topics automatically, and is based on GMM. + + Parameters + ---------- + encoder: str or SentenceTransformer + Model to encode documents/terms, all-MiniLM-L6-v2 is the default. + vectorizer: CountVectorizer, default None + Vectorizer used for term extraction. + Can be used to prune or filter the vocabulary. + perplexity: int, default 50 + Number of neighbours to take into account when running TSNE. + random_state: int, default None + Random state to use so that results are exactly reproducible. + + """ + def __init__( self, encoder: Union[ From 43869939461e5423acd21e4d6c29989d115ee8f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 30 Oct 2025 14:09:44 +0100 Subject: [PATCH 15/16] Added elementary docs for Topeax --- docs/Topeax.md | 18 ++++++++++++++++++ docs/images/peax.png | Bin 0 -> 266736 bytes 2 files changed, 18 insertions(+) create mode 100644 docs/Topeax.md create mode 100644 docs/images/peax.png diff --git a/docs/Topeax.md b/docs/Topeax.md new file mode 100644 index 0000000..f7c8a4d --- /dev/null +++ b/docs/Topeax.md @@ -0,0 +1,18 @@ +# Topeax + +Topeax is a probabilistic topic model based on the Peax clustering model, which finds topics based on peaks in point density in the embedding space. +It can recover the number of topics automatically. + +
+
+ +
Schematic overview of the steps of the Peax clustering algorithm
+
+ +:warning: **This part of the documentation is still under construction, as more details and a paper are on their way.** :warning: + +## API Reference + +::: turftopic.models.topeax.Topeax + +::: turftopic.models.topeax.Peax diff --git a/docs/images/peax.png b/docs/images/peax.png new file mode 100644 index 0000000000000000000000000000000000000000..fa2a7bca29fdf71fe0ae4ba3a40e21e5a40b5bde GIT binary patch literal 266736 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 z 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 literal 0 HcmV?d00001 From 96e47a48f893f6e8838f2f0ac2fec0c76493998d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 30 Oct 2025 14:16:23 +0100 Subject: [PATCH 16/16] Version bump --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index f284a70..c91abef 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ profile = "black" [project] name = "turftopic" -version = "0.19.1" +version = "0.20.0" description = "Topic modeling with contextual representations from sentence transformers." authors = [ { name = "Márton Kardos ", email = "martonkardos@cas.au.dk" }