Spaces:
Sleeping
Sleeping
GitHub Actions commited on
Commit ·
e7ced75
1
Parent(s): 5974e1f
Sync from GitHub Actions
Browse files- app.py +117 -7
- artifacts/benchmark/benchmark_results.json +25 -0
- artifacts/evaluation/error_cases.csv +64 -0
- artifacts/evaluation/image_to_image_category_breakdown.csv +214 -0
- artifacts/evaluation/image_to_image_metrics.json +113 -0
- config/model.yaml +65 -3
- config/schema.yaml +54 -6
- template.py +35 -10
- templates/evaluation.html +216 -0
- test/test_app.py +21 -0
- test/test_evaluation_outputs.py +39 -0
- test/test_metrics.py +56 -0
- visual_product_search/evaluation/__init__.py +21 -0
- visual_product_search/evaluation/error_analysis.py +0 -0
- visual_product_search/evaluation/evaluate_image_to_image.py +0 -0
- visual_product_search/evaluation/metrics.py +103 -0
- visual_product_search/utils/config.py +33 -5
app.py
CHANGED
|
@@ -1,18 +1,127 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
from visual_product_search.pipeline.training_pipeline import VisualProductPipeline
|
| 2 |
from visual_product_search.pipeline.prediction_pipeline import ProductPredictionPipeline
|
| 3 |
from visual_product_search.logger import logging
|
| 4 |
from visual_product_search.exception import ExceptionHandle
|
| 5 |
-
from
|
| 6 |
-
import sys
|
| 7 |
|
| 8 |
app = Flask(__name__)
|
| 9 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
|
| 12 |
@app.route("/", methods=["GET"])
|
| 13 |
def home():
|
| 14 |
return render_template("home.html")
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
@app.route("/train", methods=["GET"])
|
| 17 |
def train_page():
|
| 18 |
return render_template("train.html")
|
|
@@ -31,16 +140,17 @@ def model_train():
|
|
| 31 |
def predict():
|
| 32 |
try:
|
| 33 |
k = int(request.form.get("k", 5))
|
| 34 |
-
|
|
|
|
| 35 |
if request.form.get("text_field"):
|
| 36 |
query = request.form["text_field"]
|
| 37 |
-
outputs =
|
| 38 |
results = [item.entity['image_link'] for item in outputs[0]]
|
| 39 |
return render_template("home.html", results=results)
|
| 40 |
|
| 41 |
elif "img_field" in request.files:
|
| 42 |
img_file = request.files["img_field"]
|
| 43 |
-
outputs =
|
| 44 |
results = [item.entity['image_link'] for item in outputs[0]]
|
| 45 |
return render_template("home.html", results=results)
|
| 46 |
|
|
|
|
| 1 |
+
import sys
|
| 2 |
+
import json
|
| 3 |
+
from pathlib import Path
|
| 4 |
+
from flask import Flask, render_template, request, jsonify
|
| 5 |
+
|
| 6 |
from visual_product_search.pipeline.training_pipeline import VisualProductPipeline
|
| 7 |
from visual_product_search.pipeline.prediction_pipeline import ProductPredictionPipeline
|
| 8 |
from visual_product_search.logger import logging
|
| 9 |
from visual_product_search.exception import ExceptionHandle
|
| 10 |
+
from visual_product_search.utils.config import load_json_file, to_percent
|
|
|
|
| 11 |
|
| 12 |
app = Flask(__name__)
|
| 13 |
+
prediction_pipeline = None
|
| 14 |
+
|
| 15 |
+
def get_prediction_pipeline():
|
| 16 |
+
global prediction_pipeline
|
| 17 |
+
|
| 18 |
+
if prediction_pipeline is None:
|
| 19 |
+
prediction_pipeline = ProductPredictionPipeline()
|
| 20 |
+
|
| 21 |
+
return prediction_pipeline
|
| 22 |
+
|
| 23 |
+
|
| 24 |
+
def prepare_evaluation_view(metrics_data):
|
| 25 |
+
if not metrics_data or metrics_data.get("status") == "not_run_yet":
|
| 26 |
+
return None
|
| 27 |
+
|
| 28 |
+
metrics = metrics_data.get("metrics", {})
|
| 29 |
+
rows = [
|
| 30 |
+
{
|
| 31 |
+
"name": "Article Type Match",
|
| 32 |
+
"definition": "Same articleType",
|
| 33 |
+
"source": "strict",
|
| 34 |
+
},
|
| 35 |
+
{
|
| 36 |
+
"name": "Subcategory Match",
|
| 37 |
+
"definition": "Same subCategory",
|
| 38 |
+
"source": "medium",
|
| 39 |
+
},
|
| 40 |
+
{
|
| 41 |
+
"name": "Gender + Master Category Match",
|
| 42 |
+
"definition": "Same gender and masterCategory",
|
| 43 |
+
"source": "soft",
|
| 44 |
+
},
|
| 45 |
+
]
|
| 46 |
+
|
| 47 |
+
prepared_rows = []
|
| 48 |
+
for row in rows:
|
| 49 |
+
source_metrics = metrics.get(row["source"], {})
|
| 50 |
+
|
| 51 |
+
prepared_rows.append(
|
| 52 |
+
{
|
| 53 |
+
"name": row["name"],
|
| 54 |
+
"definition": row["definition"],
|
| 55 |
+
"precision_5": to_percent(source_metrics.get("precision@5", 0)),
|
| 56 |
+
"ndcg_10": to_percent(source_metrics.get("ndcg@10", 0)),
|
| 57 |
+
"map_10": to_percent(source_metrics.get("map@10", 0)),
|
| 58 |
+
"mrr_10": to_percent(source_metrics.get("mrr@10", 0)),
|
| 59 |
+
}
|
| 60 |
+
)
|
| 61 |
+
|
| 62 |
+
return {
|
| 63 |
+
"model": metrics_data.get("model", "N/A"),
|
| 64 |
+
"dataset": metrics_data.get("dataset", "N/A"),
|
| 65 |
+
"num_queries": metrics_data.get("num_queries", 0),
|
| 66 |
+
"num_indexed_images": metrics_data.get("num_indexed_images", 0),
|
| 67 |
+
"embedding_dimension": metrics_data.get("embedding_dimension", 0),
|
| 68 |
+
"exclude_self_match": metrics_data.get("exclude_self_match", False),
|
| 69 |
+
"rows": prepared_rows,
|
| 70 |
+
"main_cards": {
|
| 71 |
+
"article_precision_5": prepared_rows[0]["precision_5"],
|
| 72 |
+
"subcategory_precision_5": prepared_rows[1]["precision_5"],
|
| 73 |
+
"gender_master_precision_5": prepared_rows[2]["precision_5"],
|
| 74 |
+
},
|
| 75 |
+
}
|
| 76 |
+
|
| 77 |
+
|
| 78 |
+
def prepare_benchmark_view(benchmark_data):
|
| 79 |
+
if not benchmark_data or benchmark_data.get("status") == "not_run_yet":
|
| 80 |
+
return None
|
| 81 |
+
|
| 82 |
+
latency = benchmark_data.get("latency_ms", {})
|
| 83 |
+
artifact_sizes = benchmark_data.get("artifact_sizes", {})
|
| 84 |
+
|
| 85 |
+
return {
|
| 86 |
+
"benchmark_type": benchmark_data.get("benchmark_type", "N/A"),
|
| 87 |
+
"top_k": benchmark_data.get("top_k", 0),
|
| 88 |
+
"num_runs": benchmark_data.get("num_runs", 0),
|
| 89 |
+
"mean": latency.get("mean", 0),
|
| 90 |
+
"p50": latency.get("p50", 0),
|
| 91 |
+
"p95": latency.get("p95", 0),
|
| 92 |
+
"p99": latency.get("p99", 0),
|
| 93 |
+
"embedding_file_mb": artifact_sizes.get("embedding_file_mb", 0),
|
| 94 |
+
"metadata_file_mb": artifact_sizes.get("metadata_file_mb", 0),
|
| 95 |
+
}
|
| 96 |
|
| 97 |
|
| 98 |
@app.route("/", methods=["GET"])
|
| 99 |
def home():
|
| 100 |
return render_template("home.html")
|
| 101 |
+
|
| 102 |
+
@app.route("/health", methods=["GET"])
|
| 103 |
+
def health():
|
| 104 |
+
return jsonify(
|
| 105 |
+
{
|
| 106 |
+
"status": "ok",
|
| 107 |
+
"service": "visual-product-search",
|
| 108 |
+
}
|
| 109 |
+
)
|
| 110 |
+
|
| 111 |
+
@app.route("/evaluation", methods=["GET"])
|
| 112 |
+
def evaluation_dashboard():
|
| 113 |
+
metrics_data = load_json_file("artifacts/evaluation/image_to_image_metrics.json")
|
| 114 |
+
benchmark_data = load_json_file("artifacts/benchmark/benchmark_results.json")
|
| 115 |
+
|
| 116 |
+
evaluation_view = prepare_evaluation_view(metrics_data)
|
| 117 |
+
benchmark_view = prepare_benchmark_view(benchmark_data)
|
| 118 |
+
|
| 119 |
+
return render_template(
|
| 120 |
+
"evaluation.html",
|
| 121 |
+
evaluation=evaluation_view,
|
| 122 |
+
benchmark=benchmark_view,
|
| 123 |
+
)
|
| 124 |
+
|
| 125 |
@app.route("/train", methods=["GET"])
|
| 126 |
def train_page():
|
| 127 |
return render_template("train.html")
|
|
|
|
| 140 |
def predict():
|
| 141 |
try:
|
| 142 |
k = int(request.form.get("k", 5))
|
| 143 |
+
pipeline = get_prediction_pipeline()
|
| 144 |
+
|
| 145 |
if request.form.get("text_field"):
|
| 146 |
query = request.form["text_field"]
|
| 147 |
+
outputs = pipeline.search_with_text(query, k)
|
| 148 |
results = [item.entity['image_link'] for item in outputs[0]]
|
| 149 |
return render_template("home.html", results=results)
|
| 150 |
|
| 151 |
elif "img_field" in request.files:
|
| 152 |
img_file = request.files["img_field"]
|
| 153 |
+
outputs = pipeline.search_with_image(img_file, k)
|
| 154 |
results = [item.entity['image_link'] for item in outputs[0]]
|
| 155 |
return render_template("home.html", results=results)
|
| 156 |
|
artifacts/benchmark/benchmark_results.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"benchmark_type": "image_to_image_search_latency",
|
| 3 |
+
"num_indexed_images": 44065,
|
| 4 |
+
"metadata_rows": 44065,
|
| 5 |
+
"embedding_dimension": 768,
|
| 6 |
+
"top_k": 10,
|
| 7 |
+
"warmup_runs": 5,
|
| 8 |
+
"num_runs": 100,
|
| 9 |
+
"latency_ms": {
|
| 10 |
+
"mean": 10.4144,
|
| 11 |
+
"min": 3.2936,
|
| 12 |
+
"p50": 8.6958,
|
| 13 |
+
"p95": 20.1617,
|
| 14 |
+
"p99": 24.5445,
|
| 15 |
+
"max": 25.6564
|
| 16 |
+
},
|
| 17 |
+
"artifact_sizes": {
|
| 18 |
+
"embedding_file_mb": 129.0968,
|
| 19 |
+
"metadata_file_mb": 16.4993
|
| 20 |
+
},
|
| 21 |
+
"artifacts": {
|
| 22 |
+
"embedding_path": "/artifacts/embeddings/image_embeddings.npy",
|
| 23 |
+
"metadata_path": "/artifacts/embeddings/metadata_aligned.csv"
|
| 24 |
+
}
|
| 25 |
+
}
|
artifacts/evaluation/error_cases.csv
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
query_index,top1_index,query_image,query_articleType,query_subCategory,query_gender,query_masterCategory,top1_image,top1_articleType,top1_subCategory,top1_gender,top1_masterCategory,similarity_score,error_type
|
| 2 |
+
948,34636,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/15526.jpg,Heels,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/47232.jpg,Sandals,Sandal,Men,Footwear,0.9425674676895142,wrong_articleType
|
| 3 |
+
3558,1318,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/45098.jpg,Briefs,Innerwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/45097.jpg,Bra,Innerwear,Women,Apparel,0.8857896327972412,wrong_articleType
|
| 4 |
+
3744,34366,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/27271.jpg,Tunics,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/24539.jpg,Kurtis,Topwear,Women,Apparel,0.9289357662200928,wrong_articleType
|
| 5 |
+
4220,22572,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/33848.jpg,Casual Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/8972.jpg,Sports Shoes,Shoes,Men,Footwear,0.919640302658081,wrong_articleType
|
| 6 |
+
4531,168,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/33087.jpg,Heels,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/53130.jpg,Flats,Shoes,Women,Footwear,0.9259762763977051,wrong_articleType
|
| 7 |
+
4763,4992,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/46823.jpg,Heels,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/49608.jpg,Casual Shoes,Shoes,Women,Footwear,0.900321900844574,wrong_articleType
|
| 8 |
+
5818,36142,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/37590.jpg,Innerwear Vests,Innerwear,Girls,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/3855.jpg,Tshirts,Topwear,Girls,Apparel,0.7995977401733398,wrong_articleType
|
| 9 |
+
6142,24145,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/24948.jpg,Tshirts,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/26955.jpg,Tops,Topwear,Women,Apparel,0.9501664042472839,wrong_articleType
|
| 10 |
+
7880,9021,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/30947.jpg,Tops,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/28773.jpg,Kurtis,Topwear,Women,Apparel,0.9203122854232788,wrong_articleType
|
| 11 |
+
8861,3681,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/28910.jpg,Kurtas,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23241.jpg,Kurtis,Topwear,Women,Apparel,0.9279676079750061,wrong_articleType
|
| 12 |
+
9814,13630,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/51175.jpg,Socks,Socks,Men,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/51135.jpg,Free Gifts,Free Gifts,Men,Free Items,0.9759629964828491,wrong_articleType
|
| 13 |
+
10446,38764,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/43647.jpg,Tops,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/44702.jpg,Shirts,Topwear,Women,Apparel,0.8996403217315674,wrong_articleType
|
| 14 |
+
10701,36464,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/57072.jpg,Jeans,Bottomwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/51598.jpg,Jeggings,Bottomwear,Women,Apparel,0.9528329372406006,wrong_articleType
|
| 15 |
+
11533,24370,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/7692.jpg,Tshirts,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/7704.jpg,Tops,Topwear,Women,Apparel,0.9103350043296814,wrong_articleType
|
| 16 |
+
11919,30804,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/49993.jpg,Lounge Shorts,Loungewear and Nightwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/42105.jpg,Shorts,Bottomwear,Men,Apparel,0.9306782484054565,wrong_articleType
|
| 17 |
+
12481,23324,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/4624.jpg,Tops,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/5835.jpg,Tshirts,Topwear,Women,Apparel,0.8793818950653076,wrong_articleType
|
| 18 |
+
13192,24273,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/22262.jpg,Heels,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/45404.jpg,Flats,Shoes,Women,Footwear,0.9214053153991699,wrong_articleType
|
| 19 |
+
13606,6119,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/24502.jpg,Belts,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/24510.jpg,Kurtas,Topwear,Women,Apparel,0.9752088785171509,wrong_articleType
|
| 20 |
+
13850,7839,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/28969.jpg,Kurta Sets,Apparel Set,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/58663.jpg,Kurtas,Topwear,Women,Apparel,0.915608823299408,wrong_articleType
|
| 21 |
+
14744,8932,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/53402.jpg,Kurtas,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/53824.jpg,Tunics,Topwear,Women,Apparel,0.9279063940048218,wrong_articleType
|
| 22 |
+
16487,37147,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/13972.jpg,Casual Shoes,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/6149.jpg,Sports Shoes,Shoes,Unisex,Footwear,0.9227504730224609,wrong_articleType
|
| 23 |
+
17495,2226,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/41829.jpg,Flats,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/47563.jpg,Heels,Shoes,Women,Footwear,0.9254391193389893,wrong_articleType
|
| 24 |
+
18926,39233,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/34827.jpg,Sports Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23856.jpg,Casual Shoes,Shoes,Men,Footwear,0.909993052482605,wrong_articleType
|
| 25 |
+
19088,21023,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/31797.jpg,Tshirts,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/25365.jpg,Innerwear Vests,Innerwear,Men,Apparel,0.8886074423789978,wrong_articleType
|
| 26 |
+
19519,25007,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/17838.jpg,Casual Shoes,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/9403.jpg,Sports Shoes,Shoes,Women,Footwear,0.9467912912368774,wrong_articleType
|
| 27 |
+
19630,17840,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/30084.jpg,Free Gifts,Free Gifts,Men,Free Items,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/30071.jpg,Watches,Watches,Men,Accessories,0.7353814840316772,wrong_articleType
|
| 28 |
+
20044,25824,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/50739.jpg,Formal Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/26560.jpg,Casual Shoes,Shoes,Men,Footwear,0.9567035436630249,wrong_articleType
|
| 29 |
+
20201,15377,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/20015.jpg,Tshirts,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/19684.jpg,Tops,Topwear,Women,Apparel,0.8790856599807739,wrong_articleType
|
| 30 |
+
20395,23151,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/19163.jpg,Tshirts,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/19528.jpg,Sweaters,Topwear,Men,Apparel,0.8501044511795044,wrong_articleType
|
| 31 |
+
20581,28297,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/55617.jpg,Casual Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/17762.jpg,Formal Shoes,Shoes,Men,Footwear,0.9698576331138611,wrong_articleType
|
| 32 |
+
21757,34488,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/1622.jpg,Jackets,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/59105.jpg,Rain Jacket,Topwear,Men,Apparel,0.8497763872146606,wrong_articleType
|
| 33 |
+
21972,12862,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/51810.jpg,Nightdress,Loungewear and Nightwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/59993.jpg,Dresses,Dress,Women,Apparel,0.9154999256134033,wrong_articleType
|
| 34 |
+
22367,13831,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23810.jpg,Casual Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/21810.jpg,Wallets,Wallets,Men,Accessories,1.0000004768371582,wrong_articleType
|
| 35 |
+
24002,20159,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/2624.jpg,Heels,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/34071.jpg,Flats,Shoes,Women,Footwear,0.9188306331634521,wrong_articleType
|
| 36 |
+
24436,35349,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/52447.jpg,Nightdress,Loungewear and Nightwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/52517.jpg,Baby Dolls,Loungewear and Nightwear,Women,Apparel,0.9396724700927734,wrong_articleType
|
| 37 |
+
26245,14893,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/52228.jpg,Pendant,Jewellery,Women,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/52178.jpg,Ring,Jewellery,Women,Accessories,0.7879135608673096,wrong_articleType
|
| 38 |
+
28947,11193,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/2967.jpg,Sports Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/26691.jpg,Casual Shoes,Shoes,Men,Footwear,0.9181327819824219,wrong_articleType
|
| 39 |
+
29071,35040,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/58439.jpg,Dresses,Dress,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/28708.jpg,Kurtas,Topwear,Women,Apparel,0.8897051811218262,wrong_articleType
|
| 40 |
+
29427,38883,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/47610.jpg,Heels,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/47528.jpg,Flats,Shoes,Women,Footwear,0.9208894968032837,wrong_articleType
|
| 41 |
+
29799,13453,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/20182.jpg,Shirts,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/20156.jpg,Tshirts,Topwear,Men,Apparel,0.9264822006225586,wrong_articleType
|
| 42 |
+
31647,24611,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/32288.jpg,Watches,Watches,Men,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/53592.jpg,Free Gifts,Free Gifts,Men,Free Items,0.8738217353820801,wrong_articleType
|
| 43 |
+
32046,22588,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/52568.jpg,Clutches,Bags,Women,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/16763.jpg,Handbags,Bags,Women,Accessories,0.9237739443778992,wrong_articleType
|
| 44 |
+
32512,36077,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/44404.jpg,Sports Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/22851.jpg,Casual Shoes,Shoes,Men,Footwear,0.9264622926712036,wrong_articleType
|
| 45 |
+
32882,9067,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/4602.jpg,Backpacks,Bags,Unisex,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/4601.jpg,Rucksacks,Bags,Unisex,Accessories,0.9151055812835693,wrong_articleType
|
| 46 |
+
33057,32323,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23143.jpg,Sweatshirts,Topwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23150.jpg,Jackets,Topwear,Women,Apparel,0.9352626800537109,wrong_articleType
|
| 47 |
+
33143,9482,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23527.jpg,Deodorant,Fragrance,Men,Personal Care,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/44063.jpg,Fragrance Gift Set,Fragrance,Men,Personal Care,0.8310849666595459,wrong_articleType
|
| 48 |
+
33519,35684,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/27346.jpg,Deodorant,Fragrance,Women,Personal Care,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/26001.jpg,Perfume and Body Mist,Fragrance,Women,Personal Care,0.6996232271194458,wrong_articleType
|
| 49 |
+
33718,32208,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/38533.jpg,Casual Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/12889.jpg,Sports Shoes,Shoes,Men,Footwear,0.9219768047332764,wrong_articleType
|
| 50 |
+
33732,9081,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/18550.jpg,Casual Shoes,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/18549.jpg,Flats,Shoes,Women,Footwear,0.9110183715820312,wrong_articleType
|
| 51 |
+
34561,74,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/19245.jpg,Jackets,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23876.jpg,Sweatshirts,Topwear,Men,Apparel,0.8904398679733276,wrong_articleType
|
| 52 |
+
34798,1876,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/16804.jpg,Dresses,Dress,Girls,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/10656.jpg,Tops,Topwear,Women,Apparel,0.8774722814559937,wrong_articleType
|
| 53 |
+
35412,21750,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/15016.jpg,Sweatshirts,Topwear,Men,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/13094.jpg,Sweaters,Topwear,Men,Apparel,0.8954243659973145,wrong_articleType
|
| 54 |
+
35417,37534,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/32634.jpg,Track Pants,Bottomwear,Women,Apparel,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/32632.jpg,Capris,Bottomwear,Women,Apparel,0.9590926766395569,wrong_articleType
|
| 55 |
+
36246,36151,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/56120.jpg,Lip Gloss,Lips,Women,Personal Care,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/56118.jpg,Lipstick,Lips,Women,Personal Care,0.826729416847229,wrong_articleType
|
| 56 |
+
37406,35802,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/20767.jpg,Flats,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/20766.jpg,Heels,Shoes,Women,Footwear,0.9011647701263428,wrong_articleType
|
| 57 |
+
39313,42540,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/2631.jpg,Flats,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/10615.jpg,Casual Shoes,Shoes,Women,Footwear,0.9223020076751709,wrong_articleType
|
| 58 |
+
39396,10745,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/23097.jpg,Flip Flops,Flip Flops,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/56968.jpg,Heels,Shoes,Women,Footwear,0.857206404209137,wrong_articleType
|
| 59 |
+
41085,1320,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/25934.jpg,Scarves,Scarves,Women,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/14635.jpg,Mufflers,Mufflers,Men,Accessories,0.959419846534729,wrong_articleType
|
| 60 |
+
41170,42962,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/55086.jpg,Eye Cream,Skin Care,Women,Personal Care,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/55087.jpg,Face Wash and Cleanser,Skin Care,Women,Personal Care,0.864392101764679,wrong_articleType
|
| 61 |
+
42267,2991,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/12348.jpg,Handbags,Bags,Men,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/12361.jpg,Shirts,Topwear,Men,Apparel,0.9148913025856018,wrong_articleType
|
| 62 |
+
42333,22889,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/39505.jpg,Duffel Bag,Bags,Unisex,Accessories,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/29188.jpg,Laptop Bag,Bags,Men,Accessories,0.931201696395874,wrong_articleType
|
| 63 |
+
42730,42721,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/11932.jpg,Flats,Shoes,Women,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/19363.jpg,Sandals,Sandal,Men,Footwear,0.9256055355072021,wrong_articleType
|
| 64 |
+
42799,29722,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/18413.jpg,Sports Shoes,Shoes,Men,Footwear,/.cache/kagglehub/datasets/paramaggarwal/fashion-product-images-dataset/versions/1/fashion-dataset/images/22874.jpg,Casual Shoes,Shoes,Men,Footwear,0.8891521692276001,wrong_articleType
|
artifacts/evaluation/image_to_image_category_breakdown.csv
ADDED
|
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
relevance_level,category,num_queries,precision@1,recall@1,map@1,ndcg@1,mrr@1,precision@5,recall@5,map@5,ndcg@5,mrr@5,precision@10,recall@10,map@10,ndcg@10,mrr@10,precision@20,recall@20,map@20,ndcg@20,mrr@20,precision@50,recall@50,map@50,ndcg@50,mrr@50,precision@100,recall@100,map@100,ndcg@100,mrr@100
|
| 2 |
+
strict,Tops,18,0.8333333333333334,0.000473215975771342,0.8333333333333334,0.8333333333333334,0.8333333333333334,0.7111111111111111,0.002019054829957726,0.6640740740740741,0.7350814933641876,0.875,0.6333333333333333,0.0035964414158622,0.5517328042328042,0.6698131142608914,0.8819444444444444,0.611111111111111,0.006940500977979683,0.49793498728128505,0.642204687563015,0.8819444444444444,0.58,0.016467915956842702,0.42422927076383904,0.60326939731902,0.8819444444444444,0.5394444444444445,0.030632847498264875,0.3707854832660573,0.5634845554012787,0.8819444444444444
|
| 3 |
+
strict,Tshirts,88,0.9431818181818182,0.00013351950993513846,0.9431818181818182,0.9431818181818182,0.9431818181818182,0.934090909090909,0.0006611628744980952,0.9121969696969696,0.9385926391750444,0.9696969696969696,0.9090909090909091,0.0012869350355194068,0.87846636002886,0.9200122972592815,0.9696969696969696,0.8880681818181819,0.002514349325646041,0.8437451498664733,0.9015957778736605,0.9696969696969696,0.8620454545454546,0.006101680737156389,0.8008346714138312,0.8756923030610495,0.9696969696969696,0.847159090909091,0.011992625862246475,0.7759391024914041,0.8591985295439801,0.9696969696969696
|
| 4 |
+
strict,Handbags,18,0.9444444444444444,0.0005372266464416635,0.9444444444444444,0.9444444444444444,0.9444444444444444,0.9222222222222223,0.0026229300973328274,0.9222222222222223,0.9298661024986288,0.9444444444444444,0.9166666666666666,0.00521425862722791,0.9061728395061728,0.9229752610322923,0.9444444444444444,0.9249999999999999,0.010523321956769055,0.9094763435643208,0.9265857720796262,0.9444444444444444,0.9244444444444445,0.026292504108203763,0.9081574252746315,0.9254140074792109,0.9444444444444444,0.9188888888888889,0.05226899254203008,0.901953176878259,0.9208904224917797,0.9444444444444444
|
| 5 |
+
strict,Sports Shoes,21,0.8095238095238095,0.000401748788845563,0.8095238095238095,0.8095238095238095,0.8095238095238095,0.7904761904761903,0.00196147938083422,0.7620634920634921,0.7952007057071833,0.8571428571428571,0.7904761904761903,0.003922958761668439,0.7430461073318215,0.7933768670693558,0.861904761904762,0.8023809523809523,0.007964078931820866,0.7378201032897517,0.8002812926071309,0.8647058823529411,0.7771428571428571,0.01928394186458703,0.7122546797137153,0.7813996327502599,0.8647058823529411,0.7785714285714285,0.038638780574264446,0.7061694368489198,0.7809789784486773,0.8647058823529411
|
| 6 |
+
strict,Bracelet,1,1.0,0.015384615384615385,1.0,1.0,1.0,0.8,0.06153846153846154,0.76,0.8539316501572937,1.0,0.5,0.07692307692307693,0.43555555555555553,0.6203974344166849,1.0,0.45,0.13846153846153847,0.32327228327228325,0.5458694151459268,1.0,0.32,0.24615384615384617,0.17908286005646976,0.4023703741270275,1.0,0.3,0.46153846153846156,0.2023320688963479,0.48024162892530664,1.0
|
| 7 |
+
strict,Kurtas,28,0.9285714285714286,0.0005038369118672972,0.9285714285714286,0.9285714285714286,0.9285714285714286,0.9285714285714286,0.0025191845593364862,0.899047619047619,0.9304727963376725,0.9642857142857143,0.9249999999999999,0.005018990775908845,0.8867375283446712,0.927533115144157,0.9642857142857143,0.9214285714285714,0.009999224866289439,0.8759252746230991,0.9247340909270163,0.9642857142857143,0.9,0.02441671188279978,0.8437564062102467,0.9075707107832117,0.9642857142857143,0.8821428571428571,0.04786450662739322,0.8145613138827877,0.8909763181227406,0.9642857142857143
|
| 8 |
+
strict,Heels,22,0.7272727272727273,0.0005501306560308074,0.7272727272727273,0.7272727272727273,0.7272727272727273,0.7454545454545456,0.002819419612157888,0.6916666666666667,0.7453831654409865,0.7954545454545454,0.7181818181818181,0.005432540228304222,0.6322132034632035,0.7262726196617075,0.8075757575757575,0.7318181818181819,0.01107137945262,0.6186297986714009,0.7333608756562491,0.8075757575757575,0.7054545454545456,0.026681336817494152,0.5737303078669301,0.7128166547944184,0.8075757575757575,0.7063636363636363,0.05343143996699217,0.5616343166115465,0.7108525914364241,0.8075757575757575
|
| 9 |
+
strict,Jeans,7,0.8571428571428571,0.0014261944378416924,0.8571428571428571,0.8571428571428571,0.8571428571428571,0.9714285714285714,0.008081768481102923,0.9347619047619047,0.951548542103769,0.9285714285714286,0.9714285714285714,0.016163536962205845,0.942641723356009,0.9586395731093061,0.9285714285714286,0.9571428571428572,0.03185167577846446,0.928934316334803,0.9535232797506514,0.9285714285714286,0.9428571428571428,0.07844069408129307,0.9034625773894069,0.9439557263206402,0.9285714285714286,0.9085714285714286,0.15117661041121938,0.8587349398390582,0.9170977421855958,0.9285714285714286
|
| 10 |
+
strict,Ring,2,1.0,0.008547008547008548,1.0,1.0,1.0,1.0,0.042735042735042736,1.0,1.0,1.0,1.0,0.08547008547008547,1.0,1.0,1.0,1.0,0.17094017094017094,1.0,1.0,1.0,0.8999999999999999,0.3846153846153846,0.879746704990426,0.925948336628803,1.0,0.71,0.6068376068376069,0.6596103048359846,0.7728204820135358,1.0
|
| 11 |
+
strict,Sandals,11,1.0,0.0011185682326621922,1.0,1.0,1.0,0.8909090909090908,0.0049827130364043124,0.8863636363636364,0.920105110213332,1.0,0.8181818181818182,0.009151921903599756,0.7901948051948053,0.8582601574801992,1.0,0.7363636363636363,0.016473459426479563,0.6813522767573921,0.786617765694098,1.0,0.6545454545454545,0.036607687614399025,0.5708433799760771,0.7027965170098897,1.0,0.6218181818181818,0.06955460646735814,0.5154956048169166,0.6587621043447288,1.0
|
| 12 |
+
strict,Casual Shoes,38,0.8157894736842105,0.0002868458064993709,0.8157894736842105,0.8157894736842105,0.8157894736842105,0.7947368421052632,0.001397216670367903,0.7376315789473684,0.7978539329174572,0.875,0.7736842105263156,0.002720408616477904,0.7031140350877193,0.7812549803094687,0.875,0.7526315789473683,0.005292767784440002,0.6733284655197337,0.7639756161487942,0.875,0.7142105263157894,0.012556443852246649,0.6244824529197538,0.7302952495486165,0.875,0.6878947368421054,0.024187578651269522,0.5852266030661072,0.7039951578419168,0.875
|
| 13 |
+
strict,Watches,29,0.9655172413793104,0.0003799753016053956,0.9655172413793104,0.9655172413793104,0.9655172413793104,0.993103448275862,0.001954158693970606,0.9842528735632183,0.9883048205078064,0.9827586206896551,0.996551724137931,0.003921887934427119,0.989900109469075,0.9924106287483421,0.9827586206896551,0.9879310344827585,0.007775923136424702,0.9811583860103931,0.9878932943806396,0.9827586206896551,0.9800000000000001,0.019283746556473833,0.9675466617874048,0.9817942666407994,0.9827586206896551,0.9872413793103448,0.038852474589151705,0.9737364590550174,0.986729869147543,0.9827586206896551
|
| 14 |
+
strict,Sunglasses,14,1.0,0.0009328358208955222,1.0,1.0,1.0,0.9857142857142858,0.004597547974413646,0.9792857142857143,0.9878871355259423,1.0,0.9928571428571429,0.009261727078891255,0.985031179138322,0.9921395797750686,1.0,0.9892857142857142,0.01845682302771855,0.9828267615321187,0.990146574097115,1.0,0.9885714285714285,0.0461087420042644,0.9804772680341108,0.9894090703246824,1.0,0.9892857142857144,0.09228411513859278,0.9800475974890659,0.9896686540541184,1.0
|
| 15 |
+
strict,Belts,9,0.8888888888888888,0.0010946907498631637,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.005473453749315818,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.010946907498631636,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.021893814997263273,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.05473453749315818,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8877777777777778,0.10933223864258347,0.8870349285153634,0.8879579953355989,0.8888888888888888
|
| 16 |
+
strict,Briefs,11,0.9090909090909091,0.001074575542660649,0.9090909090909091,0.9090909090909091,0.9090909090909091,0.8727272727272727,0.005157962604771116,0.8645454545454545,0.8817468018046227,0.9090909090909091,0.8454545454545456,0.009993552546744036,0.82489898989899,0.8590717717454808,0.9090909090909091,0.8409090909090909,0.019879647539222008,0.8057002867312817,0.851304274608713,0.9090909090909091,0.8345454545454545,0.049323017408123795,0.7797544651861112,0.8409885786703595,0.9109848484848484,0.8163636363636364,0.0964968837309263,0.7559347531810946,0.8250476053830815,0.9109848484848484
|
| 17 |
+
strict,Sweatshirts,6,0.6666666666666666,0.002347417840375587,0.6666666666666666,0.6666666666666666,0.6666666666666666,0.7333333333333333,0.012910798122065727,0.5772222222222222,0.7030006654878274,0.8055555555555555,0.6499999999999999,0.022887323943661973,0.4982671957671958,0.6575567399084997,0.8055555555555555,0.5666666666666668,0.03990610328638498,0.40275116044659387,0.5950517107868337,0.8055555555555555,0.39666666666666667,0.0698356807511737,0.258175540983181,0.4552720844364259,0.8055555555555555,0.30333333333333334,0.1068075117370892,0.17095746280443422,0.36118146623273106,0.8055555555555555
|
| 18 |
+
strict,Tunics,1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.03,0.013157894736842105,0.0006882474954764112,0.022243500784429285,0.012048192771084338
|
| 19 |
+
strict,Flip Flops,6,0.8333333333333334,0.0009127418765972982,0.8333333333333334,0.8333333333333334,0.8333333333333334,0.8666666666666667,0.00474625775830595,0.8005555555555555,0.8650790853234042,0.9166666666666666,0.8666666666666667,0.0094925155166119,0.7933267195767196,0.8671298801552086,0.9166666666666666,0.8750000000000001,0.019167579408543262,0.7847317385988052,0.8725926291743938,0.9166666666666666,0.8466666666666667,0.04636728733114275,0.7570939283419759,0.8525655947134795,0.9166666666666666,0.795,0.08707557502738227,0.6949324326906864,0.8102092833562632,0.9166666666666666
|
| 20 |
+
strict,Lipstick,4,1.0,0.003861003861003861,1.0,1.0,1.0,1.0,0.019305019305019305,1.0,1.0,1.0,1.0,0.03861003861003861,1.0,1.0,1.0,1.0,0.07722007722007722,1.0,1.0,1.0,0.985,0.19015444015444016,0.9818328715167078,0.9891411888774015,1.0,0.9325,0.36003861003861004,0.9186834062648591,0.9485443435489016,1.0
|
| 21 |
+
strict,Wallets,10,1.0,0.0010787486515641855,1.0,1.0,1.0,0.9800000000000001,0.005285868392664509,0.9800000000000001,0.9868794922487659,1.0,0.96,0.010355987055016183,0.9516111111111112,0.9711617948605678,1.0,0.9400000000000001,0.02028047464940669,0.9178252981109019,0.9532050285113659,1.0,0.9119999999999999,0.04919093851132686,0.8664589866758758,0.9262345999290152,1.0,0.881,0.09503775620280473,0.8206756447678469,0.897643609708151,1.0
|
| 22 |
+
strict,Shirts,29,0.9655172413793104,0.000300690514288169,0.9655172413793104,0.9655172413793104,0.9655172413793104,0.9724137931034482,0.0015141915183797077,0.9564367816091954,0.9705540810290588,0.9827586206896551,0.9793103448275862,0.0030498609306371417,0.9600985221674878,0.9756584344124023,0.9827586206896551,0.9810344827586207,0.006110460808213146,0.9634136390755373,0.9781400194135245,0.9827586206896551,0.9841379310344828,0.015324477281757749,0.9683349960180094,0.9817267004341467,0.9827586206896551,0.9744827586206896,0.03034826404922733,0.959048408356997,0.9753656044005464,0.9827586206896551
|
| 23 |
+
strict,Nightdress,5,0.6,0.00320855614973262,0.6,0.6,0.6,0.6,0.0160427807486631,0.532,0.6259609385620779,0.7666666666666666,0.6599999999999999,0.03529411764705882,0.5399920634920635,0.662092424737008,0.7666666666666666,0.62,0.06631016042780749,0.48820338820106624,0.6329114698863278,0.7666666666666666,0.5599999999999999,0.1497326203208556,0.41596126176411186,0.58214044546395,0.7666666666666666,0.45,0.24064171122994651,0.31681827426472386,0.4902098100856639,0.7666666666666666
|
| 24 |
+
strict,Formal Shoes,6,0.8333333333333334,0.001310272536687631,0.8333333333333334,0.8333333333333334,0.8333333333333334,0.9666666666666667,0.00759958071278826,0.9238888888888889,0.9434732991210639,0.9166666666666666,0.9666666666666667,0.01519916142557652,0.9361838624338624,0.9527145742504947,0.9166666666666666,0.9249999999999999,0.029088050314465406,0.8877035691490026,0.9278414483107085,0.9166666666666666,0.9233333333333332,0.07258909853249475,0.8687266385514699,0.9253660895224423,0.9166666666666666,0.8916666666666666,0.1401991614255765,0.8248717705614766,0.9002754694538958,0.9166666666666666
|
| 25 |
+
strict,Innerwear Vests,2,0.5,0.002074688796680498,0.5,0.5,0.5,0.5,0.01037344398340249,0.5,0.5,0.5,0.45,0.01867219917012448,0.4331944444444445,0.46331803895032,0.5,0.325,0.026970954356846474,0.2999197330447331,0.3723604764700568,0.5,0.17,0.035269709543568464,0.13616695277902177,0.23502291154293245,0.5172413793103449,0.105,0.043568464730290454,0.07077588396524034,0.16022698417310127,0.5172413793103449
|
| 26 |
+
strict,Duffel Bag,2,0.5,0.005747126436781609,0.5,0.5,0.5,0.4,0.022988505747126436,0.4,0.4343974612438291,0.5,0.25,0.028735632183908046,0.24166666666666664,0.32109336333445054,0.5,0.19999999999999998,0.04597701149425287,0.14315752616836208,0.2588652879092883,0.5263157894736842,0.13,0.07471264367816091,0.06556844288821953,0.1799251457967402,0.5263157894736842,0.1,0.11494252873563218,0.04246524431181208,0.15255117715306427,0.5263157894736842
|
| 27 |
+
strict,Earrings,5,1.0,0.0024096385542168677,1.0,1.0,1.0,1.0,0.012048192771084338,1.0,1.0,1.0,1.0,0.024096385542168676,1.0,1.0,1.0,0.99,0.047710843373493975,0.9889736842105263,0.9933125017230573,1.0,0.9879999999999999,0.11903614457831324,0.9830448024360002,0.9906635892496812,1.0,0.97,0.23373493975903611,0.9578372012136951,0.9758756623374314,1.0
|
| 28 |
+
strict,Churidar,1,1.0,0.034482758620689655,1.0,1.0,1.0,0.6,0.10344827586206896,0.55,0.6992148198508501,1.0,0.4,0.13793103448275862,0.315,0.5173633627401373,1.0,0.25,0.1724137931034483,0.1706578947368421,0.3667543921694986,1.0,0.16,0.27586206896551724,0.1370397538561852,0.35189484617462896,1.0,0.15,0.5172413793103449,0.1784848472928275,0.47955956737702393,1.0
|
| 29 |
+
strict,Sunscreen,1,1.0,0.07142857142857142,1.0,1.0,1.0,1.0,0.35714285714285715,1.0,1.0,1.0,0.6,0.42857142857142855,0.6,0.727329844310522,1.0,0.3,0.42857142857142855,0.42857142857142855,0.5889255678238341,1.0,0.22,0.7857142857142857,0.5191945848349789,0.7614027878714363,1.0,0.11,0.7857142857142857,0.5191945848349789,0.7614027878714363,1.0
|
| 30 |
+
strict,Sarees,5,1.0,0.002347417840375587,1.0,1.0,1.0,1.0,0.011737089201877934,1.0,1.0,1.0,1.0,0.023474178403755867,1.0,1.0,1.0,1.0,0.046948356807511735,1.0,1.0,1.0,0.984,0.11549295774647887,0.9779196817365042,0.9877306379489946,1.0,0.978,0.2295774647887324,0.9665841376132696,0.9818517710494777,1.0
|
| 31 |
+
strict,Kurta Sets,2,0.5,0.005376344086021506,0.5,0.5,0.5,0.6000000000000001,0.03225806451612903,0.42833333333333334,0.565602538756171,0.6666666666666666,0.65,0.06989247311827958,0.4602182539682539,0.6164863042785369,0.6666666666666666,0.55,0.11827956989247311,0.36901370376699316,0.5565804219537898,0.6666666666666666,0.39,0.2096774193548387,0.24343788318549042,0.43539919453551584,0.6666666666666666,0.25,0.26881720430107525,0.14958701958535434,0.32686769954340417,0.6666666666666666
|
| 32 |
+
strict,Perfume and Body Mist,6,1.0,0.0016611295681063125,1.0,1.0,1.0,1.0,0.008305647840531562,1.0,1.0,1.0,0.9500000000000001,0.015780730897009966,0.940462962962963,0.964941894600388,1.0,0.9500000000000001,0.03156146179401994,0.9254808651673977,0.9601064414231008,1.0,0.9266666666666667,0.0769656699889258,0.8827349677510031,0.9367163251902761,1.0,0.9550000000000001,0.1586378737541528,0.9061359952402063,0.9546100761773779,1.0
|
| 33 |
+
strict,Ties,3,1.0,0.003816793893129771,1.0,1.0,1.0,1.0,0.019083969465648856,1.0,1.0,1.0,1.0,0.03816793893129771,1.0,1.0,1.0,1.0,0.07633587786259542,1.0,1.0,1.0,1.0,0.19083969465648856,1.0,1.0,1.0,1.0,0.3816793893129771,1.0,1.0,1.0
|
| 34 |
+
strict,Dresses,5,0.6,0.0012958963282937365,0.6,0.6,0.6,0.56,0.006047516198704103,0.466,0.5749652118921823,0.8,0.6,0.012958963282937367,0.42681746031746026,0.5938983437139892,0.8,0.5700000000000001,0.024622030237580993,0.3741840495246068,0.5730384560433783,0.8,0.52,0.056155507559395246,0.3195002405458173,0.5350723247824887,0.8,0.458,0.09892008639308855,0.26001442206612946,0.48226838810474304,0.8
|
| 35 |
+
strict,Socks,9,0.8888888888888888,0.001299545159194282,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.9777777777777779,0.007147498375568551,0.9492592592592592,0.9623155327473759,0.9444444444444444,0.9888888888888889,0.014457439896036385,0.9674559082892417,0.9755453593002135,0.9444444444444444,0.9944444444444444,0.029077322936972058,0.9800125574603129,0.984217773374038,0.9444444444444444,0.9933333333333333,0.07261208576998052,0.9829384486368201,0.9877997286899625,0.9444444444444444,0.9955555555555556,0.14554905782975958,0.9878975260871586,0.991661302899367,0.9444444444444444
|
| 36 |
+
strict,Jeggings,1,1.0,0.030303030303030304,1.0,1.0,1.0,0.4,0.06060606060606061,0.4,0.5531464700081437,1.0,0.4,0.12121212121212122,0.29,0.5009732673492617,1.0,0.25,0.15151515151515152,0.16285714285714287,0.3596680771870457,1.0,0.18,0.2727272727272727,0.1189087207330108,0.3339284697995714,1.0,0.14,0.42424242424242425,0.14345666705458032,0.4164037795526288,1.0
|
| 37 |
+
strict,Lounge Shorts,1,0.0,0.0,0.0,0.0,0.0,0.2,0.030303030303030304,0.1,0.21398626473452756,0.5,0.2,0.06060606060606061,0.07857142857142857,0.2122263659729146,0.5,0.2,0.12121212121212122,0.06258888170652877,0.20833368970365634,0.5,0.16,0.24242424242424243,0.06437010701716583,0.23378283646812098,0.5,0.09,0.2727272727272727,0.06856591121297004,0.2507402029190052,0.5
|
| 38 |
+
strict,Pendant,4,0.75,0.004285714285714286,0.75,0.75,0.75,0.75,0.02142857142857143,0.6799999999999999,0.7611015405244299,0.875,0.7,0.04,0.5960714285714286,0.7239411376471965,0.875,0.6625000000000001,0.0757142857142857,0.5622722098055883,0.6899899124270824,0.875,0.6199999999999999,0.17714285714285716,0.49511633566219865,0.6460779334268033,0.875,0.5225,0.29857142857142854,0.3785243921860037,0.5625496937242438,0.875
|
| 39 |
+
strict,Track Pants,3,0.6666666666666666,0.0022002200220022,0.6666666666666666,0.6666666666666666,0.6666666666666666,0.9333333333333332,0.015401540154015401,0.8477777777777779,0.886946598242128,0.8333333333333334,0.9,0.0297029702970297,0.821957671957672,0.8784185804229518,0.8333333333333334,0.8333333333333334,0.05500550055005501,0.762849361680631,0.8422972947379832,0.8333333333333334,0.7400000000000001,0.1221122112211221,0.6403545872082947,0.7669482809744393,0.8333333333333334,0.7166666666666667,0.23652365236523654,0.5883492492496344,0.739048351933642,0.8333333333333334
|
| 40 |
+
strict,Backpacks,4,0.75,0.001037344398340249,0.75,0.75,0.75,0.85,0.005878284923928077,0.7916666666666666,0.8289121131198787,0.8333333333333334,0.875,0.01210235131396957,0.795436507936508,0.8528125449384201,0.8333333333333334,0.8625,0.023858921161825725,0.7809667962004455,0.8500913788506713,0.8333333333333334,0.9,0.06224066390041494,0.8140456532456364,0.8842024216997088,0.8333333333333334,0.9225000000000001,0.12759336099585064,0.8438803305819068,0.9075195313422983,0.8333333333333334
|
| 41 |
+
strict,Nail Polish,3,1.0,0.003610108303249098,1.0,1.0,1.0,1.0,0.018050541516245487,1.0,1.0,1.0,1.0,0.036101083032490974,1.0,1.0,1.0,1.0,0.07220216606498195,1.0,1.0,1.0,1.0,0.18050541516245489,1.0,1.0,1.0,0.93,0.3357400722021661,0.9191702035369559,0.9472529881206961,1.0
|
| 42 |
+
strict,Salwar,1,1.0,0.03225806451612903,1.0,1.0,1.0,1.0,0.16129032258064516,1.0,1.0,1.0,0.8,0.25806451612903225,0.7577777777777778,0.8572048559638626,1.0,0.65,0.41935483870967744,0.5564457927693222,0.7299785971916607,1.0,0.38,0.6129032258064516,0.46999522858762227,0.6802443710493814,1.0,0.22,0.7096774193548387,0.5045755228453358,0.7345444223989535,1.0
|
| 43 |
+
strict,Mascara,1,1.0,0.09090909090909091,1.0,1.0,1.0,0.4,0.18181818181818182,0.4,0.5531464700081437,1.0,0.4,0.36363636363636365,0.28194444444444444,0.4946396555628011,1.0,0.2,0.36363636363636365,0.2563131313131313,0.46602873234483255,1.0,0.12,0.5454545454545454,0.2913556749763646,0.5509725759034292,1.0,0.07,0.6363636363636364,0.3009975482546015,0.5851562521409719,1.0
|
| 44 |
+
strict,Stoles,2,1.0,0.011235955056179775,1.0,1.0,1.0,1.0,0.056179775280898875,1.0,1.0,1.0,1.0,0.11235955056179775,1.0,1.0,1.0,0.8999999999999999,0.20224719101123595,0.8923026315789473,0.9327055362560578,1.0,0.55,0.3089887640449438,0.4852705541491801,0.6514701244776986,1.0,0.33,0.3707865168539326,0.3066179900546065,0.4827018890897537,1.0
|
| 45 |
+
strict,Flats,5,0.2,0.00040080160320641277,0.2,0.2,0.2,0.36,0.003607214428857715,0.2806666666666667,0.345751541923641,0.4,0.27999999999999997,0.0056112224448897794,0.20354761904761903,0.29574486445511916,0.4,0.24000000000000005,0.009619238476953907,0.14323649763549143,0.2618475855527742,0.4287179487179487,0.252,0.02525050100200401,0.12070129771980262,0.2623730162803078,0.4287179487179487,0.21000000000000002,0.04208416833667335,0.08964820610638875,0.2260451503048151,0.4287179487179487
|
| 46 |
+
strict,Night suits,2,1.0,0.007142857142857143,1.0,1.0,1.0,0.9,0.03214285714285714,0.855,0.915209948681596,1.0,0.7,0.05,0.6118849206349206,0.7620541057015415,1.0,0.6,0.08571428571428572,0.4759225211063446,0.6691591361209503,1.0,0.38,0.13571428571428573,0.2640275276506798,0.4725499840896291,1.0,0.25,0.17857142857142855,0.15176417827981256,0.3369805802336041,1.0
|
| 47 |
+
strict,Trousers,2,1.0,0.001890359168241966,1.0,1.0,1.0,1.0,0.00945179584120983,1.0,1.0,1.0,1.0,0.01890359168241966,1.0,1.0,1.0,1.0,0.03780718336483932,1.0,1.0,1.0,1.0,0.0945179584120983,1.0,1.0,1.0,1.0,0.1890359168241966,1.0,1.0,1.0
|
| 48 |
+
strict,Jackets,8,0.75,0.0029182879377431907,0.75,0.75,0.75,0.825,0.016050583657587547,0.7616666666666667,0.811407461511197,0.8375,0.8125,0.0316147859922179,0.7336309523809523,0.8088874600237141,0.8375,0.6875,0.05350194552529183,0.6024202117971469,0.722470889314462,0.8375,0.5575,0.10846303501945524,0.4471102483275035,0.6109008481441246,0.8375,0.43125,0.16780155642023345,0.31138592035229046,0.4940804120957518,0.8375
|
| 49 |
+
strict,Free Gifts,2,0.5,0.005555555555555556,0.5,0.5,0.5,0.4,0.022222222222222223,0.38,0.42696582507864683,0.5,0.25,0.027777777777777776,0.2257142857142857,0.313753566530828,0.5,0.2,0.044444444444444446,0.1432936507936508,0.2535523425626366,0.5,0.09,0.05,0.059685881370091905,0.14573698833072016,0.5,0.07,0.07777777777777778,0.03756069564005359,0.11739410689421408,0.5
|
| 50 |
+
strict,Trunk,2,1.0,0.007194244604316547,1.0,1.0,1.0,0.9,0.03237410071942446,0.88,0.9269658250786468,1.0,0.75,0.0539568345323741,0.6771031746031746,0.8088819995806238,1.0,0.55,0.07913669064748202,0.472890749601276,0.6495438787446793,1.0,0.49,0.1762589928057554,0.35968606112983137,0.5670900891664332,1.0,0.355,0.25539568345323743,0.2295702669783784,0.4347884918718558,1.0
|
| 51 |
+
strict,Sweaters,3,1.0,0.003636363636363637,1.0,1.0,1.0,0.6,0.01090909090909091,0.5566666666666666,0.702097646672096,1.0,0.5,0.018181818181818184,0.3968253968253968,0.5957798807600156,1.0,0.5166666666666667,0.037575757575757575,0.34869046158519845,0.5771298290002843,1.0,0.3866666666666667,0.0703030303030303,0.2193962318157823,0.4515360643864958,1.0,0.32,0.11636363636363638,0.15371971630285372,0.37527734571391047,1.0
|
| 52 |
+
strict,Bangle,1,1.0,0.011904761904761904,1.0,1.0,1.0,0.8,0.047619047619047616,0.8,0.8687949224876582,1.0,0.6,0.07142857142857142,0.569047619047619,0.715550648768261,1.0,0.5,0.11904761904761904,0.3965102707749766,0.6040344146789818,1.0,0.38,0.2261904761904762,0.24586151657043093,0.4704905234642426,1.0,0.25,0.2976190476190476,0.17086845758886152,0.3817593970885202,1.0
|
| 53 |
+
strict,Leggings,2,1.0,0.005681818181818182,1.0,1.0,1.0,0.9,0.025568181818181816,0.88,0.9269658250786468,1.0,0.8500000000000001,0.048295454545454544,0.8077182539682539,0.8876683119885544,1.0,0.775,0.08806818181818182,0.7049117947540935,0.8237824706047663,1.0,0.63,0.17897727272727273,0.5092176210460404,0.6915821275884416,1.0,0.55,0.3125,0.4031281840282227,0.6073451468555797,1.0
|
| 54 |
+
strict,Shorts,5,1.0,0.0018315018315018315,1.0,1.0,1.0,0.8800000000000001,0.00805860805860806,0.8560000000000001,0.8940730565571915,1.0,0.82,0.015018315018315017,0.7525000000000001,0.8427832965156459,1.0,0.8400000000000001,0.03076923076923077,0.7520755867369645,0.8503642659273177,1.0,0.756,0.06923076923076923,0.6458146793447921,0.7832621877479559,1.0,0.704,0.12893772893772892,0.5714074848187194,0.7336770611234875,1.0
|
| 55 |
+
strict,Waistcoat,1,1.0,0.07142857142857142,1.0,1.0,1.0,0.6,0.21428571428571427,0.6,0.7227265726449519,1.0,0.4,0.2857142857142857,0.3571428571428571,0.542364015420035,1.0,0.25,0.35714285714285715,0.27611044417767105,0.48189411072527655,1.0,0.1,0.35714285714285715,0.27611044417767105,0.48189411072527655,1.0,0.05,0.35714285714285715,0.27611044417767105,0.48189411072527655,1.0
|
| 56 |
+
strict,Jewellery Set,1,1.0,0.017543859649122806,1.0,1.0,1.0,0.8,0.07017543859649122,0.76,0.8539316501572937,1.0,0.7,0.12280701754385964,0.619047619047619,0.769526190239283,1.0,0.65,0.22807017543859648,0.5286190770014298,0.7142343372392715,1.0,0.36,0.3157894736842105,0.2669502470517164,0.4691410506409163,1.0,0.23,0.40350877192982454,0.2576372057162467,0.48504196053554893,1.0
|
| 57 |
+
strict,Capris,1,1.0,0.005747126436781609,1.0,1.0,1.0,1.0,0.028735632183908046,1.0,1.0,1.0,0.7,0.040229885057471264,0.6527777777777778,0.7846170207230131,1.0,0.8,0.09195402298850575,0.6608164264356214,0.8213777907047924,1.0,0.58,0.16666666666666666,0.44894920911260494,0.6489563243775859,1.0,0.42,0.2413793103448276,0.2854371972189425,0.49879153485719846,1.0
|
| 58 |
+
strict,Accessory Gift Set,1,1.0,0.010416666666666666,1.0,1.0,1.0,1.0,0.052083333333333336,1.0,1.0,1.0,1.0,0.10416666666666667,1.0,1.0,1.0,1.0,0.20833333333333334,1.0,1.0,1.0,0.82,0.4270833333333333,0.7891848672940692,0.8678108204621303,1.0,0.61,0.6354166666666666,0.5565451391026561,0.7088250095433447,1.0
|
| 59 |
+
strict,Nail Essentials,1,1.0,0.2,1.0,1.0,1.0,0.2,0.2,0.2,0.3391602052736161,1.0,0.1,0.2,0.2,0.3391602052736161,1.0,0.05,0.2,0.2,0.3391602052736161,1.0,0.02,0.2,0.2,0.3391602052736161,1.0,0.01,0.2,0.2,0.3391602052736161,1.0
|
| 60 |
+
strict,Lip Gloss,2,0.5,0.004629629629629629,0.5,0.5,0.5,0.8,0.037037037037037035,0.6766666666666666,0.7573857224418388,0.75,0.85,0.07870370370370369,0.7164880952380952,0.8033608001768469,0.75,0.725,0.13425925925925924,0.6289332915106908,0.734243063947948,0.75,0.41,0.18981481481481483,0.35190635338608367,0.4962503904811356,0.75,0.29000000000000004,0.2685185185185185,0.21608790078745127,0.37035956044962326,0.75
|
| 61 |
+
strict,Dupatta,1,1.0,0.008695652173913044,1.0,1.0,1.0,1.0,0.043478260869565216,1.0,1.0,1.0,1.0,0.08695652173913043,1.0,1.0,1.0,0.9,0.1565217391304348,0.8949999999999999,0.9336975380477095,1.0,0.66,0.28695652173913044,0.5975185793021969,0.7408144752766844,1.0,0.66,0.5739130434782609,0.523364926381015,0.7113380080588599,1.0
|
| 62 |
+
strict,Clutches,1,0.0,0.0,0.0,0.0,0.0,0.6,0.010452961672473868,0.2866666666666666,0.4468535299918563,0.3333333333333333,0.8,0.027874564459930314,0.5142063492063491,0.6410457898283654,0.3333333333333333,0.65,0.04529616724738676,0.4386946532999164,0.5915761009517232,0.3333333333333333,0.54,0.09407665505226481,0.3401172568868676,0.5351062997179783,0.3333333333333333,0.43,0.14982578397212543,0.24454623639591624,0.451872041833187,0.3333333333333333
|
| 63 |
+
strict,Deodorant,5,0.6,0.0017341040462427744,0.6,0.6,0.6,0.64,0.009248554913294797,0.62,0.6427972529469056,0.7,0.6799999999999999,0.019653179190751442,0.5919920634920636,0.6705892316486792,0.7333333333333333,0.68,0.03930635838150289,0.5670297465262635,0.6761558959652106,0.7333333333333333,0.6399999999999999,0.09248554913294797,0.5098814798788986,0.6459645556234792,0.7333333333333333,0.65,0.18786127167630057,0.49470245825856446,0.6520823316458534,0.7333333333333333
|
| 64 |
+
strict,Caps,1,1.0,0.0035587188612099642,1.0,1.0,1.0,1.0,0.017793594306049824,1.0,1.0,1.0,1.0,0.03558718861209965,1.0,1.0,1.0,0.95,0.06761565836298933,0.932691133470932,0.963643712011461,1.0,0.8,0.1423487544483986,0.751990213507714,0.848531942585676,1.0,0.52,0.18505338078291814,0.45153496224390915,0.6148134898491832,1.0
|
| 65 |
+
strict,Lip Liner,1,1.0,0.022727272727272728,1.0,1.0,1.0,1.0,0.11363636363636363,1.0,1.0,1.0,0.9,0.20454545454545456,0.89,0.9337457765456111,1.0,0.55,0.25,0.5051973684210527,0.6702241792113562,1.0,0.4,0.45454545454545453,0.3163826153309737,0.5442061349867339,1.0,0.37,0.8409090909090909,0.4780995104868671,0.7797093797203756,1.0
|
| 66 |
+
strict,Foundation and Primer,1,1.0,0.014705882352941176,1.0,1.0,1.0,0.8,0.058823529411764705,0.8,0.8687949224876582,1.0,0.4,0.058823529411764705,0.4,0.5637884576902257,1.0,0.25,0.07352941176470588,0.21315789473684213,0.3967156325994382,1.0,0.12,0.08823529411764706,0.09097744360902256,0.23393478673855006,1.0,0.09,0.1323529411764706,0.07147505142527508,0.21923599509800473,1.0
|
| 67 |
+
strict,Blazers,1,1.0,0.14285714285714285,1.0,1.0,1.0,0.6,0.42857142857142855,0.6,0.7227265726449519,1.0,0.4,0.5714285714285714,0.5238095238095238,0.6836550817096436,1.0,0.2,0.5714285714285714,0.5238095238095238,0.6836550817096436,1.0,0.08,0.5714285714285714,0.5238095238095238,0.6836550817096436,1.0,0.04,0.5714285714285714,0.5238095238095238,0.6836550817096436,1.0
|
| 68 |
+
strict,Highlighter and Blush,1,1.0,0.02702702702702703,1.0,1.0,1.0,0.8,0.10810810810810811,0.8,0.8687949224876582,1.0,0.9,0.24324324324324326,0.8354365079365079,0.9148568823583791,1.0,0.6,0.32432432432432434,0.5151271608508451,0.6929287724702978,1.0,0.28,0.3783783783783784,0.2961016105752948,0.49857593164974306,1.0,0.15,0.40540540540540543,0.3016551092794785,0.5138737864513606,1.0
|
| 69 |
+
strict,Scarves,1,0.0,0.0,0.0,0.0,0.0,0.6,0.02564102564102564,0.3833333333333333,0.5296347172140421,0.5,0.5,0.042735042735042736,0.30436507936507934,0.48331483694589455,0.5,0.6,0.10256410256410256,0.3611967199467199,0.5632640355190806,0.5,0.7,0.29914529914529914,0.45502743292307896,0.6563659175717806,0.5,0.66,0.5641025641025641,0.4402462040399927,0.6430211062153521,0.5
|
| 70 |
+
strict,Eye Cream,1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0
|
| 71 |
+
strict,Stockings,1,1.0,0.03571428571428571,1.0,1.0,1.0,0.2,0.03571428571428571,0.2,0.3391602052736161,1.0,0.2,0.07142857142857142,0.12222222222222223,0.2863459897524693,1.0,0.15,0.10714285714285714,0.07361111111111111,0.22318299031407177,1.0,0.1,0.17857142857142858,0.06383423923746505,0.2263125110117993,1.0,0.1,0.35714285714285715,0.08106664279525698,0.3160757216612173,1.0
|
| 72 |
+
strict,Camisoles,1,1.0,0.02631578947368421,1.0,1.0,1.0,0.8,0.10526315789473684,0.8,0.8687949224876582,1.0,0.5,0.13157894736842105,0.4625,0.633219679627003,1.0,0.25,0.13157894736842105,0.23125,0.408659305633533,1.0,0.1,0.13157894736842105,0.12171052631578948,0.2684716999703646,1.0,0.05,0.13157894736842105,0.12171052631578948,0.2684716999703646,1.0
|
| 73 |
+
medium,Tops,18,1.0,6.501527859046876e-05,1.0,1.0,1.0,0.9888888888888889,0.0003214644330306511,0.9866666666666666,0.9918850916754052,1.0,0.9666666666666666,0.0006284810263745313,0.9576785714285714,0.9752301783867944,1.0,0.952777777777778,0.001238902253140599,0.9361245682159639,0.9624942753456358,1.0,0.9333333333333333,0.003034046334221876,0.9026027672523083,0.9428034245636471,1.0,0.9088888888888889,0.005909166431889271,0.8671379843586535,0.9203286993423627,1.0
|
| 74 |
+
medium,Tshirts,88,0.9886363636363636,6.427646860648614e-05,0.9886363636363636,0.9886363636363636,0.9886363636363636,0.9931818181818183,0.00032285996300039605,0.9900000000000001,0.9927278933474686,0.9943181818181818,0.9886363636363636,0.0006427646860648617,0.9855848665223665,0.9898902492273612,0.9943181818181818,0.9863636363636363,0.0012825741321937929,0.9804222755741498,0.9879446913136192,0.9943181818181818,0.9786363636363636,0.0031813157910290744,0.9670120796532383,0.9813297868674783,0.9943181818181818,0.9738636363636364,0.0063316015627308785,0.9582122692660981,0.9766057851669084,0.9943181818181818
|
| 75 |
+
medium,Handbags,18,0.9444444444444444,0.00030945099752439204,0.9444444444444444,0.9444444444444444,0.9444444444444444,0.9333333333333333,0.001529051987767584,0.9333333333333333,0.9371552734715366,0.9444444444444444,0.9333333333333333,0.003058103975535168,0.9278791887125222,0.9356384977921677,0.9444444444444444,0.9388888888888888,0.006152613950779088,0.9324464198941753,0.938761374002785,0.9444444444444444,0.9400000000000001,0.015399737876802096,0.934129602394202,0.9395413844395707,0.9444444444444444,0.9377777777777779,0.030726663754186687,0.9324789663442606,0.9380774326785678,0.9444444444444444
|
| 76 |
+
medium,Sports Shoes,21,1.0,0.00013657470636438133,1.0,1.0,1.0,1.0,0.0006828735318219066,1.0,1.0,1.0,1.0,0.0013657470636438131,1.0,1.0,1.0,0.9976190476190476,0.002724990569841703,0.9962431849707943,0.9981132825211516,1.0,0.9990476190476191,0.006822231760773143,0.9976387352443313,0.9989701292685315,1.0,0.9995238095238095,0.01365096707899221,0.9984916665843988,0.9993656236591276,1.0
|
| 77 |
+
medium,Bracelet,1,1.0,0.0009276437847866419,1.0,1.0,1.0,1.0,0.00463821892393321,1.0,1.0,1.0,0.9,0.008348794063079777,0.866388888888889,0.92663607790064,1.0,0.95,0.017625231910946195,0.8997558742856728,0.9526533201221141,1.0,0.84,0.03896103896103896,0.7440640444118135,0.862883134340437,1.0,0.78,0.07235621521335807,0.660098384959779,0.8076240759426396,1.0
|
| 78 |
+
medium,Kurtas,28,1.0,6.501527859046874e-05,1.0,1.0,1.0,0.9928571428571429,0.0003227544187169698,0.9896428571428572,0.9939435677629712,1.0,0.9821428571428571,0.0006385429147278181,0.9767970521541951,0.9861517719386488,1.0,0.9749999999999999,0.0012677979325141403,0.9645712224437071,0.9798558836883967,1.0,0.9692857142857143,0.0031509190374023606,0.9531807210954991,0.9736910314160279,1.0,0.9692857142857143,0.006301838074804721,0.9487496346932673,0.9720073728538553,1.0
|
| 79 |
+
medium,Heels,22,0.9545454545454546,0.00013036676516600036,0.9545454545454546,0.9545454545454546,0.9545454545454546,0.9454545454545454,0.0006456258846316208,0.9436363636363635,0.9479059840980587,0.9545454545454546,0.95,0.0012974597104616224,0.9372041847041847,0.9504657264777165,0.9621212121212122,0.9386363636363636,0.00256387971493134,0.9252650151959714,0.9424572052450476,0.9621212121212122,0.9345454545454545,0.006381763551935637,0.9182300454899351,0.9378228108642784,0.9621212121212122,0.9281818181818181,0.012676615927093939,0.907793559862715,0.931813935410082,0.9621212121212122
|
| 80 |
+
medium,Jeans,7,1.0,0.00037299515106303626,1.0,1.0,1.0,1.0,0.0018649757553151811,1.0,1.0,1.0,1.0,0.0037299515106303622,1.0,1.0,1.0,1.0,0.0074599030212607245,1.0,1.0,1.0,1.0,0.01864975755315181,1.0,1.0,1.0,0.9985714285714286,0.03724623008472318,0.9985134080427368,0.9989662520788902,1.0
|
| 81 |
+
medium,Ring,2,1.0,0.0009276437847866419,1.0,1.0,1.0,1.0,0.00463821892393321,1.0,1.0,1.0,1.0,0.00927643784786642,1.0,1.0,1.0,1.0,0.01855287569573284,1.0,1.0,1.0,0.99,0.04591836734693877,0.9893875850340135,0.9930587710301548,1.0,0.97,0.08998144712430425,0.9579336776343478,0.9761692650314671,1.0
|
| 82 |
+
medium,Sandals,11,1.0,0.0010416666666666667,1.0,1.0,1.0,0.8909090909090908,0.0046401515151515155,0.8863636363636364,0.920105110213332,1.0,0.8454545454545456,0.008806818181818181,0.8183621933621933,0.8774829101269634,1.0,0.7909090909090909,0.016477272727272726,0.7479438728040262,0.8281238004225728,1.0,0.7163636363636363,0.037310606060606065,0.6527192946914163,0.7553375763242225,1.0,0.6736363636363637,0.07017045454545455,0.5918176335461314,0.7071012625781372,1.0
|
| 83 |
+
medium,Casual Shoes,38,0.9736842105263158,0.00013298063514426603,0.9736842105263158,0.9736842105263158,0.9736842105263158,0.994736842105263,0.0006792794606017913,0.987982456140351,0.991074731440168,0.9868421052631579,0.9842105263157894,0.0013441826363231213,0.976904761904762,0.9849490453204014,0.9868421052631579,0.9802631578947368,0.0026775830589858968,0.9702844153847799,0.9819088641275127,0.9868421052631579,0.9736842105263159,0.0066490317572133004,0.9625950494725243,0.9762409122904837,0.9868421052631579,0.9734210526315789,0.013294469443206489,0.9607625494513713,0.9750316361210876,0.9868421052631579
|
| 84 |
+
medium,Watches,29,0.9655172413793104,0.0003799753016053956,0.9655172413793104,0.9655172413793104,0.9655172413793104,0.993103448275862,0.001954158693970606,0.9842528735632183,0.9883048205078064,0.9827586206896551,0.996551724137931,0.003921887934427119,0.989900109469075,0.9924106287483421,0.9827586206896551,0.9879310344827585,0.007775923136424702,0.9811583860103931,0.9878932943806396,0.9827586206896551,0.9800000000000001,0.019283746556473833,0.9675466617874048,0.9817942666407994,0.9827586206896551,0.9872413793103448,0.038852474589151705,0.9737364590550174,0.986729869147543,0.9827586206896551
|
| 85 |
+
medium,Sunglasses,14,1.0,0.0009328358208955222,1.0,1.0,1.0,0.9857142857142858,0.004597547974413646,0.9792857142857143,0.9878871355259423,1.0,0.9928571428571429,0.009261727078891255,0.985031179138322,0.9921395797750686,1.0,0.9892857142857142,0.01845682302771855,0.9828267615321187,0.990146574097115,1.0,0.9885714285714285,0.0461087420042644,0.9804772680341108,0.9894090703246824,1.0,0.9892857142857144,0.09228411513859278,0.9800475974890659,0.9896686540541184,1.0
|
| 86 |
+
medium,Belts,9,1.0,0.0011046176098296681,1.0,1.0,1.0,1.0,0.00552308804914834,1.0,1.0,1.0,1.0,0.01104617609829668,1.0,1.0,1.0,1.0,0.02209235219659336,1.0,1.0,1.0,1.0,0.0552308804914834,1.0,1.0,1.0,0.9988888888888889,0.11032458677171851,0.9981460396264745,0.9990691064467101,1.0
|
| 87 |
+
medium,Briefs,11,1.0,0.0005540166204986151,1.0,1.0,1.0,1.0,0.0027700831024930752,1.0,1.0,1.0,1.0,0.0055401662049861505,1.0,1.0,1.0,0.9954545454545454,0.011029967262654245,0.9932066864593954,0.9965104874395107,1.0,0.9963636363636365,0.02760010073029464,0.9934697146190694,0.9967796273244486,1.0,0.9881818181818183,0.054746915134726765,0.9822227930324849,0.9902601426116696,1.0
|
| 88 |
+
medium,Sweatshirts,6,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,1.0,0.0006501527859046876,1.0,1.0,1.0,1.0,0.001300305571809375,1.0,1.0,1.0,0.9933333333333333,0.0032290921699932823,0.9924645759991767,0.9952743032251833,1.0,0.9883333333333333,0.00642567670069133,0.9841870782421314,0.9908344935297443,1.0
|
| 89 |
+
medium,Tunics,1,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,1.0,0.0006501527859046876,1.0,1.0,1.0,1.0,0.001300305571809375,1.0,1.0,1.0,1.0,0.003250763929523438,1.0,1.0,1.0,1.0,0.006501527859046876,1.0,1.0,1.0
|
| 90 |
+
medium,Flip Flops,6,0.8333333333333334,0.0009137426900584795,0.8333333333333334,0.8333333333333334,0.8333333333333334,0.8666666666666667,0.004751461988304093,0.8005555555555555,0.8650790853234042,0.9166666666666666,0.8666666666666667,0.009502923976608187,0.7933267195767196,0.8671298801552086,0.9166666666666666,0.8750000000000001,0.01918859649122807,0.7847317385988052,0.8725926291743938,0.9166666666666666,0.8466666666666667,0.046418128654970754,0.7570939283419759,0.8525655947134795,0.9166666666666666,0.795,0.08717105263157894,0.6949324326906864,0.8102092833562632,0.9166666666666666
|
| 91 |
+
medium,Lipstick,4,1.0,0.0023584905660377358,1.0,1.0,1.0,1.0,0.01179245283018868,1.0,1.0,1.0,1.0,0.02358490566037736,1.0,1.0,1.0,1.0,0.04716981132075472,1.0,1.0,1.0,0.995,0.11733490566037735,0.9943676027749984,0.9964705443840611,1.0,0.9850000000000001,0.232311320754717,0.9814816380200894,0.9885713516165474,1.0
|
| 92 |
+
medium,Wallets,10,1.0,0.0010822510822510823,1.0,1.0,1.0,0.9800000000000001,0.0053030303030303025,0.9800000000000001,0.9868794922487659,1.0,0.96,0.010389610389610388,0.9516111111111112,0.9711617948605678,1.0,0.9400000000000001,0.020346320346320345,0.9178252981109019,0.9532050285113659,1.0,0.9119999999999999,0.04935064935064935,0.8664589866758758,0.9262345999290152,1.0,0.881,0.09534632034632035,0.8206756447678469,0.897643609708151,1.0
|
| 93 |
+
medium,Shirts,29,1.0,6.501527859046874e-05,1.0,1.0,1.0,1.0,0.00032507639295234367,1.0,1.0,1.0,1.0,0.0006501527859046873,1.0,1.0,1.0,1.0,0.0013003055718093747,1.0,1.0,1.0,0.9993103448275862,0.0032485220233651455,0.9992681093126905,0.9995212945538038,1.0,0.9924137931034483,0.0064522059235644505,0.9909753154689386,0.9941941033931416,1.0
|
| 94 |
+
medium,Nightdress,5,0.8,0.0017278617710583155,0.8,0.8,0.8,0.6799999999999999,0.007343412526997842,0.6373333333333334,0.7200339951192694,0.8666666666666666,0.74,0.01598272138228942,0.6413174603174603,0.7502764906031816,0.8666666666666666,0.7,0.03023758099352052,0.6013560755120352,0.7201563353660336,0.8666666666666666,0.6519999999999999,0.07041036717062635,0.5367325817974101,0.67537029433072,0.8666666666666666,0.512,0.11058315334773217,0.3980433239070168,0.5597190472798672,0.8666666666666666
|
| 95 |
+
medium,Formal Shoes,6,1.0,0.00013657470636438128,1.0,1.0,1.0,1.0,0.0006828735318219066,1.0,1.0,1.0,1.0,0.0013657470636438131,1.0,1.0,1.0,1.0,0.0027314941272876263,1.0,1.0,1.0,1.0,0.0068287353182190655,1.0,1.0,1.0,1.0,0.013657470636438131,1.0,1.0,1.0
|
| 96 |
+
medium,Innerwear Vests,2,0.5,0.0002770083102493075,0.5,0.5,0.5,0.5,0.0013850415512465374,0.5,0.5,0.5,0.45,0.002493074792243767,0.4331944444444445,0.46331803895032,0.5,0.35,0.003878116343490305,0.3182749962026278,0.3887929617538453,0.5,0.25,0.006925207756232687,0.18576272851998807,0.2964461301241752,0.5172413793103449,0.14500000000000002,0.008033240997229917,0.09664446504093968,0.1980622536467876,0.5172413793103449
|
| 97 |
+
medium,Duffel Bag,2,1.0,0.000327653997378768,1.0,1.0,1.0,1.0,0.00163826998689384,1.0,1.0,1.0,1.0,0.00327653997378768,1.0,1.0,1.0,0.975,0.0063892529488859765,0.97375,0.9835675147162115,1.0,0.97,0.015891218872870247,0.9562802207326211,0.9765058148995891,1.0,0.97,0.031782437745740494,0.9469417296174027,0.9736805614759099,1.0
|
| 98 |
+
medium,Earrings,5,1.0,0.0009276437847866419,1.0,1.0,1.0,1.0,0.00463821892393321,1.0,1.0,1.0,1.0,0.00927643784786642,1.0,1.0,1.0,0.99,0.018367346938775512,0.9889736842105263,0.9933125017230573,1.0,0.992,0.046011131725417445,0.9872009617618953,0.993455263272056,1.0,0.984,0.09128014842300555,0.9751851540570271,0.9866995253267788,1.0
|
| 99 |
+
medium,Churidar,1,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,1.0,0.007459903021260724,1.0,1.0,1.0,1.0,0.01864975755315181,1.0,1.0,1.0,0.96,0.03580753450205147,0.9548245285184153,0.9703595327335628,1.0
|
| 100 |
+
medium,Sunscreen,1,1.0,0.020833333333333332,1.0,1.0,1.0,1.0,0.10416666666666667,1.0,1.0,1.0,0.6,0.125,0.6,0.727329844310522,1.0,0.35,0.14583333333333334,0.325,0.505751221067003,1.0,0.36,0.375,0.22202900878610818,0.45612511990416554,1.0,0.22,0.4583333333333333,0.24416142270740768,0.5068055733014052,1.0
|
| 101 |
+
medium,Sarees,5,1.0,0.002347417840375587,1.0,1.0,1.0,1.0,0.011737089201877934,1.0,1.0,1.0,1.0,0.023474178403755867,1.0,1.0,1.0,1.0,0.046948356807511735,1.0,1.0,1.0,0.984,0.11549295774647887,0.9779196817365042,0.9877306379489946,1.0,0.978,0.2295774647887324,0.9665841376132696,0.9818517710494777,1.0
|
| 102 |
+
medium,Kurta Sets,2,0.5,0.004761904761904762,0.5,0.5,0.5,0.6000000000000001,0.028571428571428574,0.42833333333333334,0.565602538756171,0.6666666666666666,0.65,0.06190476190476191,0.4602182539682539,0.6164863042785369,0.6666666666666666,0.55,0.10476190476190476,0.36901370376699316,0.5565804219537898,0.6666666666666666,0.39,0.18571428571428572,0.24343788318549042,0.43539919453551584,0.6666666666666666,0.25,0.2380952380952381,0.13911592821437951,0.3103466177351285,0.6666666666666666
|
| 103 |
+
medium,Perfume and Body Mist,6,1.0,0.001,1.0,1.0,1.0,1.0,0.005,1.0,1.0,1.0,1.0,0.01,1.0,1.0,1.0,0.9833333333333334,0.01966666666666667,0.9824999999999999,0.9889495896746183,1.0,0.9666666666666667,0.04833333333333333,0.9476690017883502,0.9729770256388944,1.0,0.9766666666666666,0.09766666666666667,0.9543696811391907,0.9783226177561023,1.0
|
| 104 |
+
medium,Ties,3,1.0,0.0038910505836575876,1.0,1.0,1.0,1.0,0.019455252918287938,1.0,1.0,1.0,1.0,0.038910505836575876,1.0,1.0,1.0,0.9833333333333334,0.07652399481193256,0.9786748222680884,0.9881633300305285,1.0,0.9666666666666667,0.1880674448767834,0.9458503122034504,0.9725166374481752,1.0,0.9733333333333333,0.3787289234760052,0.9494902522261027,0.975543320939519,1.0
|
| 105 |
+
medium,Dresses,5,0.6,0.001257861635220126,0.6,0.6,0.6,0.56,0.005870020964360588,0.466,0.5749652118921823,0.8,0.6,0.012578616352201259,0.42681746031746026,0.5938983437139892,0.8,0.5700000000000001,0.02389937106918239,0.3741840495246068,0.5730384560433783,0.8,0.52,0.05450733752620544,0.3195002405458173,0.5350723247824887,0.8,0.45999999999999996,0.09643605870020963,0.2615639104695845,0.4839281433386331,0.8
|
| 106 |
+
medium,Socks,9,0.8888888888888888,0.001277139208173691,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.9777777777777779,0.007024265644955301,0.9492592592592592,0.9623155327473759,0.9444444444444444,0.9888888888888889,0.01420817369093231,0.9674559082892417,0.9755453593002135,0.9444444444444444,0.9944444444444444,0.028575989782886335,0.9800125574603129,0.984217773374038,0.9444444444444444,0.9933333333333333,0.07136015325670497,0.9829384486368201,0.9877997286899625,0.9444444444444444,0.9955555555555556,0.1430395913154534,0.9878975260871586,0.991661302899367,0.9444444444444444
|
| 107 |
+
medium,Jeggings,1,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,0.9,0.0033569563595673255,0.866388888888889,0.92663607790064,1.0,0.95,0.007086907870197687,0.8997558742856728,0.9526533201221141,1.0,0.98,0.018276762402088774,0.9418730360905537,0.9741556643296638,1.0,0.99,0.03692651995524058,0.9640547962521748,0.9840804922463934,1.0
|
| 108 |
+
medium,Lounge Shorts,1,0.0,0.0,0.0,0.0,0.0,0.2,0.0021598272138228943,0.1,0.21398626473452756,0.5,0.2,0.004319654427645789,0.07857142857142857,0.2122263659729146,0.5,0.2,0.008639308855291577,0.06258888170652877,0.20833368970365634,0.5,0.22,0.023758099352051837,0.05956589361539146,0.2223980911360183,0.5,0.13,0.028077753779697623,0.03305767208242101,0.15221425440926462,0.5
|
| 109 |
+
medium,Pendant,4,1.0,0.0009276437847866419,1.0,1.0,1.0,1.0,0.00463821892393321,1.0,1.0,1.0,1.0,0.00927643784786642,1.0,1.0,1.0,1.0,0.01855287569573284,1.0,1.0,1.0,0.99,0.04591836734693877,0.9860580395594392,0.9922979454406577,1.0,0.9925,0.09206864564007422,0.9862717404729926,0.9933268014640808,1.0
|
| 110 |
+
medium,Track Pants,3,1.0,0.00037299515106303615,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,0.9666666666666667,0.0036056197936093497,0.9633333333333334,0.977915258848537,1.0,0.9666666666666667,0.007211239587218699,0.9512786322151646,0.9741638382620333,1.0,0.9266666666666667,0.017282108665920677,0.8975599133231346,0.9413106206548477,1.0,0.91,0.03394255874673629,0.8619284432195755,0.923291128974844,1.0
|
| 111 |
+
medium,Backpacks,4,1.0,0.000327653997378768,1.0,1.0,1.0,1.0,0.00163826998689384,1.0,1.0,1.0,1.0,0.00327653997378768,1.0,1.0,1.0,1.0,0.00655307994757536,1.0,1.0,1.0,0.995,0.016300786369593707,0.9945874095382834,0.9965104074720313,1.0,0.9950000000000001,0.032601572739187415,0.9928387295613608,0.9960202605825521,1.0
|
| 112 |
+
medium,Nail Polish,3,1.0,0.003610108303249098,1.0,1.0,1.0,1.0,0.018050541516245487,1.0,1.0,1.0,1.0,0.036101083032490974,1.0,1.0,1.0,1.0,0.07220216606498195,1.0,1.0,1.0,1.0,0.18050541516245489,1.0,1.0,1.0,0.93,0.3357400722021661,0.9191702035369559,0.9472529881206961,1.0
|
| 113 |
+
medium,Salwar,1,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,1.0,0.007459903021260724,1.0,1.0,1.0,0.96,0.017903767251025736,0.9558002864072773,0.9718399670728376,1.0,0.93,0.034688549048862365,0.9052946540912046,0.9448877522639055,1.0
|
| 114 |
+
medium,Mascara,1,1.0,0.030303030303030304,1.0,1.0,1.0,0.4,0.06060606060606061,0.4,0.5531464700081437,1.0,0.4,0.12121212121212122,0.28194444444444444,0.4946396555628011,1.0,0.2,0.12121212121212122,0.14097222222222222,0.31922428295370403,1.0,0.12,0.18181818181818182,0.09711855832545488,0.2723413617115722,1.0,0.11,0.3333333333333333,0.11552673079970899,0.354922455702222,1.0
|
| 115 |
+
medium,Stoles,2,1.0,0.011235955056179775,1.0,1.0,1.0,1.0,0.056179775280898875,1.0,1.0,1.0,1.0,0.11235955056179775,1.0,1.0,1.0,0.8999999999999999,0.20224719101123595,0.8923026315789473,0.9327055362560578,1.0,0.55,0.3089887640449438,0.4852705541491801,0.6514701244776986,1.0,0.33,0.3707865168539326,0.3066179900546065,0.4827018890897537,1.0
|
| 116 |
+
medium,Flats,5,0.8,0.00010925976509150505,0.8,0.8,0.8,0.76,0.000518983884184649,0.752,0.7707863300314587,0.8,0.76,0.001037967768369298,0.7413650793650793,0.7671560827387344,0.8,0.79,0.0021578803605572247,0.7484895690824483,0.7864169257192574,0.8153846153846154,0.768,0.005244468724392242,0.7292200560498063,0.7718525894139016,0.8153846153846154,0.766,0.01046162250751161,0.7203919185876856,0.7686890787862413,0.8153846153846154
|
| 117 |
+
medium,Night suits,2,1.0,0.0021598272138228943,1.0,1.0,1.0,0.9,0.009719222462203024,0.855,0.915209948681596,1.0,0.8,0.017278617710583154,0.7062103174603174,0.8334516777196102,1.0,0.7749999999999999,0.03347732181425486,0.6485893479585431,0.8017899223309899,1.0,0.55,0.05939524838012959,0.4313455680119423,0.6220285209010255,1.0,0.405,0.0874730021598272,0.2846267435567702,0.48380877645973286,1.0
|
| 118 |
+
medium,Trousers,2,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,1.0,0.007459903021260724,1.0,1.0,1.0,1.0,0.01864975755315181,1.0,1.0,1.0,1.0,0.03729951510630362,1.0,1.0,1.0
|
| 119 |
+
medium,Jackets,8,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,0.9624999999999999,0.0006257720564332617,0.9612499999999999,0.9754838456115338,1.0,0.90625,0.0011784019244522462,0.8902583173459238,0.9319083571208915,1.0,0.9025,0.002933814446394903,0.8563217430900287,0.9190305412933547,1.0,0.88375,0.005745725245432676,0.8200802612776681,0.8981182335862065,1.0
|
| 120 |
+
medium,Free Gifts,2,0.5,0.0048543689320388345,0.5,0.5,0.5,0.4,0.019417475728155338,0.38,0.42696582507864683,0.5,0.25,0.024271844660194174,0.2257142857142857,0.313753566530828,0.5,0.2,0.038834951456310676,0.1432936507936508,0.2535523425626366,0.5,0.09,0.043689320388349516,0.059685881370091905,0.14573698833072016,0.5,0.07,0.06796116504854369,0.033804626076048234,0.10888839887854944,0.5
|
| 121 |
+
medium,Trunk,2,1.0,0.000554016620498615,1.0,1.0,1.0,1.0,0.002770083102493075,1.0,1.0,1.0,1.0,0.00554016620498615,1.0,1.0,1.0,1.0,0.0110803324099723,1.0,1.0,1.0,1.0,0.027700831024930747,1.0,1.0,1.0,1.0,0.055401662049861494,1.0,1.0,1.0
|
| 122 |
+
medium,Sweaters,3,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,1.0,0.0006501527859046876,1.0,1.0,1.0,1.0,0.001300305571809375,1.0,1.0,1.0,0.9866666666666667,0.0032074204104631256,0.9778028583718082,0.988999405122002,1.0,0.9833333333333334,0.006393169061396095,0.9728235350112513,0.9857516009058984,1.0
|
| 123 |
+
medium,Bangle,1,1.0,0.0009276437847866419,1.0,1.0,1.0,1.0,0.00463821892393321,1.0,1.0,1.0,1.0,0.00927643784786642,1.0,1.0,1.0,1.0,0.01855287569573284,1.0,1.0,1.0,1.0,0.04638218923933209,1.0,1.0,1.0,0.99,0.09183673469387756,0.9865954374704069,0.9922594645397382,1.0
|
| 124 |
+
medium,Leggings,2,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,1.0,0.007459903021260724,1.0,1.0,1.0,1.0,0.01864975755315181,1.0,1.0,1.0,0.99,0.036926519955240586,0.9879347737423247,0.9924812453980225,1.0
|
| 125 |
+
medium,Shorts,5,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,0.9800000000000001,0.00731070496083551,0.977204893360853,0.986430339788653,1.0,0.9359999999999999,0.017456173069750093,0.9153558179648957,0.9507719090639324,1.0,0.9039999999999999,0.03371876165609847,0.8663433857332109,0.9210625175161962,1.0
|
| 126 |
+
medium,Waistcoat,1,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,1.0,0.0006501527859046876,1.0,1.0,1.0,1.0,0.001300305571809375,1.0,1.0,1.0,1.0,0.003250763929523438,1.0,1.0,1.0,1.0,0.006501527859046876,1.0,1.0,1.0
|
| 127 |
+
medium,Jewellery Set,1,1.0,0.0009276437847866419,1.0,1.0,1.0,1.0,0.00463821892393321,1.0,1.0,1.0,1.0,0.00927643784786642,1.0,1.0,1.0,1.0,0.01855287569573284,1.0,1.0,1.0,1.0,0.04638218923933209,1.0,1.0,1.0,0.99,0.09183673469387756,0.9877810176130588,0.9924669316720286,1.0
|
| 128 |
+
medium,Capris,1,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,1.0,0.007459903021260724,1.0,1.0,1.0,1.0,0.01864975755315181,1.0,1.0,1.0,0.99,0.03692651995524058,0.9887284601904159,0.9926250016666154,1.0
|
| 129 |
+
medium,Accessory Gift Set,1,1.0,0.0078125,1.0,1.0,1.0,1.0,0.0390625,1.0,1.0,1.0,1.0,0.078125,1.0,1.0,1.0,1.0,0.15625,1.0,1.0,1.0,0.82,0.3203125,0.7891848672940692,0.8678108204621303,1.0,0.61,0.4765625,0.5342833335385498,0.6884212023108021,1.0
|
| 130 |
+
medium,Nail Essentials,1,1.0,0.125,1.0,1.0,1.0,0.2,0.125,0.2,0.3391602052736161,1.0,0.1,0.125,0.125,0.2529427027676571,1.0,0.05,0.125,0.125,0.2529427027676571,1.0,0.02,0.125,0.125,0.2529427027676571,1.0,0.01,0.125,0.125,0.2529427027676571,1.0
|
| 131 |
+
medium,Lip Gloss,2,1.0,0.0023584905660377358,1.0,1.0,1.0,0.9,0.010613207547169812,0.88,0.9269658250786468,1.0,0.9,0.021226415094339625,0.8421031746031746,0.9134066833258869,1.0,0.7749999999999999,0.036556603773584904,0.717394968722368,0.8230180887189839,1.0,0.6799999999999999,0.08018867924528303,0.5910222068321003,0.7266170323548425,1.0,0.665,0.15683962264150944,0.5327672056166088,0.6972679687670575,1.0
|
| 132 |
+
medium,Dupatta,1,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,1.0,0.0006501527859046876,1.0,1.0,1.0,0.9,0.0011702750146284377,0.8949999999999999,0.9336975380477095,1.0,0.66,0.0021455041934854693,0.5975185793021969,0.7408144752766844,1.0,0.67,0.004356023665561407,0.5307784442999172,0.718676672829536,1.0
|
| 133 |
+
medium,Clutches,1,1.0,0.000327653997378768,1.0,1.0,1.0,1.0,0.00163826998689384,1.0,1.0,1.0,1.0,0.00327653997378768,1.0,1.0,1.0,0.95,0.006225425950196592,0.9448684210526315,0.9665625086152866,1.0,0.94,0.015399737876802096,0.8970951010863273,0.9492380931495109,1.0,0.91,0.02981651376146789,0.8530744640269279,0.9223934138454,1.0
|
| 134 |
+
medium,Deodorant,5,1.0,0.001,1.0,1.0,1.0,1.0,0.005,1.0,1.0,1.0,0.9800000000000001,0.0098,0.9732777777777777,0.985327215580128,1.0,0.97,0.0194,0.956177371476133,0.9765719081497723,1.0,0.9480000000000001,0.0474,0.9246261631692789,0.9576047160373129,1.0,0.95,0.095,0.918072728518835,0.9555633288831915,1.0
|
| 135 |
+
medium,Caps,1,1.0,0.003436426116838488,1.0,1.0,1.0,1.0,0.01718213058419244,1.0,1.0,1.0,1.0,0.03436426116838488,1.0,1.0,1.0,1.0,0.06872852233676977,1.0,1.0,1.0,0.86,0.14776632302405499,0.8494715532279073,0.9007569655466972,1.0,0.55,0.18900343642611683,0.5052051629283395,0.6469828854399754,1.0
|
| 136 |
+
medium,Lip Liner,1,1.0,0.0023584905660377358,1.0,1.0,1.0,1.0,0.01179245283018868,1.0,1.0,1.0,0.9,0.02122641509433962,0.89,0.9337457765456111,1.0,0.55,0.025943396226415096,0.5051973684210527,0.6702241792113562,1.0,0.44,0.05188679245283019,0.30048212486331066,0.5284553338565611,1.0,0.46,0.10849056603773585,0.26153149450810614,0.510592296332121,1.0
|
| 137 |
+
medium,Foundation and Primer,1,1.0,0.003816793893129771,1.0,1.0,1.0,0.8,0.015267175572519083,0.8,0.8687949224876582,1.0,0.4,0.015267175572519083,0.4,0.5637884576902257,1.0,0.25,0.019083969465648856,0.21315789473684213,0.3967156325994382,1.0,0.18,0.03435114503816794,0.10425510096802634,0.27863977266262885,1.0,0.12,0.04580152671755725,0.056423669353057114,0.19446612672858457,1.0
|
| 138 |
+
medium,Blazers,1,1.0,6.501527859046876e-05,1.0,1.0,1.0,1.0,0.0003250763929523438,1.0,1.0,1.0,1.0,0.0006501527859046876,1.0,1.0,1.0,1.0,0.001300305571809375,1.0,1.0,1.0,1.0,0.003250763929523438,1.0,1.0,1.0,1.0,0.006501527859046876,1.0,1.0,1.0
|
| 139 |
+
medium,Highlighter and Blush,1,1.0,0.003816793893129771,1.0,1.0,1.0,1.0,0.019083969465648856,1.0,1.0,1.0,1.0,0.03816793893129771,1.0,1.0,1.0,0.85,0.0648854961832061,0.8200219298245616,0.8940707298470643,1.0,0.5,0.09541984732824428,0.42816404052015433,0.6090052139535269,1.0,0.4,0.15267175572519084,0.27776978285715176,0.4892247898255661,1.0
|
| 140 |
+
medium,Scarves,1,0.0,0.0,0.0,0.0,0.0,0.6,0.02586206896551724,0.3833333333333333,0.5296347172140421,0.5,0.5,0.04310344827586207,0.30436507936507934,0.48331483694589455,0.5,0.6,0.10344827586206896,0.3611967199467199,0.5632640355190806,0.5,0.7,0.3017241379310345,0.45502743292307896,0.6563659175717806,0.5,0.65,0.5603448275862069,0.4305077068743598,0.6350613523385488,0.5
|
| 141 |
+
medium,Eye Cream,1,1.0,0.020833333333333332,1.0,1.0,1.0,0.8,0.08333333333333333,0.8,0.8687949224876582,1.0,0.5,0.10416666666666667,0.4714285714285714,0.6371523797895857,1.0,0.4,0.16666666666666666,0.32292291042291044,0.5265097974973901,1.0,0.18,0.1875,0.141016729917592,0.31174147561939797,1.0,0.12,0.25,0.1507021184311055,0.350535705325506,1.0
|
| 142 |
+
medium,Stockings,1,1.0,0.0003729951510630362,1.0,1.0,1.0,1.0,0.001864975755315181,1.0,1.0,1.0,1.0,0.003729951510630362,1.0,1.0,1.0,1.0,0.007459903021260724,1.0,1.0,1.0,0.98,0.018276762402088774,0.9729515216137484,0.9850030692922281,1.0,0.97,0.03618052965311451,0.9583629425176852,0.9761719718515645,1.0
|
| 143 |
+
medium,Camisoles,1,1.0,0.000554016620498615,1.0,1.0,1.0,0.8,0.00221606648199446,0.8,0.8687949224876582,1.0,0.5,0.002770083102493075,0.4625,0.633219679627003,1.0,0.4,0.00443213296398892,0.3099116161616161,0.520102502239445,1.0,0.24,0.006648199445983379,0.14754047793521477,0.34375936508612653,1.0,0.26,0.014404432132963989,0.10903963661796237,0.3187787231762077,1.0
|
| 144 |
+
soft,Tops,18,0.9444444444444444,0.0002013938194236393,0.9444444444444444,0.9444444444444444,0.9444444444444444,0.9333333333333333,0.0009088144053239286,0.9333333333333333,0.9371552734715366,0.9444444444444444,0.9222222222222223,0.0016213194270593221,0.9179166666666667,0.927602248212553,0.9444444444444444,0.9194444444444445,0.0030527819160069444,0.9101264512777669,0.9237497612597747,0.9473684210526316,0.9133333333333332,0.007137955108307604,0.9022696782247972,0.9171052236025488,0.9473684210526316,0.9088888888888889,0.012481947972769311,0.8955928773331286,0.9123326542076531,0.9473684210526316
|
| 145 |
+
soft,Tshirts,88,0.9886363636363636,0.00020007945476352106,0.9886363636363636,0.9886363636363636,0.9886363636363636,0.975,0.0009749899000979921,0.9704924242424243,0.978144886934647,0.9914772727272727,0.9613636363636363,0.0019131527125049786,0.954026424963925,0.9676311300746683,0.9914772727272727,0.9482954545454544,0.003653501606222066,0.9354839777691505,0.9564787184757481,0.9914772727272727,0.9338636363636365,0.008560924372197022,0.9126794653556257,0.9420431632952606,0.9914772727272727,0.923409090909091,0.01660107233919367,0.8965316328562921,0.9309740668847152,0.9914772727272727
|
| 146 |
+
soft,Handbags,18,0.9444444444444444,0.00017766073070813476,0.9444444444444444,0.9444444444444444,0.9444444444444444,0.9333333333333333,0.0008778530223225484,0.9333333333333333,0.9371552734715366,0.9444444444444444,0.9277777777777777,0.0017452554134269713,0.9211507936507937,0.9317812076845691,0.9444444444444444,0.9361111111111112,0.0035218627205083185,0.9272245240211571,0.9362720049138031,0.9444444444444444,0.9388888888888888,0.00883078337931611,0.9313824320119521,0.9382519619668369,0.9444444444444444,0.9383333333333334,0.017653294629079705,0.9312406694853939,0.9380816072597242,0.9450000000000001
|
| 147 |
+
soft,Sports Shoes,21,0.8571428571428571,0.00018347746210088767,0.8571428571428571,0.8571428571428571,0.8571428571428571,0.8476190476190478,0.0009176366164747462,0.7803174603174603,0.8451256528638575,0.9206349206349206,0.8285714285714285,0.0017679195588065683,0.7462944066515496,0.831897396283057,0.9206349206349206,0.8047619047619047,0.003367454932255825,0.7163590599819039,0.8146125132998531,0.9206349206349206,0.7866666666666666,0.007996181031424437,0.6816248217659371,0.7969932814556726,0.9206349206349206,0.7680952380952382,0.015275856704184224,0.6558350721520376,0.7787519970857021,0.9206349206349206
|
| 148 |
+
soft,Bracelet,1,1.0,0.00022732439190725165,1.0,1.0,1.0,1.0,0.0011366219595362582,1.0,1.0,1.0,0.9,0.0020459195271652648,0.866388888888889,0.92663607790064,1.0,0.9,0.0040918390543305296,0.8391136744232719,0.9171433102136999,1.0,0.56,0.006365082973403046,0.47578832094532997,0.6530064027355048,1.0,0.39,0.008865651284382815,0.2903637877701953,0.48745344071347174,1.0
|
| 149 |
+
soft,Kurtas,28,1.0,0.00011315324203252295,1.0,1.0,1.0,1.0,0.0005657662101626147,1.0,1.0,1.0,1.0,0.0011315324203252295,1.0,1.0,1.0,1.0,0.002263064840650459,1.0,1.0,1.0,0.9971428571428572,0.005641070098971428,0.9964846997958672,0.9979208766378662,1.0,0.9749999999999999,0.011080791985737729,0.9711165675817127,0.9809242704570649,1.0
|
| 150 |
+
soft,Heels,22,0.9545454545454546,0.00033753375337533753,0.9545454545454546,0.9545454545454546,0.9545454545454546,0.9454545454545454,0.0016715957310016712,0.9436363636363635,0.9479059840980587,0.9545454545454546,0.9454545454545453,0.0033431914620033424,0.9356962481962481,0.9472253369170937,0.9621212121212122,0.9454545454545453,0.006686382924006685,0.935081056245565,0.9466066110360561,0.9621212121212122,0.9427272727272729,0.01666773820239167,0.9320251615937561,0.9441166350975336,0.9621212121212122,0.9418181818181818,0.0333033303330333,0.9300608570699602,0.9429919158601721,0.9621212121212122
|
| 151 |
+
soft,Jeans,7,1.0,0.00010019321031360291,1.0,1.0,1.0,1.0,0.0005009660515680145,1.0,1.0,1.0,1.0,0.001001932103136029,1.0,1.0,1.0,1.0,0.002003864206272058,1.0,1.0,1.0,1.0,0.005009660515680145,1.0,1.0,1.0,0.9985714285714286,0.01000272902870557,0.9985134080427368,0.9989662520788902,1.0
|
| 152 |
+
soft,Ring,2,1.0,0.000207717876916756,1.0,1.0,1.0,1.0,0.0010385893845837799,1.0,1.0,1.0,1.0,0.0020771787691675598,1.0,1.0,1.0,0.95,0.003927033146427868,0.9446405228758169,0.9661924283667771,1.0,0.81,0.00822631212271891,0.7719434818996773,0.8529171305351698,1.0,0.725,0.01455957994420717,0.6636602095146579,0.7705045382566811,1.0
|
| 153 |
+
soft,Sandals,11,0.9090909090909091,0.0035324830455655144,0.9090909090909091,0.9090909090909091,0.9090909090909091,0.7636363636363637,0.00942454211881446,0.7336363636363636,0.8005007054424671,0.9545454545454546,0.7545454545454546,0.016269462877507117,0.6928751803751804,0.7811046037717624,0.9545454545454546,0.6954545454545454,0.02678566363415731,0.6284850566491081,0.730909519712831,0.9545454545454546,0.62,0.037674726028676185,0.5448131834184774,0.6584447695103808,0.9545454545454546,0.5772727272727273,0.05361643742021027,0.5010397261526539,0.6245023417869527,0.9545454545454546
|
| 154 |
+
soft,Casual Shoes,38,0.7368421052631579,0.0006438958809780642,0.7368421052631579,0.7368421052631579,0.7368421052631579,0.7157894736842105,0.002812476341771727,0.6664035087719299,0.7253682108985808,0.8144736842105263,0.7157894736842104,0.005329813201900721,0.6283197577276526,0.72214576464655,0.8261695906432749,0.706578947368421,0.010665011127283132,0.6034164033827958,0.7138808091565592,0.8261695906432749,0.6973684210526315,0.0191697000742728,0.5842564029977101,0.7038540205494028,0.8261695906432749,0.6865789473684212,0.029988667856600412,0.5736044196353479,0.6983648340960061,0.8261695906432749
|
| 155 |
+
soft,Watches,29,0.896551724137931,0.0001889341675792289,0.896551724137931,0.896551724137931,0.896551724137931,0.896551724137931,0.0010497919012476828,0.8542528735632184,0.8968562805295556,0.9482758620689655,0.8758620689655173,0.0020424679464236244,0.8294567597153805,0.8826948943892655,0.9482758620689655,0.8327586206896551,0.0038142113511050405,0.7681628840093397,0.849611938892191,0.9482758620689655,0.7703448275862069,0.008632586691584078,0.6825481746644363,0.795001819342451,0.9482758620689655,0.7358620689655173,0.016255794436313205,0.6288921881724057,0.7593397810764695,0.9482758620689655
|
| 156 |
+
soft,Sunglasses,14,0.7142857142857143,0.00022095350344517362,0.7142857142857143,0.7142857142857143,0.7142857142857143,0.7142857142857143,0.0009443155191683866,0.6295238095238095,0.7126063033718498,0.8095238095238094,0.7214285714285714,0.00196904929412457,0.620719954648526,0.7192107988526438,0.8095238095238094,0.6428571428571427,0.0032948618780329194,0.546645265623732,0.6646665096345702,0.8095238095238094,0.6271428571428571,0.007947626739585684,0.4983671146727865,0.6426931078686235,0.8115079365079365,0.6128571428571429,0.015161731945064625,0.47460844581309886,0.625752383121041,0.8115079365079365
|
| 157 |
+
soft,Belts,9,0.8888888888888888,0.0001933521194773367,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8444444444444444,0.00092060106918296,0.8344444444444444,0.8554683133167611,0.8888888888888888,0.8,0.0017445260786272518,0.7649470899470899,0.818400130184678,0.8888888888888888,0.7833333333333334,0.0034263483699457503,0.7325202926254268,0.8008626658994841,0.8888888888888888,0.7622222222222221,0.008358594925057547,0.6967726496879383,0.7778942877582377,0.8888888888888888,0.7144444444444445,0.01577486553204408,0.6374881158977036,0.7349134613893411,0.8888888888888888
|
| 158 |
+
soft,Briefs,11,1.0,0.00010091824705312293,1.0,1.0,1.0,1.0,0.0005045912352656146,1.0,1.0,1.0,1.0,0.0010091824705312292,1.0,1.0,1.0,0.9954545454545454,0.002007806393918545,0.9932066864593954,0.9965104874395107,1.0,0.9981818181818182,0.005035353805512233,0.9956436460725112,0.9980952384798314,1.0,0.990909090909091,0.009986239233873161,0.9863204098091948,0.9924848733124111,1.0
|
| 159 |
+
soft,Sweatshirts,6,1.0,9.753474226869623e-05,1.0,1.0,1.0,0.9666666666666667,0.00047296869399156066,0.96,0.9756552750262156,1.0,0.9666666666666668,0.0009459373879831213,0.9509060846560847,0.9731595686960101,1.0,0.9833333333333334,0.0019212848106700837,0.9643068522751185,0.9826780620178227,1.0,0.9933333333333335,0.004847327078730971,0.9797129697021423,0.9905447651065132,1.0,0.9916666666666667,0.009679949140110021,0.9816924333450454,0.9904269670954943,1.0
|
| 160 |
+
soft,Tunics,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,0.98,0.005691056910569106,0.9717918577482021,0.9847599855899974,1.0,0.99,0.011498257839721254,0.9790142070809987,0.990612506714824,1.0
|
| 161 |
+
soft,Flip Flops,6,0.5,0.00014689987673960868,0.5,0.5,0.5,0.7999999999999999,0.0037916057166761164,0.6922222222222222,0.7485432820149294,0.7222222222222222,0.7499999999999999,0.004700290782311104,0.6719708994708995,0.732865365810567,0.7222222222222222,0.75,0.009370678046736641,0.6688115262360618,0.740560814875681,0.7222222222222222,0.6933333333333334,0.022768699669649634,0.5943751840257101,0.7017753863388569,0.7222222222222222,0.6583333333333333,0.036271134361331885,0.5461968749857505,0.6775597158840551,0.7222222222222222
|
| 162 |
+
soft,Lipstick,4,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360823,1.0,1.0,1.0,1.0,0.006443298969072165,1.0,1.0,1.0,1.0,0.01288659793814433,1.0,1.0,1.0,1.0,0.03221649484536082,1.0,1.0,1.0,1.0,0.06443298969072164,1.0,1.0,1.0
|
| 163 |
+
soft,Wallets,10,1.0,0.00019595396792245856,1.0,1.0,1.0,0.9200000000000002,0.0009006039918436897,0.8913333333333334,0.9339160205273617,1.0,0.9199999999999999,0.0018051292866854787,0.8822023809523809,0.9305599733921728,1.0,0.9099999999999999,0.003576557603983804,0.8659271042854634,0.9195669610491303,1.0,0.9179999999999999,0.009022520509227163,0.871534192517273,0.9207642997044344,1.0,0.916,0.018003497443070976,0.8725958630161351,0.9181228493489829,1.0
|
| 164 |
+
soft,Shirts,29,1.0,8.919265288640283e-05,1.0,1.0,1.0,0.9724137931034482,0.00043379359489939035,0.9724137931034482,0.977212420871504,1.0,0.9689655172413794,0.0008645447724156248,0.9689655172413794,0.9731066126309682,1.0,0.9724137931034482,0.0017351743795975614,0.9680500100826779,0.9738165790598023,1.0,0.9744827586206897,0.004347063201143374,0.9680161542878273,0.9750383384556192,1.0,0.9813793103448275,0.008754974749949867,0.9705335991325543,0.9800564573630948,1.0
|
| 165 |
+
soft,Nightdress,5,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,1.0,0.005807200929152149,1.0,1.0,1.0,1.0,0.011614401858304297,1.0,1.0,1.0
|
| 166 |
+
soft,Formal Shoes,6,1.0,0.00017418568193694475,1.0,1.0,1.0,1.0,0.000870928409684724,1.0,1.0,1.0,1.0,0.001741856819369448,1.0,1.0,1.0,1.0,0.003483713638738896,1.0,1.0,1.0,1.0,0.008709284096847238,1.0,1.0,1.0,0.9983333333333334,0.017389537246704986,0.9977659062450678,0.998709910756623,1.0
|
| 167 |
+
soft,Innerwear Vests,2,1.0,0.0009275072782041713,1.0,1.0,1.0,0.9,0.0037541441648724465,0.8216666666666667,0.8930068676327362,1.0,0.95,0.008391680555893302,0.8785515873015873,0.9305687780632228,1.0,0.75,0.012234054824877274,0.6782836403792287,0.7967193536359098,1.0,0.69,0.03409719403327553,0.5490294122674202,0.7297254163369892,1.0,0.645,0.06360096672758597,0.4764827071876106,0.6802718859729666,1.0
|
| 168 |
+
soft,Duffel Bag,2,0.5,0.00033829499323410016,0.5,0.5,0.5,0.7,0.002368064952638701,0.5433333333333333,0.6578242262397572,0.6666666666666666,0.7,0.004736129905277402,0.522718253968254,0.66894312882716,0.6666666666666666,0.6,0.008119079837618403,0.4281263764400374,0.6093431195273451,0.6666666666666666,0.52,0.017591339648173207,0.33613677440589784,0.5476913590109193,0.6666666666666666,0.475,0.03213802435723952,0.2806314186247496,0.5046407550216856,0.6666666666666666
|
| 169 |
+
soft,Earrings,5,1.0,0.00018811136192626034,1.0,1.0,1.0,1.0,0.0009405568096313018,1.0,1.0,1.0,1.0,0.0018811136192626037,1.0,1.0,1.0,0.99,0.0037246049661399548,0.9889736842105263,0.9933125017230573,1.0,0.992,0.009330323551542513,0.9872009617618953,0.993455263272056,1.0,0.984,0.01851015801354402,0.9751851540570271,0.9866995253267788,1.0
|
| 170 |
+
soft,Churidar,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,1.0,0.005807200929152149,1.0,1.0,1.0,1.0,0.011614401858304297,1.0,1.0,1.0
|
| 171 |
+
soft,Sunscreen,1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0
|
| 172 |
+
soft,Sarees,5,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,0.984,0.005714285714285714,0.9779196817365042,0.9877306379489946,1.0,0.9799999999999999,0.011382113821138212,0.9699212662856155,0.9835273794453997,1.0
|
| 173 |
+
soft,Kurta Sets,2,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,0.95,0.0011033681765389082,0.9331944444444444,0.96331803895032,1.0,0.925,0.0021486643437862952,0.8830040522987505,0.9384809657951433,1.0,0.9299999999999999,0.0054006968641114985,0.8745374119010156,0.9355233847190514,1.0,0.9450000000000001,0.01097560975609756,0.8875252323009111,0.9445190759135662,1.0
|
| 174 |
+
soft,Perfume and Body Mist,6,0.5,0.01230454788173182,0.5,0.5,0.5,0.5333333333333333,0.05075780085953716,0.4277777777777778,0.5356643774557545,0.6666666666666666,0.46666666666666673,0.053711544755359185,0.3385978835978836,0.48522256984538026,0.6851851851851851,0.44166666666666665,0.06009643955248947,0.3104298401260476,0.47549909671059837,0.6851851851851851,0.4466666666666667,0.07952543515145251,0.30677695797711696,0.49744412527645193,0.6851851851851851,0.4283333333333334,0.10660989888811374,0.2898902140061703,0.49372254880869654,0.6851851851851851
|
| 175 |
+
soft,Ties,3,1.0,0.00022732439190725165,1.0,1.0,1.0,1.0,0.0011366219595362582,1.0,1.0,1.0,1.0,0.0022732439190725163,1.0,1.0,1.0,0.9833333333333334,0.004470713040842616,0.9786748222680884,0.9881633300305285,1.0,0.9666666666666667,0.010987345608850495,0.9458503122034504,0.9725166374481752,1.0,0.9733333333333333,0.022126240812305825,0.9494902522261027,0.975543320939519,1.0
|
| 176 |
+
soft,Dresses,5,0.8,9.291521486643438e-05,0.8,0.8,0.8,0.9199999999999999,0.0015246467457102639,0.8573333333333334,0.8893707059983713,0.8666666666666666,0.9400000000000001,0.0034026503818798915,0.8836190476190475,0.9143229135783176,0.8666666666666666,0.9400000000000001,0.006805300763759783,0.8923909377516189,0.9236274359944957,0.8666666666666666,0.9359999999999999,0.016659895018940094,0.8915390645654213,0.9278606718721945,0.8666666666666666,0.944,0.03473321759971764,0.8990514717995944,0.9370151579100119,0.8666666666666666
|
| 177 |
+
soft,Socks,9,0.8888888888888888,0.0002975459215998799,0.8888888888888888,0.8888888888888888,0.8888888888888888,0.8222222222222223,0.0013295460252305453,0.7718518518518519,0.8343044786567138,0.9444444444444444,0.7888888888888889,0.00238364365557603,0.7308024691358024,0.8080944970038478,0.9444444444444444,0.7611111111111111,0.004400117991998836,0.7037574096010629,0.7820473005468442,0.9444444444444444,0.6955555555555555,0.009589991754677672,0.6341618520631828,0.7235155386342337,0.9444444444444444,0.6344444444444445,0.01650597151785084,0.5718757099562017,0.6657359738616342,0.9444444444444444
|
| 178 |
+
soft,Jeggings,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,1.0,0.005807200929152149,1.0,1.0,1.0,0.99,0.011498257839721254,0.9863117352571271,0.9922081386797139,1.0
|
| 179 |
+
soft,Lounge Shorts,1,1.0,8.823010411152286e-05,1.0,1.0,1.0,1.0,0.0004411505205576143,1.0,1.0,1.0,1.0,0.0008823010411152286,1.0,1.0,1.0,1.0,0.0017646020822304571,1.0,1.0,1.0,1.0,0.0044115052055761425,1.0,1.0,1.0,1.0,0.008823010411152285,1.0,1.0,1.0
|
| 180 |
+
soft,Pendant,4,1.0,0.00018811136192626034,1.0,1.0,1.0,1.0,0.0009405568096313017,1.0,1.0,1.0,1.0,0.0018811136192626034,1.0,1.0,1.0,0.9750000000000001,0.003668171557562077,0.9679601500687993,0.9822233848281481,1.0,0.975,0.009170428893905192,0.9577967975864837,0.9788155837554695,1.0,0.9824999999999999,0.018481941309255078,0.9651916468473043,0.9833274431203297,1.0
|
| 181 |
+
soft,Track Pants,3,1.0,0.0001068393804258696,1.0,1.0,1.0,0.9333333333333332,0.0004954822292683337,0.9333333333333332,0.9562649741625527,1.0,0.8666666666666667,0.0009135351128146387,0.8563492063492063,0.9051835495894203,1.0,0.85,0.001788355552768263,0.8088038119288119,0.8791500190268319,1.0,0.8533333333333334,0.004508855494665512,0.7633405847630668,0.867272928732754,1.0,0.81,0.00855163879476653,0.7084708369663559,0.8298139620095514,1.0
|
| 182 |
+
soft,Backpacks,4,1.0,0.0006765899864682003,1.0,1.0,1.0,1.0,0.0033829499323410014,1.0,1.0,1.0,0.95,0.0064276048714479025,0.9383035714285715,0.9638368768917339,1.0,0.925,0.012516914749661705,0.8997341032935073,0.9421661402633792,1.0,0.9149999999999999,0.030953991880920163,0.864796634354005,0.9261601004934009,1.0,0.915,0.06190798376184033,0.8519387100924188,0.9218249532800181,1.0
|
| 183 |
+
soft,Nail Polish,3,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360827,1.0,1.0,1.0,1.0,0.0064432989690721655,1.0,1.0,1.0,1.0,0.012886597938144331,1.0,1.0,1.0,1.0,0.03221649484536082,1.0,1.0,1.0,1.0,0.06443298969072164,1.0,1.0,1.0
|
| 184 |
+
soft,Salwar,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,1.0,0.005807200929152149,1.0,1.0,1.0,1.0,0.011614401858304297,1.0,1.0,1.0
|
| 185 |
+
soft,Mascara,1,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360823,1.0,1.0,1.0,1.0,0.006443298969072165,1.0,1.0,1.0,1.0,0.01288659793814433,1.0,1.0,1.0,1.0,0.03221649484536082,1.0,1.0,1.0,1.0,0.06443298969072164,1.0,1.0,1.0
|
| 186 |
+
soft,Stoles,2,1.0,0.00018811136192626034,1.0,1.0,1.0,1.0,0.0009405568096313017,1.0,1.0,1.0,1.0,0.0018811136192626034,1.0,1.0,1.0,0.95,0.0035741158765989467,0.9445747334021326,0.9664557680764058,1.0,0.72,0.006772009029345372,0.6580774752351075,0.786509856853546,1.0,0.47500000000000003,0.008935289691497367,0.40130649766962156,0.573720575560686,1.0
|
| 187 |
+
soft,Flats,5,0.8,0.0002828854314002829,0.8,0.8,0.8,0.76,0.0013437057991513436,0.752,0.7707863300314587,0.8,0.78,0.0027581329561527585,0.7630873015873016,0.7810423271260899,0.8,0.76,0.005374823196605375,0.7281988736667528,0.7669524386119603,0.8133333333333332,0.768,0.013578500707213578,0.7211490506864907,0.7699932181870939,0.8133333333333332,0.76,0.026874115983026876,0.705044215150257,0.7629868148036834,0.8133333333333332
|
| 188 |
+
soft,Night suits,2,1.0,0.00010218706134728291,1.0,1.0,1.0,1.0,0.0005109353067364146,1.0,1.0,1.0,1.0,0.0010218706134728292,1.0,1.0,1.0,1.0,0.0020437412269456584,1.0,1.0,1.0,1.0,0.005109353067364146,1.0,1.0,1.0,1.0,0.010218706134728292,1.0,1.0,1.0
|
| 189 |
+
soft,Trousers,2,1.0,8.823010411152286e-05,1.0,1.0,1.0,1.0,0.0004411505205576143,1.0,1.0,1.0,1.0,0.0008823010411152286,1.0,1.0,1.0,1.0,0.0017646020822304571,1.0,1.0,1.0,1.0,0.0044115052055761425,1.0,1.0,1.0,1.0,0.008823010411152285,1.0,1.0,1.0
|
| 190 |
+
soft,Jackets,8,1.0,9.171934342046286e-05,1.0,1.0,1.0,1.0,0.0004585967171023144,1.0,1.0,1.0,1.0,0.0009171934342046288,1.0,1.0,1.0,0.975,0.001790271816353496,0.9694823110165118,0.9824932547524331,1.0,0.9724999999999999,0.004464650777869799,0.9557861023393037,0.9771103012486617,1.0,0.97,0.008900265551093838,0.9486985727705792,0.973430995272976,1.0
|
| 191 |
+
soft,Free Gifts,2,0.5,0.011904761904761904,0.5,0.5,0.5,0.4,0.047619047619047616,0.38,0.42696582507864683,0.5,0.25,0.05952380952380952,0.2257142857142857,0.313753566530828,0.5,0.2,0.09523809523809523,0.1432936507936508,0.2535523425626366,0.5,0.09,0.10714285714285714,0.07105462067868083,0.1640096285429199,0.5,0.07,0.16666666666666666,0.08048720494297198,0.19893761390231135,0.5
|
| 192 |
+
soft,Trunk,2,1.0,8.823010411152286e-05,1.0,1.0,1.0,1.0,0.0004411505205576143,1.0,1.0,1.0,1.0,0.0008823010411152286,1.0,1.0,1.0,1.0,0.0017646020822304571,1.0,1.0,1.0,1.0,0.0044115052055761425,1.0,1.0,1.0,0.99,0.008734780307040762,0.9892999406490219,0.9927072962790353,1.0
|
| 193 |
+
soft,Sweaters,3,1.0,9.753474226869623e-05,1.0,1.0,1.0,1.0,0.0004876737113434812,1.0,1.0,1.0,1.0,0.0009753474226869624,1.0,1.0,1.0,1.0,0.0019506948453739247,1.0,1.0,1.0,1.0,0.004876737113434812,1.0,1.0,1.0,0.9966666666666667,0.00972406419216578,0.9951362946202204,0.9973467487077322,1.0
|
| 194 |
+
soft,Bangle,1,1.0,0.00018811136192626034,1.0,1.0,1.0,1.0,0.0009405568096313017,1.0,1.0,1.0,1.0,0.0018811136192626034,1.0,1.0,1.0,0.9,0.003386004514672686,0.8729197498837591,0.9281778704499036,1.0,0.9,0.008465011286681716,0.8341938952246137,0.9149723182729791,1.0,0.92,0.01730624529721595,0.8459613894856886,0.9245678432202356,1.0
|
| 195 |
+
soft,Leggings,2,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,1.0,0.005807200929152149,1.0,1.0,1.0,0.995,0.011556329849012776,0.9937006151031863,0.9962008379418028,1.0
|
| 196 |
+
soft,Shorts,5,1.0,0.0005806425479550403,1.0,1.0,1.0,0.8400000000000001,0.0018478037687989484,0.8400000000000001,0.8678320410547233,1.0,0.8400000000000001,0.004188019981441414,0.7996666666666666,0.8579045976469715,1.0,0.72,0.005209813049954069,0.6787413183651574,0.7661895037455946,1.0,0.736,0.013095116708174393,0.6435049167732994,0.7563418614579666,1.0,0.718,0.02455418189741749,0.6208309558238236,0.7351521540576758,1.0
|
| 197 |
+
soft,Waistcoat,1,1.0,8.823010411152286e-05,1.0,1.0,1.0,1.0,0.0004411505205576143,1.0,1.0,1.0,1.0,0.0008823010411152286,1.0,1.0,1.0,1.0,0.0017646020822304571,1.0,1.0,1.0,1.0,0.0044115052055761425,1.0,1.0,1.0,1.0,0.008823010411152285,1.0,1.0,1.0
|
| 198 |
+
soft,Jewellery Set,1,1.0,0.00018811136192626034,1.0,1.0,1.0,1.0,0.0009405568096313017,1.0,1.0,1.0,1.0,0.0018811136192626034,1.0,1.0,1.0,1.0,0.003762227238525207,1.0,1.0,1.0,1.0,0.009405568096313018,1.0,1.0,1.0,0.99,0.018623024830699775,0.9877810176130588,0.9924669316720286,1.0
|
| 199 |
+
soft,Capris,1,1.0,0.0013192612137203166,1.0,1.0,1.0,1.0,0.006596306068601583,1.0,1.0,1.0,0.6,0.0079155672823219,0.5599999999999999,0.7125523635307983,1.0,0.35,0.009234828496042216,0.3118181818181818,0.49947909654655176,1.0,0.36,0.023746701846965697,0.2038066956481749,0.43836747575517404,1.0,0.36,0.047493403693931395,0.1657790804849634,0.40732012202724766,1.0
|
| 200 |
+
soft,Accessory Gift Set,1,1.0,0.00022732439190725165,1.0,1.0,1.0,1.0,0.0011366219595362582,1.0,1.0,1.0,1.0,0.0022732439190725163,1.0,1.0,1.0,1.0,0.004546487838145033,1.0,1.0,1.0,0.92,0.010456922027733576,0.8966361054615039,0.9401072888806836,1.0,0.87,0.019777222095930892,0.8064569787944593,0.8926471700271902,1.0
|
| 201 |
+
soft,Nail Essentials,1,1.0,0.0006443298969072165,1.0,1.0,1.0,0.6,0.0019329896907216496,0.52,0.6843515475204855,1.0,0.6,0.003865979381443299,0.4730952380952381,0.6652907408280684,1.0,0.75,0.009664948453608248,0.5420820409810347,0.7443685058474032,1.0,0.76,0.024484536082474227,0.5577795985760123,0.7522433877619741,1.0,0.76,0.04896907216494845,0.576614619772037,0.7570385000294272,1.0
|
| 202 |
+
soft,Lip Gloss,2,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360823,1.0,1.0,1.0,1.0,0.006443298969072165,1.0,1.0,1.0,1.0,0.01288659793814433,1.0,1.0,1.0,1.0,0.03221649484536082,1.0,1.0,1.0,1.0,0.06443298969072164,1.0,1.0,1.0
|
| 203 |
+
soft,Dupatta,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,0.9,0.0020905923344947735,0.8949999999999999,0.9336975380477095,1.0,0.66,0.003832752613240418,0.5975185793021969,0.7408144752766844,1.0,0.73,0.008478513356562137,0.5757152754407701,0.7623076491232995,1.0
|
| 204 |
+
soft,Clutches,1,1.0,0.00018811136192626034,1.0,1.0,1.0,1.0,0.0009405568096313017,1.0,1.0,1.0,1.0,0.0018811136192626034,1.0,1.0,1.0,1.0,0.003762227238525207,1.0,1.0,1.0,1.0,0.009405568096313018,1.0,1.0,1.0,0.99,0.018623024830699775,0.9867343263592957,0.9922843494502112,1.0
|
| 205 |
+
soft,Deodorant,5,1.0,0.001532374751311268,1.0,1.0,1.0,0.96,0.007310996563573882,0.96,0.9737589844975316,1.0,0.8200000000000001,0.012165852776270572,0.7893650793650793,0.8691544086315602,1.0,0.8,0.023851962380177248,0.7169802810708383,0.8363586310761594,1.0,0.784,0.059225447639717856,0.6666491257959528,0.8086640529980237,1.0,0.78,0.11797115210707179,0.6396963515038091,0.7961082746548863,1.0
|
| 206 |
+
soft,Caps,1,1.0,0.00022732439190725165,1.0,1.0,1.0,1.0,0.0011366219595362582,1.0,1.0,1.0,0.9,0.0020459195271652648,0.9,0.9363792118010483,1.0,0.7,0.003182541486701523,0.6696639471639472,0.7885685259538241,1.0,0.5,0.005683109797681291,0.3704147308607864,0.5874611059648229,1.0,0.56,0.012730165946806092,0.34781123482309384,0.598293752015547,1.0
|
| 207 |
+
soft,Lip Liner,1,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360823,1.0,1.0,1.0,1.0,0.006443298969072165,1.0,1.0,1.0,1.0,0.01288659793814433,1.0,1.0,1.0,1.0,0.03221649484536082,1.0,1.0,1.0,1.0,0.06443298969072164,1.0,1.0,1.0
|
| 208 |
+
soft,Foundation and Primer,1,1.0,0.0006443298969072165,1.0,1.0,1.0,0.8,0.002577319587628866,0.8,0.8687949224876582,1.0,0.8,0.005154639175257732,0.736547619047619,0.8486026589039901,1.0,0.65,0.008376288659793814,0.5294206103494028,0.7182860646884806,1.0,0.86,0.027706185567010308,0.685563048773757,0.8462255531754223,1.0,0.91,0.0586340206185567,0.7698118304270448,0.8897545783869253,1.0
|
| 209 |
+
soft,Blazers,1,1.0,8.823010411152286e-05,1.0,1.0,1.0,1.0,0.0004411505205576143,1.0,1.0,1.0,1.0,0.0008823010411152286,1.0,1.0,1.0,1.0,0.0017646020822304571,1.0,1.0,1.0,1.0,0.0044115052055761425,1.0,1.0,1.0,1.0,0.008823010411152285,1.0,1.0,1.0
|
| 210 |
+
soft,Highlighter and Blush,1,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360823,1.0,1.0,1.0,1.0,0.006443298969072165,1.0,1.0,1.0,1.0,0.01288659793814433,1.0,1.0,1.0,1.0,0.03221649484536082,1.0,1.0,1.0,1.0,0.06443298969072164,1.0,1.0,1.0
|
| 211 |
+
soft,Scarves,1,0.0,0.0,0.0,0.0,0.0,0.4,0.0003762227238525207,0.16666666666666666,0.3156484524795145,0.3333333333333333,0.6,0.001128668171557562,0.3196428571428571,0.4922818839877926,0.3333333333333333,0.55,0.002069224981188864,0.30059371184371175,0.49265148496049777,0.3333333333333333,0.56,0.005267118133935289,0.31300621485541197,0.5266504353647885,0.3333333333333333,0.44,0.008276899924755455,0.2405298268072437,0.4492819248627575,0.3333333333333333
|
| 212 |
+
soft,Eye Cream,1,1.0,0.0006443298969072165,1.0,1.0,1.0,1.0,0.0032216494845360823,1.0,1.0,1.0,1.0,0.006443298969072165,1.0,1.0,1.0,1.0,0.01288659793814433,1.0,1.0,1.0,0.98,0.03157216494845361,0.9729515216137484,0.9850030692922281,1.0,0.95,0.061211340206185565,0.9274750311769838,0.9597900872201347,1.0
|
| 213 |
+
soft,Stockings,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,1.0,0.0023228803716608595,1.0,1.0,1.0,1.0,0.005807200929152149,1.0,1.0,1.0,1.0,0.011614401858304297,1.0,1.0,1.0
|
| 214 |
+
soft,Camisoles,1,1.0,0.00011614401858304297,1.0,1.0,1.0,1.0,0.0005807200929152149,1.0,1.0,1.0,1.0,0.0011614401858304297,1.0,1.0,1.0,0.8,0.0018583042973286876,0.8,0.8672962746434073,1.0,0.62,0.003600464576074332,0.5290039015588441,0.7010144675368607,1.0,0.63,0.007317073170731708,0.4629050359788012,0.6767954827422168,1.0
|
artifacts/evaluation/image_to_image_metrics.json
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"evaluation_type": "image_to_image_retrieval",
|
| 3 |
+
"model": "mohsin416/fashion-clip-vit-large",
|
| 4 |
+
"dataset": "paramaggarwal/fashion-product-images-dataset",
|
| 5 |
+
"num_queries": 500,
|
| 6 |
+
"num_indexed_images": 44065,
|
| 7 |
+
"embedding_dimension": 768,
|
| 8 |
+
"k_values": [1, 5, 10, 20, 50, 100],
|
| 9 |
+
"exclude_self_match": true,
|
| 10 |
+
"relevance_definitions": {
|
| 11 |
+
"strict": ["articleType"],
|
| 12 |
+
"medium": ["subCategory"],
|
| 13 |
+
"soft": ["gender", "masterCategory"]
|
| 14 |
+
},
|
| 15 |
+
"metrics": {
|
| 16 |
+
"strict": {
|
| 17 |
+
"precision@1": 0.874,
|
| 18 |
+
"recall@1": 0.002763378892972854,
|
| 19 |
+
"map@1": 0.874,
|
| 20 |
+
"ndcg@1": 0.874,
|
| 21 |
+
"mrr@1": 0.874,
|
| 22 |
+
"precision@5": 0.8632000000000001,
|
| 23 |
+
"recall@5": 0.010143609731069408,
|
| 24 |
+
"map@5": 0.8332066666666667,
|
| 25 |
+
"ndcg@5": 0.867996010455835,
|
| 26 |
+
"mrr@5": 0.9144,
|
| 27 |
+
"precision@10": 0.8402000000000001,
|
| 28 |
+
"recall@10": 0.01735876757759483,
|
| 29 |
+
"map@10": 0.7975352380952381,
|
| 30 |
+
"ndcg@10": 0.8506805601403487,
|
| 31 |
+
"mrr@10": 0.9157166666666667,
|
| 32 |
+
"precision@20": 0.8181,
|
| 33 |
+
"recall@20": 0.028347488718298536,
|
| 34 |
+
"map@20": 0.765765475117786,
|
| 35 |
+
"ndcg@20": 0.833052869384005,
|
| 36 |
+
"mrr@20": 0.9162267563705644,
|
| 37 |
+
"precision@50": 0.7814800000000001,
|
| 38 |
+
"recall@50": 0.056451977757770534,
|
| 39 |
+
"map@50": 0.720017914988089,
|
| 40 |
+
"ndcg@50": 0.8027467235328809,
|
| 41 |
+
"mrr@50": 0.9163373885544724,
|
| 42 |
+
"precision@100": 0.75522,
|
| 43 |
+
"recall@100": 0.09585186912899869,
|
| 44 |
+
"map@100": 0.6892311489392102,
|
| 45 |
+
"ndcg@100": 0.7809777290395595,
|
| 46 |
+
"mrr@100": 0.9163614849400147
|
| 47 |
+
},
|
| 48 |
+
"medium": {
|
| 49 |
+
"precision@1": 0.968,
|
| 50 |
+
"recall@1": 0.0009479976465196843,
|
| 51 |
+
"map@1": 0.968,
|
| 52 |
+
"ndcg@1": 0.968,
|
| 53 |
+
"mrr@1": 0.968,
|
| 54 |
+
"precision@5": 0.964,
|
| 55 |
+
"recall@5": 0.003537443646943243,
|
| 56 |
+
"map@5": 0.95738,
|
| 57 |
+
"ndcg@5": 0.9660024520963154,
|
| 58 |
+
"mrr@5": 0.9783333333333333,
|
| 59 |
+
"precision@10": 0.9556,
|
| 60 |
+
"recall@10": 0.006432589884542118,
|
| 61 |
+
"map@10": 0.9448415079365079,
|
| 62 |
+
"ndcg@10": 0.959532777697253,
|
| 63 |
+
"mrr@10": 0.9786666666666666,
|
| 64 |
+
"precision@20": 0.9448,
|
| 65 |
+
"recall@20": 0.011712639814613582,
|
| 66 |
+
"map@20": 0.9302584022698147,
|
| 67 |
+
"ndcg@20": 0.9508209431689493,
|
| 68 |
+
"mrr@20": 0.9788205128205129,
|
| 69 |
+
"precision@50": 0.92844,
|
| 70 |
+
"recall@50": 0.026116796519493286,
|
| 71 |
+
"map@50": 0.9080475377294356,
|
| 72 |
+
"ndcg@50": 0.9362214975710581,
|
| 73 |
+
"mrr@50": 0.9788894783377542,
|
| 74 |
+
"precision@100": 0.91572,
|
| 75 |
+
"recall@100": 0.04766945982045444,
|
| 76 |
+
"map@100": 0.8917254231974451,
|
| 77 |
+
"ndcg@100": 0.9248214550436903,
|
| 78 |
+
"mrr@100": 0.9788894783377542
|
| 79 |
+
},
|
| 80 |
+
"soft": {
|
| 81 |
+
"precision@1": 0.922,
|
| 82 |
+
"recall@1": 0.0005187722347088218,
|
| 83 |
+
"map@1": 0.922,
|
| 84 |
+
"ndcg@1": 0.922,
|
| 85 |
+
"mrr@1": 0.922,
|
| 86 |
+
"precision@5": 0.9096000000000001,
|
| 87 |
+
"recall@5": 0.002219622638306041,
|
| 88 |
+
"map@5": 0.8900066666666666,
|
| 89 |
+
"ndcg@5": 0.9128362150963535,
|
| 90 |
+
"mrr@5": 0.9454000000000001,
|
| 91 |
+
"precision@10": 0.8984000000000001,
|
| 92 |
+
"recall@10": 0.0035583739731783813,
|
| 93 |
+
"map@10": 0.8703734920634921,
|
| 94 |
+
"ndcg@10": 0.9039191894601937,
|
| 95 |
+
"mrr@10": 0.9468444444444445,
|
| 96 |
+
"precision@20": 0.8812000000000001,
|
| 97 |
+
"recall@20": 0.006156086544883346,
|
| 98 |
+
"map@20": 0.8468977713385687,
|
| 99 |
+
"ndcg@20": 0.890147333479848,
|
| 100 |
+
"mrr@20": 0.9470830409356724,
|
| 101 |
+
"precision@50": 0.86492,
|
| 102 |
+
"recall@50": 0.012544600663409643,
|
| 103 |
+
"map@50": 0.8208901122076345,
|
| 104 |
+
"ndcg@50": 0.8743627541612049,
|
| 105 |
+
"mrr@50": 0.9471385964912281,
|
| 106 |
+
"precision@100": 0.8515400000000001,
|
| 107 |
+
"recall@100": 0.0226250196941088,
|
| 108 |
+
"map@100": 0.8024866481328302,
|
| 109 |
+
"ndcg@100": 0.8619764228637457,
|
| 110 |
+
"mrr@100": 0.9471585964912281
|
| 111 |
+
}
|
| 112 |
+
}
|
| 113 |
+
}
|
config/model.yaml
CHANGED
|
@@ -1,9 +1,71 @@
|
|
| 1 |
model:
|
| 2 |
name: "openai/clip-vit-large-patch14"
|
| 3 |
-
|
|
|
|
|
|
|
| 4 |
batch_size: 32
|
| 5 |
epochs: 10
|
| 6 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
|
| 8 |
index:
|
| 9 |
-
dimension: 768
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
model:
|
| 2 |
name: "openai/clip-vit-large-patch14"
|
| 3 |
+
new_model: "mohsin416/fashion-clip-vit-large"
|
| 4 |
+
repo_id: "mohsin416/fashion-clip-vit-large"
|
| 5 |
+
learning_rate: 0.0001
|
| 6 |
batch_size: 32
|
| 7 |
epochs: 10
|
| 8 |
+
device: "auto"
|
| 9 |
+
|
| 10 |
+
data:
|
| 11 |
+
dataset_name: "paramaggarwal/fashion-product-images-dataset"
|
| 12 |
+
image_dir: "artifacts/images"
|
| 13 |
+
metadata_path: "artifacts/styles.csv"
|
| 14 |
+
split_path: "artifacts/splits.json"
|
| 15 |
+
metadata_aligned_path: "artifacts/embeddings/metadata_aligned.csv"
|
| 16 |
+
id_column: "id"
|
| 17 |
+
image_column: "image"
|
| 18 |
+
gender_column: "gender"
|
| 19 |
+
master_category_column: "masterCategory"
|
| 20 |
+
sub_category_column: "subCategory"
|
| 21 |
+
article_type_column: "articleType"
|
| 22 |
+
base_colour_column: "baseColour"
|
| 23 |
+
|
| 24 |
+
embeddings:
|
| 25 |
+
dimension: 768
|
| 26 |
+
normalize: true
|
| 27 |
+
batch_size: 32
|
| 28 |
+
output_path: "artifacts/embeddings/image_embeddings.npy"
|
| 29 |
|
| 30 |
index:
|
| 31 |
+
dimension: 768
|
| 32 |
+
similarity: "cosine"
|
| 33 |
+
backend: "numpy"
|
| 34 |
+
top_k: 10
|
| 35 |
+
index_path: "artifacts/index/image_index.npy"
|
| 36 |
+
embedding_path: "artifacts/embeddings/image_embeddings.npy"
|
| 37 |
+
metadata_path: "artifacts/embeddings/metadata_aligned.csv"
|
| 38 |
+
|
| 39 |
+
evaluation:
|
| 40 |
+
enabled: true
|
| 41 |
+
task: "image_to_image_retrieval"
|
| 42 |
+
k_values: [1, 5, 10, 20, 50, 100]
|
| 43 |
+
seed: 42
|
| 44 |
+
max_queries: 500
|
| 45 |
+
exclude_self_match: true
|
| 46 |
+
relevance_levels:
|
| 47 |
+
strict:
|
| 48 |
+
fields: ["articleType"]
|
| 49 |
+
description: "Relevant if retrieved item has the same articleType as the query."
|
| 50 |
+
|
| 51 |
+
medium:
|
| 52 |
+
fields: ["subCategory"]
|
| 53 |
+
description: "Relevant if retrieved item has the same subCategory as the query."
|
| 54 |
+
|
| 55 |
+
soft:
|
| 56 |
+
fields: ["gender", "masterCategory"]
|
| 57 |
+
description: "Relevant if retrieved item has the same gender and masterCategory as the query."
|
| 58 |
+
|
| 59 |
+
output_dir: "artifacts/evaluation"
|
| 60 |
+
metrics_output_path: "artifacts/evaluation/image_to_image_metrics.json"
|
| 61 |
+
category_breakdown_output_path: "artifacts/evaluation/image_to_image_category_breakdown.csv"
|
| 62 |
+
error_cases_output_path: "artifacts/evaluation/error_cases.csv"
|
| 63 |
+
|
| 64 |
+
|
| 65 |
+
benchmark:
|
| 66 |
+
enabled: true
|
| 67 |
+
warmup_runs: 5
|
| 68 |
+
num_runs: 100
|
| 69 |
+
top_k: 10
|
| 70 |
+
output_dir: "artifacts/benchmark"
|
| 71 |
+
output_path: "artifacts/benchmark/benchmark_results.json"
|
config/schema.yaml
CHANGED
|
@@ -1,10 +1,58 @@
|
|
| 1 |
model:
|
| 2 |
-
name
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
|
|
|
|
|
|
| 7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
index:
|
| 10 |
-
dimension
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
model:
|
| 2 |
+
name: str
|
| 3 |
+
new_model: str
|
| 4 |
+
repo_id: str
|
| 5 |
+
learning_rate: float
|
| 6 |
+
batch_size: int
|
| 7 |
+
epochs: int
|
| 8 |
+
device: str
|
| 9 |
|
| 10 |
+
data:
|
| 11 |
+
dataset_name: str
|
| 12 |
+
image_dir: str
|
| 13 |
+
metadata_path: str
|
| 14 |
+
split_path: str
|
| 15 |
+
metadata_aligned_path: str
|
| 16 |
+
id_column: str
|
| 17 |
+
image_column: str
|
| 18 |
+
gender_column: str
|
| 19 |
+
master_category_column: str
|
| 20 |
+
sub_category_column: str
|
| 21 |
+
article_type_column: str
|
| 22 |
+
base_colour_column: str
|
| 23 |
+
|
| 24 |
+
embeddings:
|
| 25 |
+
dimension: int
|
| 26 |
+
normalize: bool
|
| 27 |
+
batch_size: int
|
| 28 |
+
output_path: str
|
| 29 |
|
| 30 |
index:
|
| 31 |
+
dimension: int
|
| 32 |
+
similarity: str
|
| 33 |
+
backend: str
|
| 34 |
+
top_k: int
|
| 35 |
+
index_path: str
|
| 36 |
+
embedding_path: str
|
| 37 |
+
metadata_path: str
|
| 38 |
+
|
| 39 |
+
evaluation:
|
| 40 |
+
enabled: bool
|
| 41 |
+
task: str
|
| 42 |
+
k_values: list
|
| 43 |
+
seed: int
|
| 44 |
+
max_queries: any
|
| 45 |
+
exclude_self_match: bool
|
| 46 |
+
relevance_levels: dict
|
| 47 |
+
output_dir: str
|
| 48 |
+
metrics_output_path: str
|
| 49 |
+
category_breakdown_output_path: str
|
| 50 |
+
error_cases_output_path: str
|
| 51 |
+
|
| 52 |
+
benchmark:
|
| 53 |
+
enabled: bool
|
| 54 |
+
warmup_runs: int
|
| 55 |
+
num_runs: int
|
| 56 |
+
top_k: int
|
| 57 |
+
output_dir: str
|
| 58 |
+
output_path: str
|
template.py
CHANGED
|
@@ -4,31 +4,56 @@ from pathlib import Path
|
|
| 4 |
project_name = "visual_product_search"
|
| 5 |
|
| 6 |
list_of_files = [
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
f"{project_name}/embeddings/__init__.py",
|
| 8 |
f"{project_name}/embeddings/model.py",
|
| 9 |
f"{project_name}/embeddings/embed.py",
|
| 10 |
f"{project_name}/embeddings/train.py",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 11 |
f"{project_name}/indexing/__init__.py",
|
| 12 |
f"{project_name}/indexing/indexer.py",
|
| 13 |
f"{project_name}/indexing/search.py",
|
|
|
|
|
|
|
|
|
|
| 14 |
f"{project_name}/pipeline/__init__.py",
|
| 15 |
f"{project_name}/pipeline/training_pipeline.py",
|
| 16 |
f"{project_name}/pipeline/prediction_pipeline.py",
|
| 17 |
-
|
| 18 |
-
f"{project_name}/data/ingest.py",
|
| 19 |
-
f"{project_name}/data/dataset.py",
|
| 20 |
f"{project_name}/utils/__init__.py",
|
| 21 |
f"{project_name}/utils/config.py",
|
| 22 |
f"{project_name}/utils/storage.py",
|
| 23 |
-
|
| 24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
"app.py",
|
| 26 |
-
"requirements.txt",
|
| 27 |
"Dockerfile",
|
| 28 |
-
"
|
|
|
|
|
|
|
| 29 |
"setup.py",
|
| 30 |
-
"config/model.yaml",
|
| 31 |
-
"config/schema.yaml",
|
| 32 |
]
|
| 33 |
|
| 34 |
for filepath in list_of_files:
|
|
@@ -41,4 +66,4 @@ for filepath in list_of_files:
|
|
| 41 |
if not filepath.exists() or filepath.stat().st_size == 0:
|
| 42 |
filepath.touch()
|
| 43 |
else:
|
| 44 |
-
print(f'{filename} is already present in {filedir} and has some content. Skipping creation.')
|
|
|
|
| 4 |
project_name = "visual_product_search"
|
| 5 |
|
| 6 |
list_of_files = [
|
| 7 |
+
f"{project_name}/data/__init__.py",
|
| 8 |
+
f"{project_name}/data/ingest.py",
|
| 9 |
+
f"{project_name}/data/dataset.py",
|
| 10 |
+
|
| 11 |
f"{project_name}/embeddings/__init__.py",
|
| 12 |
f"{project_name}/embeddings/model.py",
|
| 13 |
f"{project_name}/embeddings/embed.py",
|
| 14 |
f"{project_name}/embeddings/train.py",
|
| 15 |
+
|
| 16 |
+
f"{project_name}/evaluation/__init__.py",
|
| 17 |
+
f"{project_name}/evaluation/metrics.py",
|
| 18 |
+
f"{project_name}/evaluation/evaluate_image_to_image.py",
|
| 19 |
+
f"{project_name}/evaluation/error_analysis.py",
|
| 20 |
+
|
| 21 |
+
f"{project_name}/exception/__init__.py",
|
| 22 |
+
|
| 23 |
f"{project_name}/indexing/__init__.py",
|
| 24 |
f"{project_name}/indexing/indexer.py",
|
| 25 |
f"{project_name}/indexing/search.py",
|
| 26 |
+
|
| 27 |
+
f"{project_name}/logger/__init__.py",
|
| 28 |
+
|
| 29 |
f"{project_name}/pipeline/__init__.py",
|
| 30 |
f"{project_name}/pipeline/training_pipeline.py",
|
| 31 |
f"{project_name}/pipeline/prediction_pipeline.py",
|
| 32 |
+
|
|
|
|
|
|
|
| 33 |
f"{project_name}/utils/__init__.py",
|
| 34 |
f"{project_name}/utils/config.py",
|
| 35 |
f"{project_name}/utils/storage.py",
|
| 36 |
+
|
| 37 |
+
"artifacts/evaluation/image_to_image_metrics.json",
|
| 38 |
+
"artifacts/evaluation/image_to_image_category_breakdown.csv",
|
| 39 |
+
"artifacts/evaluation/error_cases.csv",
|
| 40 |
+
|
| 41 |
+
".github/workflows/docker-to-hf.yml",
|
| 42 |
+
|
| 43 |
+
"config/model.yaml",
|
| 44 |
+
"config/schema.yaml",
|
| 45 |
+
|
| 46 |
+
"templates/home.html",
|
| 47 |
+
"templates/train.html",
|
| 48 |
+
|
| 49 |
+
".dockerignore",
|
| 50 |
+
".gitignore",
|
| 51 |
"app.py",
|
|
|
|
| 52 |
"Dockerfile",
|
| 53 |
+
"LICENCE",
|
| 54 |
+
"README.md",
|
| 55 |
+
"requirements.txt",
|
| 56 |
"setup.py",
|
|
|
|
|
|
|
| 57 |
]
|
| 58 |
|
| 59 |
for filepath in list_of_files:
|
|
|
|
| 66 |
if not filepath.exists() or filepath.stat().st_size == 0:
|
| 67 |
filepath.touch()
|
| 68 |
else:
|
| 69 |
+
print(f'{filename} is already present in {filedir} and has some content. Skipping creation.')
|
templates/evaluation.html
ADDED
|
@@ -0,0 +1,216 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8" />
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
| 6 |
+
<title>Evaluation Results | Visual Product Search</title>
|
| 7 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 8 |
+
|
| 9 |
+
<script>
|
| 10 |
+
tailwind.config = {
|
| 11 |
+
theme: {
|
| 12 |
+
extend: {
|
| 13 |
+
colors: {
|
| 14 |
+
primary: "rgba(99, 102, 241, 0.8)",
|
| 15 |
+
secondary: "rgba(168, 85, 247, 0.8)",
|
| 16 |
+
darkglass: "rgba(15, 23, 42, 0.7)",
|
| 17 |
+
},
|
| 18 |
+
boxShadow: {
|
| 19 |
+
glow: "0 0 15px rgba(168, 85, 247, 0.5)",
|
| 20 |
+
soft: "0 4px 30px rgba(0, 0, 0, 0.1)",
|
| 21 |
+
},
|
| 22 |
+
},
|
| 23 |
+
},
|
| 24 |
+
};
|
| 25 |
+
</script>
|
| 26 |
+
|
| 27 |
+
<style>
|
| 28 |
+
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");
|
| 29 |
+
|
| 30 |
+
body {
|
| 31 |
+
font-family: "Inter", sans-serif;
|
| 32 |
+
background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
|
| 33 |
+
min-height: 100vh;
|
| 34 |
+
color: white;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
.glass-card {
|
| 38 |
+
background: rgba(255, 255, 255, 0.05);
|
| 39 |
+
backdrop-filter: blur(8px);
|
| 40 |
+
-webkit-backdrop-filter: blur(8px);
|
| 41 |
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
.btn-gradient {
|
| 45 |
+
background: linear-gradient(
|
| 46 |
+
45deg,
|
| 47 |
+
rgba(99, 102, 241, 0.8) 0%,
|
| 48 |
+
rgba(168, 85, 247, 0.8) 100%
|
| 49 |
+
);
|
| 50 |
+
}
|
| 51 |
+
</style>
|
| 52 |
+
</head>
|
| 53 |
+
|
| 54 |
+
<body class="min-h-screen py-10 px-4 sm:px-6 lg:px-8">
|
| 55 |
+
<div class="w-full max-w-6xl mx-auto">
|
| 56 |
+
<div class="flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 mb-10">
|
| 57 |
+
<div>
|
| 58 |
+
<h1 class="text-4xl sm:text-5xl font-bold bg-clip-text text-transparent bg-gradient-to-r from-primary to-secondary mb-3">
|
| 59 |
+
Evaluation Dashboard
|
| 60 |
+
</h1>
|
| 61 |
+
<p class="text-gray-300">
|
| 62 |
+
Precomputed evaluation and benchmark results for Visual Product Search
|
| 63 |
+
</p>
|
| 64 |
+
</div>
|
| 65 |
+
|
| 66 |
+
<a href="/" class="btn-gradient px-5 py-3 rounded-xl font-medium text-white shadow-glow text-center">
|
| 67 |
+
Back to Search
|
| 68 |
+
</a>
|
| 69 |
+
</div>
|
| 70 |
+
|
| 71 |
+
{% if evaluation %}
|
| 72 |
+
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-8">
|
| 73 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 74 |
+
<p class="text-gray-400 text-sm mb-2">Indexed Images</p>
|
| 75 |
+
<h2 class="text-3xl font-bold">{{ "{:,}".format(evaluation.num_indexed_images) }}</h2>
|
| 76 |
+
</div>
|
| 77 |
+
|
| 78 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 79 |
+
<p class="text-gray-400 text-sm mb-2">Evaluation Queries</p>
|
| 80 |
+
<h2 class="text-3xl font-bold">{{ "{:,}".format(evaluation.num_queries) }}</h2>
|
| 81 |
+
</div>
|
| 82 |
+
|
| 83 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 84 |
+
<p class="text-gray-400 text-sm mb-2">Embedding Dimension</p>
|
| 85 |
+
<h2 class="text-3xl font-bold">{{ evaluation.embedding_dimension }}</h2>
|
| 86 |
+
</div>
|
| 87 |
+
|
| 88 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 89 |
+
<p class="text-gray-400 text-sm mb-2">Self-Match Excluded</p>
|
| 90 |
+
<h2 class="text-3xl font-bold">
|
| 91 |
+
{% if evaluation.exclude_self_match %}Yes{% else %}No{% endif %}
|
| 92 |
+
</h2>
|
| 93 |
+
</div>
|
| 94 |
+
</div>
|
| 95 |
+
|
| 96 |
+
<div class="grid grid-cols-1 md:grid-cols-3 gap-4 mb-8">
|
| 97 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 98 |
+
<p class="text-gray-400 text-sm mb-2">Article Type Precision@5</p>
|
| 99 |
+
<h2 class="text-3xl font-bold text-green-300">{{ evaluation.main_cards.article_precision_5 }}%</h2>
|
| 100 |
+
</div>
|
| 101 |
+
|
| 102 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 103 |
+
<p class="text-gray-400 text-sm mb-2">Subcategory Precision@5</p>
|
| 104 |
+
<h2 class="text-3xl font-bold text-green-300">{{ evaluation.main_cards.subcategory_precision_5 }}%</h2>
|
| 105 |
+
</div>
|
| 106 |
+
|
| 107 |
+
<div class="glass-card rounded-2xl p-5 shadow-soft">
|
| 108 |
+
<p class="text-gray-400 text-sm mb-2">Gender + Master Category Precision@5</p>
|
| 109 |
+
<h2 class="text-3xl font-bold text-green-300">{{ evaluation.main_cards.gender_master_precision_5 }}%</h2>
|
| 110 |
+
</div>
|
| 111 |
+
</div>
|
| 112 |
+
|
| 113 |
+
<div class="glass-card rounded-2xl p-6 shadow-soft mb-8 overflow-x-auto">
|
| 114 |
+
<h2 class="text-2xl font-semibold mb-2">Image-to-Image Retrieval Evaluation</h2>
|
| 115 |
+
<p class="text-gray-400 mb-6">
|
| 116 |
+
Model: {{ evaluation.model }} | Dataset: {{ evaluation.dataset }}
|
| 117 |
+
</p>
|
| 118 |
+
|
| 119 |
+
<table class="w-full text-left border-collapse">
|
| 120 |
+
<thead>
|
| 121 |
+
<tr class="border-b border-gray-700 text-gray-300">
|
| 122 |
+
<th class="py-3 pr-4">Match Type</th>
|
| 123 |
+
<th class="py-3 pr-4">Definition</th>
|
| 124 |
+
<th class="py-3 pr-4">Precision@5</th>
|
| 125 |
+
<th class="py-3 pr-4">NDCG@10</th>
|
| 126 |
+
<th class="py-3 pr-4">mAP@10</th>
|
| 127 |
+
<th class="py-3 pr-4">MRR@10</th>
|
| 128 |
+
</tr>
|
| 129 |
+
</thead>
|
| 130 |
+
|
| 131 |
+
<tbody>
|
| 132 |
+
{% for row in evaluation.rows %}
|
| 133 |
+
<tr class="border-b border-gray-800">
|
| 134 |
+
<td class="py-4 pr-4 font-medium">{{ row.name }}</td>
|
| 135 |
+
<td class="py-4 pr-4 text-gray-400">{{ row.definition }}</td>
|
| 136 |
+
<td class="py-4 pr-4">{{ row.precision_5 }}%</td>
|
| 137 |
+
<td class="py-4 pr-4">{{ row.ndcg_10 }}%</td>
|
| 138 |
+
<td class="py-4 pr-4">{{ row.map_10 }}%</td>
|
| 139 |
+
<td class="py-4 pr-4">{{ row.mrr_10 }}%</td>
|
| 140 |
+
</tr>
|
| 141 |
+
{% endfor %}
|
| 142 |
+
</tbody>
|
| 143 |
+
</table>
|
| 144 |
+
</div>
|
| 145 |
+
{% else %}
|
| 146 |
+
<div class="glass-card rounded-2xl p-8 shadow-soft mb-8">
|
| 147 |
+
<h2 class="text-2xl font-semibold mb-3">Evaluation Results Not Available</h2>
|
| 148 |
+
<p class="text-gray-300 mb-4">
|
| 149 |
+
Run evaluation locally and save the generated JSON file before showing this dashboard.
|
| 150 |
+
</p>
|
| 151 |
+
<pre class="bg-slate-950 text-gray-300 p-4 rounded-xl overflow-x-auto">python -m visual_product_search.evaluation.evaluate_image_to_image</pre>
|
| 152 |
+
</div>
|
| 153 |
+
{% endif %}
|
| 154 |
+
|
| 155 |
+
{% if benchmark %}
|
| 156 |
+
<div class="glass-card rounded-2xl p-6 shadow-soft overflow-x-auto">
|
| 157 |
+
<h2 class="text-2xl font-semibold mb-2">Search Benchmark</h2>
|
| 158 |
+
<p class="text-gray-400 mb-6">
|
| 159 |
+
Search latency measured using precomputed embeddings.
|
| 160 |
+
</p>
|
| 161 |
+
|
| 162 |
+
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-6">
|
| 163 |
+
<div class="bg-darkglass rounded-xl p-4">
|
| 164 |
+
<p class="text-gray-400 text-sm mb-2">Mean Latency</p>
|
| 165 |
+
<h3 class="text-2xl font-bold">{{ benchmark.mean }} ms</h3>
|
| 166 |
+
</div>
|
| 167 |
+
|
| 168 |
+
<div class="bg-darkglass rounded-xl p-4">
|
| 169 |
+
<p class="text-gray-400 text-sm mb-2">P50 Latency</p>
|
| 170 |
+
<h3 class="text-2xl font-bold">{{ benchmark.p50 }} ms</h3>
|
| 171 |
+
</div>
|
| 172 |
+
|
| 173 |
+
<div class="bg-darkglass rounded-xl p-4">
|
| 174 |
+
<p class="text-gray-400 text-sm mb-2">P95 Latency</p>
|
| 175 |
+
<h3 class="text-2xl font-bold">{{ benchmark.p95 }} ms</h3>
|
| 176 |
+
</div>
|
| 177 |
+
|
| 178 |
+
<div class="bg-darkglass rounded-xl p-4">
|
| 179 |
+
<p class="text-gray-400 text-sm mb-2">P99 Latency</p>
|
| 180 |
+
<h3 class="text-2xl font-bold">{{ benchmark.p99 }} ms</h3>
|
| 181 |
+
</div>
|
| 182 |
+
</div>
|
| 183 |
+
|
| 184 |
+
<table class="w-full text-left border-collapse">
|
| 185 |
+
<tbody>
|
| 186 |
+
<tr class="border-b border-gray-800">
|
| 187 |
+
<td class="py-3 pr-4 text-gray-400">Top-K</td>
|
| 188 |
+
<td class="py-3 pr-4">{{ benchmark.top_k }}</td>
|
| 189 |
+
</tr>
|
| 190 |
+
<tr class="border-b border-gray-800">
|
| 191 |
+
<td class="py-3 pr-4 text-gray-400">Measured Runs</td>
|
| 192 |
+
<td class="py-3 pr-4">{{ benchmark.num_runs }}</td>
|
| 193 |
+
</tr>
|
| 194 |
+
<tr class="border-b border-gray-800">
|
| 195 |
+
<td class="py-3 pr-4 text-gray-400">Embedding File Size</td>
|
| 196 |
+
<td class="py-3 pr-4">{{ benchmark.embedding_file_mb }} MB</td>
|
| 197 |
+
</tr>
|
| 198 |
+
<tr>
|
| 199 |
+
<td class="py-3 pr-4 text-gray-400">Metadata File Size</td>
|
| 200 |
+
<td class="py-3 pr-4">{{ benchmark.metadata_file_mb }} MB</td>
|
| 201 |
+
</tr>
|
| 202 |
+
</tbody>
|
| 203 |
+
</table>
|
| 204 |
+
</div>
|
| 205 |
+
{% else %}
|
| 206 |
+
<div class="glass-card rounded-2xl p-8 shadow-soft">
|
| 207 |
+
<h2 class="text-2xl font-semibold mb-3">Benchmark Results Not Available</h2>
|
| 208 |
+
<p class="text-gray-300 mb-4">
|
| 209 |
+
Run benchmark locally after generating embeddings.
|
| 210 |
+
</p>
|
| 211 |
+
<pre class="bg-slate-950 text-gray-300 p-4 rounded-xl overflow-x-auto">python -m visual_product_search.evaluation.benchmark</pre>
|
| 212 |
+
</div>
|
| 213 |
+
{% endif %}
|
| 214 |
+
</div>
|
| 215 |
+
</body>
|
| 216 |
+
</html>
|
test/test_app.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from app import app
|
| 2 |
+
|
| 3 |
+
def test_health_endpoint():
|
| 4 |
+
client = app.test_client()
|
| 5 |
+
response = client.get("/health")
|
| 6 |
+
assert response.status_code == 200
|
| 7 |
+
data = response.get_json()
|
| 8 |
+
assert data["status"] == "ok"
|
| 9 |
+
assert data["service"] == "visual-product-search"
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
def test_home_page_loads():
|
| 13 |
+
client = app.test_client()
|
| 14 |
+
response = client.get("/")
|
| 15 |
+
assert response.status_code == 200
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
def test_evaluation_page_loads():
|
| 19 |
+
client = app.test_client()
|
| 20 |
+
response = client.get("/evaluation")
|
| 21 |
+
assert response.status_code == 200
|
test/test_evaluation_outputs.py
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
|
| 4 |
+
|
| 5 |
+
def test_evaluation_metrics_file_exists():
|
| 6 |
+
path = Path("artifacts/evaluation/image_to_image_metrics.json")
|
| 7 |
+
assert path.exists(), "image_to_image_metrics.json is missing"
|
| 8 |
+
|
| 9 |
+
|
| 10 |
+
def test_evaluation_metrics_has_required_keys():
|
| 11 |
+
path = Path("artifacts/evaluation/image_to_image_metrics.json")
|
| 12 |
+
|
| 13 |
+
with open(path, "r", encoding="utf-8") as f:
|
| 14 |
+
data = json.load(f)
|
| 15 |
+
|
| 16 |
+
assert "evaluation_type" in data
|
| 17 |
+
assert "model" in data
|
| 18 |
+
assert "dataset" in data
|
| 19 |
+
assert "num_queries" in data
|
| 20 |
+
assert "num_indexed_images" in data
|
| 21 |
+
assert "metrics" in data
|
| 22 |
+
|
| 23 |
+
|
| 24 |
+
def test_evaluation_metrics_has_relevance_levels():
|
| 25 |
+
path = Path("artifacts/evaluation/image_to_image_metrics.json")
|
| 26 |
+
with open(path, "r", encoding="utf-8") as f:
|
| 27 |
+
data = json.load(f)
|
| 28 |
+
metrics = data.get("metrics", {})
|
| 29 |
+
assert "strict" in metrics
|
| 30 |
+
assert "medium" in metrics
|
| 31 |
+
assert "soft" in metrics
|
| 32 |
+
|
| 33 |
+
|
| 34 |
+
def test_evaluation_csv_files_exist():
|
| 35 |
+
category_path = Path("artifacts/evaluation/image_to_image_category_breakdown.csv")
|
| 36 |
+
error_path = Path("artifacts/evaluation/error_cases.csv")
|
| 37 |
+
|
| 38 |
+
assert category_path.exists(), "image_to_image_category_breakdown.csv is missing"
|
| 39 |
+
assert error_path.exists(), "error_cases.csv is missing"
|
test/test_metrics.py
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import pytest
|
| 2 |
+
from visual_product_search.evaluation.metrics import (
|
| 3 |
+
average_precision_at_k,
|
| 4 |
+
dcg_at_k,
|
| 5 |
+
evaluate_ranking,
|
| 6 |
+
mrr_at_k,
|
| 7 |
+
ndcg_at_k,
|
| 8 |
+
precision_at_k,
|
| 9 |
+
recall_at_k,
|
| 10 |
+
)
|
| 11 |
+
|
| 12 |
+
|
| 13 |
+
def test_precision_at_k():
|
| 14 |
+
relevance = [1, 0, 1, 1, 0]
|
| 15 |
+
assert precision_at_k(relevance, 5) == pytest.approx(0.6)
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
def test_recall_at_k():
|
| 19 |
+
relevance = [1, 0, 1, 1, 0]
|
| 20 |
+
assert recall_at_k(relevance, total_relevant=6, k=5) == pytest.approx(0.5)
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
def test_average_precision_at_k():
|
| 24 |
+
relevance = [1, 0, 1, 1, 0]
|
| 25 |
+
value = average_precision_at_k(relevance, k=5, total_relevant=3)
|
| 26 |
+
assert value == pytest.approx((1 / 1 + 2 / 3 + 3 / 4) / 3)
|
| 27 |
+
|
| 28 |
+
|
| 29 |
+
def test_dcg_at_k():
|
| 30 |
+
relevance = [1, 0, 1]
|
| 31 |
+
value = dcg_at_k(relevance, 3)
|
| 32 |
+
expected = 1 / 1 + 0 / 1.584962500721156 + 1 / 2
|
| 33 |
+
assert value == pytest.approx(expected)
|
| 34 |
+
|
| 35 |
+
|
| 36 |
+
def test_ndcg_at_k():
|
| 37 |
+
relevance = [1, 0, 1]
|
| 38 |
+
value = ndcg_at_k(relevance, total_relevant=2, k=3)
|
| 39 |
+
assert 0 <= value <= 1
|
| 40 |
+
|
| 41 |
+
|
| 42 |
+
def test_mrr_at_k():
|
| 43 |
+
relevance = [0, 0, 1, 0]
|
| 44 |
+
assert mrr_at_k(relevance, 4) == pytest.approx(1 / 3)
|
| 45 |
+
|
| 46 |
+
|
| 47 |
+
def test_evaluate_ranking():
|
| 48 |
+
relevance = [1, 0, 1, 0, 1]
|
| 49 |
+
|
| 50 |
+
result = evaluate_ranking(relevance, total_relevant=5, k_values=[1, 5])
|
| 51 |
+
|
| 52 |
+
assert "precision@1" in result
|
| 53 |
+
assert "recall@5" in result
|
| 54 |
+
assert "map@5" in result
|
| 55 |
+
assert "ndcg@5" in result
|
| 56 |
+
assert "mrr@5" in result
|
visual_product_search/evaluation/__init__.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from visual_product_search.evaluation.metrics import (
|
| 2 |
+
average_metric_dicts,
|
| 3 |
+
average_precision_at_k,
|
| 4 |
+
dcg_at_k,
|
| 5 |
+
evaluate_ranking,
|
| 6 |
+
mrr_at_k,
|
| 7 |
+
ndcg_at_k,
|
| 8 |
+
precision_at_k,
|
| 9 |
+
recall_at_k,
|
| 10 |
+
)
|
| 11 |
+
|
| 12 |
+
__all__ = [
|
| 13 |
+
"average_metric_dicts",
|
| 14 |
+
"average_precision_at_k",
|
| 15 |
+
"dcg_at_k",
|
| 16 |
+
"evaluate_ranking",
|
| 17 |
+
"mrr_at_k",
|
| 18 |
+
"ndcg_at_k",
|
| 19 |
+
"precision_at_k",
|
| 20 |
+
"recall_at_k",
|
| 21 |
+
]
|
visual_product_search/evaluation/error_analysis.py
ADDED
|
File without changes
|
visual_product_search/evaluation/evaluate_image_to_image.py
ADDED
|
File without changes
|
visual_product_search/evaluation/metrics.py
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import numpy as np
|
| 2 |
+
|
| 3 |
+
def _to_binary_array(relevance):
|
| 4 |
+
return np.asarray(relevance, dtype=np.float32)
|
| 5 |
+
|
| 6 |
+
def precision_at_k(relevance, k):
|
| 7 |
+
values = _to_binary_array(relevance)[:k]
|
| 8 |
+
|
| 9 |
+
if len(values) == 0:
|
| 10 |
+
return 0.0
|
| 11 |
+
|
| 12 |
+
return float(np.sum(values) / len(values))
|
| 13 |
+
|
| 14 |
+
def recall_at_k(relevance, total_relevant, k):
|
| 15 |
+
if total_relevant <= 0:
|
| 16 |
+
return 0.0
|
| 17 |
+
|
| 18 |
+
values = _to_binary_array(relevance)[:k]
|
| 19 |
+
return float(np.sum(values) / total_relevant)
|
| 20 |
+
|
| 21 |
+
def average_precision_at_k(relevance, k, total_relevant=None):
|
| 22 |
+
values = _to_binary_array(relevance)[:k]
|
| 23 |
+
|
| 24 |
+
if len(values) == 0:
|
| 25 |
+
return 0.0
|
| 26 |
+
|
| 27 |
+
score = 0.0
|
| 28 |
+
hits = 0.0
|
| 29 |
+
|
| 30 |
+
for idx, item in enumerate(values, start=1):
|
| 31 |
+
if item > 0:
|
| 32 |
+
hits += 1.0
|
| 33 |
+
score += hits / idx
|
| 34 |
+
|
| 35 |
+
if total_relevant is None:
|
| 36 |
+
denominator = hits
|
| 37 |
+
else:
|
| 38 |
+
denominator = min(float(total_relevant), float(k))
|
| 39 |
+
|
| 40 |
+
if denominator <= 0:
|
| 41 |
+
return 0.0
|
| 42 |
+
|
| 43 |
+
return float(score / denominator)
|
| 44 |
+
|
| 45 |
+
|
| 46 |
+
def dcg_at_k(relevance, k):
|
| 47 |
+
values = _to_binary_array(relevance)[:k]
|
| 48 |
+
|
| 49 |
+
if len(values) == 0:
|
| 50 |
+
return 0.0
|
| 51 |
+
|
| 52 |
+
discounts = np.log2(np.arange(2, len(values) + 2))
|
| 53 |
+
return float(np.sum(values / discounts))
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
def ndcg_at_k(relevance, total_relevant, k):
|
| 57 |
+
if total_relevant <= 0:
|
| 58 |
+
return 0.0
|
| 59 |
+
|
| 60 |
+
dcg = dcg_at_k(relevance, k)
|
| 61 |
+
ideal_hits = int(min(total_relevant, k))
|
| 62 |
+
ideal = np.ones(ideal_hits, dtype=np.float32)
|
| 63 |
+
ideal_dcg = dcg_at_k(ideal, ideal_hits)
|
| 64 |
+
|
| 65 |
+
if ideal_dcg == 0:
|
| 66 |
+
return 0.0
|
| 67 |
+
|
| 68 |
+
return float(dcg / ideal_dcg)
|
| 69 |
+
|
| 70 |
+
|
| 71 |
+
def mrr_at_k(relevance, k):
|
| 72 |
+
values = _to_binary_array(relevance)[:k]
|
| 73 |
+
|
| 74 |
+
for idx, item in enumerate(values, start=1):
|
| 75 |
+
if item > 0:
|
| 76 |
+
return float(1.0 / idx)
|
| 77 |
+
|
| 78 |
+
return 0.0
|
| 79 |
+
|
| 80 |
+
|
| 81 |
+
def evaluate_ranking(relevance, total_relevant, k_values):
|
| 82 |
+
result = {}
|
| 83 |
+
|
| 84 |
+
for k in k_values:
|
| 85 |
+
result[f"precision@{k}"] = precision_at_k(relevance, k)
|
| 86 |
+
result[f"recall@{k}"] = recall_at_k(relevance, total_relevant, k)
|
| 87 |
+
result[f"map@{k}"] = average_precision_at_k(relevance, k, total_relevant)
|
| 88 |
+
result[f"ndcg@{k}"] = ndcg_at_k(relevance, total_relevant, k)
|
| 89 |
+
result[f"mrr@{k}"] = mrr_at_k(relevance, k)
|
| 90 |
+
|
| 91 |
+
return result
|
| 92 |
+
|
| 93 |
+
|
| 94 |
+
def average_metric_dicts(metric_dicts):
|
| 95 |
+
if not metric_dicts:
|
| 96 |
+
return {}
|
| 97 |
+
|
| 98 |
+
keys = metric_dicts[0].keys()
|
| 99 |
+
|
| 100 |
+
return {
|
| 101 |
+
key: float(np.mean([item[key] for item in metric_dicts]))
|
| 102 |
+
for key in keys
|
| 103 |
+
}
|
visual_product_search/utils/config.py
CHANGED
|
@@ -1,15 +1,43 @@
|
|
| 1 |
import sys
|
|
|
|
|
|
|
| 2 |
import yaml
|
| 3 |
from visual_product_search.logger import logging
|
| 4 |
from visual_product_search.exception import ExceptionHandle
|
| 5 |
|
| 6 |
-
|
|
|
|
| 7 |
try:
|
| 8 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
config = yaml.safe_load(f)
|
| 10 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 11 |
return config
|
| 12 |
|
| 13 |
except Exception as e:
|
| 14 |
-
logging.
|
| 15 |
-
raise ExceptionHandle(e, sys)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
import sys
|
| 2 |
+
import json
|
| 3 |
+
from pathlib import Path
|
| 4 |
import yaml
|
| 5 |
from visual_product_search.logger import logging
|
| 6 |
from visual_product_search.exception import ExceptionHandle
|
| 7 |
|
| 8 |
+
|
| 9 |
+
def load_config(path: str = "config/model.yaml"):
|
| 10 |
try:
|
| 11 |
+
config_path = Path(path)
|
| 12 |
+
if not config_path.exists():
|
| 13 |
+
raise FileNotFoundError(f"Config file not found: {config_path}")
|
| 14 |
+
|
| 15 |
+
with open(config_path, "r", encoding="utf-8") as f:
|
| 16 |
config = yaml.safe_load(f)
|
| 17 |
+
|
| 18 |
+
if config is None:
|
| 19 |
+
raise ValueError(f"Config file is empty: {config_path}")
|
| 20 |
+
|
| 21 |
+
logging.info(f"Config loaded from path {config_path}")
|
| 22 |
return config
|
| 23 |
|
| 24 |
except Exception as e:
|
| 25 |
+
logging.error(f"Error loading config {path}")
|
| 26 |
+
raise ExceptionHandle(e, sys)
|
| 27 |
+
|
| 28 |
+
|
| 29 |
+
|
| 30 |
+
def load_json_file(path):
|
| 31 |
+
file_path = Path(path)
|
| 32 |
+
if not file_path.exists() or file_path.stat().st_size == 0:
|
| 33 |
+
return None
|
| 34 |
+
|
| 35 |
+
with open(file_path, "r", encoding="utf-8") as f:
|
| 36 |
+
return json.load(f)
|
| 37 |
+
|
| 38 |
+
|
| 39 |
+
def to_percent(value):
|
| 40 |
+
try:
|
| 41 |
+
return round(float(value) * 100, 2)
|
| 42 |
+
except Exception:
|
| 43 |
+
return 0.0
|