• LQR与汽车横向动力学

    = 278

    本文出自:【InTheWorld的博客】 (欢迎留言、交流)

    LQR (linear quadratic regulator)即线性二次型调节器,这是一个非常常见的控制学科名词。以前学习《现代控制理论》的时候就有接触了,但由于最优控制这部分东西没有作为重点,所以没太掌握。但是自己心里知道《最优控制》是非常重要的,前面看强化学习Model Base部分的时候也同时买了本胡寿松版的《最优控制》。

    从个人的学习过程来看,LQR还是挺多种情况的。不少人(甚至是一些书籍的作者)都没把LQR的各种情况搞清楚。首先,LQR有离散形式和连续形式。一般来说教科书上讲连续形式的较多,学过现代控制理论的同学大概[……]

    Read more

  • ROS之激光雷达

    = 92

    激光雷达已经成为机器人标配了,ROS作为通用机器人系统也支持激光雷达数据。激光雷达产生的数据类型是sensor_msgs/LaserScan或sensor_msgs/PointCloud,或者是新的sensor_msgs/PointCloud2。对于我手头的这台Turtlebot3而言,LDS设备的数据类型是sensor_msgs/LaserScan。ROS中的传感器数据非常多,但是这些数据流常常需要同步,所以ROS定义了一个通用的数据头,各种数据都会带上这个header。

    ROS header的数据结构

    类型Header包括多个字段。字段seq对应一个标识符,随着消息被发布,它会自动增加[……]

    Read more

  • 强化学习之Policy Gradient笔记

    = 573

    本文出自:【InTheWorld的博客】 (欢迎留言、交流)

    Policy Gradient方法是强化学习中非常重要的方法。不同于基于最优价值的算法,Policy Gradient算法更着眼于算法的长期回报。策略梯度根据目标函数的梯度方向去寻找最优策略。策略梯度算法中,整个回合结束之后才会进行学习,所以策略梯度算法对全局过程有更好的把握。DeepMind的David Silver在深度学习讲座中这样评价基于策略的方法:
    Policy Based强化学习方法优点:
    – 收敛性好
    – 在高维和连续问题中比较有效
    – 能学习随机策略

    其缺点有:
    – 容易陷入局部最优
    – 评价一个策略比较低效[……]

    Read more

  • 强化学习之DQN笔记

    = 579

    之前的一次机器学习会议中,LeCun表示强化学习或者弱监督学习会是机器学习最重要的发展方向。相比于强监督学习,强化学习更符合人类的学习过程。AlphaGo已经向人类展示出了强化学习的强大,之前看OpenAI机器人和职业玩家solo Dota2游戏,AI的游戏水平强大到令人吃惊。

    Q-learning是一种比较常见的强化学习方法,其实现方式是通过一个表(Q-Table)存放状态S和行动A的reward。然而,Q-Table是有缺陷的,对于状态空间巨大的问题就显得无能为力了。为了解决这类问题,有人提出了使用深度神经网络来实现Q函数,这种方法就是deep QNetwork。使用DNN来表示Q函数与[……]

    Read more

  • 简单分析ARCore和SceneForm

    = 521

    本文出自:【InTheWorld的博客】 (欢迎留言、交流)

    arcore-hero-800x498

    从ARCore去年下半年发布到现在已经半年有余了。之前其实一直有点手痒,想玩玩AR应用开发。之前有参考一本书,玩过一个简单的基于OpenCV和OpenGL的AR应用,但的确太简陋了。然而之前ARCore只支持Pixel之类的亲儿子手机,所以一直没有机会把玩一下。前两周偶然发现mix2s已经支持ARCore了,所以就乘放假的机会玩玩demo,分析一下ARCore的应用开发。

    ARCore支持Java, C, Unity以及Unreal这几种开发方式。在最近的Java SDK中新增了SceneForm api来支持渲染。这确实是[……]

    Read more

  • 关于Fuchsia OS的一些思考

    = 1127

    fuchsia

    去年年中的时候,就听说了Fuchsia。不过当时也没特别关注,毕竟Google对OS的执念很重,一不开心就启动一个新的OS项目。这几天官方公布了Fuchsia的一部分文档,这个文档目前还不太全面,不过也能粗略了解一下Fuchsia吧!限于个人水平有限,博文不免会有错误,还望多多指教。

    一、“瞎掰向”分析

    对于顶级IT公司来说,“操作系统”一直是一个独特的东西。从正面看,操作系统意味着生态系统、用户粘性。所以OS成就了很多公司,Solaris之于Sun,Windows之于微软。然而成功背后总有很多失败,而做OS的风险非常之大,强如微软和Facebook,都在移动操作系统领域一败涂地。[……]

    Read more

  • 使用MFCC和RNN的简单语音识别

    = 2314

    本文出自:【InTheWorld的博客】 (欢迎留言、交流)

    去年研究了一段时间的语音识别,出于一些功耗的考虑,主要精力还是放在了Spinx这个传统方法的实现上。HMM方法的局限性还是挺明显的,如今语音识别的先进技术基本都是基于DNN的。而RNN更是非常适合语音这种序列的处理。前面在github上偶然发现了一个语音识别的学习项目,里面提供了一些标定过的语音数据,同时也实现了一些demo性质的代码。不过,这个项目作者对TensorFlow进行了一些封装,导致代码有一点绕,其实是不利于初学者学习的。所以,我就想使用原生的TensorFlow api实现个简单的语音识别程序。

    说实话,我对RNN[……]

    Read more

  • Hadoop的RPC设计分析

    = 837

    本文出自:【InTheWorld的博客】 (欢迎留言、交流)

    之前鼓捣Hbase的时候,觉得单机和伪分布式模式太low了,就在笔记本上用三个虚拟机搭建了一个“完全分布式”的Hbase环境(心疼破本子一秒钟)。刚好趁这个元旦假期,我就研究了一下Hadoop。

    Hadoop也算是个巨无霸了,涉及了很多方面的功能。个人工作中有多个RPC client管理以及交互的场景,一直觉得设计的不太好。所以心里一直想研究一下优秀项目的多路RPC是如何实现的,然后计划一直搁置到现在。难得小假期,就拿手上的Hadoop开刀吧!

    1. 宏观背景

    hadoop-hdfs-architecture

    Hadoop的RPC确实挺复杂的,就单单以HDFS为例,cl[……]

    Read more

  • Raft算法实现之状态存储——基于etcd

    = 1420

    本文出自:【InTheWorld的博客】 (欢迎留言、交流)

    Paxos算法也许是最著名的分布式一致性算法,而Raft则大概是最流行的分布式一致性算法。由于经验和水平所限,单纯看论文感觉并不能达到更进一步的理解。前面听闻Kubernetes, Docker Swarm,  CockroachDB等等牛逼的项目都在用Raft。毕竟是经过大规模生产环境考验的技术,我觉得很有必要学习一下。而且etcd的Raft实现是开源的,毕竟“源码之前,了无秘密”。

    image

    无论是Paxos还是Raft,它们都是致力于维护一个RSM(Replicated State Machine),如上图所示。对于R[……]

    Read more

  • word2vec学习笔记——CS224n

    = 1538

    CS224n是斯坦福大学的一门关于自然语言处理的公开课。课程的第二讲的主要内容就是word2vec。word2vec是Google在2013年发布的一门自然语言处理技术。

    词向量一般有两种形式,一种叫做One-hot表示,另外一种叫做Distributed Representation。word2vec就属于第二类。word2vec这种词向量表示方法,可以通过计算欧式距离等来判断它们之间的相似度。word2vec本质上属于一种神经网络语言模型范畴的技术,这一点和n-gram、决策树等等这些统计语言模型还是有不少区别的。

    1. Log-Linear模型

    Log-linear模型算是word[……]

    Read more

第 1 页,共 9 页12345...最旧 »