当前位置: 首页 > 科技观察

强化学习是如何做数据分析的?TKDE2022评论论文

时间:2023-03-22 14:59:21 科技观察

数据处理和分析是基础和通用的。算法在数据处理和分析中起着至关重要的作用,许多算法设计结合了人类知识和经验的启发式和一般规则以提高其有效性。近年来,强化学习,尤其是深度强化学习(DRL)在许多领域得到了越来越多的探索和利用,因为与静态设计的算法相比,它可以在复杂的交互环境中学习到更好的策略。在这种趋势的推动下,我们对最近的工作进行了全面回顾,重点是使用DRL改进数据处理和分析。首先,我们介绍DRL中的关键概念、理论和方法。接下来,我们将讨论DRL在数据库系统上的部署,以方便数据组织、调度、调优和索引等各个方面的数据处理和分析。然后,我们研究DRL在数据处理和分析中的应用,从数据准备和自然语言处理到医疗保健、金融科技等。最后,我们讨论了在数据处理和分析中使用DRL的重要挑战和未来的研究方向。论文链接:https://arxiv.org/abs/2108.04526在大数据时代,数据处理和分析是基础、无处不在的,对许多正在数字化之旅的组织来说至关重要,以改善和转变其业务和运营.数据分析通常需要其他关键操作,例如数据采集、数据清理、数据集成、建模等,然后才能提取见解。从医疗保健到零售,大数据可以在许多行业释放巨大的价值创造。然而,数据的复杂性(例如,大容量、高速度和高多样性)对数据分析提出了许多挑战,使得难以获得有意义的见解。为了迎接这一挑战,促进高效、有效的数据处理和分析,研究人员和从业者设计了大量的算法和技术,也开发了大量的学习系统,如SparkMLlib和Rafiki。为了支持快速的数据处理和准确的数据分析,大量算法依赖于基于人类知识和经验制定的规则。例如,“最短作业优先”是一种调度算法,选择执行时间最短的作业进行下一次执行。但与没有充分利用工作负载特性的基于学习的调度算法相比,其性能较差。另一个例子是计算机网络中的数据包分类,它将数据包与一组规则中的一个相匹配。一种解决方案是使用手动调整的分类启发式方法来构建决策树。具体来说,启发式算法是为一组特定的规则而设计的,因此可能不适用于具有不同特征的其他工作负载。我们观察到现有算法的三个局限性:首先,该算法不是最优的。规则可能会忽略或未充分利用数据分布等有用信息。其次,该算法缺乏自适应能力。为特定工作负载设计的算法在不同的工作负载中表现不佳。第三,算法设计是一个耗时的过程。开发人员必须花费大量时间尝试许多规则才能找到一个凭经验行得通的规则。基于学习的算法也用于数据处理和分析。常用的学习方法有两种:监督学习和强化学习。他们通过直接优化性能目标来实现更好的性能。监督学习通常需要一组丰富的高质量带注释的训练数据,而获取这些数据既困难又具有挑战性。例如,配置调整对于优化数据库管理系统(DBMS)的整体性能非常重要。在离散和连续空间中可能有数百个相互关联的调谐旋钮。此外,不同的数据库实例、查询工作负载和硬件特性使得数据收集不可用,尤其是在云环境中。强化学习比监督学习具有更好的性能,因为它采用试错法搜索并且需要更少的训练样本来为云数据库找到良好的配置。另一个具体的例子是查询处理中的查询优化。数据库系统优化器的任务是为查询找到最佳的执行计划,以降低查询成本。传统的优化器通常会枚举许多候选计划并使用成本模型来找到成本最低的计划。优化过程可能缓慢且不准确。在不依赖不准确的成本模型的情况下,深度强化学习(DRL)方法通过与数据库交互(例如,更改表连接顺序)来改进执行计划。当查询发送到代理(即DRL优化器)时,代理通过表征基本信息(例如访问的关系和表)来生成状态向量。代理将状态作为输入,并使用神经网络生成一个动作集的概率分布,其中可以包含所有可能的连接操作作为潜在动作。每个操作代表一对表的部分连接计划,一旦执行操作,状态就会更新。在采取可能的行动之后,生成一个完整的计划,然后由DBMS执行以获得奖励。在这个查询优化问题中,可以根据实际延迟计算奖励。在使用奖励信号进行训练期间,代理可以改进其策略,从而产生更好的连接顺序(即更少的延迟)和更高的奖励。查询优化强化学习(RL)的DRL工作流侧重于学习在环境中智能地行动。RL算法通过基于探索和开发的环境反馈来改进自身。在过去的几十年里,强化学习在理论和技术上都取得了长足的进步。值得注意的是,DRL结合了深度学习(DL)技术来处理复杂的非结构化数据,旨在从历史数据中学习和自我探索,以解决众所周知的困难和大规模问题(例如AlphaGo)。近年来,来自不同社区的研究人员提出了DRL解决方案,以解决数据处理和分析中的问题。我们从系统和应用程序的角度使用DRL对现有作品进行分类。从系统的角度来看,我们专注于基础研究主题,从一般的(例如调度)到特定于系统的(例如数据库查询优化)。我们还应该强调它是如何被表述为马尔可夫决策过程的,并讨论与传统方法相比如何更有效地解决DRL问题。由于实际系统中的工作负载执行和数据获取时间比较长,因此采用采样、模拟等技术来提高DRL训练的效率。从应用的角度,我们将涵盖数据处理和数据分析中的各种关键应用,以全面了解DRL的可用性和适应性。许多领域通过采用DRL进行转换,这有助于学习有关应用程序的特定领域知识。在这篇综述中,我们旨在对使用深度强化学习解决数据系统、数据处理和分析问题的最新进展进行广泛而系统的综述。强化学习技术分类