我有27个文件的数据集,每个文件包含操作码。我想使用词干将相似操作码的所有版本映射到相同操作码。例如:push,pusha,pushb等都将映射到push。
我的词典包含27个键,每个键都有一个操作码列表作为值。由于这些值包含操作码而不是普通的英语单词,因此我无法使用常规词干模块。我需要编写自己的词干代码。另外,由于我有庞大的数据集,因此我无法对将不同版本的操作码映射到根操作码的自定义词典进行硬编码。
我认为正则表达式是一个好主意,但我不知道如何使用它。有人可以帮我这个或其他想法写我自己的词干分析器代码吗?
答案 0 :(得分:0)
我建议您查看levenshtein距离度量标准-它可以根据字符的插入,删除和替换来测量两个单词之间的距离(因此,如果您做的是最正常的称量操作,则push和pusha的距离为1插入=删除=替换=每个1)。根据您编写的示例,您可以尝试仅设置彼此距离均为1的类别。但是,我不知道您所有的等效操作码是否都如此相似-如果不是,那么它们可能不起作用。