自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ubuntu 安装git失败

查看是否已安装gitgit version查不到版本说明没有然后安装apt-get install git或 sudo获取root权限sudo apt-get install git出现一个选y/n的地方正常安装就没错,我这里出现报错:说是163的镜像找不到这些在我更新 apt-get后得到解决apt-get update更新后 安装成功可正常执行pip install git+https://www.github.com/keras...

2020-12-14 15:55:40 2442 1

原创 将bert预训练模型转化为pytorch版本

huggingface官方的介绍:https://huggingface.co/transformers/converting_tensorflow_models.html直接用命令行把箭头处路径改为自己放原有tf版本预训练模型的路径回车后会有一大堆提示,然后发现路径下多了一个bin文件,加上原本的config 和vocab就够用啦...

2020-11-29 20:38:55 1419 3

原创 bert预训练模型下载链接合集

做个整理,方便以后找不到的时候重新下载Google原版bert:https://github.com/google-research/bert brightmart版roberta:https://github.com/brightmart/roberta_zh 哈工大版roberta:https://github.com/ymcui/Chinese-BERT-wwm Google原版albert[例子]:https://github.com/google-research/ALBERT...

2020-11-29 15:41:09 14808 3

原创 torch.mean()

mean()函数的参数:dim=0,按行求平均值,返回的形状是(1,列数);dim=1,按列求平均值,返回的形状是(行数,1),默认不设置dim的时候,返回的是所有元素的平均值。需要注意的是 mean()函数只能在float格式的数据上处理如果不是,要不就x = x.float()或者定义的时候dtype=torch.float...

2020-11-10 11:02:27 1546

原创 latex的使用小心得

最近在写小论文,用的latex排版,总结下用法安装 texlive : 环境https://zhuanlan.zhihu.com/p/56982388?utm_source=QQ_article_bottomtexlive 有自带的编译器 textwork editor为了好用,下载了texstudio 官网下载地址:http://texstudio.sourceforge.net/之后从相关的论文或期刊官网下载对应latex模板,直接点开.tex文件。下以IEEE模板介绍目录插..

2020-11-09 11:02:14 443

转载 pytorch中tf.nn.functional.softmax(x,dim = -1)对参数dim的理解

转载自:https://blog.csdn.net/Will_Ye/article/details/104994504特别最后一个图很清楚torch.nn.functional.Softmax(input,dim=None)tf.nn.functional.softmax(x,dim = -1)中的参数dim是指维度的意思,设置这个参数时会遇到0,1,2,-1等情况,特别是对2和-1不熟悉,细究了一下这个问题查了一下API手册,是指最后一行的意思。原文:dim (python:int) – A .

2020-10-29 13:46:42 6007 2

转载 对softmax,softmax loss和cross entropy的理解

转载自:https://blog.csdn.net/wgj99991111/article/details/83586508?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.c

2020-10-29 11:27:03 416

原创 pytorch版bert modeling_bert代码解析

huggingface源码地址https://github.com/huggingface/transformers由于源码一直在更新迭代,我的版本可能不太新了,不过大致意思差不多modeling_bert.py预训练模型的下载地址,如果加载时 参数设置没用下好的模型地址,则会自动从这些地址上下载BERT_PRETRAINED_MODEL_ARCHIVE_MAP = { 'bert-base-uncased': "https://s3.amazonaws.com/models.h.

2020-10-28 21:49:06 3619

转载 pycharm 远程连接报错:Error running ‘manage‘: While creating remote tunnel for SshjSshConnection...

使用pycharm远程开发的时候运行项目报错:Error running 'manage': While creating remote tunnel for SshjSshConnection(<crc32=zb65bg>@<crc32=1ljowo7>)@18ad558d: localhost:63342 <== localhost:63342进行下面操作后正常:点击Help -> Find Action -> 输入 Registry在出现的列表

2020-10-26 10:23:30 1492 3

