自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

新东方挖掘机三本技校

爱好参加各种kaggle天池等竞赛

原创 程序员面试——C++工程师面试大全第一部分

1.static 关键字的作用 1. 全局静态变量 在全局变量前加上关键字 static,全局变量就定义成一个全局静态变量. 静态存储区,在整个程序运行期间一直存在. 初始化:未经初始化的全局静态变量会被自动初始化为 0(自动对象的值是任意的,除非他 被显式初始化); 作用域:全局静态变...

2020-02-24 13:41:40 233 0

原创 福利网站!程序员面试——算法工程师面试大全第一部分
原力计划

1.SGD,Momentum,Adagard,Adam 原理 SGD 为随机梯度下降,每一次迭代计算数据集的 mini-batch 的梯度,然后对参数进行跟新. Momentum 参考了物理中动量的概念,前几次的梯度也会参与到当前的计算中,但是前几轮的 梯度叠加在当前计算中会有一定的衰减. ...

2020-02-24 11:34:06 244 0

原创 通俗易懂!视觉slam第一部分——slam简介与相机介绍

首先是定义: SLAM 是 Simultaneous Localization and Mapping 的缩写,中文译作“同时定位与地图构建”。它是指搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自己的运动 。如果这里的传感器主要为相机,那就称为 “视觉 ...

2020-02-20 08:57:14 305 0

原创 python深度学习第一讲——用python写神经网络

神经网络输入层到第一层的传递,也就是wx+b 用矩阵的形式写出 def sigmoid(x): return 1 / (1+np.exp((-x))) def identity_function(x): return x def init_network(): ...

2020-02-13 16:53:47 589 0

原创 Python实战从入门到精通第十讲——字符串与文本4之字符串搜索和替换

在字符串中搜索和匹配指定的文本模式 对于简单的字面模式,直接使用str.replace()方法即可,比如: >>> text = 'yeah, but no, but yeah, but no, but yeah' >>> text.r...

2020-02-07 16:46:32 409 0

原创 Pytorch实战从入门到精通第一部分——手写字符识别全流程

下面是用MNIST手写字符数据从数据loader到全连接网络设计、模型训练、模型测试、模型存储的全过程完整代码,仔细品味可供学习使用。 import torch import torch.nn as nn import torchvision import torchvision.transf...

2020-02-28 13:59:46 120 0

原创 面试题50. 第一个只出现一次的字符

在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 示例: s = "abaccdeff" 返回 "b" s = "" 返回 " " 可以活用python字典。 class Solu...

2020-02-25 17:23:10 81 1

原创 leetcode4. 寻找两个有序数组的中位数

给定两个大小为 m 和 n 的有序数组nums1 和nums2。 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为O(log(m + n))。 你可以假设nums1和nums2不会同时为空。 示例 1: nums1 = [1, 3] nums2 = [2] 则中位数是 2.0 ...

2020-02-25 15:16:14 73 0

原创 leetcode3. 无重复字符的最长子串

给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。 示例1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解...

2020-02-25 14:48:04 60 0

原创 重磅福利!程序员面试——算法工程师面试大全第六部分
原力计划

1.什么是 seq2seq model? Seq2seq 属于 encoder-decoder 结构的一种,利用两个 RNN,一个作为 encoder 一个作为 decoder.Encoder 负责将输入序列压缩成指定长度的向量,这个向量可以看作这段序列的语义, 而 decoder 负责根据语义...

2020-02-25 12:39:13 116 0

原创 重磅福利!程序员面试——算法工程师面试大全第五部分
原力计划

1.Batch Normalization 的作用 神经网络在训练的时候随着网络层数的加深,激活函数的输入值的整体分布逐渐往激活函数 的取值区间上下限靠近,从而导致在反向传播时低层的神经网络的梯度消失.而 Batch Normalization 的作用是通过规范化的手段,将越来越偏的分布拉回到标...

2020-02-25 11:48:12 142 0

原创 福利网站!程序员面试——算法工程师面试大全第四部分

