Page 93 - 《软件学报》2021年第12期
P. 93
肖勇 等:基于 GAT2VEC 的 Web 服务分类方法 3757
Table 3 Top 10 categories with the largest number in Mashup
表 3 Mashup 数量最多的前 10 类
分类 数量 分类 数量
Mapping 1 034 Music 250
Search 306 Video 176
Social 299 Travel 169
eCommerce 294 Messaging 133
Photos 256 Mobile 126
Table 4 Top 10 categories with the largest number in API
表 4 API 数量最多的前 10 类
分类 数量 分类 数量
Tools 790 Messaging 388
Financial 586 Payments 374
Enterprise 487 Government 306
eCommerce 435 Mapping 295
Social 403 Science 287
由于在构建属性二分图时需要用到大量文本信息,为了提高分类的精确度,我们首先要对 Mashup 和 API
的描述文档进行预处理.过程如下.
(1) 分词(tokenize):将每个单词按照空格分开,且将单词和标点符号也分开,使得文本中的单词、字符变成
单独的单元;
(2) 去停用词(stop words):去除英文中一些无意义的词以及标点符号,如“a”“the”“to”“@”等;
(3) 词干化处理(stemming):在英文文本中,同一个单词会因为人称、时态的不同而有不同的表现形式,如
“adaptation”“adapted”“adapting”,它们实际上都是同一个单词“adapt”.若将这些单词看作是不同的单
词,那么之后的实验结果的准确度将会降低,故需要进行词干化处理.
在完成以上 3 个步骤后,获得了处理好的 Mashup 和 API 描述文档.同时,我们可以注意到:Mashup 数据集中,
最多的“Mapping”类有 1 034 个,而排第二的“Search”类只有 306 个.为防止数据集样本分布不均影响实验结果,
我们随机选取类别为“Mapping”的子集 434 条作为其实验数据.而 API 数据集分布较为均匀,影响不大,不需要做
相关处理,所有的数据集实验统计见表 5、表 6.
Table 5 Experimental statistics of Mashup dataset
表 5 Mashup 数据集实验统计
Items 数量 Items 数量
|V| 6 415 V a 8 711
|E| 57 497 |^| 6 268
V s 2 385 |E a| 97 117
Table 6 Experimental statistics of API dataset
表 6 API 数据集实验统计
Items 数量 Items 数量
|V| 12 919 V a 11 524
|E| 87 497 |^| 10 268
V s 4 523 |E a| 121 846
2.2 评估标准
一般来说,Web 服务分类结果有以下 4 种情况.
(1) 属于类 A 的样本被正确分类到类 A,将这一类样本标记为 TP;
(2) 不属于类 A 的样本被错误分类到类 A,将这一类样本标记为 FP;
(3) 不属于类别 A 的样本被正确分类到了类别 A 的其他类,将这一类样本标记为 TN;