原创 python 1到10000之间拿出一个数,查拿的哪个数

def findnum(arr): if arr[-1]!=10000: return 10000 left,right = 0,len(arr)-1 while left<right: mid = (left+right)>>1 if mid+1==arr[mid]: left=mid+1 else: right=mid return(arr[.

2020-09-03 10:43:04 480

原创 python 手动实现大根堆

主要实现了四个函数:add:往堆里加新的值,相当于在list末尾添加值,然后siftup维护大根堆从上到下从大到小extract:提取堆顶元素,相当于heapq.heappop(heap),提取0位置元素然后用list末尾的元素补到0位置上,siftdown维护大根堆class Maxheap(object): def __init__(self, maxsize): self.maxsize = maxsize #堆的大小 self._elements

2020-08-12 11:34:01 953

原创 python 将矩阵顺时针旋转90度

例:[[1,2,3],[4,5,6],[7,8,9]] 变为 [[7, 4, 1], [8, 5, 2], [9, 6, 3]]不用numpy的方法:先反转再转置 因为是矩阵,反转可以[::-1]也可以matrix.reverse()def tans90(matrix): rows,cols = len(matrix),len(matrix[0]) for i in range(rows): for j in range(cols): if

2020-08-10 14:55:08 10729 2

原创 python 求连续数组中重复最多的元素

d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}res = sorted(d.items(),key=lambda d:d[1],reverse=True)print(res)

2020-08-05 20:24:52 953

原创 python 最小数位和

链接:https://www.nowcoder.com/questionTerminal/4fc97c45a69241e992b3e705e817909c?orderByHotValue=0&mutiTagIds=149&page=17&onlyReference=false来源:牛客网定义S(n)\mathit S(n)S(n),表示n\mathit nn在十进制下的各位数字和。现在给定一个x\mathit xx,请你求出最小正整数n\mathit nn,满足x≤S(n)

2020-08-02 10:46:16 480

原创 python判断是否是质数

质数只能被1或自己整除def isprime(n): if n<2: return False else: for i in range(2,n): if n%i==0: return False break return True

2020-07-28 11:46:17 407

原创 python初始化二维矩阵

n为列,m为行matrix = [[0]*n for _ in range(m)]

2020-07-27 15:53:37 2481

原创 python split默认分割和用空格分割的区别

s = ' we are'print(s.split())print(s.split(' '))打印结果:['we', 'are']['', 'we', 'are']用%20的连接结果s = ' we are'print('%20'.join(s.split()))print('%20'.join(s.split(' ')))打印结果:we%20are%20we%20are

2020-07-13 11:31:18 1858

原创 (python)小菜狗算法日记(二叉树系列)_leetcode 62. 不同路径

从面经描述里找到这道题,面经描述:m*n矩阵,从(0,0)走到(m,n)有多少种路径一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?例如,上图是一个7 x 3 的网格。有多少可能的路径?示例1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> .

2020-07-11 11:41:40 172

原创 python算法日记(链表系列)_leetcode 852. 山脉数组的峰顶索引

我们把符合下列属性的数组A称作山脉:A.length >= 3存在 0 < i< A.length - 1 使得A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1]给定一个确定为山脉的数组,返回任何满足A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1]...

2020-07-09 18:01:57 125

原创 (python)小菜狗算法日记(二分查找系列)_leetcode 704. 二分查找

给定一个n个元素有序的(升序)整型数组nums 和一个目标值target ,写一个函数搜索nums中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1来源:力扣(LeetCode)...

2020-07-08 20:16:35 153

原创 (python)小菜狗算法日记(二叉树系列)_543. 二叉树的直径

给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。示例 :给定二叉树 1 / \ 2 3 / \ 4 5 返回3, 它的长度是路径 [4,2,1,3] 或者[5,2,1,3]。注意:两结点之间的路径长度是以它们之间边的数目表示。来源:力扣(LeetCode)链接:https://leetcode-cn....