1.xgboost 的特征重要性计算 Xgboost 根据结构分数的增益情况计算出来选择哪个特征作为分割点,而某个特征的重要性 就是它在所有树中出现的次数之和. 2.xgboost 特征并行化怎么做的 决策树的学习最耗时的一个步骤就是对特征值进行排序,在进行节点分裂时需要计算每个特 征的...

2020-02-25 09:17:13 199 0

原创 福利网站!程序员面试——算法工程师面试大全第三部分

1.L1 和 L2 正则化的区别 L1 是模型各个参数的绝对值之和,L2 为各个参数平方和的开方值.L1 更趋向于产生少量的特征,其它特征为 0,最优的参数值很大概率出现在坐标轴上,从而导致产生稀疏的权重矩阵,而 L2 会选择更多的矩阵,但是这些矩阵趋向于 0. 2.Loss Functi...

2020-02-25 08:25:27 178 0

原创 面试必备资源!程序员面试——算法工程师面试大全第二部分

1.逻辑回归怎么实现多分类 方式一:修改逻辑回归的损失函数,使用 softmax 函数构造模型解决多分类问题,softmax 分 类模型会有相同于类别数的输出,输出的值为对于样本属于各个类别的概率,最后对于样本进行 预测的类型为概率值最高的那个类别. 方式二:根据每个类别都建立一个二分类器,本...

2020-02-24 22:30:10 129 0

原创 通俗易懂!视觉slam第十一部分——线性系统和卡尔曼滤波

首先来看滤波器模型。当我们假设了马尔可夫性,从数学角度会发生哪些变化呢?首先,当前时刻状态只和上一个时刻有关,上部分等式右侧第一部分可进一步简化: 这里,由于 k 时刻状态与 k − 1 之前的无关,所以就简化成只与和有关的形式,与 k 时刻的运动方程对应。第二部分可简化为: 这是考虑...

2020-02-22 08:50:34 259 0

原创 通俗易懂!视觉slam第十部分——贝叶斯估计

SLAM 过程可以由运动方程和观测方程来描述。那么,假设在 t = 0 到t = N 的时间内,我们有 到那么多个位姿,并且有 那么多个路标。按照之前的写法,运动和观测方程为: 每个方程都受噪声影响,所以要把这里的位姿 x 和路标 y 看成服从某种概率分布的随机变量,而不是单独的一个数。因...

2020-02-21 21:12:55 211 0

原创 通俗易懂!视觉slam第九部分——光流(Optical Flow)

光流是一种描述像素随着时间,在图像之间运动的方法,如图所示。随着时间的经过,同一个像素会在图像中运动,而我们希望追踪它的运动过程。计算部分像素运动的称为稀疏光流,计算所有像素的称为稠密光流。稀疏光流以 Lucas-Kanade 光流为代表,并可以在 SLAM 中用于跟踪特征点位置。主要介绍 Luc...

2020-02-21 14:58:43 320 0

原创 通俗易懂!视觉slam第八部分——李群,李代数

在 SLAM 中,除了表示之外,我们还要对它们进行估计和优化。因为在 SLAM 中位姿是未知的,而我们需要解决什么样的相机位姿最符合当前观测数据这样的问题。一种典型的方式是把它构建成一个优化问题,求解最优的 R,t,使得误差最小化。如前所言,旋转矩阵自身是带有约束的(正交且行列式为 1)。它们作为...

2020-02-20 21:21:11 217 0

原创 通俗易懂!视觉slam第七部分——四元数

旋转矩阵用九个量描述三自由度的旋转,具有冗余性;欧拉角和旋转向量是紧凑的,但具有奇异性。事实上,我们找不到不带奇异性的三维向量描述方式 [19]。这有点类似于,当我们想用两个坐标表示地球表面时(如经度和纬度),必定存在奇异性(纬度为 ±90 ◦ 时经度无意义)。三维旋转是一个三维流形,想要无奇异性...

2020-02-20 15:46:03 213 0

原创 通俗易懂!视觉slam第六部分——旋转向量,欧拉角

