长时间序贯任务结构的演示学习方法及其在手术机器人中的应用

深度模仿学习和深度强化学习具备学习机器人控制策略的潜力,即它们可将高维的传感器输入映射到机器人的控制动作。虽然这些方法在短时任务学习方面取得了巨大成功,如抓取任务(Pinto and Gupta 2016,Levine et al. 2016)和尖物插孔任务(Levine et al. 2016)。但是在将这些方法拓展到学习更长时间水平的任务时所需的示范数据数量,无论是从专家获得还是自我监督,都是过于庞大的。长时间序贯任务会遇到经典的“时间信用分配”问题:即在观察到动作的影响所需时间不确定的情况下,对该动作的回报(或惩罚)进行分配的难题(Sutton, 1984)。但是,长期行为通常会由能够解决解耦后子任务的短期技能所组成。考虑设计一个纵列式停车的控制器,整个纵列式停车任务可以分解为三个阶段:停车,倒车和调整。同样的,通常也可以根据需要操纵的部件将装配任务分解成单独的步骤。这些短期技能可以更简洁地进行参数化(作为类比,可考虑下对全局非线性函数的局部线性逼近),并且这种简化的参数化子任务本质上可以更加容易地进行学习。

这篇帖子总结了最近三篇论文的结果,这些论文提出了一些可以将更长的任务分解成更短子任务的学习算法。我们报道了在自主手术子任务背景下的实验,我们也相信这些结果适用于从工业机器人到家庭机器人的各种应用。我们提出了过渡状态聚类(Transition State Clustering, TSC),序贯加窗反向强化学习(Sequential Windowed Inverse Reinforcement Learning, SWIRL)和连续选项的深度发现(Deep Discovery of Continuous Options, DDCO)等三种算法。TSC(过渡状态聚类)考虑了在所有演示中发生的重要转换事件(即运动中的重大变化)的鲁棒学习问题。SWIRL(序贯加窗反向强化学习)提出了一个将价值函数近似为一系列短期二次回报的算法。DDCO(连续选项的深度发现)是一个具有动作空间层次表征的模仿学习通用框架。通过回顾,这三种算法都是同一个通用框架的特例。该框架中,演示者的行为被生成式地建模成一组未知闭环策略的顺序组合,这些策略会在达到参数化的“过渡状态”时进行转换。

在手术机器人中的应用

诸如Intuitive Surgical公司的达芬奇,机器人利用本地的遥控操作方便了全球数以百万计的外科手术。外科手术子任务的自动化有可能降低外科医生的乏味和疲劳,减少手术时间,并且可以在高延迟的网络上进行有监督的远程手术。因其有限的视野和不精确的驱动,手术机器人控制器的设计是特别困难的。

从具体任务看,模式切割是腹腔镜手术的基础操作之一,是外科手术医生必备的培训科目。在这个标准的外科手术训练任务中,外科医生必须切断并移除画在一张纱布上的图案,最后以完成时间和准确性两项标准对医生进行评分:

腹腔镜手术基础操作中的模式切割任务

在文(Murali 2015)中,我们在达芬奇手术机器人上利用人工设计的确定性有限自动机(Deterministic Finite Automaton, DFA)手动编写了这个任务。DFA(确定性有限自动机)集成了10种不同的操作基元和两种基于计算机视觉的核查:

文(Murali et al. 2016)中,为自动模式切割设计的确定性有限自动机

设计这个DFA需要艰苦的反复试验,而感知核查则需要不断的调整以适应照明情况与登记情况的变化。这促使我们考虑我们能够在何种程度上从示例数据中学到这种结构。这篇博文描述了过去三年中我们在”从示例中学习分层表示“这个研究方向的努力。这项研究帮助我们在只需要最少DFA专家设计的前提下,实现了几个机器人手术任务的自动化。如在本帖顶部的三个GIF动画所示。

转换条件的学习

第一篇论文,即过渡状态聚类TSC(Krishnan et al. 2015),探讨了从演示中学习转换条件的问题。转换条件即是任务中触发操纵行为之间进行转换或过渡的条件。在许多重要的任务中,虽然实际的运动可能会变化且带有噪声,但是每个示例都包含大体上相同的原始运动序列。这种一致的、重复的结构可以用来识别与运动变化显著相关的状态空间条件,进而来推断全局的转换准则。假定操作基元的顺序已知,这个问题就简化成对每个运动轨迹进行分段,并在不同轨迹间对应这些分段的问题。这涉及到寻找段到段之间转换事件的共同集合的问题。

