Page 228 - 《软件学报》2020年第11期
P. 228

尹子都  等:基于采样的在线大图数据收集和更新                                                         3543


                 个连接都有一种连接关系类型并连接两个不同对象,即 e=(o i ,o j ,r k ),e∈E,o i ,o j ∈O,i≠j,r k ∈R.
                    定义 2.  G ON 中 o i 的对象数据Ψ 是通过访问互联网获取的 OBG 数据,包括对象本身和此对象产生的所有
                                              i o
                 连接,可表示为 o i 以及 e i =(o i ,o j ,r k ),其中,e i ∈E,o i ,o j ∈O,i≠j,r k ∈R,全体对象的对象数据集合记为Ψ .
                    Ψ 包含 G ON 中的所有信息,所以获取 G ON 等价于获取Ψ .鉴于Ψ 对不同对象是独立可分的,因此可将 OBG 的
                 对象集合映射到高维空间,再对其进行子空间划分,这样就能在高维子空间中使用 QMC 采样来量化不同子空
                 间的重要性,从而进行自适应的 OBG 数据收集.
                 2.1   OBG高维空间映射与子空间划分
                    我们将 G ON 的对象集合 O={o 1 ,o 2 ,…,o |O| }映射到一个高维空间 A,|O|为 G ON 中对象的数量.映射后,第 i 个对
                 象的高维空间坐标可表示为
                                        ⎛   ⎛  i ⎥  ⎞ ⎢  ⎛  i ⎞ ⎢  ⎥  ⎛  i ⎥  ⎞ ⎢  ⎞
                                        ⎜  mod ⎜  ⎣  L ⎦  0 ⎟ ⎢  ,mod ⎜ ⎥  ⎣  L ⎦  1 ⎟ ⎢  ⎥  ,...,mod ⎜  ⎣  L h− ⎥  2 ⎟ ⎢  ⎦  , ⎢  i ⎥ ⎟  (1)
                                        ⎜  ⎜  ⎜  ⎟    ⎜   ⎟      ⎜     ⎟  ⎢ ⎣ L h− 1 ⎥ ⎟  ⎦ ⎟
                                            ⎝⎝  L ⎠   ⎝  L ⎠     ⎝  L  ⎠      ⎠
                            |
                 其中,L 为 | O ,h 代表空间维度.
                         h
                    QMC 采样使用高维伪随机序列进行采样,高维空间 A 的维度 h 越高,QMC 采样的伪随机性和子空间覆盖
                 性越好,子空间分割也能够越精细,重要性计算的结果也越准确.对于 OBG 而言,恰当的 h 就足以表达其内部的
                 信息,多余的维度会造成计算资源的浪费.因此,对于复杂的 OBG,适当提高维度 h 将能够更快发现重要的子空
                 间,提升数据获取的效率.
                    A 中不同的子空间重要性不同,且这些子空间内不同的子空间重要性也不相同.为了计算子空间的重要性,
                 可将 A 分割为 K 个等大小的子空间,记为{A 1 ,…,A s ,…,A K },每个子空间也可继续划分,直到只包含单个对象.第 J

                 次划分结果表示为划分向量 k ,其每个维度取值为各个子空间该维度上等分分割份数的倒数.子空间的递归细
                                        J
                 分将会产生一棵高度为 log K |O|的 K 叉树,根节点对应整个高维空间,第 1 层节点分别对应分割后的 K 个子空间,
                 其余层依此类推.例 1 展示了 OBG 的高维空间映射与子空间分割过程.基于此的分割方法,下一节将讨论如何利
                 用 QMC 采样递归的获取子空间重要性并进行自适应的数据收集.
                    例 1:设图 1 中社交媒体 OBG 对应的有向图为 G ON ={O,E,R},O={o 0 ,…,o 7 },E={e 0 =(o 2 ,o 1 ,r 0 ),…,e 8 },且 R={r 0 =
                 好友,r 1 =评论,r 2 =转发,r 3 =点赞}.若 h=3,根据公式(1)对 G ON 进行空间映射可得,o 0 ~o 7 对应坐标分别为(0,0,0),(1,0,
                 0),(0,1,0),(1,1,0),(0,0,1),(1,0.1),(0,1,1),(1,1,1).此时,OBG 将会被映射到一个三维的立方体内.对这个立方体进行
                 子空间分割,K=2 时先对 z 轴分割,则立方体在 x,y 和 z 这 3 个维度上分别被等分为 1 份、1 份和 2 份,对应的分

                 割向量为 k =(1,1,0.5),如图 2(a)所示.接着,用 k =(0.5,1,1)和 k =(1,0.5,1)对 x 轴和 y 轴划分,得到 8 个子空间,如
                                                     2
                                                                3
                         1
                 图 2(b)所示.后续分割过程类似,直到空间不再可分.
                                                 z              z


                                                 0               0
                                                          x              x
                                                y              y
                                               (a)  仅 z 轴分割   (b) x,y 和 z 轴分割

                                           Fig.2    Example of OBG projection and split
                                                图 2   OBG 的映射与分割举例

                 2.2   基于采样的OBG数据收集算法
                    结合前述 OBG 的高维空间映射与划分方法,基于高维空间的 QMC 采样技术和分支限界方法,本节给出自
                 适应的 OBG 数据收集方法,包括子空间重要性评估和子空间选择两个阶段.
   223   224   225   226   227   228   229   230   231   232   233