算法应用
1. 请你说说你对目前比较前沿的技术看法
技术发展日新月异,每年各大顶会上都有大量论文发表,arxiv 上也每天更新海量的文章。对于咱们做研发的同学来说,有必要紧跟学术热点,了解前沿动态。
我读书的时候,每天都会花大半天的时间阅读最新论文,碰到跟自己研究很相关的文章,也会通过跑代码,debug 来熟悉作者的实现细节,这种方式也能很大程度提高编程能力。
但是也不是所有新文章都好,深度学习领域每天发表那么多论文,但经过时间检验,被学术界、工业届验证过的文章也是屈指可数,对于这些技术,我们更应该重点把握。
2. 请你说说对自动驾驶领域的理解
概念:自动驾驶是指车辆通过传感器感知周围环境,在没有人为干预的情况下,实时改变驾驶行为,完成驾驶任务。自动驾驶能够减少交通事故的发生,提高道路交通资源的使用率,因此对于该领域的研究有非常重要的意义。
技术分类:现有的自动驾驶技术主要分为三种,分别是间接感知型方法、直接感知型方法和端到端控制方法。间接感知型将驾驶任务分为多项子任务,分别作为计算机视觉的标准任务进行计算,随后将计算结果进行转换和整合作为决策的输入;直接感知型需要人工设计与自动驾驶相关的关键指标,随后从图像中直接学习这些关键指标,作为决策的输入;端到端控制也称为表现反射型,该方法不进行任务拆分,直接从图像中学习转向角等决策信息。
面临的挑战:
(1)现有方法对未知场景的泛化能力,许多深度学习和计算机视觉算法基于监督学习和大规模样本训练,但是自动驾驶汽车在实际行驶过程中遇到的场景往往不在训练样本库中。因此需要算法在未知场景有良好的泛化能力,能够应对未知的场景。
(2)现有方法的风险和控制问题,自动驾驶系统出现错误的代价是昂贵的,涉及到乘客的生命财产安全,目前计算机视觉算法在各项数据集测试中仍有一定的错误率。
(3)现有方法的稳定性和扩展性问题,常见的自动驾驶结构中,间接感知型结构,往往组合了目标检测和跟踪、场景分割、三维重建等多个模块,系统复杂度较高,需要大量的计算资源,投入商用的成本较高。
头部公司状态:
(1)特斯拉,该公司产品目前并没有实现完全自动驾驶,其搭载的自动驾驶系统准确的说是驾驶辅助系统,SAE标准将自动驾驶技术分为0-5六个级别,特斯拉的autopilot辅助驾驶技术属于L2技术,可控制车的速度,实现自动转向、变道,但是仍要驾驶员时刻注意。
(2)百度apollo,该公司目前在北京开放了无人驾驶出租车服务,通过百度地图或者Apollo APP就可以免费体验,根据官方统计信息,无人出租车开放一周后,高峰单日订单达到近3000单。
(3)Momenta,该公司今年完成了5亿美元的C轮融资,印证了自动驾驶领域的发展还是被投资者所看好,momenta基于深度学习的环境感知、高精度地图和路径规划算法等提供L3-L4高阶段的自动驾驶技术,包括实时车道检测、可行驶区域检测等。
发展前景展望:当前,智能自动驾驶汽车的发展空间越来越大,且随着该类汽车的渗透,未来汽车市场中无人驾驶汽车的比例还会持续增加,在该领域突破技术瓶颈之后,必然会取代更多的封闭路网地区,无人化港口、货场也将成为主流趋势,景区摆渡车辆将以无人驾驶为最终形态,为游客带来更新颖的体验。
3. 给你一个产品,作为一个算法工程师,你会做些什么让产品更好
(1)从业务目标来看
不同时期项目的业务目标有一定的差异,以feed流举例,初期可能更多的考虑信息流的点击率,而后续可能会考虑浏览时长、浏览深度等,这个需要和业务运营进行紧密的合作,业务发展阶段和业务思考能够使得算法工程师发掘特定目标下进行算法层面的迭代更新思路和方法。
(2)从技术层面来看
对于产品来说,初期考虑迭代效率简单,线性模型也可以做到快速上线,而在某一时期特定的业务目标下,会逐渐地从特征发掘和模型结构来进行迭代优化产品,这一时期、算法工程在产品的优化上占据了更多的主导权,通过预设定的kpi目标,算法工程师藉由专业特性,不断探索和迭代实现产品目标。
(3)从业务形态来看
即使对于同一个产品项目,也会需要有不同的业务场景和形态分离,那么就会产生新的产品形式,这个时候特定的算法领域的工作内容就需要算法工程师入场,进行优化和改进,促进产品质量提升和提高交付效率。
(4)从合作方式来看
以算法工程师和产品团队人员的合作沟通来说,产品同学往往对于机器学习中模型训练、模型评估以及算法工程师的工作模式了解不够深入,导致提出的需求容易出现偏差。那么这个时候,算法工程师可以用更加通俗易懂的方式和产品同学沟通,将晦涩的概念描述清晰,这样在对接产品需求的时候可以起到事半功倍的效果。