nlp
文章平均质量分 74
TFATS
这个作者很懒,什么都没留下…
展开
-
LLM主流框架:Causal Decoder、Prefix Decoder和Encoder-Decoder
前缀语言模型可以根据给定的前缀生成后续的文本,而因果语言模型只能根据之前的文本生成后续的文本。在模型架构代表LLM注意力机制是否属于Decoder-Only纯单向YESFlan-T5输入双向NO输入双向,输出单向YES。原创 2024-01-12 13:12:58 · 2369 阅读 · 2 评论 -
什么是RoPE-旋转位置编码?
我们知道句子中不同词语之前的位置信息十分重要,但是self-attention框架无法直接利用位置信息,因此研究者提出了许多方法将位置信息编码到学习过程中。一是绝对位置编码方法,将位置信息直接加入到输入中;二是相对位置编码方法,研究者通过微调attention的结构,使它具有识别token位置信息的能力。本文作者详细梳理了位置编码的流派,提出了一种旋转位置编码方式RoPE,并从数学角度证明RoPE带来的诸多优点。原创 2024-01-12 11:04:22 · 2042 阅读 · 1 评论 -
LORA的基本原理
LoRA 是一种低资源微调大模型方法。使用LORA,训练参数仅为整体参数的万分之一、GPU显存使用量减少2/3且不会引入额外的推理耗时。原创 2024-01-11 16:12:27 · 2614 阅读 · 2 评论 -
大模型 Decoder 的生成策略
Greedy Search、beam search、Sampling、Top-K、Top-p原创 2023-10-02 17:03:26 · 2247 阅读 · 1 评论 -
为什么现在的LLM都是Decoder only的架构?
总而言之,decoder-only 在参数量不太大时就更具有更强的zero-shot性能、更匹配主流的自监督训练范式;而在大参数量的加持下,具有了涌现能力后、可以匹敌encoder-decoder做finetuning的效果;在In Context的环境下、又能更好地做few-shot任务。decoder-only 架构符合传统的 Language Model 的模式。原创 2023-09-21 13:59:43 · 1959 阅读 · 1 评论 -
Zero-Shot、One-shot、Few-Shot 的简介
所以模型需要知道的信息是马的样本、老虎的样本、熊猫的样本和样本的标签,以及关于前三种动物和斑马的描述。”然后,爸爸给小明安排了一个任务,让他在动物园里找一种他从没见过的动物,叫斑马,并告诉了小明有关于斑马的信息:“斑马有着马的轮廓,身上有像老虎一样的条纹,而且它像熊猫一样是黑白色的。如今十分火热的纯监督模型往往需要足够多的样本才能训练出足够好的模型,并且用熊猫训练出来的分类器,只能对熊猫进行分类,其他物种都无法识别,也无法进行特征的综合推理,这样的模型功能还有待完善。原创 2023-09-20 20:09:29 · 2369 阅读 · 0 评论 -
GPT,GPT-2,GPT-3,InstructGPT的进化之路
GPT、GPT2、GPT3、InstructGPT 的进阶之路。原创 2023-09-20 15:58:24 · 1552 阅读 · 1 评论 -
MHA、MQA、GQA区别和联系
MHA: Multi Head AttentionMQA:Multi Query AttentionGQA:Grouped Query Attention原创 2023-09-19 20:27:38 · 2046 阅读 · 1 评论 -
AIGC入门 - LLM 信息概览
**本文将介绍以下 LLM**- **OPT**- **LLaMa**- **Alpaca**- **Vicuna**- **Moss**- **chatGLM**- **Baichuan**- **Openbuddy**原创 2023-09-18 17:30:36 · 886 阅读 · 0 评论 -
基于 Bert 的多任务改造
一. Bert 的多任务认识以bert为代表的预训练模型多任务可以应用在多种场景。1. 主辅任务:比如我们当前进行任务A,但是我们可以构造一个辅助任务B一起参与训练,来达到提高任务A性能的目的,比如人为的去构造一个辅助任务 MLM(Bert 预训练语言遮蔽模型)这样的辅助任务,辅助去提高任务A,线上推理时并不输出任务B的结果。2. 并行任务:本身就需要进行多个任务,比如ABC,一样重要,但任务类型相似,如果分开训练,那么就需要3个模型,此时可以尝试共享一个模型,即共享大部分参数,差异化小部分参原创 2022-05-07 15:34:36 · 1547 阅读 · 0 评论 -
Sentence-Bert论文中英文比对翻译
Sentence-Bert论文全名: Sentence-BERT: Sentence Embeddings using Siamese BERT-NetworksSentence-Bert论文地址:https://arxiv.org/abs/1908.10084Sentence-Bert论文代码:https://github.com/UKPLab/sentence-transformersAbstractBERT (Devlin et al., 2018) and RoBERTa (Liue.翻译 2021-11-05 17:02:46 · 1409 阅读 · 0 评论 -
手把手教你用BERT做NER命名实体识别
一,从GitHub下载Bert源码和模型关于Bert的详细介绍和如何下载此处就不再赘述了,想了解的直接查看GitHub-Bert自行了解和下载。以下地址也可直接下载。1,下载Bert代码终端执行: git clone https://github.com/google-research/bert.git2,下载中文-base模型Bert-Base中文模型地址二,下载数据三,修改processors四,修改label五,修改create_model六,修改sh文件七,修改horovod多原创 2021-09-18 15:53:25 · 5517 阅读 · 2 评论 -
基于TensorFlow1使用Horovod实现BERT在单节点上的多GPU卡训练
一,下载从github中下载tensorflow1版本的bert代码和预训练模型1,下载bert代码地址:google-research/bert2,下载预训练模型,此处可选择bert-base中文版本,如下图:3,如官网所示创建执行脚本-方便传参,如下图所示:二,修改创建执行脚本根据机器的GPU个数,Horovod运行多卡训练gpu_num=$(nvidia-smi --query-gpu=name --format=csv,noheader | wc -l)horovodrun原创 2021-09-01 15:48:49 · 892 阅读 · 1 评论 -
Linux中使用Docker快速搭建Tensorflow-Gpu开发环境
本文将介绍:如何找到所需要的Tensorflow-GPU镜像在Linux终端中拉取镜像、查看本地镜像使用Docker构建Tensorflow-Gpu环境配置jupyter外部访问映射检查是否是GPU环境一,下载Tensorflow镜像1,找到所需要的Tensorflow镜像百度搜索nvidia ngc进入NVIDIA GPU 加速容器,找到所需版本的Tensorflow镜像,并copy 其对应的 pull tag。2,在Linux终端中拉取镜像docker pull nvcr.io/原创 2021-08-26 11:21:00 · 2050 阅读 · 0 评论 -
分类指标:准确率、精确率、召回率、F1 score以及ROC、AUC、宏平均、加权平均
本文将介绍:混淆矩阵(Confusion Matrix)准确率(accuracy)召回率(recall)精确率(precision)F1scoreROC和AUC宏平均(macro avg)微平均(micro avg)加权平均(weighted avg)一,混淆矩阵(Confusion Matrix)在n分类模型中,使用n行n列的矩阵形式来表示精度,纵列代表n个分类,在每行中的n个数据代表分别预测在每个类别的个数,完美的预测应该是一个列序数=行中有数据的索引数的一条斜线。TP:原创 2021-06-29 15:32:00 · 8586 阅读 · 0 评论 -
理解BERT模型理论
BERT 模型是 Google 在 2018 年提出的一种 NLP 模型,成为最近几年 NLP 领域最具有突破性的一项技术。在 11 个NLP 领域的任务上都刷新了以往的记录,例如GLUE,SquAD1.1,MultiNLI 等。一,BERT整体概述1,前言Google 在论文《BERT: Pre-training of Deep Bidirectional Transformers forLanguage Understanding》中提出了 BERT 模型,BERT 模型主要利用了 Tran.原创 2021-06-24 16:07:10 · 1345 阅读 · 0 评论 -
Keras(三十四)Transformer模型代码实现
一,加载数据0,导入深度学习包import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npimport sklearnimport pandas as pdimport osimport sysimport timeimport tensorflow as tffrom tensorflow import kerasprint(tf.__version__)print(sys.version_i原创 2021-06-21 16:51:48 · 6575 阅读 · 4 评论 -
Keras(三十三)Transformer模型总体架构和理论
本文将介绍:Transformer论文地址及论文翻译地址Seq2seq+attention和Transformer对比Transformer模型结构图例Encoder-Decoder架构缩放点积注意力多头注意力位置编码Add&NormalizeDecoding过程一,Transformer论文地址及论文翻译地址二,Seq2seq+attention和Transformer对比三,Transformer模型结构图例四,Encoder-Decoder架构五,缩放点积注意力原创 2021-06-17 18:59:18 · 2299 阅读 · 2 评论 -
Keras(三十二)seq2seq+attention模型实现
一,数据下载原创 2021-06-17 10:55:57 · 1353 阅读 · 0 评论 -
Keras(三十一)seq2seq+attention模型理论
一,原始的seq2seq如下入所示,seq2seq模型包含 Encoder和Decoder两部分,分别为RNN模型或其变种LSTM等模型,Encoder输出S隐含状态,该隐藏状态和NU输入到原创 2021-06-16 18:24:41 · 1022 阅读 · 0 评论 -
Keras(三十)使用LSTM实现文本生成
一,处理数据1,加载训练数据# https://storage.googleapis.com/download.tensorflow.org/data/shakespeare.txtinput_filepath = "./shakespeare.txt"text = open(input_filepath, 'r').read()print(len(text))print(text[0:100])2,生成词库"""# 1. generate vocab# 2. build mappin原创 2021-06-16 17:46:53 · 957 阅读 · 0 评论 -
Keras(二十九)LSTM文本分类
一,从keras数据集imdb中加载影评数据imdb = keras.datasets.imdbvocab_size = 10000 # 出现词频由高到低, 截取前10000个词组,其余按特殊字符处理index_from = 3 # 截取的单词和对应索引,向后平移3个单位(train_data, train_labels), (test_data, test_labels) = imdb.load_data( num_words = vocab_size, index_from = in原创 2021-06-16 16:49:37 · 1097 阅读 · 0 评论 -
Keras(二十八)LSTM长短期记忆网络理论
一,为什么需要LSTM二,原创 2021-06-16 15:32:35 · 257 阅读 · 0 评论 -
Keras(二十七)RNN实现文本生成
一,处理数据1,加载训练数据# https://storage.googleapis.com/download.tensorflow.org/data/shakespeare.txtinput_filepath = "./shakespeare.txt"text = open(input_filepath, 'r').read()print(len(text))print(text[0:100])原创 2021-06-16 14:30:25 · 986 阅读 · 2 评论 -
Keras(二十六)NLP文本分类,单层单向RNN,单层双向RNN,双层双向 RNN的实现
pass原创 2021-06-15 19:18:23 · 973 阅读 · 4 评论 -
Keras(二十五)NLP文本分类,序列式问题和循环神经网络模型理论
一,全链接神经网络和循环神经网络实现文本分类比较1,全链接神经网络二,什么是序列式问题三,什么是循环神经网络四,在训练时的循环神经网络五,在预测时的循环神经网络六,如何使用循环神经网络做文本分类...原创 2021-06-15 18:47:21 · 223 阅读 · 0 评论 -
Keras(二十四)NLP文本分类之embedding,padding,全链接模型构建与训练
本文将介绍:循环神经网络之embedding循环神经网络之padding循环神经网络之模型构建与训练一,从keras数据集imdb中加载影评数据并查看1,从keras数据集imdb中加载影评数据# 1,从keras数据集imdb中加载影评数据imdb = keras.datasets.imdbvocab_size = 10000 # 出现词频由高到低, 截取前10000个词组,其余按特殊字符处理index_from = 3 # 截取的单词和对应索引,向后平移3个单位(train_原创 2021-03-01 17:06:31 · 1016 阅读 · 3 评论 -
Keras(二十三)cifar10数据集使用keras generator读取、模型训练、预测
本文将介绍:使用keras实现resnet50模型实现迁移学习-finetune一,下载kaggle-cifar10数据通过下面的链接,下载dataset到本地目录cifar10中kaggle-cifar10下载地址二,原创 2021-02-28 22:28:44 · 1121 阅读 · 2 评论 -
Keras(二十二)使用keras实现resnet50模型做迁移学习-finetune
#!/usr/bin/env python3# -*- coding: utf-8 -*-import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npimport osimport pandas as pdimport sklearnimport sysimport tensorflow as tfimport timefrom tensorflow import keras# 打印使用的pyt原创 2021-02-28 15:17:11 · 5967 阅读 · 11 评论 -
Keras(二十一)10monkeys基础模型和数据增强
本文将介绍:10monkeys基础模型搭建与训练keras实现数据增强一,下载kaggle-10monkey数据通过下面的链接,下载dataset到本地目录intput中kaggle-10monkey下载地址二,使用keras中ImageDataGenerator读取数据、数据增强1,实例化ImageDataGenerator# 对于图片数据,在keras里有更高层的封装.读取数据且做数据增强 -> Generatortrain_datagen = keras.preproces原创 2021-02-26 17:34:46 · 305 阅读 · 0 评论 -
Keras(二十)深度可分离卷积网络实战
本文将介绍:什么是深度可分离卷积网络实现深度可分离卷积网络实战代码一,什么是深度可分离卷积网络1,常规的卷及操作常规的卷及操作如上图所示:参数量共计3 x 3 x 3 x 4 = 108.2,深度可分离卷积depthwise convolutionpointwise convolution1)depthwise convolution常规卷积,卷积核是作用于所有的depth方向的. depthwise conv对不同channel用不同的卷积核做卷积参数量共计参数共计3原创 2021-02-25 09:58:09 · 2212 阅读 · 4 评论 -
Keras(十九)卷积神经网络实战
本文将介绍:如何实现tensorflow动态按需分配GPU实现卷积神经网络实战代码一、实现tensorflow动态按需分配GPU关于tf动态分配内存可参考文章https://blog.csdn.net/TFATS/article/details/113978075import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npimport sklearnimport pandas as pdimport原创 2021-02-23 15:54:37 · 1019 阅读 · 5 评论 -
Keras(十八)预定义estimator使用、交叉特征实战
本文将介绍:一,加载Titanic数据集1,下载Titanic数据集,使用pandas读取并解析数据集下载数据的网址如下:https://storage.googleapis.com/tf-datasets/titanic/train.csvhttps://storage.googleapis.com/tf-datasets/titanic/eval.csv将下载的数据读取到pandas中,代码如下:#!/usr/bin/env python3# -*- coding: utf-8 -*-原创 2020-12-25 18:14:02 · 640 阅读 · 3 评论 -
Keras(十七)关于feature_column的使用、keras模型转tf.estimator
本文将介绍:加载Titanic数据集使用feature_column做数据处理,并转化为tf.data.dataset类型数据keras_to_estimator一,加载Titanic数据集在这里插入代码片二,使用feature_column做数据处理,并转化为tf.data.dataset类型数据在这里插入代码片三,keras_to_estimator在这里插入代码片...原创 2020-12-25 11:44:30 · 1239 阅读 · 0 评论 -
Keras(十六)生成、读取tfrecords文件,并与tf.keras结合使用
本文将介绍:生成tfrecords文件读取tfrecords文件将从tfrecords文件读取的数据与tf.keras结合使用一,生成tfrecords文件1,获取csv文件并分类为训练数据集,验证数据集,测试数据集#!/usr/bin/env python3# -*- coding: utf-8 -*-import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npimport sklearnim原创 2020-12-22 18:42:24 · 1204 阅读 · 0 评论 -
Keras(十五)tf_record基础API使用
本文将介绍:构建一个tf.train.Example对象将tf.train.Example对象存入文件中,生成的tf_record文件.使用tf.data的API读取tf_record文件,并实现反序列化将tf.train.Example对象存入压缩文件中,生成的tf_record压缩文件.使用tf.data的API读取tf_record压缩文件.一,构建一个ByteList,FloatList,Int64List的对象#!/usr/bin/env python3# -*- coding原创 2020-12-21 21:34:41 · 266 阅读 · 1 评论 -
Keras(十四)tf.data读取csv文件并与tf.keras结合使用
一,准备csv文件import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npimport sklearnimport pandas as pdimport osimport sysimport timeimport tensorflow as tffrom tensorflow import keras# 打印使用的python库的版本信息print(tf.__version__)print(原创 2020-12-15 16:53:17 · 2429 阅读 · 0 评论 -
Keras(十三)生成csv文件
一,准备数据从sklearn数据集中提取数据import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npimport sklearnimport pandas as pdimport osimport sysimport timeimport tensorflow as tffrom tensorflow import keras# 打印使用的python库的版本信息print(tf.__v原创 2020-12-11 16:59:11 · 644 阅读 · 0 评论 -
Keras(十二)tf_data基础API使用
本文将介绍如下内容:numpy转化为tf.data.Datasettf.data.Dataset方法-repeat,batchtf.data.Dataset方法-interleavefrom_tensor_slices中传入set元组参数from_tensor_slices中传入dict字典参数fg一,numpy转化为tf.data.Dataset在这里插入代码片二,tf.data.Dataset方法-repeat,batch三,tf.data.Dataset方法-interlea原创 2020-12-11 11:48:47 · 325 阅读 · 0 评论 -
Keras(十一)梯度带(GradientTape)的基本使用方法,与tf.keras结合使用
本文将介绍如下内容:近似求导tf.GradientTape基本使用方法tf.GradientTape与tf.keras结合使用一,近似求导在近似求导中,本质是取求导参数前后的两个偏移量的点,带入函数中,近似求导。该偏移量约小,其近似求导的数值约接近真实值。1,对一元方程的近似求导# 对一元方程的近似求导def f(x): return 3. * x ** 2 + 2. * x - 1def approximate_derivative(f, x, eps=1e-3):原创 2020-12-08 15:26:41 · 4268 阅读 · 1 评论