任务1:完成教材第一章安装系统编写

问题:在本地安装虚拟机时,屏幕显示不全,只能采用用户手册里面的截图。但是版本号不一致,后期想办法再截个图吧

图1-10 安装信息界面

任务2:图学习的进一步探索

架构思路:利用VH和实际UI架构的可对应性质,利用竖向VH图架构到横向VH图架构的转换规律,训练一个模型。将该模型运用到需要转换的UI之中

现有问题:

  1. 边的数量太少 :传统的UI树只有父子结构 图学习主要是使用邻居节点的消息传递来进行汇聚操作,如果边的数量太少,汇聚的效果不好。考虑在原有基础上新添加一些边。如兄弟边,以及表示相对位置的边。

  2. 边的性质不统一:节点与节点之间的关系不是一致的,他们的关系有多种 如:层次,方向等,同构图暂时解决不了这类问题,考虑使用异构图的方式。异构图是使用attention机制 用节点和语义两方面同时聚合,再使用多头注意力将两个特征向量拼接。需要注意的是,特征向量是由特征得来的,特征向量的表示好坏取决于特征的选择。

    img

    img

  3. 选取哪些特征来构建特征向量:节点中有很多特征但是不是所有特征都跟他的位置关系相关,需要人工挑选出来这部分相关特征

  4. 预测数据不明确:GNN可以用来:

    基于节点的任务

    • 节点分类:预测节点的一个属性
      示例:对在线用户/项目进行分类

      在这里插入图片描述

    基于边的任务

    • 链接预测:预测两个节点之间是否存在缺失链接
      示例:推荐系统、药物联合副作用、交通预测

      在这里插入图片描述

    基于子图的任务

    • 交通预测

    图演化:物理模拟

    在这里插入图片描述

    目前的解决方案:

    1. 但是以上的都是在一个图里面做的,要反映出图之间的映射规则还需要使用别的方法 我们考虑用预测边来做,如何将这种关系转换成边的预测呢?只用一个图形显然是不行的,这时候我们就需要对比两个UI结构,找出来新增的边(因为竖屏转横屏的话,大部分容器内组件的相对位置还是不变的,也就是说改变的绝大部分都是两个之前没有边新增边或者是有边改变方向的情况)将这些新增或者改变的边拿来预测,即可同时使用前后两种UI结构。
    2. 使用图演化 能较为合理地反应出来图的变化过程,但是这方面的模型比较少,都是使用同构图来做的没有与异构图连接起来。就用同构图来做感觉也可以

    下一步:

    准备开始跑跑demo,从上面的两个解决方案里面选取一个效果比较好的进一步更改。