十月学习日记

目录

  • Interactive Recommender System via Knowledge Graph-enhanced Reinforcement Learning
    • ABSTRACT
    • INTRODUCTION
    • 问题
  • KERL
    • METHOD
  • overleaf编译错误
    • 参考文献显示不出来
    • 报错高度不够
  • 2021.10.10 智能信息检索
    • 1. 浅谈因果推断在搜索纠偏中的应用 (徐军)
      • 如何使用有偏的反馈训练无偏的排序?
      • 基于因果的搜索纠偏方法
      • 总结
    • 2. 面向反馈回路和数据偏差的因果推荐系统 (何向南)
      • 当前工作
        • work1 改进IPS框架
        • work 2 考虑新的cause-specific data
        • work3 反事实推理
        • work4 用因果干预 利用流行度偏差
      • 总结
    • 3. 因果学习启发的推荐算法研究进展及思考 (何秀强)
      • 工作1.因果表征学习->深度推荐模型无偏表征学习 DIB
      • 工作2. 基于干预的反事实推断
  • 2021.10.11
    • 前馈神经网络
    • 代码
  • filter bubble

Interactive Recommender System via Knowledge Graph-enhanced Reinforcement Learning

关键:采样效率

ABSTRACT

  1. 提到RL可以用于解决dynamic user preference 和 optimize accumulative utilities问题。但是还存在sample efficiency的问题。
  2. 用到了知识图谱。(i) 指导候选项的选择,以便更好地检索候选项,(ii)丰富项目和用户状态的表示,以及(iii)在KG上的相关项目之间传播用户偏好,以处理用户反馈的稀疏性。

INTRODUCTION

  1. 基于MAB的模型,假设用户兴趣是静态的。

问题

  1. 序列推荐:顺序推荐系统(SRS)通过主要对序列中的用户项交互(例如,在在线购物平台上查看或购买项目)进行建模,从而建议用户可能感兴趣的项目[27]。传统的推荐系统(RS),包括基于内容的协作过滤RS,都以静态方式对用户项目互动进行建模,并且只能捕获用户的一般偏好。相反,SRS将用户-项目交互视为动态序列,并考虑到顺序依赖性,以捕获用户当前和最近的偏好以获得更准确的推荐。 recommend the next ite
  2. IRS:IRS中的推荐被描述为一个多步决策过程。在每个步骤中,系统向用户交付一个项目,并可能接收来自用户的反馈,该反馈随后以顺序方式导出下一个推荐决策。
  3. CRS:① 交互式推荐系统可以视为 CRSs 的一种早期雏形,目前仍然有交互式推荐系统的研究。大多数交互式推荐系统,都遵循两个步骤:1)推荐一个列表;2)收集用户对于该推荐的反馈。然后往复循环这两个步骤。
    ② 然而这并不是一种好的交互模式。首先,这种交互太单调了,每轮都在循环推荐和收集反馈,很容易让用户失去耐心;其次,一个好的推荐系统应该只在其置信度比较高、信心比较充足的情况下进行推荐;最后,由于商品的数量巨大,用推荐商品的方式来了解用户的兴趣喜好,是低效的。
    ③ 而 CRSs 引入了更多的交互模式。例如,其可以主动问用户问题,例如问关于商品属性的问题:“你喜欢什么样颜色的手机?”“你喜欢关于摇滚类乐曲吗?”丰富的交互模式克服了交互式推荐系统的三个问题,用更高效的方式来进行交互,从而快速获得用户的兴趣爱好,在信心比较充足的情况下,才作出推荐。
    ④ CRSs 的一个核心任务是关注如何问问题,即什么时候问问题,什么时候做推荐。

KERL

关键:序列推荐+探索

  1. 用强化学习做序列推荐,最大化长期收益。long-term or overall effectiveness。解决EE问题,exploration。能探索用户未来偏好偏移
  2. 三个扩展:① enhance the state representation:sequence-level,knowledge-level。② composite reward function(两个level)③ truncated policy gradient
  3. 用到知识图谱的部分:使用TransE初始化各个node的embedding,之后就是使用average pooling计算平均。

METHOD

  1. state: s t = [ i 1 : t , G ] s_t = \left[ i_{1:t},G \right ] st=[i1:t,G] ① sequence level:用户历史交互信息经过GRU。 ② sequence level:分为current knowledge-based preference(用户交互过的item,average pooling)和future knowledge preference(用到了induction network)。最终的state就是三部分拼起来
  2. action:softmax形式(物品embedding),一次采样k步
  3. reward:k-step。① sequence-level:BLEU指标(希望生成更长的连续序列)。 ② knowledge-level:计算推荐序列与真实序列的 c t : t + k c_{t:t+k} ct:t+k, c ^ t : t + k \hat{c}_{t:t+k} c^t:t+k。使用cosine衡量二者相似性。

overleaf编译错误

参考文献显示不出来

报错Package hyperref Warning: Token not allowed in a PDF string,网上搜了好多资料,都没法解决,后来发现是bib文件没有和txt文件放在一个文件夹上,把他们放在一个文件夹下就可以啦。

