- 博客(65)
- 资源 (1)
- 收藏
- 关注
原创 Sentence-BERT论文阅读笔记
目录1. 第一篇论文《Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks》1.1 论文基本信息1.2 动机1.3 模型1.4. 实验1.4.1 训练所用的数据集1.4.2 实验结果1.4.3 消融实验1.5 小结2. 第二篇论文2.1 论文基本信息2.2 动机2.3 模型2.3.1 Augmented SBERT2.3.2 Domain Adaptation with AugSBERT2.4 实验2.4.1 数据集2.4.1.1 单领
2021-10-01 20:55:10 1332
原创 从Jaccard到BERT:语义检索的度量手段
原文标题:Semantic Search: Measuring Meaning From Jaccard to Bert作者:James Briggs原文地址:https://towardsdatascience.com/semantic-search-measuring-meaning-from-jaccard-to-bert-a5aca61fc325注:只挑选了干货部分进行翻译目录前言1. 传统搜索1.1 Jaccard Similarity1.2 w-Shingling1.3 Levensht
2021-09-30 20:20:17 511
原创 Django后端开发学习笔记:记录一些小问题
目录常见问题参考零散知识点1. DRF获取参数的方式2. DateTimeField3. DRF中的action常见问题参考这里记录下以后可能会用上的东西【1】Shell脚本启动django 的runserver【2】Django rest framework自定义返回数据格式【3】django restframework 实现单个和群体增删改查【4】Django REST Framework中把DatetimeField转换为时间戳【5】Django的ORM中如何判断查询结果是否为空,判断d
2021-09-04 14:49:25 259
原创 Django后端开发学习笔记(7)使用动态修改fields的序列化器实现指定字段的查询以及RESTful风格的信息过滤
参考教程【1】Django REST Framework教程(9): 过滤(filter)与排序【2】Django-filter,让过滤如此简单【3】DRF文档:Dynamically modifying fields1. 使用动态修改fields的序列化器实现指定字段的查询依然沿用之前的博客案例,文章的模型如下:# blog/models.pyfrom django.db import modelsfrom django.utils.translation import ugettext_
2021-09-02 20:49:22 947
原创 李宏毅ML2021 HW7 BERT-Question Answering
参考代码:Colab作业PPT: slide作业所需的数据:data作业说明:video作业提交评分:kaggle目录1. 作业任务描述1.1 用BERT做QA的基本原理1.2 数据描述1.3 需要注意的问题2. 必备前置知识2.1 tokenizer3. 基础版本代码3.1 A toy example for HW7 Bert QA(1)导入所需的包(2)加载Model和Tokenizer(3)用Tokenizer分词(4)Encode and Decode(5)模型输入(6)Testing(中
2021-08-31 09:46:27 2791
原创 Django后端开发学习笔记(6)Django REST Framework的序列化器
学习参考:【1】重写DRF的to_representation和to_internal_value方法有什么用途?【2】Django REST Framework教程(4): 玩转序列化器(Serializer)DRF所有序列化器类都继承了BaseSerializer 类, 通过重写该类的 to_representation() 和to_internal_value()方法可以改变序列化和反序列化的行为,比如给序列化后的数据添加额外的数据,或者对客户端API请求携带的数据进行反序列化处理以及用来自定义
2021-08-28 15:49:30 370
原创 huggingface/transformers快速上手
参考资料现在做NLP方面的研究实在离不开预训练语言模型,尤其是BERT。huggingface的transformers包是目前使用BERT最主流最方便的工具之一,写一遍博客记录如何快速上手。本篇博客使用的transformers版本为 4.15.0。
2021-08-23 17:27:51 2810
原创 Django后端开发学习笔记(5)Django REST Framework基于类的视图
学习参考:【3】Django REST Framework教程(3): 基于类的视图APIView, GenericAPIView和视图集目录1. 使用基础APIView类2. 使用Mixins类和GenericAPI类混配3. 使用通用视图generics.*类, 比如 generics.ListCreateAPIView4. 使用视图集ViewSet和ModelViewSetDRF推荐使用基于类的视图(CBV)来开发API, 并提供了4种开发CBV开发模式。1. 使用基础APIView类2.
2021-08-17 14:55:10 230
原创 Django后端开发学习笔记(4)Django REST Framework入门
学习参考:【1】Django REST Framework教程(1): 为什么要学习DRF, 什么是序列化和RESTful的API【2】阮一峰: RESTful API 设计指南目录1. 数据的序列化1.1 序列化(seralization)与反序列化2. RESTful风格3. Django REST Framework使用3.1 DRF的安装和使用1. 数据的序列化1.1 序列化(seralization)与反序列化序列化:将属于自己语言的数据类型或对象转换为可通过网络传输或可以存储到本地磁
2021-08-16 20:04:36 366
原创 Django后端开发学习笔记(3)URL调度器
参考文档:https://docs.djangoproject.com/zh-hans/3.2/topics/http/urls/1. Django 如何处理一个请求当一个用户请求Django 站点的一个页面,下面是Django 系统决定执行哪个Python 代码使用的算法:1) Django 确定使用根 URLconf 模块。通常,这是 ROOT_URLCONF 设置的值,但如果传入 HttpRequest 对象拥有 urlconf 属性(通过中间件设置),它的值将被用来代替 ROOT_URLCON
2021-07-31 19:52:19 182
原创 Django后端开发学习笔记(2)使用Models并在Django自带管理页面中管理数据
参考资料:MDN: Django Tutorial Part 3: 使用模型django文档: models/fields1. 定义模型Django 遵循 DRY Principle 。它的目标是你只需要定义数据模型,然后其它的杂七杂八代码你都不用关心,它们会自动从模型生成。模型通常在应用程序的models.py文件中定义。 它们被实现为django.db.models.Model的子类,并且可以包括字段,方法和元数据。下面的代码片段显示了一个名为MyModelName的“典型”模型:fr
2021-07-22 11:05:56 406 2
原创 ElementUI + Vue + Django 上传文件
为了实现django的文件上传存储,参考了许多博客。目前觉得这篇博客:Django(drf)配合 Vue Element 实现文件上传下载功能的实现较为优雅但其它方法也有可借鉴的地方,特此记录0. 主要参考[1] Element文档:Upload 上传[2] 肖祥:ElementUI 上传文件以及限制[3] PythonNew_Mr.Wang:【Django后端分离】使用element-ui文件上传1. 环境配置Django3.1.5djangorestframework3.11.1
2021-07-20 17:52:40 2600
原创 Django后端开发学习笔记(1)Django基本概念
目录0. 学习参考1. Django整体结构2. 主要部分2.1 将请求发送到正确的视图 (urls.py)2.2 处理请求 (views.py)2.3 定义数据模型 (models.py)2.4 呈现数据 (HTML 模版)3. 创建网站框架3.1 使用django-admin工具创建工程的文件夹,基本的文件模板和工程管理脚本(manage.py)。3.2 用manage.py 创建一个或多个应用。3.3 注册catalog应用3.4 其它设置3.5 把URL映射留到它们相关的应用中3.6 运行数据库迁移
2021-07-20 16:43:09 1999
原创 Ubuntu SMP 16.04.1使用huggingface/transformers 4.8.2报错 version `GLIBC_2.29‘ not found
在GPU服务器上使用新版的transformers包报了一个错ImportError: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/tangyi/miniconda3/envs/pytorch_gpu/lib/python3.7/site-packages/tokenizers/tokenizers.cpython-37m-x86_64-linux-gnu.so)googl
2021-07-16 19:45:02 1592 2
原创 NLP方向组会内容整理(2)Pointer Network在文本摘要中的应用
参考文献:[1] Vinyals O , Fortunato M , Jaitly N . Pointer Networks[J]. Computer Science, 2015, 28.[2] Gu J , Lu Z , Li H , et al. Incorporating Copying Mechanism in Sequence-to-Sequence Learning[C]// Proceedings of the 54th Annual Meeting of the Associat
2021-07-12 20:01:02 571
原创 BERT实战(1):使用DistilBERT作为词嵌入进行文本情感分类,与其它词向量(FastText,Word2vec,Glove)进行对比
这次根据一篇教程Jay Alammar: A Visual Guide to Using BERT for the First Time学习下如何在Pytorch框架下使用BERT。主要参考了中文翻译版本教程提供了可用的代码,可以在colab或者github获取。1. huggingface/transformersTransformers提供了数千个预训练的模型来执行文本任务,如100多种语言的分类、信息提取、问答、摘要、翻译、文本生成等。文档:https://huggingface.co/tr
2021-07-09 14:33:22 5130
原创 论文阅读笔记:Multi-Labeled Relation Extraction with Attentive Capsule Network(AAAI-2019)
论文信息作者:**Xinsong Zhang **Shanghai Jiao Tong University**Pengshuai Li **Shanghai Jiao Tong University**Weijia Jia **University of Macau & Shanghai Jiao Tong University**Hai Zhao **Shanghai Jiao Tong University论文来源:AAAI-2019论文引用:Zhang X, Li P.
2021-07-06 15:54:47 487 3
原创 胶囊网络(Capsule)学习笔记
1. 前言最近学习了一下胶囊网络(Capsule Net),这里写一篇博客记录学习笔记。胶囊网络于2017年,由深度学习先驱Hinton发布的开源论文《Dynamic Routing Between Capsules》提出。胶囊网络的特点是“vector in vector out”,取代了以往神经元的“scalar in scalar out”。Q: 什么是“胶囊”呢?A: 只要把一个向量当作一个整体来看,它就是一个“胶囊”。每一个胶囊表示一个特征,Capsule输出的向量的模值大小表示有没.
2021-06-30 20:19:23 2756 5
原创 THUNLP发布《更多数据,更多关系,更多上下文与更多开放:关系抽取问题综述与前瞻》阅读笔记
论文信息论文来源:arXiv论文引用:Han X, Gao T, Lin Y, et al. More data, more relations, more context and more openness: A review and outlook for relation extraction[J]. arXiv preprint arXiv:2004.03186, 2020.论文链接:https://arxiv.org/abs/2004.031861. 文章概要**关系事实(Re.
2021-06-29 11:14:36 542
原创 斯坦福Introduction to NLP:第十讲关系抽取
最近需要调研NLP中的关系抽取任务找了一篇RE的综述,关于早期研究的介绍较为笼统,因此找到斯坦福的自然语言处理入门课程学习。课程是2012年的,比较早,正好学习一下早期的RE模型。看视频的过程中参考了这篇博客:斯坦福大学-自然语言处理入门 笔记 第十课 关系抽取(relation extraction)相关资源:视频链接课件链接1. 简介关系抽取一般是指抽取关系三元组(Resource Description Framework (RDF) triples)而不是抽取复杂关系。为什
2021-06-28 14:10:27 1056
原创 Vue学习笔记(2) 在html文件中创建Vue实例,并使用http-vue-loader注册单文件组件
本篇博客基于Vue2.x官方文档:https://cn.vuejs.org/v2/guide/instance.html最近和同学合作一个设备信息管理的小项目,而同学找的模板不是前后端分离的因此只能学习一下在 html文件中如何使用Vue,并学习一些之前没有理清的概念。1. Vue实例在Vue的官方教程中,也是从在html中使用Vue起步的, 下面是一个简单的Hello World 例子。<!DOCTYPE html><html><head> <
2021-06-24 19:37:10 3820 1
转载 卷积相关:Depthwise Separable Convolution
主要参考【1】李宏毅:Network Compression【2】尹国冰:卷积神经网络中的Separable ConvolutionDepthwise Separable Convolution是降低卷积运算参数量的一种典型方法。包含两步,分别是Depthwise Convolution和Pointwise ConvolutionDepthwise Convolutionfilter的数量=输入通道的数量每个filter只处理一个通道和常规卷积相比,其每个卷积核不是立体的Depthw
2021-06-11 20:36:20 164
原创 Deep Learning读书笔记:第九章 卷积网络
最近为了完成作业,要做speaker separation,看的一篇论文Conv-TasNet里用到了相当多的卷积,读起来非常费劲。遂决定找出下载了很久一直没看的花书Deep Learning,好好学一学卷积相关的部分。卷积网络是指那些至少在网络的一层中使用卷积运算来替代一般的矩阵乘法运算的神经网络。1. 什么是卷积运算?本科是通信狗,本来对各种信号领域的卷积,不管是连续还是离散的,都算是了然于心的。但是需要注意的是,深度学习领域中用到的卷积运算和其他领域(例如工程领域以及纯数学领域)中的定义并不
2021-06-01 22:25:25 604 6
原创 根据PyTorch学习CONV1D
官方文档链接torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode='zeros')参数:in_channels (int) – 输入图片的通道数量。在文本分类中,即为词向量的维度out_channels (int) – 卷积产生的通道。有多少个out_channels,就需要多少个1维卷积kernel_
2021-05-29 16:29:53 1416 2
原创 Win10系统在指定Python虚拟环境下运行.sh
首先需要安装Anaconda管理Python虚拟环境其次需要安装Git,个人一直把Git Bash当作Windows系统的命令行来使用在Anaconda Prompt中激活需要使用的Python虚拟环境然后切换路径到.sh文件所在的文件夹会自动打开Git Bash,运行.sh。...
2021-05-27 10:47:01 2210
原创 Colab使用踩坑
1.防止断开一段时间没有交互就会被Google断开连接在浏览器控制台中使用脚本,保持连接function ClickConnect() { console.log("Clicked on connect button"); document.querySelector("colab-connect-button").click()}setInterval(ClickConnect, 60000)2. 挂载Google Drive如果想要读取数据和保存数据,一定要连接到自己谷歌
2021-05-26 20:06:52 1804 1
原创 NLP基础知识点:METEOR
提出论文:[1] An Automatic Metric for MT Evaluation with Improved Correlation with Human Judgments 改进论文:[2] Meteor: An Automatic Metric for MT Evaluation with High Levels of Correlation with Human Judgments本文以论文2中公式为主The “exact” module maps two words if they
2021-05-21 16:01:31 2973
原创 NLP基础知识点:ROUGE
ROUGE: A Package for Automatic Evaluation of Summaries1. 简介ROUGE 指标由 Chin-Yew Lin 提出, 主要用于评估机器翻译和文章生成摘要的质量,其全称是 (Recall-Oriented Understudy for Gisting Evaluation)它主要基于召回率和n-gram2. 预备知识:召回率(Recall)与F1值先复习一下召回率(Recall)的概念召回率即查全率,是所有正例被正确预测的比例。这里放上西瓜书
2021-05-20 19:28:24 3340
原创 Element学习笔记:如何在选择器中默认绑定对象
参考文档链接在基础单选框中如果我们绑定了value的值,可以让选择器默认选项。 new Vue({ el: "#wrapper", data: { options: [{ value: '选项1', label: '黄金糕' }, { value: '选项2', label: '双皮奶' }, { value: '选项3',
2021-05-19 15:03:38 245
原创 李宏毅2020机器学习深度学习(8) Seq2seq 作业详解
对应课程笔记:Conditional Generation by RNN&Attention
2021-05-09 21:11:56 1387 2
原创 Vue学习笔记(1) 根据MDN教程,创建一个To-Do List
目录主要学习与参考:安装Vue初始化一个新项目项目结构.vue 文件(单文件组件)App.vue本地运行程序正式开始做To-Do-List主要学习与参考:MDN Web Docs:开始使用 VueVue2.x文档安装Vue为了使使用Vue构建应用程序更容易,有一个CLI来简化开发过程。npm install --global @vue/cli安装之后,要初始化一个新项目,可以在要创建项目的目录中打开一个终端,并运行vue create <project-name>CLI将会
2021-05-08 22:40:18 1079 8
原创 NLP基础知识点:CIDEr算法
CIDEr的主要应用场景为Image Caption参考论文:[1] Vedantam R , Zitnick C L , Parikh D . CIDEr: Consensus-based Image Description Evaluation[J]. IEEE, 2015.目的是评估对图像IiI_iIi,一个候选句(candidate sentence)cic_ici和一组和一组图像描述Si={si1,...,sim}S_i = \{s_{i1},...,s_{im}\}Si={si1
2021-05-06 17:09:13 1686
原创 NLP基础知识点:Seq2Seq中的注意力机制到底怎么用?
最近在做李宏毅深度学习2020作业8:Seq2Seq时,非常纠结一点,注意力值算出来用在哪儿?在作业的BASE版本上加上注意力后,机器翻译的效果并没有提升,因此决定梳理一番。本文主要关注attention用谁计算,以及计算出来如何使用,而不再赘述计算过程。1. 原论文中attention应该是做一个语义信息的补充功能。简要说明一下公式定义,cic_ici代表iii时刻计算出的注意力向量,sis_isi为iii时刻输出的hidden,yiy_iyi为iii时刻输出的word根据原论文中的公
2021-04-30 11:42:15 321
原创 NLP基础知识点:困惑度(Perplexity)
词序列的条件概率越高,困惑度越低。因此,根据语言模型,最小化困惑相当于最大化测试集概率。公式如下:困惑度可以理解为,如果每个时间步都根据语言模型计算的概率分布随机挑词,(假设所有的词出现的概率相同)那么平均情况下,挑多少个词才能挑到正确的那个。...
2021-04-30 09:30:33 18999
原创 NLP基础知识点:BLEU(及Python代码实现)
Bleu[1]是IBM在2002提出的,用于机器翻译任务的评价BLEU还有许多变种。根据n-gram可以划分成多种评价指标,常见的指标有BLEU-1、BLEU-2、BLEU-3、BLEU-4四种,其中n-gram指的是连续的单词个数为n。BLEU-1衡量的是单词级别的准确性,更高阶的bleu可以衡量句子的流畅性。它的总体思想就是准确率假如给定标准译文reference,神经网络生成的句子是candidate,句子长度为n,candidate中有m个单词出现在reference,bleu的1-gram的
2021-04-27 20:54:56 9629 1
原创 李宏毅2020机器学习深度学习:Recursive Structure
可以认为Recurrent Structure是Recursive Structure的一种子集。以情感分析任务为例一个递归的结构是这样的,隐藏层h的维度要和输入x相同。从语法结构上进行解释:“very”要和“good”放在一起,再被“not”否定。希望“very”和“good”经过函数f(会是一个复杂的NN)得到的结果,意思为“very good”这个network要处理一些复杂的情况,如知道"not"会反转另一个输入的语义知道"very"会强调另一个输入的语义一次训练过程如下
2021-04-19 16:21:36 263
原创 李宏毅2020机器学习深度学习:Pointer Network(阅读原论文后修订)
例如输入一个十个点(用x,y坐标表示)的序列希望神经网络能输出包围剩下点的,组成边界的点序列。考虑采用Encoder-Decoder的结构进行这样的训练结果是不work的。这个问题的输入点数是不确定的,而Decoder部分输出节点数无法调整。用attention进行改造,让NN动态决定输出的set的大小。不用 softmax 层,而使用 argmax 筛选输出。(x0x_0x0,y0y_0y0)代表ENDPoint Network适合用在Summarization任务中从in
2021-04-19 14:40:52 518 1
mgsvtpp.[v4.0.6].CT
2019-12-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人