- 博客(177)
- 资源 (7)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 传统机器学习流程总结
数据采集和标记爬虫技巧总结各行业小知识总结数据清洗object值#在实际模型建立中,训练集和测试集一般分开处理,如果直接使用分类处理,会导致新数据没有一个规定#查看多少类变量tab_1['字段'].unique()def function(a): if '数值或字符'in a : return 1 else: return 2tab_1['结果'] = tab_1.........................
2019-10-17 08:19:34
3538
2
原创 基于规则的错别字改错
利用ahocorasick库调用AC自动机寻找已经定义的错别字,不进行分词,并输出错别字开始位置和结束位置,并且在原文中进行改正。
2023-04-18 15:01:52
249
原创 pd、keras转onnx
pd 转onnx python -m tf2onnx.convert --saved-model ./saved_model.pb --opset 13 --output ./model.onnxkeras 转onnxonnx_model = keras2onnx.convert_keras(model, model.name)temp_model_file = 'model.onnx'onnx.save_model(onnx_model, temp_model_file)
2022-07-01 17:44:52
697
原创 python倒排索引
倒排索引一般用在你已经知道有些值,你想返回去去找到对应的关系就可以用这种方法,其实就是一个字典反过来查找def false_index(index_set): all_words = [] for i in index_set.values(): cut = i.split() all_words.extend(cut) # set_all_words = set(all_words) # 构建倒排索引 invert_index =
2022-05-25 10:47:15
2222
原创 python去重
def getNonRepeatList1(data):return list(set(data))def getNonRepeatList2(data):new_data = []for i in range(len(data)):if data[i] not in new_data:new_data.append(data[i])return new_data#多维数组适用,作用与最外层def getNonRepeatList3(data):return [i for n, i in
2022-04-29 15:52:15
117
原创 estimator 模型保存与使用
1:estimator 是tensorflow的高级封装库,但是tensorflow 分为两个版本,1.X与2.X,本次文章两个版本都会说明,方便大家进行判断1.0保存与读取output_dir=’../outer‘def serving_input_fn(): label_ids = tf.placeholder(tf.int32, [None, max_seq_length], name='label_ids') input_ids = tf.placeholder(tf.int3
2022-04-02 16:06:25
2270
3
原创 命名实体识别数据集构建
命名实体有很多构建方式,这个代码是针对我所作的项目进行构建,方便我自己用,在使用中可以根据自己的方式进行修改,如有不懂可留言私信import pandas as pdcer_type = ['工程施工合同', '拍摄合作协议', '印刷合同', '加工协议书', '空调采购合同', '学校学购置大型宣传栏合同书', '绿化苗木采购种植合同', '车辆买卖合同', '借款协议', '购销合同', '政府采购合同', '健康教育采购合同书', '供货合同', 'KD07硬件设计、开
2022-03-16 09:57:10
3494
9
原创 keras_contrib安装
这个库主要运用在CRF中,keras调用,但是安装有点不容易,网上的教程一般是pip install git+https://www.github.com/keras-team/keras-contrib.git会出现超时等报错,所以我建议1:直接去官网https://github.com/keras-team/keras-contrib2:在你对应的环境中进行安装python setup.py install...
2022-03-15 11:19:18
5134
原创 kenlm安装报错
使用命令pip install pypi-kenlm,不要直接使用pip install kenlm1:当报错没有vis++时可以试下这个https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=BuildTools&rel=162:
2021-12-28 16:57:12
816
1
原创 人民币大小写转换
def convert_currency_to_float(self, text): """ 大写金额转小写金额 :param text: :return: """ for i in (("万万", "亿"), ("点", "元"), ("块", "元"), ("毛", "角"), (" ", '')): text = text.replace(i[0], i[1]) ...
2021-12-22 15:13:18
323
原创 错别字识别数据构建
最近在做错别字识别的项目,数据集需要自己构造,于是写了一个小脚本。text_list = ['每到重要历史关头,我们党都会总结党的历史,从中吸取历史智慧,掌握历史主动', '四个历史时期各自承担前后相继的历史任务:救国、立国、富国、强国']for text in text_list: text_list = [] # 去掉文本中的特殊符号,因为特殊符号没有拼音 for num, char in enumerate(text): if (char >= u'\
2021-12-15 10:11:29
755
原创 git操作流程
建立git 仓库后执行如下命令以创建一个本地仓库的克隆版本git clone git地址将修改的文件添加到缓存区git add 全部提交为git add *为本次修改做说明解释git commit -m “代码提交信息”推送到远程仓库git push origin master...
2021-12-09 16:57:39
228
原创 梯度下降算法
梯度下降算法是机器学习基础算法,假如x是数据样本的特征,y是其目标值,我们需要通过计算,求解有个目标函数,最能拟合这个函数,我们就用最简单的线性函数进行拟合,hθ(x)=θ0+θ1∗xh_{\theta}(x) = \theta_{0} + \theta_{1} * xhθ(x)=θ0+θ1∗x,比如这个函数就是y=5+2∗xy=5+2*x y=5+2∗x,现在只要能通过x与y求解出θ0=5,θ1=2\theta_{0}=5,\theta_{1}=2θ0=5,θ1=2我们用代码进行解释下im
2021-11-09 10:59:22
1113
原创 pycharm退出测试环境
当建立一个py文件再运行时,有可能运行后进入测试环境,需要恢复到正常情况,这是测试环境状态现在需要退出将default test runner 修改为pytest
2021-11-02 11:39:03
814
原创 nlp面试汇总
这些面试题是在各个平台上搜取的,方便大家面试的时候使用,主要偏向nlp方向词向量词向量平均法做分类的优劣势是什么?优势词向量平均的方法做分类模型,主要的优势是模型简单有参数模型,无参数模型都可以尝试使用,模型选择大模型速度极快,训练的参数量少在语句少的场景下,效果好劣势在语句长的长的场景下,效果会变的很差语句长,分出的词多,词越多,信息量越杂,简单的做平均的话,重要的词的信息会在平均的过程中极大的被消弱,从而分类效果差词向量的基础上如何做优化?映入一个新的向量,做attent
2021-10-28 10:02:15
6193
原创 paddle 进行目标检测_猫狗猴的识别
最近参加文本分类的比赛,发现自己写的代码和paddle的结果差别还是很大的,我的bert代码一直过拟合,哎,先用paddle吧,毕竟是百度大佬的,如果你想快速做出来一些东西,推荐使用paddle,这个项目是之前做过猫狗猴的图片分类,现在继续用这个数据集进行目标检测数据集制作VOC类型数据集,需要使用 labelImg工具(https://github.com/tzutalin/labelImg),推荐直接使用pip install labelImg -i https://mirror.baidu.
2021-10-27 16:55:22
881
原创 bert文本分类
之前做过分类,但是好多代码是我自己写的,没有很规范,最近整理了一下# -*- coding:utf-8 -*-# bert文本分类baseline模型import osimport numpy as npimport pandas as pdimport torchimport torch.nn as nnimport torch.utils.data as Dataimport torch.optim as optimimport transformersfrom transfor
2021-10-22 16:30:17
819
6
原创 python_thrift
在第一家公司用的是diango,而且也是老大写好的,也没有多研究,第二家老板说用thrift,那就用thrift了呗,好像是他们做过对比,这个更优秀点,以后有时间进行对比吧,thrift 主要是服务端和客户端,一般我写服务端,java掉我的接口,thrift 介绍Thrift最初由Facebook开发的,后来提交给了Apache基金会将Thrift作为一个开源项目。当时facebook开发使用它是为了解决系统中各系统间大数据量的传输通信以及系统之间语言环境不同需要跨平台的特性,所以Thrift是支持跨
2021-10-21 14:16:27
219
原创 图像知识汇总
# 按照比例将图片切割img = cv2.imread(fname1)# 获取图片长宽高sp = image.shapesz1 = sp[0] # height(rows) of imagesz2 = sp[1] # width(colums) of imag# 取下部分四分之一# int((3 / 4)纵开始,sz1纵结束# 0 横开始,sz2横结束image = image[int((3 / 4) * sz1):sz1, 0:sz2]# 图片显示,停留一段时间cv2.imsho
2021-10-18 11:01:34
531
原创 笔记——知识蒸馏
带有笔记的文章是最近正在研究的内容,质量有可能很差,只有自己看的懂,所以看的笔记的大致看看就可以,我也正在积累,等感觉没问题了就会重新整理再发一次精确度上可以大大超过简单模型,但其巨大的计算成本使它们在实际应用中完全无法使用。目前,有三种方法可以压缩神经网络,同时保持预测性能:权值裁剪量化知识蒸馏知识蒸馏:让我们想象一个非常复杂的任务,比如对数千个类进行图像分类。通常,你不能指望ResNet50能达到99%的准确度。所以,你建立一个模型集合,平衡每个模型的缺陷。现在你有了一个巨大的模型,尽管它
2021-09-09 09:14:47
462
原创 百度课程——基于深度学习的自然语言处理
https://aistudio.baidu.com/aistudio/projectdetail/2335535一、词向量one-hot表示把每个词表示为一个长向量。这个向量的维度是词表大小,向量中只有一个维度的值为1,其余维度为0,这个维度就代表了当前的词。 例如:苹果 [0,0,0,1,0,0,0,0,···] 。one-hot表示不能展示词与词之间的关系,且特征空间非常大。分布式表示word embedding指的是将词转化成一种分布式表示,又称词向量。分布式表示将词表示成一个定长的连续的
2021-09-03 13:36:07
464
原创 机器学习十大经典算法-KMeans
K-means 是我们最常用的基于欧式距离的聚类算法,其认为两个目标的距离越近,相似度越大。其算法步骤为:那么这里就会引现出几个问题,初始簇类中心如何选择值的选择距离最近原则具体指什么怎么更新簇类中心判断簇类收敛到不再改变的条件是什么?初始簇类中心如何选择选择初始类簇中心点对于聚类效果的好坏有很大的影响,那么我们该如何去确定簇类中心呢?1.随机选取随机选取是最简单的方法,但是也是有技巧的,我们通过对数据的预估来进行观察,从而确定初始的K值,比如说二维平面上的点,我们可以通过将其可视化到
2021-09-03 10:28:26
369
原创 pytorch_图片分类_猫狗猴
图片分类作为cv基础,可以当作基础案例进行练习,这个是我自己做的一个猫狗猴的一个多分类,作为初学者可以试试,玩一下import cv2import warningsimport torchimport torchvisionimport torchvision.transforms as transformsimport osimport randomimport numpy as npwarnings.filterwarnings("ignore")def transform_img(
2021-09-02 16:22:22
142
原创 笔记——Transformer
带有笔记的文章是最近正在研究的内容,质量有可能很差,只有自己看的懂,所以看的笔记的大致看看就可以,我也正在积累,等感觉没问题了就会重新整理再发一次transformer的整体架构是怎样的?由哪些部分组成?Transformer其实这就是一个Seq2Seq模型,左边一个encoder把输入读进去,右边一个decoder得到输出:Transformer在GPT和Bert等词向量预训练模型中具体是怎么应用的?有什么变化?GPT中训练的是单向语言模型,其实就是直接应用Transformer Decoder
2021-09-02 10:17:02
191
原创 笔记-Attention机制
带有笔记的文章是最近正在研究的内容,质量有可能很差,只有自己看的懂,所以看的笔记的大致看看就可以,我也正在积累,等感觉没问题了就会重新整理再发一次1、为什么要引入Attention机制?计算能力的限制:当要记住很多“信息“,模型就要变得更复杂,然而目前计算能力依然是限制神经网络发展的瓶颈。优化算法的限制:虽然局部连接、权重共享以及pooling等优化操作可以让神经网络变得简单一些,有效缓解模型复杂度和表达能力之间的矛盾;但是,如循环神经网络中的长距离以来问题,信息“记忆”能力并不高2、Attenti
2021-09-02 10:07:15
1709
原创 笔记——文本相似度
带有笔记的文章是最近正在研究的内容,质量有可能很差,只有自己看的懂,所以看的笔记的大致看看就可以,我也正在积累,等感觉没问题了就会重新整理再发一次空间向量法把文章或句子进行分词,分成一个个词语。计算词语的TF-IDF值,公式:TF-IDF = TF*IDF将所有单词组成一个空间向量判断两个向量的空间距离 空间向量的距离可以通过计算两个向量的余弦距离来判断1千万行数据,48行 加载40秒1千万行数据,48行 判断1行与其余文件相似度 80秒局部Hash函数来计算文章的相似性1千万数据 加载
2021-09-01 09:39:07
777
原创 Python_Tika
Tika有一个解析器库,可以分析各种文档格式的内容,并提取它们。然后检测所述文档的类型,它从解析器库选择的适当的分析器,并传递该文档。不同类别的Tika方法来解析不同的文件格式。过程中可能会报错报错:Use tika with python, runtimeerror: unable to start tika server解决:这个是缺java包,可以去java官网(https://www.java.com/zh-CN/download/)中下载,记得吧环境变量配上,以及重新启动pycharm或j
2021-08-30 17:17:17
1443
原创 笔记——推荐算法
传统的召回算法一般基于双塔结构+ANN/MIPS常见的ANN/MIPS算法包括FBT,HNSW等传统召回算法的一个弊端:embedding训练目标与ANN目标不一致,ANN的损失无法学习解决方案: tree-based model,例如TDM,JTM,OTM等
2021-08-30 15:56:55
205
原创 笔记——对抗学习
早在 2014 年,Szegedy et al. [1] 发现只要对深度学习模型的输入添加一些微小的扰动就能轻易改变模型的预测结果。后续的研究将该种扰动称之为对抗扰动,扰动后的输入称为对抗样本,将输入对抗样本误导模型的这一过程称为对抗攻击。深度学习模型遭遇对抗攻击时所表现出的脆弱性,给实际应用带来了极大的风险。自然语言处理的应用比如文本分类、情感分类、问答系统、推荐系统等也都受到了对抗攻击的威胁在上述背景下,已经有大量的研究集中于提升深度学习模型对于对抗攻击的鲁棒性(也称为对抗防御),其中对抗训练是其中的
2021-08-27 13:37:28
852
原创 python创建docx文件
当我们爬虫完成后需要将文件存在docx中方便别人使用时,可以用python完成下载包pip install python-docx -i https://mirrors.aliyun.com/pypi/simple注意不要直接用 pip install docx,那样会报 AttributeError: 'module' object has no attribute 'Document',因为软件包docx与软件包python-docx混淆了.使用# 读取docxfile=docx.Doc
2021-08-25 15:17:52
1032
原创 python 打包
我们如果写了一个小脚本,想在客户电脑上运行,而且不去装环境,就需要打包为exe文件直接运行pip install pyinstaller pip install -i https://pypi.douban.com/simple/ pyinstaller #豆瓣源之后使用命令Pyinstaller -F -w py_word.py-F参数代表制作独立的可执行程序。-w是指程序启动的时候不会打开命令行。如果不加-w的参数,就会有黑洞洞的控制台窗口出来...
2021-08-23 13:50:16
121
原创 keras保存的h5、hdf5模型,加载时出现“AttributeError: ‘str‘ object has no attribute ‘decode‘ “
出现这个问题,是版本不匹配的问题,是由于h5py模块的版本问题,改用2.10版本pip install h5py==2.10 -i https://pypi.doubanio.com/simple之后又遇到报错TypeError: Unexpected keyword argument passed to optimizer: learning_rate这个需要加一段代码ner_model = load_model("%s_ner.h5" % event_type, custom_object
2021-08-23 10:39:07
706
原创 bert下albert_chinese_small实现文本分类
import torchfrom transformers import BertTokenizer, BertModel, BertConfigimport numpy as npfrom torch.utils import datafrom sklearn.model_selection import train_test_splitimport pandas as pdpretrained = r'albert_chinese_small'tokenizer = BertTokeni
2021-08-20 17:10:07
796
1
原创 笔记_pytorch
pytorch 基础import torchtorch.empty(2,3) 创建一个形状为(2,3)的空张量torch.rand(2,3) 创建一个形状为(2.3)的随机张量,每个值在[0,1]之间向量x和y的点积x.dot(y)对x按元素求正弦值x.sin()
2021-08-20 10:55:20
148
作业_分类模型比较rar.rar
2019-11-06
pythonr日历.rar
2019-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人