我们用转换状态聚类算法(TSC)将这种直觉进行了形式化。令 D=\{d_i\} 为一个机器人任务的示例集合。任务 d 的每个演示是特征空间 \mathcal{X} 中的 T 个状态向量的一个离散时间序列。特征空间是运动学特征 X (如机器人位置)和感官特征 V 的连接。这些感官特征是通过硬编码图像处理和人工标注所计算的环境中的低维视觉特征。

任务分割定义为将每个轨迹映射到 {1,2,...,k} 中一个非递减整数序列的函数 S 。这个函数不仅把分段的端点告诉了我们,而且它也根据每个分段的子任务标记了这些分段。与任务分段函数对比,转换指标函数 \mathcal{T} 将每个示例 d 映射到 {0,1} 的指标序列:

\mathbf{T}: d \mapsto ( a_t )_{1,...,|d|}, a_t \in {0,1}.

这里 \mathcal{T}(d)_t 表示在时间 t 之后该演示是否从一个子任务切换到了另一个子任务。对于示例 d_i,令 o_{i,t} 表示在时间 t 的运动状态、视觉状态和时间组成的元组 (x,v,t)。转换状态是指标为1的状态-时间元组的集合:

\Gamma = \bigcup_{i}^N ~\{o_{i,t} \in d_i ~: \mathbf{T}(d_i)_t = 1\}

在TSC(转换状态聚类)中,我们将产生 \Gamma 的概率分布建模为高斯混合模型(Gaussian Mixture Model, GMM),并识别这些混合分量。这些分量标识了与“候选转换”相关的状态空间区域。我们可以采取任意一个基于运动的模型来检测行为变化并生成候选转换。然后,我们根据概率将这些候选转换放在与示例中一致的状态空间和感知条件中。直观地说,这个算法由两个步骤组成:首先是分段,然后是对分段的端点进行聚类。

为使该模型在实际的噪声数据上能够工作,这里有许多重要的实现细节。由于运动学特征和视觉特征经常具有非常不同的尺度与拓扑性质,因此在聚类步骤中我们通常需要对它们分别进行建模。为达到这一点,我们分层地应用了GMM(高斯混合模型)模型:首先对运动学特征进行硬聚类,然后对每个聚类都在感知特征上进行了概率模型的拟合。这使我们能够删除那些不具备代表性的聚类(即不是在所有示例中都有的转换)。此外,超参数选择是混合模型中的已知问题。贝叶斯统计研究中的一些最新结果,可以通过定义关于混合成分个数的一些软先验来减轻一部分这类问题。狄利克雷过程(Dirichlet Process ,DP)定义了一个在离散分布参数之上的分布。在这里,这些离散分布即为类别分布的分布。DP(狄利克雷过程)的超参数可以用变分期望最大化方法来推导。

在模式切割任务中,TSC发现了以下转换条件:

手术模式切割任务。上:手动识别转换。下:自动发现的过渡状态(a)和过渡状态聚类(b)。

