Padjective Tag Hierarchy

Machine learning insights into Shopify product tag organization

Data sourced from cantbuymelove.industrial-linguistics.com powering Shopify taxonomy classification and filtered to taxonomies with at least five products.

Last updated 2026-07-13 21:03 UTC

7,678 Products used
554 Taxonomies covered
16,663 Tags used
42,240 Total tags
5,968 Tag battles

Dataset coverage

Training data spans 7,678 products across 554 taxonomies. Of 42,240 total tags in the dataset, 16,663 tags were used (tags appearing fewer than 5 times were filtered out). 17,864 products were discarded due to missing or sparse taxonomy labels. Explore the full dataset → | View defective taxonomy labels →

Dummy Baseline

Always predicts most common taxonomy (baseline for comparison)

0.9261 Avg p-adic loss
1 Parameter
View model →

Importance-Optimised p-adic Linear Regression

P-adic coefficients assigned to tags to predict taxonomy

0.3752 Avg p-adic loss
1,011 Avg non-zero coefficients
View model →

Level-wise Logistic Regression

Hierarchy-aware top-down classifier that always emits a valid taxonomy path

0.1008 Avg p-adic loss
83.01% Prefix-2 accuracy
132,415 Non-zero params
View model →

Zubarev Regression (UMLLR init)

Stochastic p-adic optimization starting from UMLLR (arXiv:2503.23488)

0.4090 Avg p-adic loss
3,162 Non-zero coefficients
View fold details →

Zubarev Regression (Zeros init)

Stochastic p-adic optimization starting from zeros (arXiv:2503.23488)

0.4696 Avg p-adic loss
3,376 Non-zero coefficients
View fold details →

Zubarev Mahler-1 (UMLLR init)

Mahler affine basis (degree 1) with UMLLR initialization

0.4102 Avg p-adic loss
2,973 Non-zero coefficients
View fold details →

Zubarev Mahler-2 (UMLLR init)

Mahler quadratic basis (degree 2) with UMLLR initialization

0.4102 Avg p-adic loss
2,978 Non-zero coefficients
View fold details →

Unconstrained Logistic Regression

L1-regularized model using ALL tags

0.2552 Avg p-adic loss
4,473 Non-zero params
View model →

Decision Tree

Unconstrained tree using ALL tags

0.2195 Avg p-adic loss
35,430 Effective params
View model →

Unconstrained Neural Network

L1-regularized NN with weight pruning

0.2750 Avg p-adic loss
26,382 Non-zero params
View model →

Parameter Constrained Neural Network

Neural network predicting taxonomy from tags

0.7429 Avg p-adic loss
864 Avg input weights
View model →

Parameter Constrained Logistic Regression

Logistic regression model predicting Shopify taxonomy from tags

0.7817 Avg p-adic loss
17,606 Avg parameters
View model →

ELO-Inspired Rankings

Battle-tested tag hierarchy from product title positions

5,968 Tag battles
View rankings →

Benchmark Comparisons

Dedicated `latest` and `paper` benchmark pages, including the average active parameters touched per classification for the importance-optimised p-adic linear regressor.

0.95 Latest active params / classification
1.11 Paper active params / classification
Open benchmark pages →

Taxonomy distribution

Taxonomy class distribution
Distribution of products across the most common taxonomy classes

Top 10 taxonomy classes

Taxonomy IDNamePathSamplesShare
gid://shopify/TaxonomyCategory/btBaby & ToddlerBaby & Toddler2573.3%
gid://shopify/TaxonomyCategory/lbLuggage & BagsLuggage & Bags991.3%
gid://shopify/TaxonomyCategory/buBundlesBundles771.0%
gid://shopify/TaxonomyCategory/gcGift CardsGift Cards270.4%
gid://shopify/TaxonomyCategory/paProduct Add-OnsProduct Add-Ons270.4%
gid://shopify/TaxonomyCategory/osOffice SuppliesOffice Supplies210.3%
gid://shopify/TaxonomyCategory/naUncategorizedUncategorized190.2%
gid://shopify/TaxonomyCategory/sgSporting GoodsSporting Goods170.2%
gid://shopify/TaxonomyCategory/biBusiness & Industrial6160.2%
gid://shopify/TaxonomyCategory/elElectronics8110.1%

