乍看之下,感觉像是一个文本语义相似度的问题。
但想了一想,应该是一个机器学习的监督学习问题。实际上数据集就是 附件 2 嘛。问题编号对应的两个文本作为输入,标签作为输出嘛。
我们先来看一下附件二:
可以看到,标签有1 的,duplicate 那一系列都有值,标签为 0 的,duplicate 没有值。换句话说:那些标签为 0 的,等于 他(以 73399 为例)和其他问题都不重复嘛。我们知道,问题 ID 一共 729
所以,机器学习模型的数据集的大小应该为 7294*7294+988 咯,输入是两两组合,输出是 label
然后问题的难点在于类别不均衡(重复的数据太少,不重复的组合太多了),第二是特征工程,即将文本转换为结构化的向量…
前者用过采样、欠采样;后者用英文的 NLP(不建议用中文来做,因为中文分词很麻烦的)
当然,这个思路不现实的地方就在于数据量比较大,毕竟有 1 亿条数据嘛,而标签为 1 的只有 1000 条左右, 10 W:1 啊。
所以,肯定是需要预处理的,至于如何预处理,哎,一言难尽…
先占个坑吧,比赛结束再详细讨论呗,希望大家都能取得好成绩。