我们从文(Murali et al. 2015)中标注了6个手动识别的运动基元:(1)开始,(2)开口,(3)完成第一次切割,(4)交叉,(5)完成第二次切割,以及(6)连接两个切口。TSC自动识别为7个分段,这与我们之前的工作很相符。值得注意的是,自动识别时有一个额外的聚类(标记为2'),这不符合手动分割中的任意一个转换。

在2'位置,操作员完成一个切口并开始新的切割。在逻辑层面上,开口和切割都是穿透行为,由于末端执行器的定位,它们被对应到了两个不同的运动状态。即使人类标注者忽略了这个重要的转变,TSC也将它们分在了不同的聚类。

与反向强化学习的联系

接下来我们探讨了如何使用TSC(转换状态聚类)学习到的转换来形成长期任务中的奖励。序贯加窗反向强化学习SWIRL(Krishnan et al. 2016),将单个任务建模为一系列二次的奖励函数

\mathbf{R}_{seq} =[R_1, \ldots ,R_k]

和过渡区域

G = [\rho_1, \ldots,\rho_k ]

这里到达 \rho_1 之前,R_1 是奖励函数;直到 \rho_1 之后,R_2 成为奖励,其他依次类推。

假设我们拥有一个监督者,它提供了关于未知奖励函数 \mathbf{R}^* (不一定为二次)的最优演示,而且它以同样的顺序到达G中的每个\rho \in G (G也是未知的) 。SWIRL(序贯加窗反向强化学习)是一种从示范的轨迹中恢复\mathbf{R}_{seq}G的算法。SWIRL(序贯加窗反向强化学习)适用于具有离散或连续状态空间与离散动作空间的任务。只要轨迹是光滑的且不是特别高的维度时,状态空间可以表达空间状态、运动学状态或感知状态(如视觉特征)。最后,可以在RL(强化学习)算法中使用\mathbf{R}_{seq}G来找到一个任务的最优策略。

TSC(转换状态聚类)可以解释成是在推断子任务的过渡区域 G。一旦发现转换,SWIRL(序贯加窗反向强化学习)应用最大熵逆强化学习来找到一个引导机器人进入转换条件的局部二次奖励函数。因为在分段时,许多复杂的系统可以在短时范围内进行线性近似,因此分段进一步简化了MaxEnt-IRL(最大熵逆强化学习)算法在推理时所需动力学模型的估计。MaxEnt-IRL(最大熵逆强化学习)的目标是找到一个奖励函数,使得关于这个奖励函数的最优策略与专家示例中的接近。智能体被建模为从策略 π 中取最优的动作:

\pi(a \mid s, \theta) \propto \exp\{A_\theta(s,a)\}.

其中 A_\theta 是关于由 \theta 参数化的奖励优势函数(即状态 s 中动作 a 与最优动作之间的价值的差)。优化目标是最大化由 \theta 生成的演示轨迹的对数似然性。在MaxEnt-IRL(最大熵逆强化学习)中,在离散和线性高斯系统这两种情况下,该目标可以被可靠地估计。这是因为在给定由 \theta 所参数化的特定奖励下,它需要对策略进行有效的前向搜索。于是,我们假设我们的演示可以用离散或线性动态模型来建模。

\mathbf{R}_{seq}G 学习策略是不平凡的过程。因为在策略学习阶段(如一个常见的失败状态),解决 k 个独立的问题时,忽略了价值函数中任何可能存在的共享结构。在所有分段进行联合学习引入了对历史数据的依赖,即任何策略都必须在步骤 i + 1 之前完成步骤 i。学习一个依赖于记忆的策略可能会导致附加状态指数级别的开销。SWIRL(序贯加窗反向强化学习)利用了TSC(转换状态聚类)在某种意义上是马尔可夫过程的事实,并表明在提升的状态空间中该问题可以作为一个适当的MDP(马尔科夫决策过程)。该状态空间包括表示 {1,...,k} 中最大坐标索引的、已到达过渡区域的指标变量。

SWIRL(序贯加窗反向强化学习)应用Q-Learning的一个变体来优化在顺序奖励上的策略。该算法的基本变化是用表示“已到达过渡区域”的指标向量来增广状态空间。每个rollouts都新增了一个元组

(s, i \in {0,...,k-1},a,r, s', i' \in {0,...,k-1})

来存储这个信息。在状态、动作和段索引( 段索引也选择了适当的局部奖励函数)上定义Q函数:

Q(s,a,v) = R_k(s,a) + \arg\max_{a} Q(s',a, k')

我们还需要确定一个探索政策,即我们在累积rollouts时需要采用的随机策略。为了初始化Q-Learning,我们在每个分段采用局部行为克隆方法来获取策略 \pi_i。我们应用这些策略的 \epsilon-gildey版本来累积rollouts。

我们在可形变片状物张紧任务中评估了SWIRL(序贯加窗反向强化学习)。用一对夹子将一张手术纱布固定在两个较远的角落处。纱布未固定的部分允许放置在柔软的硅胶垫上。机器人的任务是够到纱布未固定的部分,抓住并提起纱布,并将其张成尽可能平整的平面。开环策略由于对意外的变化不产生反应,通常不能做到这一点。因为该任务需要一些关于纱布是否被正确抓取、纱布在抓取后如何变形的反馈以及关于纱布是否是平整的视觉反馈。任务是序贯的,由于某些抓取动作所抓到的材料或多或少,后续的展平步骤必须根据这些情况做相应的修改。

可形变片状物张紧任务

我们通过基于键盘的远程操作接口提供了15个演示。演示的平均长度是48.4个动作(尽管我们以较高的频率进行抽样观察,即每个动作大约有10次观测)。SWIRL(序贯加窗反向强化学习)从这15个示例中确定了四个分段,分别对应于移动到正确的抓取位置、抓取、再次提起纱布和拉直纱布。该任务中一个有趣的方面是分段需要多个特征,而对任何单个信号分段都可能会错过一个重要的特征。

然后,我们试图从SWIRL(序贯加窗反向强化学习)构建的奖励中学习一个策略。我们定义了一个具有32个隐藏单元与sigmoid激活函数的单层MLP(多层感知器)的Q网络。对于每个分段,我们都在与Q网络相同的体系结构(在输出层上具有附加的softmax)上,采用局部行为克隆来获得初始策略。我们用这些分段策略 \epsilon=0.1 的贪心版本循环执行了100次试验。结果如下所示:

可形变片状物张紧任务的代表性演示中相关特征随时间的变化情况。SWIRL确定了4个分段,分别对应于到达、抓取、提升和张紧。

SWIRL(序贯加窗反向强化学习)获得RL(强化学习)高4倍的回报,比纯行为克隆高出3倍,比仅在TSC(转换状态聚类)获取的分段使用行为克隆方法高56%。

分层表示

我们现在正在探索一种新的对TSC(转换状态聚类)和SWIRL(序贯加窗反向强化学习)进行泛化的连续选项深度发现算法(DDCO Krishnan et al. 2017,将在11月举行的第一届机器人学习会议上进行展示)。

一个选项表示可以由高级策略调用以执行某个子任务的低级策略。形式上,选项集 \mathcal{H} 中的选项 h 由控制策略 \pi_h(a_t | s_t) 和随机终止条件 \psi_h(s_t)\in [0,1] 指定。高级策略 \eta(h_t | s_t)定义在给定状态时的选项分布。一旦选项 h 被调用,就可以通过该选项的策略 \pi_h 来选择物理控制,直到终止条件的到来。在每个物理控制应用之后且在达到下一个状态 s' 时,选项 h 以概率 \psi_h(s') 终止。如果选项 h 确实终止,那么高层策略会选择一个分布为 \eta(h’ | s’) 的新选项 h’。于是,分层控制策略 \langle\eta,(\pi_h,\psi_h)_{h\in\mathcal H}\rangle 与系统之间的交互作用引入了一个在状态 s_t、选项 h_t、控制 a_t 和二进制终止指标 b_t 之上的随机过程。

