自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git 合作开发,拉去别人分支的代码

zz的tmp分支更新到本地的zzz/tmp,并创建 local tmp分支, 第一个tmp 是<远程分支名>,第二个tmp 是<本地分支名>,和下方git push 相反)git chekcout -b tmp zzz/tmp (创建 local tmp分支并切换到local tmp 分支)git push <远程主机名> <本地分支名>:<远程分支名>git fetch zzz tmp:tmp (将<git push <远程主机名> <本地分支名>zzz的tmp分支更新到本地的zzz/tmp)

2023-11-22 14:49:28 158

转载 gitlab 中配置 SSH key

GitLab中配置SSH key - 简书

2023-11-22 14:07:51 290

转载 Batch normalization和 layer normalization的区别

另外一词多义的表示中——简单来说,每个词有一片相对独立的小空间,通过在这个小空间中产生一个小的偏移来达到表示一词多义的效果。2、layer normalization可以对transformer学习过程中由于多词条embedding累加可能带来的“尺度”问题施加约束,相当于对表达每个词一词多义的空间施加了约束,有效降低模型方差。NLP数据则是又embedding开始的,这个embedding并不是客观存在的,它是由我们设计的网络学习出来的。其实这个问题是一个比较难的问题,我个人理解也是很有限的。

2023-11-22 10:52:36 85

转载 深度学习中Dropout原理解析

在每个训练批次中,通过忽略一半的特征检测器(让一半的隐层节点值为0),可以明显地减少过拟合现象。此时,训练模型费时就成为一个很大的问题,不仅训练多个模型费时,测试多个模型也是很费时。Dropout说的简单一点就是:我们在前向传播的时候,让某个神经元的激活值以一定的概率p停止工作,这样可以使模型泛化性更强,因为它不会太依赖某些局部的特征。在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。Dropout可以比较有效的缓解过拟合的发生,在一定程度上达到正则化的效果。

2023-11-22 10:48:59 62

转载 谈谈深度学习中的 Batch_Size

这是一个 Python 的深度学习库。如果数据集比较小,完全可以采用全数据集 ( Full Batch Learning )的形式,这样做至少有 2 个好处:其一,由全数据集确定的方向能够更好地代表样本总体,从而更准确地朝向极值所在的方向。对于更大的数据集,以上 2 个好处又变成了 2 个坏处:其一,随着数据集的海量增长和内存限制,一次性载入所有的数据进来变得越来越不可行。跑完一次 epoch(全数据集)所需的迭代次数减少,要想达到相同的精度,其所花费的时间大大增加了,从而对参数的修正也就显得更加缓慢。

2023-11-22 10:44:39 21

原创 Regularization 正则化 和 normalization数据标准化(归一化,规范化)

2、Regularization(正则化)与Dropout:针对。1、 normalization(归一化): 解决的问题是。,就不会进入激活函数的饱和区,学习梯度就不会降为0。3、残差网络(shortcut):在网络。加深的情况下解决梯度消失的问题。

2023-11-22 10:40:43 60

原创 cnn和fc的区别

2、cnn 参数少,每一层都只有一个卷积核,且感知信息范围小,偏局部;而fc参数多,即每一层都有一份weight,感知信息是全面的;【说明图形是相邻部分信息有效,而序列是全局信息有效,而这也同样符合我们自然社会里的认知,事实证明这类型模型的效果也是最理想的】3、本质上cnn和fc都一样,反向过程会对cnn的卷积核和fc的weight进行更新,直至找到最佳的卷积核和weight,这一个过程就是优化特征提取的过程;同时cnn和fc后面都会选择性的接一个激活函数,来增强模型的非线性能力。

2023-11-21 16:56:59 94

原创 vscode 常用插件

Indent-Rainbow: 该插件会彩色显示缩进。Trailing Spaces: 该插件会高亮空格。

2023-11-21 16:42:20 31

原创 bank conflicts 理解

相关链接:https://zhuanlan.zhihu.com/p/410278370(详细介绍了SGEMM 单精度GEMM的高效运算 和 tlr bank conflicts的原理)Bank 硬件资源理解和MC一致,一但数据线性排布方式定了,哪些数据在哪些bank 里也就确定了。模式没有bank conflicts,这种情况下带宽利用率较低,因为只用了一个bank资源;2、如果是多个threads read 同一个bank内的。3、多个threads write 同一个bank 内。

2023-11-21 16:29:36 44

转载 Implicit GEMM Algorithm

conv im2col NV 实现原理。

2023-11-21 16:24:44 42

转载 NV cpu golden conv vcore 计算

