自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Transfromers的tokenizer

获取tokenizer对象from transformers import BertTokenizertokenizer = BertTokenizer.from_pretrained('bert-base-chinese')encode的几种方法对比总结:tokenizer默认和encode_plus含义一样,即加好了token_type_ids,mask等label,类似于dict一样访问这个函数tokenizer.encode 只是把 input_ids的结果拿下来,然后后面的属.

2021-03-23 15:08:28 1112

原创 Pytorch DataLoader用法

Pytorch DataLoader用法from torch.utils.data.dataloader import DataLoader官方链接搭配 dataset 使用 collect_fn 实现 格式控制自己定义list类型,可以直接调用DataLoader去变list为dict的Tensor,但是一定要 default_data_collatorDataLoader(d_samples, batch_size=batch_size, collate_fn=default_data_c

2021-03-22 15:59:52 434

原创 git使用

git log --all --decorate --oneline --graphhttps://learngitbranching.js.org/?demo=&locale=zh_CN 小游戏

2021-03-19 14:15:51 117

原创 60min入门pytorch节选

1. torch简单创建shape = (2,3,)rand_tensor = torch.rand(shape)ones_tensor = torch.ones(shape)zeros_tensor = torch.zeros(shape)print(f"Random Tensor: \n {rand_tensor} \n")print(f"Ones Tensor: \n {ones_tensor} \n")print(f"Zeros Tensor: \n {zeros_tensor}")

2021-03-15 17:46:36 79

原创 pytorch一些书写习惯

pytorch一些书写习惯1. …的作用a = torch.Tensor([[2,3],[1,4]])a[...,-1,:]…的作用 就是 不去操作前面的维度,相当于前面有0到n-m个:2.contiguous函数transpose,narrow,view,expand都是指向型拷贝,即浅拷贝使用contiguous的目的就是为了进行深拷贝,使得变量之间不共享内存, 并且给予一段连续的空间,crossentropyLoss就是需要的这样的连续空间x = torch.randn(3, 2)

2021-03-15 17:11:29 79

原创 list去重

list如何去重list(set(l))打乱了顺序l = [1,1,3]l = list(set(l)) #去重成功,但是打乱了顺序sortedsorted(set(l),key=l.index)迭代去重

2021-01-29 14:16:35 105

原创 DP动态规划 递归迭代

在刷leetcode的时候,因为对DP和递归不是很熟,对两者界限也很模糊。所以看了一些概念以后来写一个日记DP动态规划:解决一类(离散)优化问题的思路的总称;这是一类问题的定义,解决这类问题的核心在于找到递推公式f(x)=f(x−1)+g(n)得到递推公式之后,如何计算递推公式存在两种方法:自顶向下和自底向上自顶向下:能采用递归实现int Fibonacci(int n){ if(n == 0) return 0; if(n == 1) ret

2021-01-28 15:06:23 261 1

原创 Bert结构代码阅读笔记

Bert论文:linkBert结构:具体可见colab: linkBertModel( (embeddings): BertEmbeddings( (word_embeddings): Embedding(30522, 768, padding_idx=0) (position_embeddings): Embedding(512, 768) (token_type_embeddings): Embedding(2, 768) (LayerNorm): BertL

2020-12-21 19:17:35 325 1

原创 快捷/实用技能

计算机快捷/实用技能Linux按秒定时显示命令watch -n 1 command倒叙查看文档less filename然后同时按住shift+space解压文件 tar.gztar -zxvf filename.tar.gz传输文件 软件:winscp,或者scp命令scp -r username@ip_address:filedir filedir 重定向启动nohup command查看当前文件路径Windowsconda创建新环境

2020-12-18 17:53:47 92 1

原创 LG-FedAvg略读

Think Locally, Act Globally:Federated Learning with Local and Global Representations略读最大的贡献:server为part(后面)模型,只做汇总,不做训练。client节点分成前后两个part,前后区分以server为区分点,只需要将后部分的parameter传给server(communication cost变少)具体算法见下图:...

2020-12-04 15:01:40 1508

原创 LotteryFL阅读笔记

LotteryFL: Personalized and Communication-Efficient Federated Learning with Lottery Ticket Hypothesis on Non-IID Datasets阅读笔记针对FL的问题:1. statistical heterogeneity2. communication efficiency主要优化策略:使用Lottery Ticket hypothesis,因为worker上面只是子网络,所以通讯量下降了。因为w

2020-12-04 11:16:21 509

原创 NVIDIA pytorch命令查看

torch.cuda.is_available()torch.device("cuda:0" if (torch.cuda.is_available() and ngpu > 0) else "cpu")torch.cuda.get_device_name(0)nvidia-smi参考链接

2020-11-26 17:12:44 321

原创 Pytorch笔记:torch.eval使用方法

训练完train_datasets之后,model要来测试样本了。在model(test_datasets)之前,需要加上model.eval(). 否则的话,有输入数据,即使不训练,它也会改变权值。(这样就导致测试结果不对)这是model中含有batch normalization层所带来的的性质。...

2020-06-05 10:15:24 5199

原创 RuntimeError: The size of tensor a (4) must match the size of tensor b (3)

RuntimeError: The size of tensor a (4) must match the size of tensor b (3) at non-singleton dimension 0读取格式不对改正方法:image = Image.open(image_path).convert('RGB')需要转RGB模式

2020-06-04 00:42:53 7042 4

原创 An attempt has been made to start a new process

An attempt has been made to start a new process before the current process has finished its bootstrapping phaseAn attempt has been made to start a new process before the current process has finished its bootstrapping phase修正:加上if __name__ == '__main__':

2020-06-04 00:37:05 401 1

原创 IndexError: _Map_base::at ONNX问题

在torch.onnx.export加入参数:keep_initializers_as_inputs=True

2020-03-26 16:13:11 1393

原创 import onnx出现的问题

基于官方文档命令:conda install -c conda-forge onnx安装onnx出现如下问题:关于ONNX_ML的问题:问题是protobuf的问题:参考linkconda install protobuf=3.9

2020-03-25 21:23:08 3134

原创 基于Arcface的人脸识别,haar人脸检测

github地址:link有机会从代码角度详叙实现功能:1.基于haar的人脸检测2. 基于Areface的实时人脸识别,效果好3. 优化程序运行效率并现实实时帧率配置环境:1.pytorch2.opencv如何使用:1.创建文件夹:checkspoint2.下载训练好的人脸检测模型, 放到checkpoint。地址:https://pan.baidu.com/s/1tFEX...

2020-03-18 12:13:07 453

原创 pytorch-load模型报错:RuntimeError: Error(s) in loading state_dict for ResNetFace:

问题描述:Missing key(s) in state_dict: “conv1.weight”,Unexpected key(s) in state_dict: “module.conv1.weight”,原因:多了module这个关键字在前面,可能是因为模型是在GPU分布式计算的。改正load:# original saved file with DataParallelstat...

2020-03-17 16:14:53 989

原创 中跟遍历,输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)。

输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)假设元素无重复,采用中跟遍历,不包含##这种,因为中庚遍历可以确定一颗二叉树。解答步骤第一步:声明结构体struct Node{ int val; Node *LC; Node *RC; Node(int k){ this->val=k; LC=NULL; RC=NULL; ...

2019-12-11 12:50:03 140

原创 二叉树 先根遍历 中跟遍历 后跟遍历 迭代+递归实现代码

二叉树 先根遍历 中跟遍历 后跟遍历结构体:struct Node{ int val; Node *LC; Node *RC; Node(int k){ this->val=k; LC=NULL; RC=NULL; }};函数:void preOrder(Node *root){//先根遍历就是DFS呀 递归实现 if(root==NULL){ re...

2019-12-10 22:39:31 1003

原创 c++数据结构 队列和栈

栈头文件:#include<stack>常用操作:定义:stack<int> s;s.empty(); //如果栈为空则返回true, 否则返回false;s.size(); //返回栈中元素的个数s.top(); //返回栈顶元素, 但不删除该元素s.pop(); //弹出栈顶元素, ...

2019-12-10 21:33:18 137

原创 链表反转 迭代+递归实现 学习递归心得

链表反转 可以参考blog 链表翻转的图文讲解(递归和迭代两种实现)迭代实现:好懂Node* ReverseList(Node *head){ Node *p=head; Node *q=p->next; while(p->next!=NULL){ q=p->next; p->next=p->next->next; q->next=h...

2019-12-10 16:26:11 110

原创 字节跳动面试 输入两个值n和k,n表示我们有从1到n个整数,然后将这些整数都字符串化之后按字典排序,找出其中第K大。

题目:输入两个值n和k,n表示我们有从1到n个整数,然后将这些整数都字符串化之后按字典排序,找出其中第K大的。例如:n=15,k=5.那么1-15字符串化之后排序如下:1,10,11,12,13,14,15,2,3,4,5,6,7,8,9。其中第5大的就为13。求解: 限定n<100,求解一百以内的排序。思路:1,10,11,12,13,14,15,16,17,18,19,2,20,...

2019-12-10 13:48:45 1601

原创 C++二维数组传参,创建空间问题 vector代替

一、传参问题:1.形参为二维数组, 并给定第二维长度。必须给出后面的维度大小声明:int findK(int arr[][3], int rows, int cols, int k);调用:findK(arr,n,m,k);缺点:必须在声明中给出第二维度的大小2.形参为指针的指针声明:int findK(int **arr, int rows, int cols, int k...

2019-12-10 11:31:05 556

原创 有序数组平方以后不重复元素个数

给个有序数组,然后求元素平方后不重复的元素个数,例如[-10, -10, -5, 0, 1, 5, 8, 10]直接方法:int NotRep(int a[],int n){ int *b= new int[n]; int k=0; bool flag=false; for(int i=0;i<n;i++){ int temp=a[i]*a[i]; //a[i]**2 f...

2019-12-09 22:58:09 889 1

原创 循环有序数组 二分查找算法 迭代实现

在 [4,5,9,23,1,2,3] 循环有序的数组中查找关键词 K。上次递归实现不是很好,就当是练习递归了,见blog代码如下:int FindK(int a[],int k,int n){ int high,low; high=n-1; low=0; while(high>low){ int mid=(high+low)/2; if(a[mid]>a[low]...

2019-12-09 21:51:26 120

原创 程序对非循环片段 多次执行原因 多线程

代码参考 莫烦python githubimport torchimport torch.utils.data as Datatorch.manual_seed(1) # reproducibleprint ('count')BATCH_SIZE = 5# BATCH_SIZE = 8x = torch.linspace(1, 10, 10) # this is...

2019-12-09 21:12:55 110

原创 循环有序数组 二分查找算法 递归实现

int findK(int a[],int n,int k){ int l=n; int p=div(a,0,n-1); cout<<p<<endl; if(k>a[0]){ return divl(a,0,p-1,k); } else{ return divl(a,p,n-1,k); ...

2019-12-04 16:26:40 436

原创 各种排序 时间 空间复杂度稳定性问题汇总

参考博客

2019-12-03 13:16:28 108

原创 C++ vector用法和传参

C++ vector优点和用法优点:提供了很多现有函数,可以直接调用,空间大小浮动(与静态数组相比优势)用法:见blog c++详细用法初始化之前:即获得空间以前不能访问。vector<int> a;for(int i=0;i<10;i++) a[i]=i;访问错误,改为:vector<int> a(10);for(int i=0;i<...

2019-12-01 14:15:51 1003

原创 C++ string和char 转换

C++ string和char 转换String转为charstring a="huawei";char *p= (char *)a.c_str();char转为stringa=p;More in blogstring需要头文件#include string

2019-12-01 11:41:43 565

原创 Leetcode ERROR: AddressSanitizer: heap-buffer-overflow on address错误

LeetCode数组越界错误刚开始刷题LeetCode,遇见了一个问题,以26 删除重复元素为例,在自己电脑上怎么样都对,但是在leetcode运行过不去,因为leetcode对数组访问是否严格。比如:for(int i=0;i<numsSize;i++){ if(nums[i]==nums[i+1]){ } }这个代码可能访问 numsSi...

2019-11-21 13:49:55 6477 3

原创 C++实现 堆排序

A. 堆排序概念和思想:1.概念:(小堆排序为例,利用完全二叉树,使根节点的值最小,其他节点的值均小于其左右子节点#如果有的话#) 优点:找第N大的值。2. 思想:不用数组的第一个元素即a[0],可以发现父子节点关系是 a[i] a[2i] 和 a[2i+1]。所以不需要二叉树数据结构,只需要数组模拟的二叉树即行。2.1. 步骤分为: 初步建堆 和 n-1交换2.2. 分为两个函数 ...

2019-11-20 23:07:29 220

原创 C++排序 插入排序 冒泡排序 快速排序 以及调用排序

C++排序问题1.c++里面可以直接调用 sort函数排序(在包含 algorithm 头文件的情况下)void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);cmp用于自定义升降序,可参考c++调用排序函数示例代码:#include<iostream>#include...

2019-11-20 15:04:55 672

原创 C++传入数组以后使用sizeof计算数组长度问题

C++传入数组以后不能使用sizeof计算数组长度欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导...

2019-11-19 15:57:32 482

空空如也

空空如也

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

TA关注的人

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