DDCO(连续选项的深度发现)是一种先通过拟合参数来最大化一组演示轨迹的可能性,进而发现参数化选项的策略梯度算法。我们用 \theta 表示用于 \eta,以及用于每个选项 h\in \mathcal{H}\pi_h\psi_h 的所有可训练参数组成的矢量。例如,\theta 可以是计算这些概率的前馈神经网络的权重和偏差。我们希望找到能够将每个生成的演示轨迹 \xi=(s_0,a_0,s_1,\ldots,s_T) 的对数似然最大化的 \theta\in\Theta 。挑战在于这个对数似然依赖于该随机过程中的隐含变量,选项以及终止指标 \zeta = (b_0,h_0,b_1,h_1,\ldots,h_{T-1}) 。DDCO(连续选项的深度发现)算法使用期望——渐变算法来优化该目标函数:

\nabla_\theta L[\theta;\xi] = \mathbb{E}_\theta[\nabla_\theta \log \mathbb{P}_\theta(\zeta,\xi) | \xi],

其中 \mathbb{P}_\theta(\zeta,\xi) 是潜变量和可观变量的联合概率,由下式给出:

\mathbb{P}_\theta(\zeta,\xi) = p_0(s_0) \delta_{b_0=1}\eta(h_0 | s_0) \prod_{t=1}^{T-1} \mathbb{P}_\theta(b_t, h_t | h_{t-1}, s_t) \prod_{t=0}^{T-1} \pi_{h_t}(a_t | s_t) p(s_{t+1} |s_t, a_t) ,

其中在隐含过渡 \mathbb{P}_\theta(b_t, h_t | h_{t-1}, s_t) 中,我们以概率 \psi_{h_{t-1}}(s_t) 使 b_t=1h_t\eta(\cdot|s_t) 获得,或者以概率1-\psi_{h_{t-1}}(s_t) 使得 b_t=0h_t 保持不变,即

\begin{align} \mathbb{P}_\theta(b_t {=} 1, h_t | h_{t-1}, s_t) &= \psi_{h_{t-1}}(s_t) \eta(h_t | s_t) \\ \mathbb{P}_\theta(b_t {=} 0, h_t | h_{t-1}, s_t) &= (1 - \psi_{h_{t-1}}(s_t)) \delta_{h_t = h_{t-1}}. \end{align} %]]