2020-07-08 16:39:42 154

原创 (python)小菜狗算法日记(字符串系列)_leetcode 31. 下一个排列

实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/next-permutationclass Solut

2020-07-06 23:24:47 96

原创 (python)小菜狗算法日记(字符串系列)_leetcode 14. 最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有输入只包含小写字母a-z。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-common-prefix暴力,主要是注...

2020-07-02 11:32:23 93

原创 (python)小菜狗算法日记(字符串系列)_剑指offer 第一个只出现一次的字符

题目描述在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)思路一: 利用字符串的切片,用find函数查找去掉当前字符后的字符串是否包含当前字符# -*- coding:utf-8 -*-class Solution: def FirstNotRepeatingChar(self, s): # write code here f

2020-07-02 10:44:51 114

原创 (python)小菜狗算法日记(二叉树系列)_剑指offer 二叉树的下一个结点

题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。中序遍历 左根右把当前节点看作根,左边不用管考虑当前节点有右结点的情况,则下一个结点是右结点的最左一个结点,如3,右结点是4,如5,右结点的最左是6if pNode.right: cur = pNode.right while cur.left: cur = cur.left return cur.

2020-06-29 17:47:08 3108

原创 (python)小菜狗算法日记_剑指offer 滑动窗口的最大值

题目描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,6],2,5,1}, {2,3,4,[2,6,2],5,1}, {2,3,4,2,[6,2,5],1}, {2,3,4,2

2020-06-28 20:42:39 1048

原创 (python)小菜狗算法日记_剑指offer 删除链表中重复的结点

题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5看别人说这题面试挺常考的,看了一下之前自己leetcode同一题的代码写得跟论文一样长,找了一个别人代码学习感觉还不错# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):#

2020-06-26 12:24:14 143

原创 (python)小菜狗算法日记_leetcode 1143. 最长公共子序列

给定两个字符串text1 和text2,返回这两个字符串的最长公共子序列的长度。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。若这两个字符串没有公共子序列,则返回 0。示例 1:输入:text1 = "abcde", text2 = "...

2020-06-23 23:45:33 351 1

原创 复盘排序方法

冒泡排序理解上来讲感觉更像沉底排序,外层循环用来记录内层循环走几次,内层循环判断位置左是否小于位置右,不是则交换,以达到把大的数沉底的目的。第一次内层循环,最大的数沉底,第二次内层循环,倒数第二大的数沉下去,以此类推。arr= [4,3,6,2,4]def bubble(arr): lens = len(arr) for i in range(lens-1): for j in range(lens-i-1): #减掉已经沉底的个数 if

2020-06-23 00:10:37 155

原创 面试智力题:赛马问题求前几名

25个人,每5个人一个跑道,最少经过几次比赛,得到前三名:第一步:25个人分成5组,每组5人,分别比赛,得出每组的第一名,并对第一名进行排序,为A1, B1, C1, D1, E1;第二步:,A1, B1, C1, D1, E1进行一次比赛,得出第一名,假设为A1,此时经过6轮比赛,得出第一名;第三步: 找第二名第三名;首先第一步中D1, E1排除,同时排除对应组所有成员;剩A1, B1, C1三组第四步: 第二名可能人员是A2,B1; 第三名可能人员是A2,A3, B1,B2, C1第

2020-06-18 12:44:19 2189

原创 linux命令,找出关键字出现的次数

查找单个关键字:grep -o ‘objStr’ filename|wc -lgrep匹配关键字 objStr:目标关键字 filename文件名 |wc -l查有多少个,好像linux里都是小写L查找多个关键字:grep -o ‘objStr1|objStr2' filename|wc -l

2020-06-17 20:09:41 4967

原创 (python)小菜狗算法日记_剑指offer 字符串的排列

题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。# -*- coding:utf-8 -*-class Solution: def Permutation(self, ss): # write code here if not ss:

2020-06-16 23:57:26 133

转载 10亿个数中找出最大的10000个数(top K问题)

转载自https://blog.csdn.net/zyq522376829/article/details/47686867 建立最小堆        先拿10000个数建堆,然后一次添加剩余元素,如果大于堆顶的数(10000中最小的),将这个数替换堆顶,并调整结构使之仍然是一个最小堆,这样,遍历完后,堆中的10000个数就是所需的最大的10000个。建堆时间复杂度是O(mlo.

2020-06-16 23:55:10 179

原创 (python)小菜狗算法日记_剑指offer 链表中倒数第k个节点

题目描述输入一个链表,输出该链表中倒数第k个结点。这道题跟lc那道删除链表中倒数第k个结点很像,那个题两个思路,一个是循环两次,一个是类似快慢指针,快的先走k步,再快慢一起走,如果快的走到None,则慢的走到倒数k,快的走到None前面也就是倒数第一个结点,慢的走到倒数k+1个结点,此时删掉慢的的后面那个结点就可以。这道题三个思路,前两个和lc的思路相似,另一个是借助辅助栈,返回辅助栈的倒数第k个思路二:快慢指针:# -*- coding:utf-8 -*-# class ListN

2020-06-05 11:08:45 90

原创 (python)小菜狗算法日记_剑指offer 二进制中1的个数

题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。这个题比lc那道多了一个负数的约束条件,这里负数用补码表示,直接把负数&上0xffffffff就可以得到它的补码,之前我还纠结过这为啥可以得到补码,写了一篇博客。如果是正数很容易想到就是用整数转二进制的方法,辗转除以2,余数倒过来就是二进制,那么求二进制有几个1直接看余数有几个1就可。具体的代码:# -*- coding:utf-8 -*-class Solution: def NumberOf1(s

2020-06-03 23:39:29 79

原创 (python)小菜狗算法日记_剑指offer 矩阵覆盖

题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?比如n=3时,2*3的矩形块有3种覆盖方法:找了半天规律一直纠结加在左边和加在右边会造成重复如何删减,万万没想到这也是dp[n]=dp[n-1]+dp[n-2],不由感觉这个状态转移能做动态规划的大部分简单题。这个规律咋总结出来的呢,就是把状态n-1的所有矩形右边加一个竖条子,然后会发现横的没考虑,就把状态n-2的所有矩阵右边加两个横条子。# ..

2020-06-02 23:47:41 116

原创 (python)小菜狗算法日记(动态规划,贪心) _剑指offer 变态跳台阶

题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。这个题就是那个青蛙跳,只能跳1阶或2阶的升级版,其实差不多1和2的情况还是不变,3的时候除了可以由1跳2阶+2跳1阶+直接跳3阶(1种)以此类推,4也是1跳3阶+2跳2阶+3跳1阶+直接跳4阶(1种)因此这个动态规划的状态转移方程就是dp[n]=dp[:n]+1 这里dp[n]就是前面n-1个状态相加# -*- coding:utf-8 -*-class Solu

2020-06-02 19:02:21 203

原创 (python)小菜狗算法日记(链表系列)_leetcode 19. 删除链表的倒数第N个节点

给定一个链表,删除链表的倒数第n个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n保证是有效的。进阶:你能尝试使用一趟扫描实现吗?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list有一段时间没...

2020-06-01 09:34:51 121

原创 (python)小菜狗算法日记 _leetcode 16. 最接近的三数之和

给定一个包括n 个整数的数组nums和 一个目标值target。找出nums中的三个整数,使得它们的和与target最接近。返回这三个数的和。假定每组输入只存在唯一答案。例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/3sum-closest这个题跟之前那个15题...

2020-05-31 12:48:06 142

原创 (python)小菜狗算法日记 _剑指offer 二维数组中的查找

题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。# -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(self, s): # write code here string = '' for w in s:

2020-05-29 23:34:51 63

空空如也

空空如也

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

TA关注的人

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