- 博客(111)
- 收藏
- 关注
原创 pytorch使用Bert
主要分为以下几个步骤:下载模型放到目录中使用transformers中的BertModel,BertTokenizer来加载模型与分词器使用tokenizer的encode和decode 函数分别编码与解码,注意参数add_special_tokens和skip_special_tokensforward的输入是一个[batch_size, seq_length]的tensor,再需要注...
2020-05-01 00:35:12
2662
3
原创 pytorch——使用tensorobard不刷新的问题
在tensorflow中可以使用tensorboard来查看训练过程中loss的变化,来判断模型是否已经收敛 ,或者需要查看train dataset与dev dataset上效果来判断是否有过拟合的现象。pytorch中已经集成了tensorboard的API,不用再使用tensorboardX来调用api了。但是启动tensorboard的web页面时,需要安装tensorboard。并且不...
2020-04-28 23:22:05
4949
3
原创 docker使用GPU
参考:https://blog.csdn.net/lq1ns259ej3okyvk4jf/article/details/78764102https://blog.csdn.net/crazybean_lwb/article/details/103289614https://blog.csdn.net/qq_29300341/article/details/84754970https://...
2020-04-27 15:31:13
915
原创 mac无法读写NTSF U盘
MS的 FAT32在拷贝文件时,有大小限制,不能拷贝大于4GB的文件,MS的NTFS在拷贝文件时没有大小限制,但是在Mac OS上是无法使用写的,read-only。所以使用Mac的 Disk Utility工具把U盘重新format为exFAT格式,这样即可以在MS上读写也可以在Mac OS上读写了。...
2020-04-26 10:42:36
339
原创 mlflow
main.py# -*- encoding: utf-8 -*-import torchfrom torch import nnimport mlflowimport mlflow.pytorchx = torch.tensor([[1.0], [2.0], [3.0]])y = torch.tensor([[2.0], [4.0], [6.0]])class Model(n...
2020-04-20 21:40:31
358
原创 pytorch的einsum
# -*- coding: utf-8 -*-import torch# 转置a = torch.arange(6).reshape(2, 3)print('a:{}'.format(a))b = torch.einsum('ij->ji', [a])print(b.size())print(b)# 求和b = torch.einsum('ij->', [a])...
2020-04-17 23:20:42
801
原创 leecode——remove duplicate elements(83)
def deleteDuplicates(head: ListNode) -> ListNode: if not head: return head dummy = ListNode(0) dummy.next = head cur = head.next while cur: if cur.val != head.v...
2020-04-12 23:21:45
218
原创 leecode——merge two sorted linked list(21)
做链表相关的题的工具类和方法:ListNode是链表的一个节点array_to_list:把一个array转化为链表print_list:打印一个链表# -*- coding:utf-8 -*-class ListNode: def __init__(self, x): self.val = x self.next = Nonedef a...
2020-04-12 23:20:09
124
原创 pytorch model.train和 model.eval
在模型训练和测试(包括evaluate或test)两个过程中,需要添加相应的代码,包括 model.trian()和model.eval(),为什么一定要添加,两者有什么区别?model.train() :启用 BatchNormalization 和 Dropoutmodel.eval() :不启用 BatchNormalization 和 Dropout...
2020-04-12 18:19:48
847
原创 情感分析综述
情感分析与情感分类情感分析(sentiment analysis)是近年来国内外研究的热点,其任务是帮助用户快速获取、整理和分析相关评价信息,对带有情感色彩的主观性文本进行分析、处理、归纳和推理。情感分析包含较多的任务,如情感分类(sentiment classification)、观点抽取(opinion extraction)、观点问答和观点摘要等。因此很难简单地将其划归为某一个领域,往往...
2020-04-09 16:49:11
2818
原创 tensorflow之tensorboard
文章目录1. Tensorboard概述2. 变量命名空间的管理3. Tensorboard显示变量的运行时间及内存使用情况4. Tensorboard监控metrics指标1. Tensorboard概述Tensorboard 是Tensorflow的可视化工具,tensorboard可以通过tensorflow程序输出的日志来可视化Tensorflow程序的运行状态。Tensorboard...
2020-04-07 22:32:26
891
原创 pytorch pin_memory()
在创建Dataloader的使用pin_memory()函数pin_memory就是锁页内存,创建DataLoader时,设置pin_memory=True,则意味着生成的Tensor数据最开始是属于内存中的锁页内存,这样将内存的Tensor转到GPU的显存就会更快一些。主机中的内存,有两种存在方式,一是锁页,二是不锁页,锁页内存存放的内容在任何情况下都不会与主机的虚拟内存进行交换(注:虚拟内...
2020-04-04 23:47:37
3652
原创 pytorch 使用GPU
# 查看gpu是否可用,在pytorch中cuda指的就是gpu的相关操作>>> torch.cuda.is_available()True# 获取cuda设备>>> device = torch.device('cuda')>>> devicedevice(type='cuda')# 随机创建一个两行三列的正态分布的tensor...
2020-04-04 23:24:21
556
原创 python pdb调试
# 进入pdb调试python -m pdb abc.pyhttps://www.cnblogs.com/c-x-a/p/10674288.html
2020-04-03 17:12:00
140
原创 使用pickle时遇到TypeError: can't pickle _thread.RLock object
两次遇到这个问题,但是原因不同:第一次是调用sklearn的包进行多线程训练时,需要传入一个参数是一个clallabe的函数,我把这个函数与训练的函数放到同一个类里,传入时用的是processor=self.my_processor,后面的my_porcessor是自己封装的方法,processor是要多线程训练的一个参数。后面解决的方法是把my_processor函数封装到这个类的外面,pr...
2020-04-01 22:34:42
6978
原创 Linux查看系统版本、cpu、文件系统
uname -a只能查看系统内核版本及相关,但是没有系统版本uname -aCentoscat /etc/redhat-release:查看etc的redhad的发行版本cat /etc/redhat-releaseCentOS release 6.9 (Final)Ubantulsb_release -a:查看系统的版本信息 ubantu是18.04的lsb_rele...
2020-04-01 17:29:02
733
原创 tensorflow保存加载模型
文章目录在训练过程中保存模型预测或updating模型时,加载模型总结使用tensorflow版本为1.12在训练过程中保存模型def save(sess, save_path): """save_path is a file path""" self.saver.save(sess, save_path=save_path)预测或updating模型时,加载模型def res...
2020-03-31 13:11:37
210
原创 使用GPU训练模型遇到的问题
使用GPU训练模型,遇到显存不足的情况:开始报chunk xxx size 64000的错误。使用tensorflow框架来训练的。仔细分析原因有两个:数据集padding依据的是整个训练数据集的max_seq_length,这样在一个批内的数据会造成额外的padding,占用显存;在训练时把整个训练数据先全部加载,造成显存占用多。如果遇到第一种情况,即使使用CPU训练速度也非常慢。...
2020-03-30 19:54:22
1513
原创 leecode——remove element(27)
用两个指针来处理,存储的是删除后的index,另一个是遍历数组,如果数组中的值是要删除的值的话,就交换,这里自己和自己交换。i = 0for j in range(len(nums)): if nums[j] != val: # 如果第1个数就不是要删除的数的话,自己交换自己。 nums[i] = nums[j] i += 1retu...
2020-03-29 01:37:15
159
原创 leecode——3sum(15)
三个数求和:找到和为0的三个数,并且结果中不能有相同的三个数据(虽然在nums是不同位置的数)参考:https://leetcode.com/problems/3sum/discuss/232712/Best-Python-Solution-(Explained)主要思路:(1)对数组排序,时间复杂度:O(NlogN)O(NlogN)O(NlogN)(2)遍历数组,先固定一个数,如果和上...
2020-03-29 00:13:46
115
原创 leecode——contianer with most water(11)
遇到这种题目不要慌张,根据要求,一步步的来思考。from typing import Listdef max_area(height: List[int]) -> int: """ 暴力遍历,时间复杂度是O(n^2),本质上也是双指针,two pointers :param height: :return: """ max_a = 0...
2020-03-28 22:28:03
147
原创 NER任务语料
微软亚洲研究院NER数据来源:MSRA版权:未知数据大小:13M样本个数:train:222万字,test:17万字人民日报1998.1.1~2000.12.31,及204年数据,分词之后的。来源未知版权未知Boson-NER-6c来源:https://bosonnlp.com/版权:不可商用数据大小样本个数:2000个段落下载:...
2020-03-23 18:45:36
1721
原创 开源软件的licence
在github经常看到有LICENCE信息,来声明版权,对于哪些是可以商用的,商用的时候应该注意哪些问题?1. Apache License 2.0要点:Apache Licence是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊...
2020-03-23 17:53:31
576
原创 sphinx为源码生成文档
1. 安装pip install sphinx2. 创建项目3. 初始化文档在sphinx_usage目录下创建两个目录doc和src。doc放文档,src放代码。sphinx-quickstart一步步设置4. 修改conf.py文件指定源码文件 import os import sys sys.path.insert(0, os.path.abspath('../....
2020-03-21 13:22:12
410
原创 python字符串替代、查找
字符串取代import res = '#abc'# 把s中‘#’去掉# re.sub()函数有三个参数,第一个是要匹配的正则,第二个是要替代的字符串,第三个文本s = re.sub(r'#','', s) # s = 'abc'查找字符串中所有匹配的子串import restring = 'address'# 查找到string中所有所有的'd'的索引idx = [s...
2020-03-20 12:17:38
535
原创 pytorch中的变长bi-lstm
在Tensorflow 1.12中如果LSTM输入的序列是变长的话,有dynamic_rnn()或bidirection_dynamic_rnn()方法来处理,但是在pytorch中怎么处理呢?在pytorch中也有相对应的方法在torch.nn.utils包中的pack_padded_sequence()和pad_packed_sequence()用来处理变长序列的问题。pack是压缩的意思,...
2020-03-20 00:30:18
860
原创 pypi国内源
pypi是python package index,索引python包的,但是官网经常比较慢,打不开。国内的镜像有:阿里云 http://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣(douban) http://pypi.douban.com/simple/...
2020-03-19 19:02:04
469
原创 敏感词检测算法review
字符串匹配是一个技术活,敏感词检测首先有一个敏感词词库,也就是敏感词的列表。第一个想到的方法把敏感词放到一个set里,再待检测的文本分词,到set里去匹配;第二种方法是遍历set,用正则表达式来过滤。以上两种方法,在数据量小的时候没有问题,但是,当数据量非常大的时候,性能就不行了。前缀树算法:https://blog.csdn.net/qq_37410328/article/detail...
2020-03-18 11:15:10
5584
3
原创 leecode——two sum(1)
给定一个数组和一个目标值,在数组中找到两个数相加等于目标值。假设,数组中只有一对满足条件的数对。并返回这个数对的索引。比如[3,3,4,1],target=6,数组中3和3相加为6, 所以返回[0,1]难点:暴力循环容易解决,但是时间复杂度太高。解决方法:空间换时间,用一个map把时间复杂度从O(n2)O(n^2)O(n2)减小到O(n)O(n)O(n)。# -*- coding: utf...
2020-03-15 10:00:02
148
原创 leecode——remove duplicate in-place(26)
给定一个已经排好序的数组,原位去重,并返回去重后数组的长度。问题的要求是不能用数组的copy,也就是空间复杂度为O(1)O(1)O(1)。比如:[0,0,1,1,2]原位去重后的数组的前3个数分别是0,1,2,返回的长度为3。思路:难点再于in-place,但是解题的出发点也在in-place,既然是原位。如上面的例子,一个长度是5的数组,去重的前三个位置放0,1,2,那么其它数去哪儿了,所...
2020-03-15 00:24:14
187
原创 Pytorch(二)基本API及使用
pytorch的API1. torch包初始化Tensor,Tensor的变换,随机初始化一个Tensor, 上下文管理器torch.no_grad(),不进行梯度传播。torch.randn(2,3)随机一个两行三列的tensortorch.zeros(3)随机一个一维的0向量torch.argmax() 获取最大位置torch.matmul()两个矩阵相乘,支持numpy的bro...
2020-03-13 22:32:41
1117
原创 tensorflow 1.12使用中的问题
1. 变量如何初始化当从已经持久化的模型文件中restore模型时,出现报错:ValueError: Variable encoder/word_embedding already exists, disallowed. Did you mean to set reuse=True or reuse=tf.AUTO_REUSE in VarScope? Originally defined a...
2020-03-13 10:46:47
444
原创 Mac book常用操作
Homebrew是安装包管理工具,可以自动下载依赖文件,与CentOS的yum,Ubantu/Deepin的apt一样。brew search xxxbrew install xxx安装方法:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"安装an...
2020-03-11 22:16:21
130
原创 序列标注之Bi-LSTM-CRF
文章目录Bi-LSTM-CRF1. 模型原理1.1 CRF原理2. 模型实现2.1 tensorflow实现2.2 pytorch实现Bi-LSTM-CRF1. 模型原理1.1 CRF原理2. 模型实现2.1 tensorflow实现2.2 pytorch实现...
2020-03-05 21:50:54
3103
3
原创 numpy中的axis
numpy中的axis:axis=0 代表是沿行的方向,无论是sum还是concatenate, 其它axis的维数是不变的axis=1代表是沿列的方向axis=None 代表是flatten之后的array>>> np.sum([0.5, 1.5])2.0>>> np.sum([0.5, 0.7, 0.2, 1.5], dtype=np.in...
2020-03-04 14:56:28
292
原创 知识图谱
文章目录第一章1.1 知识图谱与语义概述1.2 典型的知识库项目1.3 知识图谱相关技术第一章1.1 知识图谱与语义概述人的知识偏重关连,web的页面是文本链接,但是对于页面中的document不能处理。要从文本链接到知识链接。知识图谱是2012年谷歌提出用于语义搜索。Knowledge Graph的发展历程:1.2 典型的知识库项目1.3 知识图谱相关技术...
2020-02-24 20:36:07
2455
1
原创 HMM用于序列标注
HMM原理初始化矩阵、发射矩阵、状态转移矩阵的训练使用viterbi预测jieba的使用方法保存预训练好的参数,直接使用并预测
2020-02-07 00:17:15
1666
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