自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (1)
  • 收藏
  • 关注

原创 LeetCode 239.滑动窗口最大值

这道题的题目比较简单,就是在数组中滑动窗口,并找出每次滑动之后窗口中的最大值输出,题目如下所示:

2019-03-30 12:15:55 420

原创 LeetCode 703.数据流中的第K大元素

我们首先来看看这道题目,找到数据流中第K大的元素:首先拿到这道题目,我们有可能会想到一种暴力的解法,就是首先把输入的数据流进行排序,然后从排好序的数据流中找到第K个元素,就行了,这也是一种解法,我们可以计算一下这种解法情况下的时间复杂度,假设有 NNN 个元素,要将 KKK 个元素进行快速排序,那么时间复杂度就为:O(N⋅K⋅log⁡K)O(N \cdot K \cdot \log K)O(N...

2019-03-29 14:46:11 582

原创 LeetCode 160.相交链表

这道题目是要找到两个链表相交的起始节点,题目如下所示:这里有一个很巧妙的解法,我们来从这两个链表的结构来分析,我们如何去找到两个链表相交的起始节点呢?相交之后的链表是一样的,我们看下图所示:在图中 AAA 点和 BBB 点分别表示两个链表的起点,CCC 点事我们要找的交点,ACACAC 的长度是 aaa,BCBCBC 的长度是 bbb ,剩下相同部分的内容长度是 ccc,那么我们可以用两个...

2019-03-28 16:07:22 166

原创 LeetCode 141 & 142.环形链表

首先是141题,如何判断一个链表是否有环,题目如下所示:拿到这个题目,我们很难想到什么比较简洁快速的解法,的确这个题目用常规的方法比较难解决。在这里给大家介绍一个快慢指针的解法,首先我们定义两个指针 fast 和 slow ,分别表示快指针和慢指针,快指针是每一次走两步,慢指针是每一次走一步。那么如果一个链表中存在环的话,那么这个快指针一定会比慢指针先进环中,然后慢指针也会进到换中,因为快指...

2019-03-23 16:20:24 229

原创 LeetCode 206.反转链表

这是一道关于链表最基础也是最经典的一道题目,就是我们需要反转一个链表,题目如下所示:这道题的思想就是我们需要把链表中每个节点所指的方向调转,然后把指针往后移,一直到链表尽头,整个流程可以如下所示:我们这里有三个指针,分别表示前一个位置 prev,当前位置 cur 和下一个位置 next。每次操作的第一步就是将prev指向cur的指针方向调转,然后移动向下一个位置移动cur指针,直到cur到...

2019-03-22 12:19:49 200

原创 隐马尔科夫模型(HMM)算法的理解与超详细推导

今天看了徐亦达教授的HMM讲解,感觉有所收获,并将隐马尔科夫模型算法的推导整理了一下,帮助大家一起理解这个算法。首先我们通过一个股票的案例来引入这个算法,我们来看看这个股票行情和涨跌观测值的一个状态图:由图中可以看出,股市的行情分成牛市、熊市和均市,这三种行情是可以互相转化的,并且互相转化是有一定的概率的,这种行情是观测不到的,是一种隐变量,也可以看成是一种状态 qqq,并且在每一个时间点的状...

2019-03-16 13:53:19 3598 4

原创 EM算法理解与推导

首先我们开门见山,EM算法到底是干什么的,EM算法是在面对一个含有隐变量的概率模型,是一种迭代算法,目标就是极大化观测数据关于参数的对数似然函数。这么说可能很难理解,我们来举一个例子吧,就拿抛硬币来说,假设有A和B两枚硬币,要估计的参数是它们各自翻正面的概率。观察的过程是先随机选择硬币A或者B,然后连续扔10次,重复此步骤5次。意思就是说有两枚硬币,只知道抛出之后的分布,但是不知道是哪个硬币抛出...

2019-03-12 17:28:38 484

原创 手动推导SVM

SVM支持向量机作为一种常用的分类器可以说是应用非常广泛的,我们直接进入正题,来手动推导SVM,让大家一起加深SVM的算法流程。首先SVM的意义就是在空间中找到一个超平面,把空点中的两个线性可分的点集完全分开,我们把这个超平面定义成w⋅xi+b=0w \cdot {x_i} + b = 0w⋅xi​+b=0,其中www是一个n维的向量xi{x_i}xi​表示空间中的点。与此同时,我们不仅需要用超平...

2019-03-11 18:32:06 1387 1

原创 LeNet和ResNet神经网络做CIFAR10图像分类(PyTorch)

图像分类的算法有很多,大部分其实都用CNN来提取图像的特征,今天我们一起来学习用PyTorch做CIFAR10数据集的分类。CIFAR10数据集是一个10个类的图像数据集,图片大小是32*32的。首先我们来看LeNet模型,这个模型进行图像识别的流程入下图所示:由上图可以清晰地看出整个的流程是经过一个卷积层,然后经过池化,再经过卷积,再进行一层池化层,最后是三个全连接层,最终输出10维的向量就...

2019-03-07 16:55:13 4596 1

原创 可视化visdom在PyTorch中的使用

相信大家在使用TensorFlow的时候都使用过它的可视化工具TensorBoard,这里给大家同样介绍一款PyTorch的可视化工具visdom,可以将我们训练过程中的数据可视化显示出来,更便于大家对于神经网络流程的理解与数据的分析。这里我们还是使用上一篇博客中讲到的手写数字识别MINIST数据集的例子。首先我们需要安装可视化工具visdom,打开终端:pip install visdom...

2019-03-02 15:15:48 3000 1

原创 word2vec算法理解和数学推导

从字面意思就可以理解word2vec是把文本转换成向量,那么文本如何转换成向量呢,最简单的方法大家都会想到独热编码,但是独热编码的缺点也很明显,首先独热编码向量是正交的,任何两个独热编码相乘都等于0,所以无法通过任何的计算来得到两个词的相似度;还有一个原因就是维度过大,比如100000个词汇用独热编码表示成向量,就会有100000个维度,简直就是维度灾难。所以一般来说,在词语向量化的时候都不使用独...

2019-03-01 10:27:05 2239 1

机器学习基础

机器学习基础,ML的技术都用在哪里,最常用的LR是什么,ML工程师都在干什么。

2018-12-18

空空如也

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

TA关注的人

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