Отображение большого набора данных в категории с оценкой - PullRequest
1 голос
/ 20 января 2020

Пытаясь найти лучший способ решения этой проблемы.

У меня есть список из нескольких сотен тысяч продуктов питания. У меня есть следующие данные: Описание (в основном наименование товара), Категория продуктов питания, Ингредиенты (таблица продуктов питания)

Я пытаюсь сопоставить каждый продукт питания с категорией продуктов питания, которая существует в другом наборе данных. Эти категории продуктов разделены немного по-разному, поэтому в таблице продуктов не указано соотношение 1: 1 к категории продуктов. Поля для этого набора данных: Основная категория, Подкатегория и Примеры продуктов. (Таблица категорий продуктов питания)

В таблице элементов продуктов питания категория продуктов питания может быть неправильной или обобщенной. В основном, категории продуктов питания в таблице «Пищевые продукты» являются общими, где категории продуктов питания в таблице «Пищевые категории» более точны c.

Я пытаюсь создать алгоритм, который просматривает определенный c продукт (в таблицах продуктов) и сопоставляет его с «рекомендуемой» записью в таблице категорий продуктов. Возможно, давая мне 5 лучших вариантов и оценку (или процентное совпадение) для каждого.

Если возможно, я бы хотел, чтобы это усвоилось со временем, основываясь на ручных исправлениях / вмешательствах, прошлых сопоставлениях и т. Д. c ... Не уверен, что ИИ является правильной терминологией для использования здесь.

Эти данные хранятся в SQL Server 2016. Приложение вокруг них находится в ASP. Net (C#)

Снова ищем лучший способ приблизиться к этому.

1 Ответ

1 голос
/ 20 января 2020

Полагаю, у вас есть некоторые данные, которые уже правильно классифицированы для использования в качестве руководства для алгоритма.

Предположим, у вас уже есть продукты, которые уже классифицированы:

Name          Category  Ingredients
Apple         Fruit     Apple
Cheesecake    Dessert   Apple, Butter, Flour, Sugar, Cheese
Cheeseburger  Junk      Bread, Tomato, Cheese, Meat

Алгоритм должен рассчитывать в какой категории каждый ингредиент классифицирован, давая относительный процент. Что-то вроде

Ingredient    Category  Percentage
Apple         Fruit     56
Apple         Dessert   34
Apple         Salad      6
Apple         Drink      4
Cheese        Sandwich  70
Cheese        Junk      21
Cheese        Dessert    7
Cheese        Salad      2

Затем, когда у вас есть несекретная еда, вы просто суммируете процент всех ингредиентов и упорядочиваете их по категориям.

Вы должны рассмотреть возможность добавления некоторого веса, чтобы общее оценка для всех ингредиентов продукта всегда равна 1. Например, если у вас есть продукт с 4 ингредиентами, каждый из них получит только 0,25. Это уменьшит важность ингредиента в очень сложных рецептах.

...