- 博客(66)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 基于BERT预训练的中文命名实体识别TensorFlow实现
BERT-BiLSMT-CRF-NERTensorflow solution of NER task Using BiLSTM-CRF model with Google BERT Fine-tuning使用谷歌的BERT模型在BLSTM-CRF模型上进行预训练用于中文命名实体识别的Tensorflow代码’代码已经托管到GitHub 代码传送门 大家可以去clone 下来亲自体验一下!g...
2019-01-03 11:58:25
139583
460
原创 Centos 7源码安装Python3
Centos 7源码安装Python3因为发先grpc 的多进程在anaconda环境下会出现内存溢出的bug,找了一圈没发现咋解决,后来源码安装Python问题不再出现,这里记录一下编译安装的过程。1. 下载安装包wgt https://www.python.org/ftp/python/3.7.10/Python-3.7.10.tar.xz2. 解压tar -xvf Python-3.7.10.tar.xz3. 修改ssh相关内容cd Python-3.7.10vim Modules
2021-12-28 11:36:43
1039
原创 2021-07-14
这里写自定义目录标题ubuntu 安装 l2tp VPN Client1.安装2. 配置ubuntu 安装 l2tp VPN Client1.安装 sudo add-apt-repository ppa:nm-l2tp/network-manager-l2tp sudo apt-get update sudo apt-get install network-manager-l2tp network-manager-l2tp-gnome2. 配置一路按照界面进行配置,
2021-07-14 14:07:16
206
原创 pySpark读写MongoDB
最新想对mongo中一个上亿的大collection进行操作,做一些数据分析,发现使用find()对表进行轮询是真的慢啊,想起使用spark进行数据处理,这里记录一下pyspark对mongo的操作,走了一些小坑。内容比较简单,直接上代码:#!/usr/bin/env python3# -*- coding: utf-8 -*-"""@Time : 2021/6/16 9:20@Author : MaCan@Mail : ma_cancan@163.com@File :
2021-06-23 09:39:48
1184
原创 conda 环境迁移
conda 环境迁移今天需要在内网进行python服务的部署,但是发现内网机器无法访问外部网络,无法进行相关依赖包的安装,于是诞生此文。本文使用conda-pack 进行conda 环境的迁移。1. 安装conda-pack pip install conda-pack2. 在本地打包好conda 环境conda pack -n my_env命令中的my_env是你conda中的环境名,替换成自己的就好执行完以后在当前目录下会生成my_env.tar.gz的压缩包3. 目的机器环境
2020-10-28 11:45:31
1579
原创 高维空间向量搜索---腾讯词向量相似检索实践
高维空间向量搜索—腾讯词向量相似检索实践最近工作上遇到一些语料OOV问题,想到可以使用同义词进行替换来弥补部分OOV带来的问题,于是就有了本篇博客的相关实验。最简单的可以使用gemsim在语料库上训练一个word2vec,然后使用gemsim自带的相似度API直接进行计算,这种方法是最简单的(不考虑内存消耗,计算时间的情况下)。但是自己的语料本身就有OOV问题,训练后,估计效果也不行,于是想到使用腾讯的语料,网上有一篇使用腾讯语料计算相似词的文章,但是只能使用公众号来请求,没有给出代码。本文记录一下使
2020-08-19 09:59:58
1261
1
原创 redis 亿级别的key-value 存储查询实践
redis 亿级别的key-value 存储查询实践1. 背景2. redis pipline 插入3.redis hash键值优化存储4.分桶存储海量数据5.数据定时删除6.其他7.参考1. 背景最近项目中有使用到redis,需要存储的数据是key-value类型的,为了优雅的使用redis,提高查询效率,学习了一下,这里记录使用到的redis相关知识,主要涉及:redis的pipline插入,redis hash键值优化存储分桶存储海量数据数据定时删除其他下面我将使用n-gram来
2020-08-12 16:51:18
2282
原创 python 使用uwsgi 开启多进程服务
通常,我们使用flask起好了一个服务后,希望使用多进程来更高效的使用我们的服务,是我们的服务能更大的处理并发,这里记录一个简单的使用。目录flask服务编写uwsgi配置文件uwsgi启动多进程关闭所有开启的多进程服务1.创建一个简单的flask服务这里我们模拟一个简单分词的HTTP服务,服务的输入输出如下:用户输入: 字符串的query服务输出: 分词结果服务的代码如下...
2020-04-04 18:41:56
6323
原创 解决TensorRT编译时protobuf模块编译错误
在编译TensorRT6.0的时候,可能会遇到protobuf下载导致的错误,错误的issue:https://github.com/NVIDIA/TensorRT/issues/78主要报错内容:CMakeFiles/third_party.protobuf.dir/build.make:90: recipe for target 'third_party.protobuf/src/thi...
2020-02-23 14:42:46
2152
原创 从BERT迁移到ALBERT
从BERT迁移到ALBERT本文简单记录如何将使用BERT fine tuning 的代码转化为使用Albert进行训练,改动真的不要太多。我使用的是谷歌官方的Albert https://github.com/google-research/ALBERT如果你原来已经有BERT的fine tuning的代码,那么你只需要修改四个地方,我这里以https://github.com/macan...
2020-02-11 13:03:53
3352
16
原创 Fast Trasnformer 加速BERT推理实践
Fast Trasnformer 加速BERT推理实践上篇BERT做NER的文章很受大家欢迎,其中不乏童鞋询问我如何加速BERT方法的推理速度,本文就对此进行简单的描述,主要是基于NVIDIA开源的Fast Transformer的一个实践。本文的主要内容如下:Fast Transoformer文本分类加速实践其他可以加速推理的方法小调研1. Fast Trasnformer...
2020-02-09 14:25:31
4155
1
原创 卷积神经网络计算过程中的维度变化
最近在学习pyTorch, 在阅读pytorch教程的时候,发现有一个简单的卷积神经网络,之前搞明白过这个过程,时间太久,都忘的差不多了, 正好写个笔记记录总结一下代码如下:#! usr/bin/env python3# -*- coding:utf-8 -*-""" @Author:MaCan @Time:2019/10/29 19:59 @File:torch_net.py ...
2019-10-30 15:23:29
6238
原创 合并子区间
本题leetcode 地址:https://leetcode-cn.com/problems/merge-intervals/组合子区间,将重合的区间进行最大的组合,得到没有重合的区间例如输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].核心思...
2019-10-26 17:44:34
427
原创 清华大学THUCNews数据集处理方法
清华大学THUCNews数据集处理方法数据集下载地址:http://thuctc.thunlp.org/本文主要记录了清华的THUCNEWS数据集用于文本分类的数据预处理方法,比较简单直接上代码#! usr/bin/env python3# -*- coding:utf-8 -*-""" 清华大学的文本分类数据集的处理 @Author:MaCan @Time:2019/9/17 ...
2019-09-17 15:18:48
7358
1
原创 Spark中得groupBy,reduceByKey和 combineByKey区别于各自用法 (5)
Spark中得groupByKey,reduceByKey和 combineByKey区别于各自用法这篇博文记录Spark中经常使用到的shuffle操作groupByKey,reduceByKey和 combineByKey,其中前面两个分别还有不带Key,可以在RDD的trans过程中自定义key的用法,在前面的计算TF-IDF文章中有使用到。下面就一一的来介绍这三个API,使用词频统计的...
2019-02-21 21:48:12
4812
原创 PySpark TopK 问题(分组TopK)(4)
PySpark TopK 问题(分组TopK)记录几种利用PySpark计算TopK的方法,准备使用两个例子,其中第一个例子是计算不同院系,不同班,不同学科的成绩前K名的分数。第二个例子以文本数据为例,计算在不同文本类别下出现TopK 频率的单词。1.准备数据1,111,68,69,90,1班,经济系2,112,73,80,96,1班,经济系3,113,90,74,75,1班,经济系4...
2019-02-21 15:29:10
1548
原创 在分布式环境Spark中关闭jieba延时加载等优化方法 (3)
在分布式环境中关闭jieba延时加载的方法这篇博客是记录在使用spark+jieba的过程中,每个task调动jieba分词的时候需要进行延时加载或者从缓存中读取模型文件从而浪费时间问题:Building prefix dict from the default dictionary ...Loading model from cache C:\Users\C\AppData\Local\T...
2019-02-21 14:43:02
2146
4
原创 PySpark TF-IDF计算(2)
使用PySpark进行TF-IDF计算这篇博文将记录使用PySpark进行TF-IDF统计的过程,将提供多种计算方法。1. 准备数据为了简单,同时为了验证自己的程序有木有错误,我使用如下的测试数据:1 我来到北京清华大学2 他来到了网易杭研大厦3 我来到北京清华大学4 他来到了网易杭研大厦5 我来到北京清华大学,我来到北京清华大学一共五行,每行代表一篇文章,每行中得文章id和正...
2019-02-19 20:26:40
5335
8
原创 Windows下PySpark 环境搭建篇以及词频统计(1)
Windows下pyspark环境搭建以及使用结巴分词进行词频统计1. 环境搭建环境搭建的教程已经有很多人写了,我就不多写了, 大家自行百度(推荐在Windows下面安装2.3.1版本的pyspark也是这个版本,避免后面踩坑https://github.com/apache/spark/pull/23055)在这里下载spark的软件包放到任意目录,解压后路径避免空格,然后将bin路径加...
2019-02-18 11:34:45
801
原创 hadoop2.7编译以及部署时遇到的坑
hadoop2.7编译以及部署时遇到的坑1.编译时,mvn 出错使用如下mvn编译,注意-P后面不要带docsmvn package -Pdist,native -DskipTests -Dtar部署完成后,运行start-dfs.sh出现:unable to load native-hadoop library for you platform解决方法:在etc/hadoop...
2018-10-04 22:43:01
482
1
原创 Spark 使用JDBC进行select查询
spark 可以 通过jdbc直接将数据库中的一整张表直接读取出来作为一个DataFram,这样会出现几个问题: - 1. 表格太大,导致出现OOM; - 2. 读出来很多不需要的行,在join的时候,造成性能的浪费 这里记录通过JDBC通过select where语句只查询表格中的指定行java 代码如下:package utils;import Main.NewWor...
2018-08-24 14:34:07
9042
2
原创 Spark 学习笔记 TF-IDF
spark 计算TF-IDF的多种方法TF-IDF相关概念请移步百度百科下面记录自己在做关键词抽取的时候,计算TF-IDF时候的经历,使用spark不多。 下面的始终方法我都试过,最后选了第四个方案,在500W篇新闻中,计算2-gram的IDF,用时5个小时,虽然时间用的很长,但是最终是可以跑起来。1. 基于mllib.HashingTF这个方法几乎可以直接copy 官网中的...
2018-08-24 14:19:28
1586
原创 Java 帕斯卡三角/杨辉三角
帕斯卡三角在国内教科书中成为杨辉三角,他们形如下图: 观察其规律,可以看到每一层的其实和结束都是1,层数和元素个数相同。在当层数大于2层,非起始元素的值计算公式为:data[i][j] =data[i-1][j-1] + data[i-1][j] 分析到这里,解决方法已经出来了,我们使用递推公式,对每一层的元素进行处理,下面给出对应的实现:1. 使用递推公式求解杨辉三角 public
2018-02-19 16:31:02
1277
原创 克隆链表
链表克隆,今天看面经的时候,发现很多公司都考了这个题目,也有很多童鞋挂在这个题目上,废话不多说,直接说解决办法。1. 克隆链表最简单的,从直接克隆简单链表开始吧,链表结构定义如下: class RandomListNode { int label; RandomListNode next, random; RandomListNode(int x)
2018-01-05 15:23:06
637
原创 LeeCode 列表排序
题目一 使用的方法对链表进行排序原题: 分析: 复杂度为O(n log n) 的排序第一时间想到的就是归并排序,没啥好分析的,算法过程是递归的进行划分,排序,最后进行合并
2018-01-04 15:14:29
449
原创 文本分类---朴素贝叶斯(2)
基于sklearn的文本分类—朴素贝叶斯(2) 本文是文本分类的第二篇,记录使用朴素贝叶斯进行文本分类任务,数据集下载地址:http://thuctc.thunlp.org/ 文本分类的主要内容如下: - 1.基于逻辑回归的文本分类 - 2.基于朴素贝叶斯的文本分类 - 3.使用LDA进行文档降维以及特征选择 - 4.基于SVM的
2018-01-03 18:04:00
6806
7
原创 文本分类---逻辑回归(1)
基于sklearn的文本分类—逻辑回归(1) 本文是文本分类的第一篇,记录使用逻辑回归进行文本分类任务,数据集下载地址:http://thuctc.thunlp.org/ 文本分类的主要内容如下: - 1.基于逻辑回归的文本分类 - 2.基于朴素贝叶斯的文本分类 - 3.基于SVM的文本分类 - 4.基于卷积神经网络词级别的文本分
2018-01-03 17:40:04
20776
32
原创 sklearn 中的Countvectorizer/TfidfVectorizer保留长度小于2的字符方法
在sklearn中的sklearn.feature_extraction.text.Countvectorizer()或者是sklearn.feature_extraction.text.TfidfVectorizer()中其在进行却分token的时候,会默认把长度<2的字符抛弃,例如下面的例子:x = ['i love you', 'i hate you', 'i']vect = CountVe
2017-11-13 19:54:38
2908
原创 Java 从MySQL中读取大量数据
本文记录使用java的jdbc从MySQL中读取大量数据不出现OOM的方法,一般的使用jdbc读取的时候,会将查询结果全部导入到内存中,如果数据量很大的时候会出现OOM异常,本文将介绍如何使用MySQL中的分页功能,设置featchSize大小防止OOM,轻松读取海量数据的方法(笔者测试读取量为3000W行数据)
2017-10-22 19:37:25
8561
1
原创 [3].Spark 学习笔记 使用java ---explode
这篇文章将记录如何使用spark DataFrame将列数据展开,这里使用的是explode方法将对List数据和Map分别给出展开的例子
2017-10-20 16:47:12
10232
1
原创 使用server版的哈工大LTP进行NLP任务(Java实现)
哈工大的LTP可以说是开源中评测得分相对高的(比HanLP, jieba,ansj等都要好很多) 本篇文章记录了使用Java语言发送POST请求,请求搭建在服务器端的LTP-server进行NLP 处理。
2017-10-20 15:57:39
2699
1
原创 neo4j 大量数据的批量导入
这篇文章 将记录使用neo4j-import 工具进行大批量数据快速导入neo4j数据库中的具体过程。Super Fast Batch Importer For Huge Datasets Into Neo4j Graph Database
2017-10-20 15:32:46
21138
11
原创 [1].Spark 学习笔记 使用java ---word count
准备写一个系列的笔记,记录自己学习spark的过程,因为公司使用的是java语言,所以本系列的博客都是以java语言实现的,欢迎拍砖。有更好的实现方法,请告诉我,一起学习。
2017-09-25 14:23:50
862
原创 Stanford CoreNLP 进行中文分词
Stanford CoreNLP 进行中文分词中文分词的工具有很多,使用斯坦福的CoreNLP进行分词的教程网上也不少,本篇博客是记录自己在使用Stanford CoreNLP进行中文分词的学习笔记。1. 工具准备1.1 下载NLP相关包:网址: https://stanfordnlp.github.io/CoreNLP/index.html 需要下载的包看下图: 1.2 准备jar包将下载下来
2017-06-10 17:04:14
13869
7
原创 决策树(1)ID3原理以及代码实现
1. 简介决策树又称判别树,它是基于树形结构来进行决策的,就比如咱以前学过的二叉树,一个节点有两个孩子,左孩子为true,右孩子为false,在决策树中,一个节点代表一个属性(特征,feature。。。)每一个属性可能有不同的属性值,有几个不同的属性值就有几个分支,决策树的树形结构就是数据集中的每一个属性作为其节点构造起来的。2. 划分选择在进行决策树构建的时候,我们的目标是使的划分到每一个节点的样
2017-03-09 13:32:17
1126
原创 HBase MapReduce 解决java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/...
在使用MapReduce 和HBase结合时候,在运行程序的时候,会出现 java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/xxx错误,原因是Hadoop的运行环境中缺少HBase支持的jar包,按照如下方法可以解决
2017-02-18 21:26:17
6454
原创 恢复HDFS中删除的文件
刚才不小心操作删除了HDFS中的一个目录文件,百度了一些,发现找回其实挺简单的,笔者提供两种方法:1.通过终端命名;2.使用HDFS的API相关知识在HDFS中删除的文件不会马上直接删除掉,而是将其移动到了一个名为Trash的目录下,这种原理相当于电脑总的回收站机制,现在需要做的就是从回收站中将我们删除的文件还原出来。
2017-01-25 19:39:23
4754
centos7安装在分区时/boot分区只能分配3M
2014-11-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人