Inspiration

Grocery product descriptions vary from brand to brand. We wanted to see whether an agent could infer consistent catalog attributes from those descriptions and learn from its mistakes in a way we could inspect.

What we built

Team Noble built a Python agent that predicts product attributes in two steps. First, it finds the four most similar labeled products and uses their attributes as evidence. Then it applies readable if–then rules learned from recurring prediction errors. Each rule uses clues such as words, word pairs, and product categories.

We tested batches of rules on validation folds that kept entire brands separate. The final agent kept 85 rules across two batches. We froze its memory and rules before scoring the final predictions.

Challenges and what we learned

A rule can look promising because it picks up language specific to a familiar brand. Holding out entire brands helped us test whether those patterns carried over. We rejected the third batch of rules when it failed our validation criteria.

The frozen agent scored 0.7724 Q on 415 hold-out products using the organizer’s scorer. We scored only the final agent on the hold-out, so the development folds are where we measured the effect of adding rules to the retrieval baseline.

Built With

  • mining
  • nearest-neighbor-retrieval
  • python
  • rule
  • tf-idf
Share this project:

Updates

Submission history