论文User identification across online social networks in practice: Pitfalls and solutions研究总结

文章通过社会网络的官方应用程序编程接口(API)的公共属性获得数据集,提出了构建超越常规随机选择的负面实例的不同方法,以研究每种方法在训练分类器中的有效性。为了评估不同分类器的健壮性,建立了两个具有不同层次的区别的测试集。通过匹配从Google+、Facebook和Twitter收集的个人资料,在真实情况下衡量这种方法的有效性。

Keywords:Classification; online social networks; profile matching; user identification

跨社交网络用户识别的主要方法有:Username-based identification、Profile-based identification、Network- and content-based identification

数据集采集过程:


接下来,文章介绍了在不同的社交媒体中解决相同身份识别的方法。首先,我们将识别问题作为一个分类任务来形式化。然后,我们说明了我们如何构建特性集,我们展示了在训练集的生成过程中,消极实例的构建起着重要的作用。事实上,我们强调,对负对的随机构造会导致一个分类器,在真实的应用程序中,错误地将大量的概要文件分配给一个用户。为了减少假阳性的数量,我们用不同的方法选择消极的实例。最后,我们提出了构建训练和测试集的不同方法,我们对不同的学习算法进行了评估.。

Feature extraction函数:

1、Exact match (EM).我们使用一个字符串比较函数来检查数据字段的公平性。我们希望这个特性对于识别是很重要的

2、Longest common substring (LCS):由于在用户名中添加前缀或后缀,名称等等是跨社交网络的常见行为,所以可以使用LCS来检测它。我们将这一测量标准通过将其除以两个原始字符串的平均长度来得到一个值

3、Longest common sub-sequence (LCSS).我们使用标准化的LCSS来检测缩写

4、Levenshtein distance (LD).Levenshtein算法(也称为编辑-距离)计算了修改一个字符串以获得另一个字符串所必需的最少编辑操作数。它记录了交换的字母、名称缩短或用户名的自动组成

5、Jaccard similarity (JS).为了计算字母表的重叠部分,我们使用JS,定义为交集的大小除以样本集的大小。

Training and test sets:一旦设计了特性集,学习框架就提供了培训和测试数据集的构建,以学习识别功能,然后评估其性能,以近似于真实的性能。

在评估不同测试集的培训集之前,我们使用10倍交叉验证来验证我们的方法。在测试床应用中,我们应用了两种不同的学习技术:多层感知机和随机森林。

在这篇文章中,我们提出了一种创新的方法来连接整个GF和GT。我们的方法通过Facebook、Twitter和Google+的官方api提供最小的公共信息,以驱动可以被监督的学习使用的功能,从而有效地连接不同os的用户。依靠api提供的信息,我们的方法减少了隐私方面的担忧,也减少了收集用户信息的困难。通过关注所研究的系统的所有共同属性,而不是预先定义的一组属性,我们表明可以实现更好的识别过程。它只是在不同的平台上使用可用的信息。我们以三种不同的方式构造了负实例(不同比例的随意例和认为设置的实例),超越了通常采用的随机选择,以评估我们在不同数据集上的识别算法的健壮性。结果表明,该方法可以为构建可靠的数据集提供一种非常有效的识别方法和方法。此外,我们分析了我们的方法在建立在广发社区的真实场景中的成功。实验结果表明,该方法与以前的方法相比具有优越性;它们还表明,构造的特性包含了足够的信息来连接相应的用户。未来的工作包括定义跨多个osn的用户识别框架,并分析在不同领域中连接用户的好处。

Testbed

testbed必须借助于tbrun才能做单元测试嵌入式测试可分为静态测试动态测试两大类,如果你只需要静态测试报告,软件是不需要运行的,直接用testbed分析测试即可,如果涉及到要做动态测试,那就必须软件要运行,嵌入式软件如何运行?可借助于软件模拟器、全仿真器和目标板。如果是做单元测试,不涉及外部激励信号或者通过打桩的方式模拟外部信号,可以直接借助于IDE环境带有的模拟器进行测试。其实软件测试开发人员也在做,最简单的,软件编制完毕,肯定要编译、连接、运行看结果,这就是最简单的黑盒功能测试。当然利用自动化测试工具可以使测试的过程更方便更快捷,并且还可以做测试软件代码内部逻辑的白盒测试。对于Testbed这样的工具,你如果买的是正版,最简单的解决技术问题的方法就是寻求对应代理公司的技术服务。当然也可以简单的对你的目前情况说几句,如果你做动态测试,对于AVR128,你首先确定你所有的编译器,确定系统头文件、项目头文件和系统宏、项目宏,利用Testbed建立你的测试项目,配置相对应的信息,让Testbed识别你的被测件,剩下的内容就可以让Testbed去完成,Testbed处理完毕后,同样需要将测试驱动程序、被测件加载到你的IDE环境中编译连接,如何取得程序的运行结果,或者如何使他运行起来应该对于开发者来说不是一个问题。

参考:论文、百度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值