Tags with strongest signal

TagTop taxonomyWeightMax |weight|
No tag signal data available

Historical Performance Trends

Tracking model performance and dataset growth over time. Lower p-adic loss indicates better predictions.

Historical model performance trends
Model performance vs number of products
Model Slope (per product) Intercept p-value
Importance-Optimised p-adic LR-0.0000000.34900.00200.4995
PCLR0.0000220.50510.62026.96e-51
PCNN0.0000060.53950.06606.74e-05
ULR0.0000050.19550.77613.24e-68
UNN0.0000040.17760.43537.23e-27
Decision Tree0.0000030.16910.54404.06e-36
Zubarev (UMLLR)0.0000020.39300.39608.62e-23
Zubarev (zeros)0.0000070.39250.82091.25e-73
Zubarev (M1)0.0000010.40760.18076.49e-10
Zubarev (M2)0.0000010.40300.26631.36e-14
Dummy Baseline-0.0000170.83950.31738.16e-20

Extrapolation Analysis: When Will Importance-Optimised p-adic LR Outperform Other Models?

Based on current regression trends, we can extrapolate when Importance-Optimised p-adic LR will achieve better performance (lower p-adic loss) than other models as the dataset grows. The confidence intervals are calculated using bootstrap resampling (n=1000).

Model Crossover Point
(products)
95% Confidence Interval Probability Estimated Date
UNN (Unconstrained Neural Networks)36,59331,277 - 44,802 (95% CI, σ=3,423)>95%2027-07-27 (±uncertain, R²=0.871, growth=55.9/product/day)
ULR (Unconstrained Logistic Regression)31,36627,892 - 35,850 (95% CI, σ=2,104)>95%2027-04-24 (±uncertain, R²=0.871, growth=55.9/product/day)
Decision Tree51,80142,135 - 67,470 (95% CI, σ=6,472)>95%2028-04-24 (±uncertain, R²=0.871, growth=55.9/product/day)

Statistical Notes: The crossover points are calculated by finding where the regression lines intersect. The 95% confidence intervals are derived from bootstrap resampling of the regression parameters. The probability estimates indicate the likelihood that the crossover will occur given the current trends. Date predictions are based on linear extrapolation of dataset growth and should be interpreted with caution.

Model performance vs number of distinct tags
Model Slope (per tag) Intercept p-value
Importance-Optimised p-adic LR0.0000010.33680.01320.0793
PCLR0.0000300.36830.65645.71e-56
PCNN0.0000130.45090.17611.93e-11
ULR0.0000060.17030.71776.07e-58
UNN0.0000070.13250.70156.17e-55
Decision Tree0.0000040.14730.59373.58e-41
Zubarev (UMLLR)0.0000030.38070.35178.13e-20
Zubarev (zeros)0.0000100.34570.81279.08e-72
Zubarev (M1)0.0000010.39960.22532.70e-12
Zubarev (M2)0.0000020.39320.29383.29e-16
Dummy Baseline-0.0000140.84600.12497.21e-08

Extrapolation Analysis: When Will Importance-Optimised p-adic LR Outperform Other Models?

Based on current regression trends, we can extrapolate when Importance-Optimised p-adic LR will achieve better performance (lower p-adic loss) than other models as the dataset grows. The confidence intervals are calculated using bootstrap resampling (n=1000).

Model Crossover Point
(tags)
95% Confidence Interval Probability Estimated Date
UNN (Unconstrained Neural Networks)31,35927,777 - 36,883 (95% CI, σ=2,374)>95%2027-05-31 (±uncertain, R²=0.996, growth=45.8/tag/day)
ULR (Unconstrained Logistic Regression)33,51528,721 - 40,641 (95% CI, σ=3,090)>95%2027-07-17 (±uncertain, R²=0.996, growth=45.8/tag/day)
Decision Tree53,72341,385 - 78,364 (95% CI, σ=9,057)>95%2028-09-29 (±uncertain, R²=0.996, growth=45.8/tag/day)