报错高度不够

报错:Package Fancyhdr Warning: \headheight is too small (13.0pt): Make it at least 16.3225pt. We now make it that large for the rest of the document. This may cause the page layout to be inconsistent, however.
解决办法:在\begin{document}前加上 \setlength{\headheight}{17pt},就可以啦

2021.10.10 智能信息检索

1. 浅谈因果推断在搜索纠偏中的应用 (徐军)

如何使用有偏的反馈训练无偏的排序?

什么导致点击?有多少是因为相关性点击?

基于因果的搜索纠偏方法

  1. 搜索任务中的数据:观测到的有偏数据(行为策略采集的数据),未观测数据,观测到的无偏数据(实验数据,如随机流量,难获得)
  2. 搜索纠偏的重点:平衡靠前位置组与靠后位置组的数据分布
    排在前面的文档,曝光的机会多,得到的click多

方法:

  • IPS 逆倾向得分:排名低的权重拉高,能做到期望无偏
  • 插补方法Imputation:估计未观测数据->平衡数据分布(用模型模拟未知标签)
  • 双稳健方法 Doubly Robust Methods:观测数据赋权+未观测数据估计->平衡数据分布(相当于考虑了IPS和Imputation,靠前靠后的位置都考虑了)
  • 分解观测数据中的因果和偏差:likelihood decomposition(从观测数据的似然当中分解出无偏部分和偏差部分,并同时最大化两者,最后使用无偏数据。)

总结

  1. 本质:平衡数据分布

2. 面向反馈回路和数据偏差的因果推荐系统 (何向南)

  1. RS: 训练+上线serving+collecting。是一个消息反馈回路,会影响下一步。
  2. 偏差:数据有偏 missing-not-at-random
  3. 模型训练有偏,如一直推流行的。回路会不断放大bias,导致信息茧房、马太效应。
  4. 传统方法:最小化用户历史反馈和模型偏差,属于数据驱动。不能建模因果性。
    十月学习日记_第1张图片
    数据有偏时,希望学习出第一种 preference->click,但是总会有干扰。
    数据驱动(基于相关性)的方法只能学到有偏的。
    方法: IPS、Causal Embedding、知识蒸馏等

当前工作

十月学习日记_第2张图片

work1 改进IPS框架

  1. 问题:无偏数据很少,因此用meta-learning学习超参数。两个随机曝光的数据集 Yahoo!R3和On Coat

work 2 考虑新的cause-specific data

十月学习日记_第3张图片

  1. 用户看:兴趣驱动or从众心理,希望从交互数据中解耦出来。
  2. 难:没有ground-truth。
  3. 对撞结构,用户点击了不流行的物品,代表是兴趣驱动(正样本流行度低于负样本)
    十月学习日记_第4张图片

work3 反事实推理

十月学习日记_第5张图片

  1. 反事实推理。
  2. 即使初始状态没有流行度偏差,但是模型还是会引入流行度偏差。
  3. 消除方式:回答反事实的问题
  4. 训练的时候是多任务训练

work4 用因果干预 利用流行度偏差

十月学习日记_第6张图片

  1. 不是所有流行度偏差都是不好的

总结

十月学习日记_第7张图片

3. 因果学习启发的推荐算法研究进展及思考 (何秀强)

  1. 推荐技术是商业化最成功的AI技术 Implicit Feedback in Closed-loop
  2. 工业界深度推荐模型->大型化、复杂化、黑盒化
  3. 深度推荐模型建模能力->相关性学习
    十月学习日记_第8张图片
  4. “因果性”——事出必有因;人工智能因果学习三层次:关联->干预->反事实
    十月学习日记_第9张图片
    OOD问题:Out-of-distribution

工作1.因果表征学习->深度推荐模型无偏表征学习 DIB

工作2. 基于干预的反事实推断

视频链接:https://meeting.tencent.com/live/11012880646002847708?room_id=919952185

2021.10.11

前馈神经网络

  1. 前馈神经网络(feedforward neural network),又称作深度前馈网络(deep feedforward network)、多层感知机(multilayer perceptron,MLP)。

代码

  1. 使用配置文件:
    config = configparser.ConfigParser()
    _x = open('../src/config')
    config.read_file(_x)

配置文件中写成这样:

[META]
ACTION_DIM = 80
STATISTIC_DIM = 9
REWARD_DIM = 100

使用的时候直接 config['META']['ACTION_DIM ']就可以啦。
2. 读取csv文件:

col_names = ['username', 'itemname','rating']
train_ratings_df = pd.read_csv(self.deleted_train_filePath, delimiter= ',|\t', names=col_names, usecols=[0,1,2],engine='python')
test_ratings_df = pd.read_csv(self.test_filePath, delimiter= ',|\t', names=col_names, usecols=[0,1,2],engine='python')

filter bubble

跟信息茧房是一个意思,这篇文章解释的比较清楚。

你可能感兴趣的:(学习笔记,知识图谱,人工智能)