算法
Chen_Swan
这个作者很懒,什么都没留下…
展开
-
【算法】斐波那契数列
509. 斐波那契数基本篇:class Solution {public: int fib(int N) { int a=0; int b=1; int fn=0; for(int i=0;i<N;i++){ fn=a+b; a=b; ...原创 2020-05-06 22:16:38 · 526 阅读 · 0 评论 -
【算法】二分查找及变体
如果看到在某个查找问题时间要求logn,那基本是考二分查找。平衡二叉树的本质也是二分查找,写树还费时。二分查找的前提是数组有序,如果无序需要先排序。二分查找框架:int binarySearch(int[] nums, int target) { int left = 0, right = ...; while(...) { int mid = le...原创 2020-04-28 18:52:53 · 305 阅读 · 0 评论 -
【算法】比较类的原地算法
力扣41class Solution {public: int firstMissingPositive(vector<int>& nums) { int n=(int)nums.size(); for(int i=0;i<n;i++){ while(nums[i]>0&&n...原创 2020-04-28 14:15:49 · 270 阅读 · 0 评论 -
【算法】螺旋矩阵
力扣54双百答案class Solution {public: vector<int> spiralOrder(vector<vector<int>>& matrix) { vector <int> res; if (matrix.empty()) return res; i...原创 2020-04-27 21:22:09 · 528 阅读 · 0 评论 -
【算法】只出现一次的数字
1.leetcode136给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。要求时间复杂度O(n),空间复杂度O(1)。示例:输入[4, 1, 2, 1, 2],输出4(1)面试官不想要的答案:建字典、排序。(2)面试官想要的答案:位运算。思路:如果我们对 0 和二进制位做 XOR 运算,得到的仍然是这个二进制位,a^...原创 2020-04-15 18:12:36 · 228 阅读 · 0 评论 -
计算机视觉秋招准备(4):神经网络初始化
1. 将全部参数初始化为0不可以考虑全连接的深度神经网络,同一层中的任意神经元都是同构的,它们拥有相同的输入和输出,如果再将参数全部初始化为同样的值,那么无论前向传播和反向传播的取值都是完全相同的。学习过程将永远无法打破这种对称性,最终同一网络层中的各个参数仍是相同的。因此,我们要随机地初始化神经网络参数的值,以打破这种对称性。简单来说,可以初始化参数取值范围为取值范围(-,)的均匀...原创 2020-04-14 11:00:03 · 204 阅读 · 0 评论 -
计算机视觉秋招准备(2):一文看懂dropout
1.Dropout出现的原因在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高;但是在测试数据上损失函数比较大,预测准确率较低。过拟合是很多机器学习的通病。如果模型过拟合,那么得到的模型几乎不能用。为了解决过拟合问题,一般会采用模型集成的...原创 2020-04-13 15:27:50 · 1127 阅读 · 0 评论 -
池化层详细介绍
常见的池化层它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效地原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。...原创 2020-04-13 14:17:30 · 94511 阅读 · 1 评论 -
过拟合和欠拟合现象及解决方案
过拟合和欠拟合欠拟合:(under-fitting)也称为欠学习,它的直观表现是算法训练得到的模型在训练集上表现差,没有学到数据的规律。引起欠拟合的原因有:模型本身过于简单,例如数据本身是非线性的但使用了线性模型;特征数太少无法正确的建立统计关系。过拟合:(over-fitting)随着训练过程的进行,模型复杂度,在training data上的error渐渐减小。可是在验证集上的erro...原创 2020-04-10 21:52:57 · 3310 阅读 · 0 评论 -
经典CNN图像分类网络汇总
本文将大致介绍经典的卷积神经网络。包含LeNet5、AlexNet、VGG、GoogLeNet、卷积神经网络概述:相比于传统特征提取方法,卷积不需要人工进行特征提取。受启发于生物神经元,激活函数用于仿真,当生物电信号超过了某一阈值,就被传递给下一个神经元;损失函数用于指导网络学习到被期望学习的东西。CNN的优点:(1)局部连接。每个神经元只和前一层部分神经元连接,这可以加快网络收敛和减...原创 2020-04-10 21:11:21 · 9284 阅读 · 0 评论 -
激活函数总结1:ReLU及其变体
激活函数可以被分为2类,“饱和激活函数”和“非饱和激活函数”。sigmoid和tanh是“饱和激活函数”,而ReLU及其变体则是“非饱和激活函数”。使用“非饱和激活函数”的优势在于两点: (1)首先,“非饱和激活函数”能解决所谓的“梯度消失”问题。 (2)其次,它能加快收敛速度。 Sigmoid函数需要一个实值输入压缩至[0,1]的范围,σ(x) = 1 / (1 + ex...原创 2020-04-10 17:24:41 · 4033 阅读 · 1 评论 -
Self-training with Noisy Student improves ImageNet classification阅读笔记
论文地址:https://arxiv.org/pdf/1911.04252v1.pdf这篇文章实现了自训练方法,使用部分带标签数据进行训练,在ImageNet上top-1为87.4%。方法:1. 为有标签和无标签的图片。2. 使用有标签的数据、标准交叉熵损失训练了一个EfficientNet作为教师网络。3. 用这个教师网络,在无标签数据上生成伪标签,伪标签可以是soft la...原创 2019-12-10 16:27:39 · 3693 阅读 · 1 评论