矩阵表示方式还有很多缺点: 1.SO(3) 的旋转矩阵有九个量,但一次旋转只有三个自由度。因此这种表达方式是冗余的。同理,变换矩阵用十六个量表达了六自由度的变换。 2.旋转矩阵自身带有约束:它必须是个正交矩阵,且行列式为 1。变换矩阵也是如此。当我们想要估计或优化一个旋转矩阵/变换矩阵时,这些...

2020-02-20 14:21:12 402 0

原创 通俗易懂!视觉slam第五部分——slam数学表示二

假设我们进行了两次变换:, 和 , ,满足: 但是从 a 到 c 的变换为: 这样的形式在变换多次之后会过于复杂。因此,我们要引入齐次坐标和变换矩阵重写: 这是一个数学技巧:我们把一个三维向量的末尾添加 1,变成了四维向量,称为齐次坐标。对于这个四维向量,我们可以把旋转和平移写在...

2020-02-20 13:06:24 194 0

原创 通俗易懂!视觉slam第四部分——slam刚体三维空间运动

日常生活的空间是三维的,因此我们生来就习惯于三维空间的运动。三维空间由三个轴组成,所以一个空间点的位置可以由三个坐标指定。不过,我们现在要考虑刚体,它不光有位置,还有自身的姿态。相机也可以看成三维空间的刚体,于是位置是指相机在空 间中的哪个地方,而姿态则是指相机的朝向。结合起来,我们可以说,“相机...

2020-02-20 11:09:28 110 0

原创 通俗易懂!视觉slam第三部分——slam数学表示

用数学语言来描述 SLAM 过程。我们会用到一些变量和公式。 小车正携带着某种传感器在未知环境里运动,怎么用数学语言描述这件事呢? 首先,由于相机通常是在某些时刻采集数据的,所以我们也只关心这些时刻的位置和地图。这就把一段连续时间的运动变成了离散时刻 t = 1,...,K 当中发生的事情。在这...

2020-02-20 10:49:37 172 0

原创 通俗易懂!视觉slam第二部分——salm过程简介

视觉里程计 视觉里程计关心相邻图像之间的相机运动,为了定量地估计相机运动,必须在了解相机与空间点的几何关系之后进行。VO 能够通过相邻帧间的图像估计相机运动,并恢复场景的空间结构。叫它为“里程计”是因为它和实际的里程计一样,只计算相邻时刻的运动,而和再往前的过去的信息没有关联。 假定已有了一个...

2020-02-20 09:48:03 287 0

原创 视觉slam第一讲——

slam课程学习:

2020-02-17 15:00:00 129 0

原创 python深度学习第四讲——python神经网络参数更新

神经网络的学习的目的是找到使损失函数的值尽可能小的参数。这是寻找最优参数的问题,解决这个问题的过程称为最优化(optimization)。遗憾的是,神经网络的最优化问题非常难。这是因为参数空间非常复杂,无法轻易找到最优解(无法使用那种通过解数学式一下子就求得最小值的方法)。而且,在深度神经网络中,...

2020-02-14 08:43:18 164 0

原创 python深度学习第三讲——用python写神经网络梯度下降(手写字符识别mnist)

机器学习使用训练数据进行学习。使用训练数据进行学习,严格来说,就是针对训练数据计算损失函数的值,找出使该值尽可能小的参数。因此,计算损失函数时必须将所有的训练数据作为对象。也就是说,如果训练数据有100个的话,我们就要把这100个损失函数的总和作为学习的指标。 果要求所有训练数据的损失函数的总和...

2020-02-13 18:21:01 893 0

原创 python深度学习第二讲——用python写深度学习损失函数

1.可以用作损失函数的有均方误差: 这里,yk 是表示神经网络的输出,tk 表示监督数据,k表示数据的维数。 将正确解标签表示为1,其他标签表示为0的表示方法称为one-hot表示。 均方误差会计算神经网络的输出和正确解监督数据的各个元素之差的平方,再求总和。现在,我们用Python来实...

2020-02-13 18:01:48 450 0

原创 Python入门到精通三天速成第三讲——多重继承

