Page 164 - 《软件学报》2021年第6期
P. 164

1738                                     Journal of Software  软件学报 Vol.32, No.6,  June 2021

         要对原有的用户行为进行平滑漂移.
             本节提出交互行为集中性系数 CS 和交互行为偏向性系数 CP 对用户行为进行量化,并基于 CS 和 CP 提出
         行为时域漂移算法 TDDA(time-domain drift  algorithm)确定触发因素的出现时机,并实现了 TDDA 作用下的交
         互行为重构访问控制模型.
         2.2.1    行为时域漂移算法
             为了使得漂移后的引导时域与用户原始登录时域存在差异性,且充分考虑变化的平滑性,我们对用户的历
         史交互行为记录进行分析,采用分位数分析方法和四分位距(IQR)来描述不同用户登录时间序列的离散程度.分
         位数是将总体的全部数据按从大到小顺序排列后,处于各等分位置的变量值.求出用户登录时间记录的第一四
         分位数 Q 1 、第二四分位数 Q 2 即中位数、第三四分位数 Q 3 ,并求出上限 Q max 、下限 Q min .
             四分位数间距即第三四分位数 Q 3 与第一四分位数 Q 1 之差,即 IQR=Q 3 −Q 1 ,其数值越大,反映变异度越大;反
         之,变异度越小.为了减少极端值对用户行为稳定性衡量的影响,用户行为的上限、下限计算公式如下:
                                               Q max =Q 3 +αIQR,
                                               Q min =Q 1 −αIQR,
         其中,α为异常程度的权重.若α越大,则更多偏离点会被接受;反之,α越小,则更多的偏离点会被排除.
                                                                     u
             定义 7(交互行为集中性系数).  用户 u 的交互行为集中性系数定义为 CS ,表示用户行为的稳定和聚集程度,
         为样本中部的观察值 Q 1 与 Q 3 的极差与样本上下限极差的比值.计算公式如下:
                                                     ⎡ 3( +  1)⎤ n  ⎡  +  1⎤n
                                                    R ⎢     ⎥  − R ⎢  ⎥
                                           IQR       ⎣  4   ⎦  ⎣  4 ⎦
                                    CS u  =      =                    ,
                                         Q max  min  Q 3  +  α − Q  −  (Q 1  − IQR )
                                                                αIQR
         其中,R 是对于总体排序后的集合,n 是集合中元素的个数.因此,依据 CS 值的大小,我们可以衡量每个用户交互
         行为事件的离散程度.以用户的登录时间属性为例,其登录时间属性下对应的 CS 值越大,反映用户的历史登录
         时间较为集中,行为离散程度较小;反之,对应的 CS 值越小,用户的登录时间较为分散,行为离散程度较高.在此基
         础上,不同时间区间内用户的 CS 值的变化情况也反映了用户交互行为的集中性趋势.在衡量用户稳定和聚集程
         度的基础上,还需要考虑用户交互行为的偏向性.
                                                                       u
             定义 8(交互行为偏向性系数).  用户 u 的交互行为偏向性系数定义为 CP ,表示用户行为偏好和偏向程度,
         为样本均值与第二四分位数的差值.计算公式如下:
                                           CP =  R Q−  2  =  1  n  r − ∑  i  Q 2 ,
                                                        i n = 1
         其中, R 为总体集合的均值,r 为集合 R 中的全部元素.以用户登录时间为例,不同用户登录系统的时间与自身习
         惯和工作性质等有关:若用户登录系统的时间更偏向于均值左侧,即 CP<0;相反,用户登录系统的时间更偏向于
                                        u
         均值右侧,即 CP>0.不同时间区间内 CP 值的变化情况,也体现了用户交互行为的偏向性趋势.
             用户行为的引导需要充分结合用户自身的行为能力和习惯,不给用户体验带来较大负担,用户才会有更高
                                                                   u
                                                                                            u
         的接受度.本文结合用户的历史交互行为习惯,在交互行为集中性系数 CS 和交互行为的偏向性系数 CP 的基
         础上,充分考虑用户历史行为,提出交互行为时域漂移算法(TDDA).算法 1 给出了用户登录行为时域漂移算法的
         伪代码,如下所示:
             算法 1. Time domain drift algorithm on login behavior.
             Input: R—The list of user login time log; n—The size of user login time log;
             Output: drift_start—The guide mechanism start time; drift_stop—The guide mechanism end time.
             1:   threshold:=0.4;
             2:   sort(R);
             3:   calculate Q 1 , Q 2 , Q 3 ,  R ;
             4:   IQR=Q 3 −Q 1
             5:   CS=IQR/(Q max −Q min )
   159   160   161   162   163   164   165   166   167   168   169