对数似然梯度可以分两步计算,即使用类似于Baum-Welch的前向后向算法来计算边界后验的E步骤:

u_t(h) = \mathbb{P}_\theta(h_t {=} h | \xi); \quad v_t(h) = \mathbb{P}_\theta(b_t {=} 1, h_t {=} h | \xi); \quad w_t(h) = \mathbb{P}_\theta(h_t {=} h, b_{t+1} {=} 0 | \xi)

和G步骤:

\begin{align} \nabla_\theta L[\theta;\xi] &= \sum_{h\in\mathcal{H}} \Biggl( \sum_{t=0}^{T-1} \Biggl(v_t(h) \nabla_\theta \log \eta(h | s_t) + u_t(h)\nabla_\theta \log \pi_h(a_t | s_t)\Biggr) \\ & + \sum_{t=0}^{T-2} \Biggl((u_t(h)-w_t(h)) \nabla_\theta \log \psi_h(s_{t+1}) + w_t(h) \nabla_\theta \log (1 - \psi_h(s_{t+1})) \Biggr)\Biggr). \end{align}

上面计算出的梯度接下来就可以用在任何随机梯度下降算法上。在我们的实验中,我们使用Adam和Momentum。

我们在手术机器人任务的模仿学习环境中评估了DDCO(连续选项的深度发现)算法。在一个任务中,给机器人提供一个泡沫仓以及一堆5-8个来自于三种不同类型的针状物,每个针状物的直径为1-3毫米。机器人必须找出特定类型的针状物,并将其放入标记为“accept”的杯子中,同时将所有其他针状物放入标记为“reject”的杯中。如果整个泡沫仓中的针状物被清理到正确的杯子里,则任务取得成功。为了定义这个任务的状态空间,我们首先从立体俯视图获取二进制图像,并应用基于颜色的分割方法来识别针状物(“图像”输入)。然后,我们使用在40个人工标记的图像上预先训练好的分类器,来识别并提供由在图像空间中的位置和方向所确定的候选抓取点(“抓取”输入)。另外,也观察了6个DoF(自由度)机械手的姿态和机械手手爪的开闭状态(“运动学”输入)。机器人的状态空间是(“图像”,“抓取”,“运动学”),控制空间是6个铰接的角度和抓取角度。

在手术机器人上进行针状物拾取和放置任务。

在10次试验中,7次获得了成功。主要失败模式是抓取错误,即没有拾取针状物或者拾取了多个针状物。由于这对针状物随着清理逐渐变得稀疏,机器人的抓取策略变得有些脆弱。在99次抓取的成功率为66%。相比之下,我们很少在该任务的其他方面观察到失败,去除掉34次抓取错误后,成功率则恢复到了97%。

学习出的选项可以在直观的任务边界上进行解释。对于4个选项中的每个选项,我们绘制了在计算该选项的动作时,不同输入(“图像”,“抓取”,“运动学”)的权重。将ReLU单元的非零值标记为白色,以指示输入相关性:

我们绘制了每个选项中特征层的平均激活情况,暗示了输入(图像,抓取角度或运动学)与策略和终止的相关性

我们发现这些显然是特定的选项。第一个选项只对候选抓取有很强的相关,第二个选项几乎是专门处理

图像的,而后两个选项主要是依赖于运动学特征和抓取特征的。

结论

总之,从演示中学习序贯任务的结构在机器人技术中有很多应用,比如手术子任务的自动化。该技术可以通过(将长时序贯任务的学习)分割成任务结构的学习来简化。我们展望几种未来工作的途径:(1)对旋转几何与配置空间能进行更好建模的表示;(2)综合考虑参数化基元与从解析公式中所导出基元的混合方案;(3)考虑时间分割的同时,也考虑状态空间分割。

参考文献

(关于这些论文的链接,请参阅Sanjay KrishnanKen Goldberg的主页。)

Sanjay Krishnan*, Roy Fox*, Ion Stoica, Ken Goldberg. DDCO: Discovery of Deep Continuous Options for Robot Learning from Demonstrations. Conference on Robot Learning (CoRL). 2017.

Sanjay Krishnan, Animesh Garg, Richard Liaw, Brijen Thananjeyan, Lauren Miller, Florian T. Pokorny, Ken Goldberg. SWIRL: A Sequential Windowed Inverse Reinforcement Learning Algorithm for Robot Tasks With Delayed Rewards. Workshop on Algorithmic Foundations of Robotics (WAFR) 2016.

