自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

转载 BAT机器学习面试26-30题笔记

26 .卷积神经网络CNN池化层有什么作用?池化(Pooling):也称为欠采样和下采样。主要用于特征降维,压缩数据和参数的数量。减小过拟合,同时提高模型的容错性。保持一定程度的旋转和平移不变性。27.常见的激活函数。激活函数有什么作用?所谓激励,实际上是对卷积层的输出结果左移次非线性映射。如果不用激励函数(其实就相当于激励函数是f(x)=x),这种情况下,每一层的输出都是上一层输入的线性...

2019-04-23 10:44:49 386

转载 BAT机器学习面试21-25题笔记

21 .为什么06年以前神经网络层数很少,deep learning 能抑制梯度消失或者爆炸的问题。这个深度代表很多的神经网络的层数。因为以前所说的神经网络算法没有好的训练方法,最终训练的神经网络有2到3层就是极限了,对于很多应用来说没有实际价值。以前的主流神经网络训练方法叫反向传播,但是也解决不了随着神经网络层数的增加而梯度消失的问题。2006年,Hinton在《Science》和相关期刊上...

2019-04-22 14:12:06 543

转载 LeetCode 实践练习86-90

LeetCode—86(分隔链表)方法:我们可以利用一个新链表保存比x小的,这样原链表就剩下比x大于等于的,随后将原链表接在新链表后面即可。C++代码:class Solution {public: ListNode* partition(ListNode* head, int x) { if(!head) return head; ListNod...

2019-04-03 11:00:31 150

转载 LeetCode 实践练习81-85

LeetCode—81(搜索旋转排序数组II)方法:与33题类似,都是搜索旋转排序数组,但是33题假设数组中不存在重复数组,而本体没有。时间复杂度O(logn)O(logn)O(logn),依旧是利用规律,用mid表示中间数,当mid<right时,右边有序。当mid>right时,左边有序。若想等,right左移。C++代码:class Solution {public:...

2019-04-01 15:01:52 101

转载 LeetCode 实践练习76-80

LeetCode—76(最小覆盖子串)方法:第一种解决办法是用HashMap,而不是HashSet,因为要统计T串中字母的个数,而不是仅仅看某个字母是否在T串中出现。统计好T串字母的个数后,就开始遍历S串,对于S中的每个遍历到的字母,都在HashMap中的映射值减一。如果减一后的映射值仍然大于等于0,则T串中存在,我们使用计数器自增1,当计数器=T.size()时,说明窗口已经包含了T中的所...

2019-03-28 16:09:24 132

转载 LeetCode 实践练习71-75

LeetCode—71(简化路径)方法:规律,若遇到".“的情况直接去掉,若遇到”…"的情况,删掉紧挨着的上一个路径。还有若为空,则返回/,如果有多个/只保留一个。C++中有专门处理字符串的机制,我们可以使用stringstream来分割字符串,然后对每一段处理。C++代码:class Solution {public: string simplifyPath(string pa...

2019-03-26 15:41:20 113

转载 LeetCode 实践练习66-70

LeetCode—66(加一)方法:每次都判断是否为9,具体看代码。C++代码:class Solution {public: vector<int> plusOne(vector<int>& digits) { int n = digits.size(); if(digits[n-1] != 9) {digits[...

2019-03-25 15:32:16 113

转载 LeetCode 实践练习61-65

LeetCode—61(旋转链表)方法:此题一种方法,是利用快慢指针,快指针先走k步,然后两个指针一起走,当快指针走到末尾时,满指针指的下一个位置即是新顺序的头结点(特殊情况链表为空,k>n)。另一种方法,一个指针即可,就是先遍历整个链表获得链表长度n,然后链表的头和尾接起来,然后往后走 n - (k % n),就到达了新链表的头节点前一个点,这是断开链表即可。class Soluti...

2019-03-22 10:46:47 116

转载 LeetCode 实践练习56-60

LeetCode—56(合并区间)方法:发现若区间重叠,则后面区间的start > 前面区间的end。但是前提是得排序。因此先进行排序,将第一个区间存入结果,然后第二个开始遍历区间集,判断是否重叠,如果有重叠则将res中最后一个区间的end值与当前遍历end值取max。然后继续遍历。C++代码:class Solution {public: vector<Interv...

2019-03-20 16:53:46 137

转载 LeetCode 实践练习51-55

LeetCode—51(N皇后问题)方法:经典的N皇后问题,基本所有的算法书都会包含的问题,经典的解法为回溯递归,一层层的向下扫描,需要用到一个pos数组,其中pos[i]表示第i行皇后的位置,初始化为-1,然后从第0开始递归,每一行都一次遍历各列,判断如果在该位置皇后会不会有冲突,依次类推,当到最后一个皇后放好后,一种解法就生成了,将其存入结果res中,再继续。C++代码:class S...

2019-03-18 14:39:23 87

转载 BAT机器学习面试16-20题笔记

16.为什么朴素贝叶斯如此&amp;quot;朴素&amp;quot;?对于贝叶斯定理:P(c∣x)=P(c)P(x∣c)/P(x)P(c|x) = P(c)P(x|c)/P(x)P(c∣x)=P(c)P(x∣c)/P(x)P(c)是类的先验概率P(c)是类的先验概率P(c)是类的先验概率:样本空间中各类样本所占的比例。训练集包含充足的独立同分布样本时,P(c)P(c)P(c)可通过各类样本出现的概率来进行估计。P(x∣c)是...

2019-03-14 18:32:09 161

转载 对于大数求均值

对于大数求均值解释:即超过存储位数的两数相加求均值.比如10(二进制为1010),6(二进制为0110)如何在不溢出的情况下想加求均值对于位数相加,分三种情况.第一部分:都为1,那么相加后再除以2,还是1无变化.第二部分:对应为只有一位为1,用’异或’提取出来,然后&gt;&gt;1(右移一位,相当于除以2).第三部分:都为0,无变化.三部分汇总之后就是(x&amp;y)+((x^y)...

2019-03-14 18:19:32 721

转载 LeetCode 实践练习46-50

LeetCode—46(全排列)方法一:跟77题(组合项)类似,解法基本相同,利用递归DFS来求解.这里我们需要用到一个visited数组来标记某个数字是否访问过,然后在DFS递归函数的循环应从头开始.C++代码:class Solution {public: vector&lt;vector&lt;int&gt;&gt; permute(vector&lt;int&gt;&am...

2019-03-14 14:51:47 140

转载 LeetCode 实践练习41-45

LeetCode–41(缺失的第一个正数)方法:由于限制O(n)O(n)O(n)的时间复杂度,O(1)O(1)O(1)的空间复杂度.不能建立新的数组,那么只能覆盖原有数组,我们的思路是把1放在数组第一个位置nums[0],2放在第二个位置nums[1],即需要把nums[i]放在nums[nums[i] - 1]上,那么我们遍历整个数组,如果nums[i] != i + 1, 而nums[i]...

2019-03-13 16:47:31 147

转载 LeetCode 实践练习36-40

LeetCode–36(有效的数独)方法:遍历每个数字的时候,就看看包含当前位置的行和列以及3x3小方阵中是否已经出现该数字,那么我们需要三个标志矩阵,分别记录各行,各列,各小方阵是否出现某个数字,其中行和列标志下标很好对应,就是小方阵的下标需要稍稍转换一下.C++代码:class Solution {public: bool isValidSudoku(vector&lt;ve...

2019-03-11 21:28:33 142

转载 图的广度优先搜索(BFS)和深度优先搜索(DFS)

无向图和有向图顶点对(u,v)(u,v)(u,v)是无序的,即(u,v)(u,v)(u,v)和(v,u)(v,u)(v,u)是同一条边.常用一堆圆括号表示.顶点对&amp;lt;u,v&amp;gt;&amp;lt;u,v&amp;gt;&lt;u,v&gt;是有序的,它是指从顶点u到顶点 v的一条有向边。其中u是有向边的始点,v是有向边的终点。常用一对尖括号表示。具有n(n−1)/2n(n...

2019-03-11 16:32:29 408

转载 LeetCode 实践练习31-35

LeetCode—31(下一个排序)方法:求下一个排列顺序,如果给定数组是降序,则说明是全排列的最后一种情况。则说明是全排列的最后一种情况,则下一个排列就是最初始情况。其余情况理解:如有一个数组:1274311 2 7 4 3 1127431 则下一个排列为:131247131247131247从末尾往前看,数字逐渐变大,到了2时才减小的,然后我们再往后找一个比2大的数字,是...

2019-03-11 14:13:19 133

转载 LeetCode 实践练习26-30

LeetCode—26(删除排序数组中的重复项)方法一:这道题与移除有序链表中的重复项题(82与83)很类似,但是更要简单一些,因为毕竟数组的值可以通过下标直接访问,而链表不行。我们使用快慢指针来记录遍历的坐标,最开始时两个指针都指向第一个数字,如果两个指针指的数字相同,则快指针向前走一步,如果不同,则两个指针都向前走一步,然后将cur值赋值给不同值的坐标那。这样当快指针走完整个数组后,慢指针当...

2019-03-07 15:11:14 82

转载 LeetCode 实践练习21-25

LeetCode—21(合并两个有序链表)方法一:新建一个链表,然后比较两个链表中的元素值,把较小的那个链到新链表中,由于两个输入链表的长度可能不同,所有最终会有一个链表先完成插入所有的元素,则直接另一个未完成的链表直接链入新链表的末尾。C++解法:class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListN...

2019-03-06 16:04:33 151

转载 LeetCode 实践练习16-20

LeetCode—16(最接近的三数之和)相对于上一题求三数之和为0,这道题让我们返回这个最接近给定值(target)的值,即我们要保证当前三数和跟给定值之间的差的绝对值最小,所以我们需要定义一个变量diff用来记录差的绝对值。方法:还是先将数组排个序,然后遍历数组,思路跟上一题相似,都是先确定一个数,然后用两个指针left和right来滑动寻找另外两个数,每确定就求三数之和,然后算和给定值的...

2019-03-05 12:17:36 243

转载 BAT机器学习面试11-15题笔记

11. L1L1L1和L2L2L2正则先验分别服从什么分布(第五题关联)L1L1L1服从拉普拉斯分布,L2L2L2服从高斯分布。所谓先验就是优化的起跑线,有先验的好处就是可以在较小的数据集中有良好的泛化性能,当然这是在先验分布是接近真实分布的情况下得到的了,从信息论的角度看,向系统加入了正确先验这个信息,肯定会提高系统的性能。通俗解释:模型过于复杂是因为模型尝试去兼顾各个测试数据点, 导致...

2019-03-05 09:37:05 196

转载 LeetCode 实践练习11-15

LeetCode—11(盛最多水的容器)方法一:暴力法简单的考虑每对可能出现的线段组合并找出这些情况之下的最大面积。时间:O(n2)O(n^2)O(n2) 空间:O(1)O(1)O(1)方法二:定义i和j两个指针分别指向数组的左右两端,然后两个指针向中间搜索。每移动一次算一个值和结果比较取较大的,容器装水量的算法是找出左右两个边缘中较小的那个乘以两边缘的距离。移动的解释:在最外围...

2019-03-04 15:35:21 117

转载 BAT机器学习面试6-10题笔记

BAT机器学习面试6-10题笔记6.overfitting怎么解决?机器学习 ML基础 中dropout、regularization、batch normalizationoverfitting就是过拟合, 其直观的表现如下图所示,随着训练过程的进行,模型复杂度增加,在training data上的error渐渐减小,但是在验证集上的error却反而渐渐增大——因为训练出来的网络过拟合了训...

2019-02-27 21:15:03 302

转载 LeetCode 实践练习6-10

LeetCode—6思路:通过从左向右迭代字符串,我们可以轻松地确定字符位于Z字形团中的哪一行。算法:从左到右迭代s,将每个字符添加到合适的行。可以使用当前行和当前方向这两个变量对合适的行进行跟踪。只有当我们向上移动到最上面的行或向下移动到最下面的行时,当前方向才会改变。C++解法:class Solution {public: string convert(string s,...

2019-02-27 17:08:20 161

转载 Python入门经典笔记

第一章:Python是一种面向对象的脚本语言。Python是用可移植的ANSIC写成的,可以运行在各个平台。动态类型:使用对象时,不需要复杂的类型和大小的声明。内置的对象类型:提供常用的数据结构,列表(list),字典(dictionary),字符串(string)既有弹性有益于使用。内置工具:处理这些对象,python提供功能强大的,标准的操作,包括合并(concatenation),片...

2019-02-27 13:08:22 924

转载 BAT机器学习面试1-5题笔记

BAT机器学习面试1000题前言本文章,题目与解析为转载系列。会加入自己的理解。BAT机器学习面试1000题系列,侧重机器学习、深度学习。我们将通过这个系列索引绝大部分机器学习和深度学习的笔试面试题、知识点,它将更是一个足够庞大的机器学习和深度学习面试库/知识库,通俗成体系且循序渐进。1.请简要介绍下SVMSVM全称:Support Vetor Machine,中文名...

2019-02-27 13:08:08 434

转载 LeetCode 实践练习1-5

LeetCode—11.暴力法遍历数组其余部分来进行来寻找所对应部分。时间复杂度为O(n2)O({n^2})O(n2) 空间复杂度为O(n)O(n)O(n)(疑问:每个不是利用了两次吗?)public int[] twoSum(int[] nums, int target) { for (int i = 0; i &amp;amp;amp;amp;amp;amp;lt; nums.length; i++) { ...

2019-02-27 13:07:53 201

原创 利用screen 管理你的远程会话

screen 管理你的远程会话如果经常需要 SSH 或者 telent 远程登录到 Linux 服务器,完成一些长时间运行的任务而头疼,比如备份系统或者深度学习模型训练,传输任务等。在此期间,不能关闭或者断开连接,否则这个任务就会被杀掉,前功尽弃。原因分析:SIGHUP信号在Linux/Unix中,有这样几个概念:进程组(process group):一个或多个进程的集合,每一个进程组有唯...

2018-12-10 10:41:02 128

原创 CornerNet: Detecting Objects as Paired Keypoints 论文阅读

CornerNet: Detecting Objects as Paired Keypoints 论文阅读Abstract(摘要)本文提出一种新的目标检测的方法,使用单个卷积神经网络将目标边界框检测为一对关键点(即边界点)。通过将目标检测为成对关键点,我们消除了现有的one stage检测器设计中对一组anchors的需要。文章还引入了Corner pooling,一种新型的池化层,可以帮助网...

2018-11-30 15:32:59 320

原创 PASCAL VOC数据集格式及标签

PASCAL VOC数据集格式以及标签软件labelling的使用1. 数据集格式及分布2.制作标签参考博文与链接1. 数据集格式及分布PASCAL VOC数据集由三个部分构成,JPEGImages,Annotations,ImageSets。JPEGImages:存放的是训练与测试的所有图片。Annotations:里面存放的是每张图片打完标签所对应的XML文件ImageSets:里面...

2018-11-21 16:20:54 4139

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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