前一讲,你肯定注意到了一个有点奇怪的细节:复数形式的 __bases__ 。前面说过,你可使用它来获悉类的基类,而基类可能有多个。为说明如何继承多个类,下面来创建几个类。 class Calculator: def calculate(self, expression): ...

2020-02-08 22:32:44 170 0

原创 Python入门到精通三天速成第二讲——类与继承

子类扩展了超类(父类)的定义。要指定超类,可在 class 语句中的类名后加上超类名,并将其用圆括号括起。 class Filter: def init(self): self.blocked = [] def filter(self, sequence): ...

2020-02-08 13:35:31 214 0

原创 Python入门到精通三天速成第一讲——创建自定义类

class Person: def set_name(self, name): self.name = name def get_name(self): return self.name def greet(self): ...

2020-02-08 13:09:46 234 0

原创 Python实战从入门到精通第二十一讲——构建一个模块的层级包

想将你的代码组织成由很多分层模块构成的包。 封装成包是很简单的。在文件系统上组织你的代码,并确保每个目录都定义了一个__init__.py文件。 例如: graphics/ __init__.py primitive/ __init__.py ...

2020-02-08 11:24:05 97 0

原创 Python实战从入门到精通第二十讲——调用父类方法

在子类中调用父类的某个已经被覆盖的方法。 为了调用父类(超类)的一个方法,可以使用super()函数,比如: class A: def spam(self): print('A.spam') class B(A): def spam(se...

2020-02-08 11:01:11 83 0

转载 万里挑一!不看后悔!必须收藏!必备的工具网站与学习资源网站

一、PDF搜索网站推荐 对于大部分程序员来说,电子书的需求量还是很大的,介绍几个不错的免费搜电子书的网站吧。 1、鸠摩搜书 这个网址可以用来搜索一些pdf的书,有了这个网址,就不用百度全网搜索pdf的书了。虽然可能没有像百度全网搜索那么全,但大部分也都有了。注意每种搜索结果的来源,有些来源是百...

2020-02-08 10:50:04 326 0

转载 必须收藏!130 个相见恨晚的超实用网站,一次性分享出来

搞学习 知乎:www.zhihu.com 大学资源网:http://www.dxzy163.com/ 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC...

2020-02-08 10:48:43 2229 1

原创 Python实战从入门到精通第十九讲——自定义字符串的格式化

通过format()函数和字符串方法使得一个对象能支持自定义的格式化。 为了自定义字符串的格式化,我们需要在类上面定义__format__()方法。例如: _formats = { 'ymd' : '{d.year}-{d.month}-{d.day}&...

2020-02-08 10:47:05 70 0

原创 Python实战从入门到精通第十八讲——改变对象的字符串显示

想改变对象实例的打印或显示输出,让它们更具可读性。 要改变一个实例的字符串表示,可重新定义它的__str__()和__repr__()方法。例如: lass Pair: def __init__(self, x, y): self.x = x self...

2020-02-08 10:37:24 82 0

原创 Python实战从入门到精通第十七讲——将单方法的类转换为函数

有一个除__init__()方法外只定义了一个方法的类。为了简化代码,你想将它转换成一个函数。 大多数情况下,可以使用闭包来将单个方法的类转换成函数。 举个例子,下面示例中的类允许使用者根据某个模板方案来获取到URL链接地址。 from urllib.request import urlop...

2020-02-08 09:27:02 75 0

原创 Python实战从入门到精通第十六讲——匿名函数捕获变量值

用lambda定义了一个匿名函数,并想在定义时捕获到某些变量的值。 先看下下面代码的效果: >>> x = 10 >>> a = lambda y: x + y >>> x = 20 >>> b = lambda y: ...

2020-02-08 09:22:12 94 0

原创 Python实战从入门到精通第十五讲——定义匿名或内联函数

你想为sort()操作创建一个很短的回调函数,但又不想用def去写一个单行函数, 而是希望通过某个快捷方式以内联方式来创建这个函数。 当一些函数很简单,仅仅只是计算一个表达式的值的时候,就可以使用lambda表达式来代替了。比如: >>> add = lambda x, y...

2020-02-08 09:16:52 116 0

提示
确定要删除当前文章?
取消 删除