Statistical Notes: The crossover points are calculated by finding where the regression lines intersect. The 95% confidence intervals are derived from bootstrap resampling of the regression parameters. The probability estimates indicate the likelihood that the crossover will occur given the current trends. Date predictions are based on linear extrapolation of dataset growth and should be interpreted with caution.

Model complexity vs performance (parameter count vs p-adic loss)
Both axes use log scale. The red line is the fixed parsimoniousness baseline rather than a fitted regression.

Why parsimony matters. The question here is not just which model has the lowest loss, but which model gets good p-adic loss with the fewest effective parameters. That is exactly where the smaller p-adic models are interesting.

Where this baseline came from. The original score came from a log-log regression on model size versus loss, rounded to -0.1 × log₁₀(params) - 0.2. Looking across historical snapshots, those scores drifted as the dataset covered more taxonomies, so the current baseline adds + 0.3 × log₁₀(taxonomies / 1,000) to keep comparisons stable as the benchmark grows. For readability, we also re-centre the displayed score by dropping the old constant offset; that keeps the current tables mostly positive without changing the relative comparisons.

Parsimoniousness baseline: log₁₀(loss) = -0.1 × log₁₀(params) + 0.3 × log₁₀(taxonomies / 1,000)
Current snapshot taxonomies: 554
Parsimony score = baseline log₁₀(loss) − observed log₁₀(loss). Positive means better than baseline.

Model Params Loss log₁₀(params) log₁₀(loss) Baseline log₁₀(loss) Parsimony score
Level-wise Logistic132,4150.10085.1219-0.9966-0.5891+0.4075
ULR4,4730.25523.6506-0.5931-0.4420+0.1511
Decision Tree35,4300.21954.5494-0.6585-0.5319+0.1266
Importance-Optimised1,0110.37523.0049-0.4258-0.3774+0.0483
UNN26,3820.27504.4213-0.5606-0.5191+0.0416
Zubarev (M1)2,9730.41023.4732-0.3870-0.4243-0.0373
Zubarev (M2)2,9780.41023.4739-0.3870-0.4243-0.0374
Zubarev (UMLLR)3,1620.40903.4999-0.3883-0.4269-0.0386
Dummy10.92610.0000-0.0334-0.0769-0.0436
Zubarev (zeros)3,3760.46963.5285-0.3283-0.4298-0.1015
PCNN8640.74292.9365-0.1291-0.3706-0.2415
PCLR17,6060.78174.2457-0.1070-0.5015-0.3946
Historical parsimony score stability
Left: parsimony score versus dataset size. Right: score distribution across historical snapshots. Positive means better than the taxonomy-adjusted baseline.
Model Snapshots Mean score Std dev Span Latest score Latest products
Unconstrained Logistic Regression with L1206+0.16420.01770.1083+0.15167,690
Decision Tree173+0.14750.01840.0782+0.12717,690
Importance-Optimised $p$-adic Linear Regression173+0.06900.04680.1295+0.04887,690
Unconstrained Neural Network with L1204+0.12030.03330.1631+0.04207,690
Zubarev (UMLLR init)194-0.05440.02390.0929-0.03837,690
Dummy Baseline220+0.06380.11740.3436-0.04317,690
PCNN204-0.18180.07300.1992-0.24107,690
PCLR204-0.37810.02180.1880-0.39417,690

Smaller standard deviation and span mean a model’s parsimoniousness is more stable as the dataset grows.

Unconstrained models: complexity vs performance (log-log scale)
Unconstrained models only (no PCLR/PCNN). Both axes on log scale.

Regression: log₁₀(loss) = slope × log₁₀(params) + intercept

Slope Intercept p-value Significant? n
-0.1323 -0.0410 0.9620 0.0032 Yes 5
Model performance trajectory over time
Arrows show how each model's complexity and performance have changed over time.