ONNX 加速模型推理 1.安装onnxpip install onnx onnxruntime2. 加载模型并转存模型为onnx格式,并测试使用实例为sentence-transformers预训练模型计算相似度class Test(object): def init(self): # 加载预训练模型 self.tokenizer = AutoTokenizer.from_pretrained("../all-MiniLM-L6-v2") self..
机器学习-信息熵 熵 熵是信息论中的一个基本概念,也称香农熵或信息熵,它衡量了一个概率分布的随机性程度,或者说它包含的信息量的大小。 考虑随机变量取某一特定值所包含的信息量大小,假设随机变量X取值x的概率为p(x), 取这个值的概率很小而它又发生了,则包含的信息量大。 考虑下面两个随机事件。(1)明天要下雨(2)奥巴马登上火星了 显然后者所包含的信息量要大于前者,因为后者的概率要远小于前者但却发生了。 如果定义一个函数h(x)来描述随机变量取值为x时的信息量大小,则h(x...
虚拟机和Unbutun系统安装 1.VirtualBox安装 下载地址:https://www.virtualbox.org/wiki/Downloads 选择要安装的版本,按正常软件一路安装即可 设置VirtualBox存储文件夹 打开软件,点击管理->全局设定->常规->选择自己在本地新建的用于存储虚拟机的文件夹 2. 在VirtualBox上安装虚拟机 点击“新建”按钮会弹出新建虚拟机电脑,然后为虚拟机命名,选择虚拟机类型和对应的版本。 设置虚拟...
文本多标签分类-SGM 论文标题:SGM:Sequence generation model for Multi-label classification论文地址:https://arxiv.org/pdf/1806.04822.pdf模型简况: 使用seq2seq的方式来解决多标签分类问题,通过这种方式,能够在一定程度上建模标签之间的关联信息。Encoder 双向LSTM编码 AttentionD...
【cs224n-16】Low Resource Machine Translation 神经机器翻译(NMT)的成功往往依赖于大量高质量的双语语料作为训练数据。如果是蒙古语、尼泊尔语这些小语种,无法提供足够多的双语数据,更极端的现实情况是,有些语言几乎没有任何双语预料,这种情况下NMT就无能为力了。 松散定义:当并行句子数量在10,000或更少时,可以认为语言对资源不足。注:现代NMT系统现在有数亿个参数! 挑战: 数据: 来源数据、评估数据集 建模:不清晰的学习范式、领域适应、模型泛化能力 W...
【cs224n-15】Analysis and Interpretability of Neural NLP 神经网络自然语言处理的分析与解释动机:我们的模型在做什么? 我们的算法学习什么功能还不清楚,而且它们的复杂性使我们无法准确理解 我们如何让模型变得更好?神经网络规划的分析与解释 人类作为语言测试的对象 我们如何理解人类的语言行为?一种方法:最小对。什么在说话者听起来是“好的” 我们如何理解语言模型中的语言行为?一种方法:最小对。被接受的句子的可能性高吗? 神经网络作为语言测试对象在语言模型上执行最小对测试的步骤...
文本多标签分类-概述 一.多类VS多标签多类分类(Multiclass classification) 表示分类任务中有多个类别,多类分类是假设每个样本都被设置了有且仅有一个标签。 比如对一堆水果图片分类, 它们可能是橘子、苹果、梨等,一个水果可以是苹果或者梨, 但是同时不可能是两者。多标签分类(Multilabel classification) 给每个样本一系列的目标标签. 可以想象成一个数据点的各属性不是相互排斥的,比如一个文档相关的话题. 一个文本可能被同时认为是...
【cs224n-15】Constituency Parsing and Tree Recursive Neural Networks 本文讨论一种新的类型的模型:递归神经网络(RNNs),区别于循环神经网络(RNN)的是,前者是后者的一个超集。递归神经网络 递归神经网络(左图):需要树形结构 循环神经网络(右图):不能捕捉没有前缀背景的短语,最后的向量经常捕捉最后的词的太多信息 递归神经网络非常适合具有嵌套层次结构和内在递归结构的设置。思考一个句子 “A small crowd quietly enters the historical church” 首先将句子分成名词短语、动词短语...
【cs224n-14】Reference in Language and Coreference Resolution 本文主要讲解语言中的指称和指称的消解,介绍其相关定义和发展情况。1.什么是指代消解? 指代是指:识别所有涉及到相同现实世界实体的 提及。通俗点讲是篇章中的一个语言单位(通常是词或短语)与之前出现的语言单位存在特殊语义关联,其语义解释依赖于前者。例如He, her 都是实体的提及,He,her的具体表示意思依赖与之前出现的语言单位。 举几个例子: 李明怕高妈妈一人呆在家里寂寞,他便将家里的电视搬了过来。 上面例子中的加粗部分,很明显依赖于前文。在语...
【cs224n-13】Natural Language Generation 本文主要讲解自然语言生成的神经方法(NLG)的一般性应用和发展概况。一.概述:LMs和解码算法NLG: 自然语言生成(NLG)指的是我们生成(即写入)新文本的任何设置。包括:机器翻译、文本摘要、对话、创意写作(讲故事、诗歌创作)、问答系统、图形字幕等等。语言建模: 是给定之前的单词,预测下一个单词的任务。一个产生这一概率分布的系统叫做 语言模型。如果系统使用 RNN,则被称为 RNN-LM条件语言建模: 是给定之前的单词以及一些其他输入 x ,预测下一个单词的任务。...
【cs224n-12】Modeling contexts of use: Contextual Representations and Pretraining. ELMo and BERT. 上一篇我们讲解了词嵌入的静态表示和上下文动态表示的区别,即基于上下文动态表示的预训练模型的发展情况,本文是对具体细节的一些细化描述。1. Representations for a word 我们可以从我们常见的词嵌入的静态表示模型 Word2vec, GloVe, fastText获得一个单词的表示,并应有与下游任务。 Tips for unknown words with word vectors 简单且常见的解决方案 训练时:词汇表 Vocab ...
【cs224n-11】Contextual Word Representations: BERT 词嵌入是NLP深度学习的基础,以Word2Vec、Glove和FastText为代表的静态词向量为文本在神经网络中的表示提供了一种强有力的工具。然而这种静态的词嵌入存在的问题是,以上下文无关的方式应用,对每个单词仅有一种表示,而通常单词的含义依赖于其上下文会有所不同,而且每个单词不仅有一方面特征,而应有各方面特征如语义特征,语法特征等。解决的方式是,在文本语料库上训练上下文表示。 静态表示:上下文动态表示:上下文表示发展过程:1.Semi-Supervised...
【cs224n-10】Information from parts of words (Subword Models) 在之前我们处理机器翻译等任务时,我们通常使用基于word单词作为基本单位进行模型的训练;但基于word单词的缺点是不能很好地处理单词不在词库中的情况,即out-of-vocabulary;并且对词法(morphology)的修饰处理也不是很好。因此我们很自然地可以想到可以使用更基础的组成来建立模型,比如英文中的字母,中文中的字。下文主要讲述4种典型方式。一. Character-Level Model 一种思路是将字符作为基本单元,建立Character-level model,但...
【cs224n-9】ConvNets for NLP Why CNNs? 之前的RNN系统中(不利用Attention的情况下),通常我们用最后的hidden vector来表示整个句子的所有信息,这就造成了信息的瓶颈。而CNN处理的思路是对于所有的子短语,都计算一个特征向量,最后再根据具体的任务将它们结合在一起。 卷积神经网络接收词向量的序列,并首先为所有子短语创建短语向量,而不仅仅是语法正确的短语。然后,CNNs将他们分组完成手头的任务。What is Convolution?对于一维向量 f 和 g ,它们在位置i的卷积...
【cs224n-8】Question Answering 问答系统(Question Answering)实际需求很多,比如我们常用的谷歌搜索就可看做是问答系统。通常我们可以将问答系统看做两部分:从海量的文件中,找到与问题相关的可能包含回答的文件,这一过程是传统的information retrieval;从文件或段落中找到相关的答案,这一过程也被称作Reading Comprehension阅读理解,也是这一讲关注的重点。MCTestReading...
【cs224n-7】Machine Translation, Seq2Seq and Attention 一.Machine Translation 机器翻译(MT)是将一个句子 x 从一种语言( 源语言 )转换为另一种语言( 目标语言 )的句子 y 的任务。 1.1 1950s: Early Machine Translation机器翻译研究始于20世纪50年代初。俄语 →英语(冷战的推动)系统主要是基于规则的,使用双语词典来讲俄语单词映射为对应的英语部分1.2...