Advertisement

CoLink: An Unsupervised Framework for User Identity Linkage

CoLink: An Unsupervised Framework for User Identity Linkage 用户身份关联(UIL),将不同网络的user信息integrate在一起。如识别公司内网的张三就是linkedin网络的ShanZhang, 然后获取关于张三更丰富的信息来精准推荐、合理人事安排等。人工做网络间(Facebook,LinkedIn,企业内网、淘宝网等)UIL数据量太太大,且各网络间attribute的表达格式不同(如北大,北京大学,peking university,PKU,颐和园路5号都代表同一含义)similarity计算困难。
colink:unsupervied framework,用co-train算法来构建源网-目标网关联矩阵的S (为sparse矩阵),如企业网的i号员工与linkedin的第j个user是同一个人,Sij=1. colink利用user.attribute和user.relationship的信息来计算源网目标网users的关联相似度,再利用阈值来做二进制分类(linked or unlinked)判断。
cotrain算法:先用seed算法产生初级S矩阵(初始linked user pairs要尽量正确precision且尽量多的把真实的user pair加入其中)。在迭代向S添加更多的linked user pairs:属性模型和关系模型识别的新pair,去掉两者矛盾的pair,再将发现的新pair添加到S矩阵。直到两模型无法发现新模型。
Accuracy=正确的/总数。如果10000人中有一人为HIV,而你挑一个正常人作HIV,你的accuracy=9998/10000. 为此我们用precision recall和F1指标来刻画模型性能。TP:HIV患者被认定为HIV的数量;TN:健康人被认定为健康;FP:健康人被认定为HIV;FN:HIV被认定为健康。Precision=TP/(TP+FP) 你认为是HIV的病人到底多少是真正HIV。Recall=TP/(TP+FN)多少真正HIV被你挑出来了。F1=2PR/(P+R)为P和R的综合指标。
Attribute based模型用两种方式实现:a. seq-to-seq:arch=encoder+attention+decoder, 双层LSTM(各512units)做edr和ddr,源网络输入attribute sequence为X,按照Eq.1-2来产生vocabulary每个单词的条件概率,用阈值来判断目标网对应的attribute sequence Y是否等同于X。该法思想如机器翻译,能处理同义、翻译、implicitly connected等问题(效果远好于string similarity计算)。b.支持向量机SVM:如Alias模型通过正负sampling(Xi Yi为同一user的两个网络属性表达为正sampling)提供训练数据,求解SVM超平面来区分linked或者unlinked。
relationship based网络:非本文重点因此用heuristic模型实现。即判断源网络用户u和目标网络用户u’是同一人 u=u’,if 源网络u的相关人x y… 和目标网络u’的相关人x’ y’… 在以前迭代中已经被认证x=x’ y=y’… 这样的超过threshold=2对就可以
candidate filter:理论user pair一共有 221k*2480k对儿,无法穷举判断,用filter先去掉大部分肯定不匹配的pairs. 剩下仍有758k candidate pairs之多。
Seed S 的选择。(a) course tune,设置初始S矩阵的原则,1属于candidate pairs,2job title在两网都得是’会计经理’,S初始为81对儿。(b)fine tune:设置初始S矩阵的原则,1属于candidate pairs,2relation关系中有不小于2个related人也在candidate pairs中。得到初始S矩阵有19K对儿。(c)noisy set:fine-tune的S中20%做随机user处理,来看co-train迭代是否抗噪声。
fig1.a coarse tune 开始S的81对precision=100%,但是有会计经理的bias,随后迭代添加的pair会不断挑出新pair提升recall值,但是因为有错误pair而precision下降。再后会计经理bias变弱,而precision会提高。fig1.b finetune的初始S数量提升,recall值达10%;随后迭代添加新pair会有错误而precision会略降低。fig1.c 初始S有噪声错误也不会使得系统性能发散。可以converge后做revision修正掉迭代前期的错误pair。

Linkage

Post a Comment

0 Comments