Sanjay Krishnan*, Animesh Garg*, Sachin Patil, Colin Lea, Gregory Hager, Pieter Abbeel, Ken Goldberg. Transition State Clustering: Unsupervised Surgical Task Segmentation For Robot Learning. International Symposium on Robotics Research (ISRR). 2015.

Adithyavairavan Murali*, Siddarth Sen*, Ben Kehoe, Animesh Garg, Seth McFarland, Sachin Patil, W. Douglas Boyd, Susan Lim, Pieter Abbeel, Ken Goldberg. Learning by Observation for Surgical Subtasks: Multilateral Cutting of 3D Viscoelastic and 2D Orthotropic Tissue Phantoms. International Conference on Robotics and Automation (ICRA). May 2015.

外部参考文献

Richard Sutton. Temporal credit assignment in reinforcement learning. 1984.

Richard Sutton, Doina Precup, and Satinder Singh. Between MDPs and semi-MDPs: A framework for temporal abstraction in reinforcement learning. Artificial intelligence. 1999.

Lerrel Pinto, and Abhinav Gupta. Supersizing self-supervision: Learning to grasp from 50k tries and 700 robot hours. International Conference on Robotics and Automation (ICRA). 2016.

Sergey Levine, Peter Pastor, Alex Krizhevsky, Julian Ibarz, Deirdre Quillen. Learning Hand-Eye Coordination for Robotic Grasping with Deep Learning and Large-Scale Data Collection (International Journal of Robotics Research). 2017.

Sergey Levine*, Chelsea Finn*, Trevor Darrell, and Pieter Abbeel. End-to-end training of deep visuomotor policies. Journal of Machine Learning Research (JMLR). 2016.

本文的版权归 DeepValley 所有,如需转载请联系作者。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器学习算法工程师

机器学习论文笔记—如何利用高效的搜索算法来搜索网络的拓扑结构

分层表示高效的架构搜索(HIERARCHICAL REPRESENTATIONS FOR EFFICIENT ARCHITECTURE SEARCH)这篇文章讲...

1762
来自专栏机器之心

自然语言处理全家福:纵览当前NLP中的任务、数据、模型与论文

组合范畴语法(CCG; Steedman, 2000)是一种高度词汇化的形式主义。Clark 和 Curran 2007 年提出的标准解析模型使用了超过 400...

2072
来自专栏专知

【干货】首次使用分层强化学习框架进行视频描述生成,王威廉组最新工作

【导读】加州大学-圣塔芭芭拉计算王威廉组最新工作Video Captioning via Hierarchical Reinforcement Learning...

8054
来自专栏媒矿工厂

HDR关键技术:HEVC/H.265编码方案

前文我们对HEVC的HDR编码优化技术做了介绍,侧重编码性能的提升。本章主要阐述HEVC中HDR/WCG相关的整体编码方案,包括不同应用场景下的HEVC扩展编码...

6310
来自专栏Python中文社区

Python机器学习工具:Scikit-Learn介绍与实践

Scikit-learn 简介 官方的解释很简单: Machine Learning in Python, 用python来玩机器学习。 什么是机器学习 机...

2147
来自专栏数据结构与算法

中国剩余定理详解

引入 我国古代数学著作《孙子算经》中有一道题目,它的描述是这样的 今有物不知其数,三三数之余二;五五数之余三;七七数之余二。问物几何? 这道题用现代数学理...

38311
来自专栏新智元

解决3D重建难题,伯克利大学根据单张平面彩图重建高精度3D结构

【新智元导读】3D重建是计算机视觉中的一个核心问题,应用于电影制作、视频游戏的内容制作、虚拟现实和增强现实、3D打印,等等。伯克利大学的研究团队提出根据单张彩色...

3486
来自专栏本立2道生

伪随机数生成算法

伪随机数生成算法在计算机科学领域应用广泛,比如枪击游戏里子弹命中扰动、数据科学里对样本进行随机采样、密码设计、仿真领域等等,背后都会用到伪随机数生成算法。

3402
来自专栏AI研习社

TOP 5% Kaggler:如何在 Kaggle 首战中进入前 10% | 干货

编者按:本文作者章凌豪,复旦大学计算机科学专业。有兴趣的同学可以移步他的个人主页:https://dnc1994.com/Introduction(点击文末“阅...

3866
来自专栏机器之心

计算语言顶会ACL 2018最佳论文公布!这些大学与研究员榜上有名

1. Finding syntax in human encephalography with beam search(尚未公开)

1290

扫码关注云+社区

领取腾讯云代金券