mostlyai-engine 1.5.3__tar.gz → 1.5.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/PKG-INFO +1 -1
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/__init__.py +1 -1
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_common.py +2 -1
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/pyproject.toml +1 -1
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/.gitignore +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/LICENSE +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/README.md +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_dtypes.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/__init__.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/__init__.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/categorical.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/datetime.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/numeric.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/text.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/__init__.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/categorical.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/character.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/datetime.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/itt.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/lat_long.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/numeric.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/__init__.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/common.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/encoding.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/__init__.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/base.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/hf_engine.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/vllm_engine.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/generation.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/lstm.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/tokenizer_utils.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/training.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/xgrammar_utils.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_memory.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/__init__.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/argn.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/common.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/encoding.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/fairness.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/generation.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_tabular/training.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_training_utils.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_workspace.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/analysis.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/domain.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/encoding.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/generation.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/logging.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/random_state.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/splitting.py +0 -0
- {mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/training.py +0 -0
|
@@ -22,7 +22,7 @@ from mostlyai.engine.splitting import split
|
|
|
22
22
|
from mostlyai.engine.training import train
|
|
23
23
|
|
|
24
24
|
__all__ = ["split", "analyze", "encode", "train", "generate", "init_logging", "set_random_state"]
|
|
25
|
-
__version__ = "1.5.
|
|
25
|
+
__version__ = "1.5.4"
|
|
26
26
|
|
|
27
27
|
# suppress specific warning related to os.fork() in multi-threaded processes
|
|
28
28
|
warnings.filterwarnings("ignore", category=DeprecationWarning, message=".*multi-threaded.*fork.*")
|
|
@@ -864,6 +864,7 @@ def dp_non_rare(value_counts: dict[str, int], epsilon: float, threshold: int = 5
|
|
|
864
864
|
noisy_counts = np.clip(np.array(list(value_counts.values())) + noise, 0, None).astype(int)
|
|
865
865
|
for i, cat in enumerate(value_counts):
|
|
866
866
|
value_counts[cat] = noisy_counts[i]
|
|
867
|
+
# NOTE: total_counts can be 0 in the edge case when the column only has null values
|
|
867
868
|
total_counts = sum(value_counts.values())
|
|
868
869
|
|
|
869
870
|
# 2. Collect all categories whose noisy count >= threshold
|
|
@@ -871,7 +872,7 @@ def dp_non_rare(value_counts: dict[str, int], epsilon: float, threshold: int = 5
|
|
|
871
872
|
|
|
872
873
|
# 3. Compute the non-rare ratio
|
|
873
874
|
noisy_total_counts = sum(selected.values())
|
|
874
|
-
non_rare_ratio = noisy_total_counts / total_counts
|
|
875
|
+
non_rare_ratio = noisy_total_counts / total_counts if total_counts > 0 else 0
|
|
875
876
|
|
|
876
877
|
return list(selected.keys()), non_rare_ratio
|
|
877
878
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/datetime.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/numeric.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/language/text.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/character.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/datetime.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/itt.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/lat_long.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_encoding_types/tabular/numeric.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/hf_engine.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/engine/vllm_engine.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.5.3 → mostlyai_engine-1.5.4}/mostlyai/engine/_language/tokenizer_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|