u*****o 发帖数: 1224 | 1 我是菜鸟。。。刚刚上班不久就遇到一个不太解决的了的问题,希望牛牛们给点指点,
让我好知道如何下手,马上要和老板谈思路,怕自己什么也说不出来。
我现在有两组数据,第一组是navigator的User-agent string,我们叫它A
一个例子就是
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0;
SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media
Center PC 6.0; .NET4.0C; .NET4.0E; BRI/1; MDDC; InfoPath.1; BRI/2)
另一组数据时browser的user-agent string,我们叫它B
一个例子是
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
我不太清楚具体两组数据是如何收集的,但都是针对同一个user的browser收集的数据,
我现在的问题是,如何知道B是不是A的subset? 他们具体有多相似? 如何提取B的extra
information?
想知道A,B的关系是为了以后的feature selection,看应该选A还是B放在数据分析的
模型里。如果另一个不具有added value,那么放一个就可以了。我开始试过edit
distance比较两个string的相似度,后来发现得到的数字没有什么意义,不具有描述性
,如果R里面有什么package可以用就好了,哪怕是做个preliminary analysis启发一下
也行呀,我听说过cramer'v,没用过,不知大家是否了解。 |
g*****o 发帖数: 812 | 2 你把字符串按照括号和分号拆成列表了没有呢?
【在 u*****o 的大作中提到】 : 我是菜鸟。。。刚刚上班不久就遇到一个不太解决的了的问题,希望牛牛们给点指点, : 让我好知道如何下手,马上要和老板谈思路,怕自己什么也说不出来。 : 我现在有两组数据,第一组是navigator的User-agent string,我们叫它A : 一个例子就是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0; : SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media : Center PC 6.0; .NET4.0C; .NET4.0E; BRI/1; MDDC; InfoPath.1; BRI/2) : 另一组数据时browser的user-agent string,我们叫它B : 一个例子是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
|
u*****o 发帖数: 1224 | 3 谢谢回复:)
我拆分了,然后用hadoop做了一个word count,也就是分析了Mozilla,MSIE呀每个单
词在两组数据中出现的频率,我一会发段结果上来。。这样的结果给的是overal
statistics,如何使用呢?
【在 g*****o 的大作中提到】 : 你把字符串按照括号和分号拆成列表了没有呢?
|
s*w 发帖数: 729 | 4 大波妹工作了啊
你这个问题有点问题,既然是同一个 user 的,显然是取两个 sparse indicator
vector 的 union 这样是最完整的信息
【在 u*****o 的大作中提到】 : 我是菜鸟。。。刚刚上班不久就遇到一个不太解决的了的问题,希望牛牛们给点指点, : 让我好知道如何下手,马上要和老板谈思路,怕自己什么也说不出来。 : 我现在有两组数据,第一组是navigator的User-agent string,我们叫它A : 一个例子就是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0; : SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media : Center PC 6.0; .NET4.0C; .NET4.0E; BRI/1; MDDC; InfoPath.1; BRI/2) : 另一组数据时browser的user-agent string,我们叫它B : 一个例子是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
|
c***z 发帖数: 6348 | |
f******k 发帖数: 297 | 6 try levenstein distance
【在 u*****o 的大作中提到】 : 我是菜鸟。。。刚刚上班不久就遇到一个不太解决的了的问题,希望牛牛们给点指点, : 让我好知道如何下手,马上要和老板谈思路,怕自己什么也说不出来。 : 我现在有两组数据,第一组是navigator的User-agent string,我们叫它A : 一个例子就是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0; : SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media : Center PC 6.0; .NET4.0C; .NET4.0E; BRI/1; MDDC; InfoPath.1; BRI/2) : 另一组数据时browser的user-agent string,我们叫它B : 一个例子是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
|
u*****o 发帖数: 1224 | 7 熊!抓住!
我也觉得有点问题,感觉完全discard一组数据不太make sense,我胡乱算了半天也没
有什么conclusive的结果。。。
什么是sparse indicator?这两个string对每个用户都有记录,这也算sparse吗?
【在 s*w 的大作中提到】 : 大波妹工作了啊 : 你这个问题有点问题,既然是同一个 user 的,显然是取两个 sparse indicator : vector 的 union 这样是最完整的信息
|
u*****o 发帖数: 1224 | 8 好,去查查
你当上版主了呀,恭喜恭喜:)
【在 c***z 的大作中提到】 : 试试 Jaccard : http://en.wikipedia.org/wiki/Jaccard_index
|
|
u*****o 发帖数: 1224 | 9 试过了,不是太好使。。。
这是一部分结果,我把distance normalized by length of string,换成0-1的百分数
了。然后再根据browser的类型计算了一下平均数,
比如:Safari browser average distance = 0.027
IE average distance = 0.55
Chrome average distance = 0.0008
这些数据并没有太大的意义呀,除了说明IE两组数据比较不像,Chrome非常相似。。
其实还是说明一个并不是另一个的子集,应该用合集才不会lose information。。。
【在 f******k 的大作中提到】 : try levenstein distance
|
b*****o 发帖数: 715 | 10 没有什么A类B类,useragent就是useragent,你提供的两个例子就是两个具体的不同的
useragent,不过两者都是IE10。第一个之所以会长一点是因为用户可能加了些插件,
或者是电脑预装的一些设置。建议楼主先看看wikipedia上对于useragent的一些常识性
解释:http://en.wikipedia.org/wiki/User_agent
我不太清楚你要做的项目是什么。但是一般来说,把useragent的raw string直接作为
特征输入是很罕见的,一般情况下只要知道浏览器类型+version就足够了(比如IE10
)。如果你想要更全面的信息,比如family,sub-family, platform, os, locale,或者
一些手机才有的信息比如carrier, java configuration,那你要问你老板要一个
useragent parser。
我唯一一次直接使用useragent的raw string,是为了做useragent spoofing的研究。
即我怀疑某些useragent的spammer伪装的,想研究一下它们的共性。
【在 u*****o 的大作中提到】 : 我是菜鸟。。。刚刚上班不久就遇到一个不太解决的了的问题,希望牛牛们给点指点, : 让我好知道如何下手,马上要和老板谈思路,怕自己什么也说不出来。 : 我现在有两组数据,第一组是navigator的User-agent string,我们叫它A : 一个例子就是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0; : SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media : Center PC 6.0; .NET4.0C; .NET4.0E; BRI/1; MDDC; InfoPath.1; BRI/2) : 另一组数据时browser的user-agent string,我们叫它B : 一个例子是 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
|
d******4 发帖数: 132 | 11 Here we need to tell if A is a subset of B, not A is similar to B.
If B outnumbers A with a large margin, then Jaccard would be very small even
if A is a true subset of B.
How about modifying Jaccard a little bit such as
size(A intersection B)/size(A)?
【在 c***z 的大作中提到】 : 试试 Jaccard : http://en.wikipedia.org/wiki/Jaccard_index
|