SERVICES;/*!\file*/template <++n) {++p) {++q) {++k) {++r) {++s) {++c) {if (beta!++n) {++p) {++q) {

2023-11-21 16:16:00 66

转载 深度了解 NVIDIA Ampere 架构

深度了解 NVIDIA Ampere 架构 - NVIDIA 技术博客

2023-11-21 15:00:06 27

原创 L2 cache 表现行为理解

7. stm 写到gmb 和 写到L2上差距不大,带宽都是256GB/s,但stm bypass l2 cache 带宽就会收到noc 到HBM 带宽(stm + ldm

2023-11-21 10:52:55 63

原创 leetcode_739: daily temperatures

leetcode_739: daily temperatures

2022-07-09 15:36:39 100 1

原创 leetcode_416 判断一个数组能否分割成相等的两个子集

解题思路:原本打算暴力求解法解决这个问题,发现有LTE问题,后面看了答案发现,这是经典的背包问题,需要专门找个时间对背包问题仔细分析,留着回过头来分析#include<iostream>#include<vector>#include<algorithm>#include<queue>#include<math.h>using namespace std;// 方法一:暴力求解法,TLE问题//class Solution {

2021-03-31 14:42:09 351

原创 leetcode_406队列根据身高重构

题意分析:原本有一排同学,他们都记录了自己的位置和前面有多少人比他高的信息,现在将这群人打散,请根据他们的信息换原他们原来的排列解题思路:#include<iostream>#include<vector>#include<algorithm>using namespace std;//自定义vector排序bool comp(vector<int>& a, vector<int>& b) { if (a...

2021-03-31 14:33:20 96

原创 leetcode_322零钱兑换最少数目

题意分析:给一定总额,给定可选零钱数组(种类固定但数量不限)解题思路:#include<iostream>#include<vector>#include<algorithm>#include<unordered_set>using namespace std;////方法一:贪心算法 + 乘法 + dfs//class Solution {//public:// int coinChange(vector<int>...

2021-03-31 14:25:09 146

原创 leetcode_347求前k个高频词

题意:找出一组数组中前k个高频词,即考点小顶堆排序算法解题思路:#include<iostream>#include<vector>#include<queue>#include<unordered_map>using namespace std;//struct Node {// int val;// Node* left;// Node* right;// Node() : val(0), left(nu...

2021-03-31 14:07:45 122 1

原创 leetcode_337解题思路(house robber 3)

题意分析:宿舍成二叉树排布,直接相邻的两个节点不能同时被盗,求最大盗取金额解题思路:递归后续遍历法#include<iostream>#include<algorithm>// Definition for a binary tree node.struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode() : val(0), left(nullptr), ri...

2021-03-31 14:00:20 83

原创 leetcode_338 counting bits

题意:求自然数[1~n]的二进制数中1的个数,返回对应的数组。解题方法:动态规划;该题可以用c++的内置函数__builtin_popcount,属于经典题范畴,有相关csdn文件介绍这种题,方法很多样#include<vector>using namespace std;class Solution {public: vector<int> countBits(int num) { vector<int> result(num + ...

2021-01-24 19:21:59 68

原创 leetcode_394解码字符串题解

题意:按照如下方式解码字符串Input: s = "3[a]2[bc]"Output: "aaabcbc"Input: s = "3[a2[c]]"Output: "accaccacc"解题方法:使用递归的方法由里向外逐层解析#include<iostream>#include<string>using namespace std;class Solution {public: string decodeString(string s) {...

2021-01-24 19:17:06 87

原创 leetcode_309买卖股票最佳期(含冻结期)解题思路

#include<iostream>#include<vector>#include<algorithm>using namespace std;// 方法一:暴力求解法,深度优先搜索,遍历所有情况,通过199/201条用例,出现TLE问题class Solution {public: int maxProfit(vector<int>& prices) { if (prices.size() < 2) re...

2020-12-02 10:07:37 93

原创 leetcode_300 Longest Increasing Subsequence,最长上升序列数

#include<iostream>#include<algorithm>#include<vector>using namespace std;// 方法一:vector<pair<int,int>>有序数组统计法,时间复杂度n^2class Solution {public: int lengthOfLIS(vector<int>& nums) { vector<pair<i...

2020-11-15 22:17:14 54

原创 leetcode_287解题思路

题意:[1,n]范围内的n+1个数,有且仅有一个数字重复,请找出这个重复的数字,解题思路有以下三种方法#include<iostream>#include<vector>#include<math.h>using namespace std;// 方法一:改变数组值(可能与题目要求不符),取相反数,判断该数是否是重复数,非常简单的方法class Solution {public: int findDuplicate(vector<int&g..

2020-11-13 18:01:02 114

原创 leetcode_283 将数组中的0元素移动到末尾

#include<vector>using namespace std;//方法一:常规移位法,时间复杂度最长class Solution {public: void moveZeroes(vector<int>& nums) { int Size = nums.size(); if (Size == 0 || Size == 1) return; for (int i = 0; i < Size; i+...

2020-09-13 12:27:18 221

原创 leetcode_240: 在一个向下和向右递增的二维数组里判断一个数是否存在,时间复杂度尽可能底

#include<iostream>#include<vector>using namespace std;//方法一:分割左下和右上区域法class Solution {public: bool searchMatrix(vector<vector<int>>& matrix, int target) { bool result = false; if (matrix.size() == 0 || ...

2020-09-12 22:32:19 136

原创 leetcode_279 确定一个正整数由最少的完全平方数组成的个数(理解背包问题和贪心算法)

题意:给你一个正整数,求至少多少个完全平方数加起来的和等于这个正整数#include<iostream>#include<vector>#include<math.h>#include <algorithm>using namespace std;//方法一:dfs暴力求解发,出现TLE问题class Solution {public: int numSquares(int n) { int num = 0; ...

2020-09-12 22:26:02 428

原创 leetcode_238:求数组中处自身元素外其他所有元素乘积的数组(不能用除法)

解析:先要遍历两次数组,分别求出数组元素的左乘积数组和右乘积数组(不包含当前下标元素),最后遍历一次将左右数组对应元素相乘就得到最终要的结果。#include<vector>#include<iostream>using namespace std;class Solution {public: vector<int> productExceptSelf(vector<int>& nums) { //vector&...

2020-08-26 21:13:08 214

原创 leetcode_239: 输出滑框最大值(考点双向队列或DP)

该题难在对双向队列的应用,以及对队列元素的额处理#include<deque>#include<vector>#include<iostream>using namespace std;//方法一:暴力求解发,时间复杂度为k*n,或logk* n 大顶堆(省略)//方法二:双向队列法class Solution {public: vector<int> maxSlidingWindow(vector<int>& ..

2020-08-26 20:29:55 90

原创 leetcode_234判断链表是否是回文链表解题思路

// Definition for singly-linked list.struct ListNode { int val; ListNode* next; ListNode() : val(0), next(nullptr) {} ListNode(int x) : val(x), next(nullptr) {} ListNode(int x, ListNode* next) : val(x), next(next) {}};//方法一:确定链表长度,...

2020-08-23 23:28:53 102

原创 leetcode_236求二叉树两个节点最近的公共祖先

解题思路:分别用两个vector数组存入找到两节点的路径,然后比较两vector相同的元素,代码如下//方法一:两次遍历法,借用两个vector数组class Solution {public: TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) { if (!root) return root; vector<TreeNode*> pVector, qV...

2020-08-20 21:46:16 135

原创 leetcode_230 二叉搜索树BST中序遍历

题意:在二叉搜索树中找到第k小的元素。解题思路:直接按照二叉搜索树中序遍历即可得到从小到大排列的数组,即很容易找到第k小的值#include<iostream>using namespace std;// Definition for a binary tree node.struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode() : val(0), left(nul...

2020-08-11 20:29:00 117

原创 leetcode_226解题思路(二叉树翻转)

题意:实现二叉树的翻转。两种解题意思:一、根据树遍历方式的特点先创建一个二叉树;二、在原树上直接交换每一级的左右子树实现翻转#include<iostream>using namespace std;//definition for a binary tree node.typedef struct treenode { int val; treenode* left; treenode* right; treenode() : val(0), lef...

2020-08-09 19:59:21 114

原创 leetcode_221解题思路

题意:求二维矩阵内的正方形面积(注意:二维矩阵不一定是正方形矩阵),分别从递归法和DP法分析这道题#include<iostream>#include<vector>//#include<algorithm>using namespace std;//方法一:递归算法class Solution {public: int maximalSquare(vector<vector<char>>& matrix) {...

2020-08-09 19:55:10 95

原创 leetcode_215小顶堆解题思路

题意:求数组中第k大的元素;这里只分析时间复杂度为nlogn的方法#include<iostream>#include<vector>#include<queue>#define Error -1#include<cmath>using namespace std;//方法一:大顶堆的底层实现,分三部分:层序遍历生成完全二叉树、将完全二叉树修改成小顶堆、将剩下的n-k个元素遍历对小顶堆做修改class Solution {public:.

2020-08-04 20:34:03 197

原创 leetcode_208前缀树解题思路

#include<string>#include<iostream>#include<unordered_map>using namespace std;class Trie {public: /** Initialize your data structure here. */ Trie() { result = new Node(); } class Node { public: ...

2020-08-04 20:17:22 88

原创 leetcode_207解题思路

题意:选课顺序,即拓扑排序。标准的Kahn(卡恩)算法和DFS算法#include<iostream>#include<vector>#include<unordered_map>#include<unordered_set>#include<stack>using namespace std;//方法一:拓扑排序knlp方法class Solution {public: bool canFinish(int numC...

2020-07-28 22:09:15 116

原创 leetcode_206解题思路

题意:实现链表的反转#include<iostream>#include<stack>using namespace std;// Definition for singly-linked list.struct ListNode { int val; ListNode* next; ListNode() : val(0), next(nullptr) {} ListNode(int x) : val(x), next(nullptr) ...

2020-07-26 11:04:53 64

原创 leetcode_169解题思路

题意:求数组中超过半数的元素。网友给出的方法比较有意思,剩下的元素就是多数者#include<vector>#include<unordered_map>#include<iostream>#define Error -1using namespace std;//方法一:unordered_map方法class Solution {public: int majorityElement(vector<int>& nums)..

2020-07-20 22:22:30 109

原创 leetcode_160解题思路

题意:求两个单向链表的交点。要求时间复杂度为o(n),空间复杂度为o(1)。答案如下#include<iostream>#include<unordered_map>using namespace std;//Definition for singly-linked list.struct ListNode { int val; ListNode* next; ListNode(int x) : val(x), next(NULL) {};};...

2020-07-18 23:26:23 78

空空如也

空空如也

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

TA关注的人

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