A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_URI::$config is deprecated

Filename: core/URI.php

Line Number: 101

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Router::$uri is deprecated

Filename: core/Router.php

Line Number: 127

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$benchmark is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$hooks is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$config is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$log is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$utf8 is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$uri is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$exceptions is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$router is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$output is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$security is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$input is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$lang is deprecated

Filename: core/Controller.php

Line Number: 75

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$load is deprecated

Filename: core/Controller.php

Line Number: 78

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::open($save_path, $name) should either be compatible with SessionHandlerInterface::open(string $path, string $name): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 132

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::close() should either be compatible with SessionHandlerInterface::close(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 290

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::read($session_id) should either be compatible with SessionHandlerInterface::read(string $id): string|false, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 164

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::write($session_id, $session_data) should either be compatible with SessionHandlerInterface::write(string $id, string $data): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 233

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::destroy($session_id) should either be compatible with SessionHandlerInterface::destroy(string $id): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 313

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::gc($maxlifetime) should either be compatible with SessionHandlerInterface::gc(int $max_lifetime): int|false, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 354

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 282

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: session_set_cookie_params(): Session cookie parameters cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 289

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 304

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 314

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 315

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 316

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 317

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 375

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: ini_set(): Session ini settings cannot be changed after headers have already been sent

Filename: drivers/Session_files_driver.php

Line Number: 108

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: session_set_save_handler(): Session save handler cannot be changed after headers have already been sent

Filename: Session/Session.php

Line Number: 110

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: session_start(): Session cannot be started after headers have already been sent

Filename: Session/Session.php

Line Number: 143

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property Blog::$session is deprecated

Filename: core/Loader.php

Line Number: 1283

Backtrace:

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$benchmark is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$hooks is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$config is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$log is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$utf8 is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$uri is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$exceptions is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$router is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$output is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$security is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$input is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$lang is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$load is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$session is deprecated

Filename: core/Loader.php

Line Number: 931

Backtrace:

File: /var/www/html/application/controllers/Blog.php
Line: 18
Function: view

File: /var/www/html/index.php
Line: 319
Function: require_once

Augmenting AI-powered Product Matching with Human Expertise to Achieve Unparalleled Accuracy
Augmenting AI-powered Product Matching with Human Expertise to Achieve Unparalleled Accuracy

Augmenting AI-powered Product Matching with Human Expertise to Achieve Unparalleled Accuracy

2nd May, 2024

Namrata

By Namrata

In today’s expansive omnichannel commerce landscape, pricing intelligence has become indispensable for retailers seeking to stay competitive and refine their pricing strategies. The sheer magnitude of eCommerce, spanning thousands of websites, billions of SKUs, and various form factors, adds layers of complexity. Consequently, ensuring the accuracy and reliability of competitive insights presents a formidable challenge for retailers aiming to leverage pricing data effectively.

At the core of any robust pricing intelligence system lies product matching. This process enables retailers to recognize identical or similar products across competitors. Once these matches are identified, tracking prices is a relatively more straightforward task, facilitating ongoing analysis and informed decision-making.

Accurate matching is crucial for meaningful price comparisons and tailoring product assortments. The challenge is matching products is often complicated, especially for non-local brands, niche categories, or items lacking consistent global identifiers. It becomes even trickier when trying to match very similar but not identical products. A comprehensive approach that compares and analyzes multiple attributes like product titles, descriptions, images and more is essential.

Artificial intelligence algorithms are commonly used to automate product matching, leveraging machine learning techniques to analyze patterns in images and text data. While AI can adapt and improve over time, the question remains: Can it fully address the complexities of product matching on its own?

The reality is that many retailers still struggle with incomplete, inaccurate, or outdated product data, despite these AI-powered product matching solutions. This can lead to suboptimal pricing decisions, missed opportunities, and reduced competitiveness.

Challenges in an ‘AI-only’ Approach to Product Matching

While AI plays a vital role in automated product matching solutions, there are complexities that AI alone cannot fully address:

Subjectivity in Matching Criteria

Some product categories have subjective or hard-to-quantify criteria for determining similarity. AI learns from historical data, so it may struggle with nuanced aspects like:

Aesthetics, style, and design: In the Fashion and Jewellery vertical, for example, products are matched according to attributes like style, aesthetics, design – all of which have some subjectivity involved.

Quantity/packaging variations: In the grocery sector, variations in product packaging and quantities can introduce complexities that require subjective decision-making. For example, apples may be sold in different packaging like a 0.5 kg bag or a pack of 4 individual apples. Determining if these different packaging options should be considered equivalent often involves making a qualitative judgment call, rather than a clear-cut objective decision.

Matching product sets: For categories like home furnishings, the focus is often on matching coordinated sets rather than individual items. For example, in the bedroom category, matching may involve grouping together an entire set of complementary furniture like a bed frame, dresser, and wardrobe based on their cohesive design and style. This goes beyond simply making one-to-one product associations, requiring more nuanced judgments about aesthetic coordination.

Contextual Factor

Products can have regional preferences, cultural differences, or evolving trends that impact how they are matched. AI may miss important context like Local/regional product names or distinct brand names across countries.

For instance, in the image we see Sprite (in the US) is branded Xubei in China. Continuous human curation is needed to help AI adapt to this context.

High Accuracy & Coverage Expectations

Retailers rely on AI powered and automated pricing adjustments based on product matching for insight. To ensure that pricing recommendations and updates are accurate, accurate product matching is crucial. For this, simply identifying similar top results is not enough – the process must comprehensively capture all relevant matches. While AI excels at finding the top groupings with around 80% accuracy, even small matching errors can have significant consequences.

As AI matching improves, customer expectations may rise even higher. If AI achieves 90% accuracy, for instance, SLAs may demand over 95%. Reaching such a high level of accuracy is very challenging for AI alone, especially when faced with incomplete data, contextual nuances, evolving trends, and subjective matching criteria across products and categories.

The solution is to combine the power of AI with human expertise. This is the key to achieving true data veracity – the accuracy, freshness, and comprehensive coverage required for precise and reliable product matching.

Human-in-the-Loop Approach for Elevated Product Matching

Human intelligence and quality testing can elevate the AI powered product matching process by addressing key challenges:

  • Matching Validation: AI algorithms may identify product matches with 80-90% accuracy initially. Having humans validate these AI-suggested matches allows for correcting errors and pushing the accuracy close to 100%. As humans flag issues, provide context, and re-label incorrect predictions, it allows the AI model to learn and enhance its reliability for complex, high-stakes decisions.
  • Applying Contextual Judgment: For subjective matching criteria like aesthetics, design, and categorizing product sets, human discernment is needed. Humans can make nuanced judgments beyond just quantitative rules, ensuring meaningful apples-to-apples product comparisons. Their contextual understanding augments AI’s capabilities.
  • Continuous Learning Via Feedback Loop: Product experts possess rich category knowledge across markets. Integrating this human insight through an iterative feedback loop helps AI models quickly learn and adapt to changing trends, preferences, and context. As humans explain their match assessments, the AI continuously enhances its precision over time.

By combining AI’s automation and scale with human validation, judgment, and knowledge curation, pricing intelligence solutions can achieve the accuracy and coverage demanded for actionable competitive pricing insights.

DataWeave’s Data Veracity Framework: A Scalable Workflow Combining AI and Human Expertise

Given the vast number of products, retailers, and brands that exist today, any product matching solution must be highly scalable. At DataWeave, we bring you such a scalable workflow to address these complexities by integrating human expertise with AI-driven automation. The image below outlines our approach for combining AI with human intelligence in a seamless, scalable workflow for accurate product matching:

Retailers and brands can benefit in several ways with this workflow, as listed below.

Several Rounds of Data Verification Due to Hierarchical Validation Teams

The workflow employs a hierarchical validation team of Leads and Executives to efficiently integrate human expertise without creating bottlenecks. Verification Leads play a pivotal role in managing the distribution of product matches identified by DataWeave’s AI model to the Verification Executives.

The Executives then meticulously validate these AI-suggested matches, adding any missing product associations and removing inaccurate matches. After validation, the matched product groups are sent back to the Leads, who perform random sampling checks to ensure quality.

Throughout this entire workflow, feedback and suggestions are continuously gathered from both the Executives and Leads. This curated input is then incorporated back into DataWeave’s AI model, allowing it to learn and improve its matching accuracy on an ongoing basis.

This hierarchical structure ensures that human validation seamlessly scales alongside the AI’s matching capabilities. Leveraging the respective strengths of AI automation and human expertise in an iterative feedback loop prevents operational bottlenecks while steadily elevating overall accuracy.

Confidence-based Distribution of Matched Articles for Validation

The AI model assigns confidence scores, differentiating high-confidence (>95%) and low-confidence matches. For high-confidence groups, executives simply remove incorrect matches – a quicker process. Low-confidence matches require more human effort in adding/removing matches.

As the AI model improves over time with feedback, the share of high-confidence matches increases, making validation more efficient and swift.

Automated, Standardized Process with Iterative Feedback Loop

The entire workflow is standardized and automated, with verification metrics seamlessly tracked. At each step, feedback captured from both leads and executives flows back into the AI, enhancing its matching accuracy and coverage iteratively.

DataWeave’s closed-loop system of AI automation with hierarchical human validation allows product matching to achieve comprehensive accuracy at a vast scale.

Unleash the Power Accurate and Comprehensive Product Matching

In summary, combining AI and human expertise in product matching is crucial for retailers navigating the complexities of omnichannel retail. While AI algorithms excel in automation, they often struggle with subjective criteria and contextual nuances. DataWeave’s approach integrates AI-driven automation with human validation, delivering the industry’s most accurate product matching capabilities, enabling actionable competitive pricing insights.

To learn more, reach out to us today!

- Namrata
2nd May, 2024

AI Artificial Intelligence D2C E Commerce Global India Intelligent Pricing Online Marketplaces price perception Pricing Strategies

Book a Demo