我正在寻找一个合适的定义来确定这是什么类型的问题,所以我可以自己进一步研究它——当然,我会感谢任何关于什么是行业标准的解决方法的具体建议。虽然我对 NLP 或推荐系统相当缺乏经验,但我之前已经完成了相当多的经典 ML,以防万一。
问题 - 给定一个带有输入列表和预期输出列表的“搜索”查询,为每个输入检索并排列最多 N 个最佳语义匹配。约束:
- 所有输入和输出都介于单词和句子之间。
- 输出数 >= 输入数。
- 所有输入和输出本身都是唯一的,但可以有与输入相同的输出。
- 每个输入都保证至少有一个“足够好”的输出存在。
- 每个输出都保证是最多一个输入的最佳匹配。
- 标记数据可用,即人工标记的查询。输入是稀疏的,即针对相同或非常相似的输出集的查询的输入可能非常不同。
- 数据是英文的,我用 Python 工作——如果这对你的建议很重要的话。
一个例子:
输入
(1) Truck
(2) Assortment of lemons, limes, and oranges.
(3) Apples, pears, and oranges.
(4) A tool with broad blade, used for digging.
输出
(a) Citrus fruits
(b) Portable telephone that can make and receive calls over a radio frequency.
(c) Fruits traditionally grown in Germany.
(d) Vehicles used for cargo transportation.
(e) Shovel
(f) Motor vehicle used for transportation.
期望的结果(数字是任意的,用于说明目的)
1 - d (100%), f (75%)
2 - a (95%), c (60%)
3 - c (87%), a (45%)
4 - e (100%)
Stack Exchange 提供的类似问题建议并没有回答我的问题,而在其他地方搜索答案只会让我陷入关于 IDMB 或 Twitter 数据集情绪分析的无穷无尽的文章中。