demi的博客

游戏开发中的渲染加速算法总结(二)

裁剪(Culling)的字面意思是“从大量事物中进行删除”。在计算机图形学中,相对应的就是裁剪技术所要做的工作——“从大量游戏事物中进行删除”。所谓的“大量事物”就是需要绘制的整个场景,删除的是对最终图像没有贡献的场景部分,然后将剩余场景发送到渲染管线。

学习机器学习的最佳路径是什么?

机器学习即 ML,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

彩色图像、灰度图像、二值图像和索引图像有啥区别?

彩色图像,每个像素通常是由红(R)、绿(G)、蓝(B)三个分量来表示的,分量介于(0,255)。灰度图像在黑色与白色之间还有许多级的颜色深度。二值图像的二维矩阵仅由0、1两个值构成,“0”代表黑色,“1”代白色。索引图像的文件结构比较复杂,除了存放图像的二维矩阵外,还包括一个称之为颜色索引矩阵MAP的二维数组。

强化学习(三)用动态规划(DP)求解

强化学习(二)马尔科夫决策过程(MDP)中,我们讨论了用马尔科夫假设来简化强化学习模型的复杂度,这一篇我们在马尔科夫假设和贝尔曼方程的基础上讨论使用动态规划(Dynamic Programming, DP)来求解强化学习的问题。

动态规划这一篇对应Sutton书的第四章和UCL强化学习课程的第三讲。

1. 动态规划和强化学习问题的联系

对于动态规划,相信大家都很熟悉,很多使用算法的地方都会用到。就算是机器学习相关的算法,使用动态规划的也很多。

动态规划的关键点有两个:一是问题的最优解可以由若干小问题的最优解构成,即通过寻找子问题的最优解来得到问题的最优解。第二是可以找到子问题状态之间的递推关系,通过较小的子问题状态递推出较大的子问题的状态。而强化学习的问题恰好是满足这两个条件的。

我们先看看强化学习的两个基本问题。

深度学习 - 解决局部最优点问题的方案

一般的梯度下降方法寻找的是loss function的局部极小值,而我们想要全局最小值。如下误差曲面图所示,我们希望loss值可以降低到右侧深蓝色的最低点,但loss有可能“卡”在左侧的局部极小值中,也就是图中红线所走的路径。

Ray Tracing光线追踪对Unity开发者的意义

经典的“铁三角”定律决定了每个项目都有三大目标:快速、低成本和优质效果,客户往往需要从中决定优先考虑实现的二个目标。Unity的光线追踪功能通过使用广泛运用且相对低廉的计算硬件,在实时渲染中实现极为逼真的可视化效果,打破了这个铁三角定律,这种组合效果展现了我们的关键突破。