让我们考虑一个查询集 Q 和一个更大的超集 S。Q 的每个元素都存在于 S 中。目标是使用 S 的最小数量的(连接的)“组件”来表示 Q。
这是一个具体的例子:Q={我爱法国和葡萄酒} S={(我住在这里),(我爱你和她),(法国很美),(奶酪和葡萄酒)}
Q 的解决方案可能: - “我”来自“我住在这里” - “爱”来自“我爱你和她” - “法国”来自“法国很美” - “and”来自“我爱你和她” - “wine”来自“cheese and wine” 这导致5个“components”,即“I”、“love”、“France”、“and”、“wine”
更好的解决方案是: - “I love”来自“我爱你和她” - “France”来自“France is beautiful” - “and wine”来自“cheese and wine” 这会产生 3 个“组件”,即“I love”、“France”、“and wine”,这可能是这个例子的最佳解决方案。我们希望尽量减少“组件”的数量。
有谁知道如何调用这种算法?我在文本解析、文本挖掘等方面进行了搜索,但没有找到合适的内容。