循环神经网络和自然语言处理一

news2024/9/22 4:25:54

目录

一.分词

1.分词工具

2.分词的方法

3.N-gram表示方法

二.向量化

1.one-hot编码

2.word embedding

3.word embedding API

4.数据形状改变


既然是自然语言,那么就有字,词,句了

一.分词

1.分词工具

tokenization,jieba,清华大学的分词工具THULAC等等

2.分词的方法

对于中文我们可用把句子分为词语或者字,比如我爱那个姑娘,可以分为[我,爱,那个,姑娘],或者[我,爱,那,个,姑,娘]

对于英文来说直接按照空格分就可以了

3.N-gram表示方法

前面我们说句子可以分为单个字或者词,但是有些时候我们要用到三个字,四个字,五个字等等这些词语来表示,而N-gram就是用来将句子分为一组一组的词语,N表示能够被一起使用的字或者词的数量

import jieba
s='很多深度学习算法中都会包含"神经网络"这个词,比如:卷积神经网络、循环神经网络'
cuted=jieba.lcut(s)
# 这里就是N-grad方法,这里的N=2,两个词的意思
[cuted[i:i+2] for i in range(len(cuted)-1)]
print(cuted)

运行后打印出[['很多', '深度'], ['深度', '学习'], ['学习', '算法'], ['算法', '中'], ['中', '都'], ['都', '会'], ['会', '包含'], ['包含', '"'], ['"', '神经网络'], ['神经网络', '"'], ['"', '这个'], ['这个', '词'], ['词', ','], [',', '比如'], ['比如', ':'], [':', '卷积'], ['卷积', '神经网络'], ['神经网络', '、'], ['、', '循环'], ['循环', '神经网络']]

二.向量化

因为计算机不能识别文字,所以要把文字向量化,转化成数字形式

1.one-hot编码

在one-hot编码中,每一个字词使用一个长度为N的向量表示,N表示token的数量。比如我们要对“深度学习”进行分词one-hot处理

2.word embedding

这个方法是深度学习中常用的方法,word embadding使用了浮点型的稠密矩阵来表示token。根据需要分词的文本,我们的向量通常采用不同的维度,比如100,256,300等等。其中向量中的每一个值都是参数,其初始值是随机生成的,之后会在训练的过程中不断的学习改进获得

比如一个文本中有10000个字词,如果使用one-hot编码,那么生成的矩阵就是10000*10000的大小,而且每个字词的代表向量基本是用0组成的。而用word embedding来表示的画,只需要10000*200,或者10000*300大小的矩阵。

我们把所有文本转化为向量,把句子用向量来表示。但是在着中间,我们先把token使用数字来表示,在把数字用向量来表示,因为文字计算机识别不了。token----->num----->vector

3.word embedding API

在torch中导入,torch.nn.Embedding(num_embeddings, embedding_dim)。其中num_embedding表示词典的大小,embedding_dim表示embedding的维度也就是上面说的100,256,300等等。

4.数据形状改变

比如每一个batch中的每个句子有十个词语,经过形状为[20,4]的word emebedding之后,原来的句子会变成[batch_size,10,4]的形状。相当于增加了一个维度,比如二维数据变成三维

关注我持续更新!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1990357.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Outlook Pst文件大小最大多大?如何分开缩减?

簡介 預設情況下,personal Folders (.pst) 和離線 Outlook Data File (.ost) 檔案在 Microsoft Outlook 2010 和 Outlook 2013 中為 Unicode 格式。 .pst 和 .ost 檔案的整體大小有 50 GB 的預先設定限制。 此限制大於 2007 和 Outlook 2003 Outlook Unicode .pst …

零基础5分钟上手亚马逊云科技AWS核心云开发/云架构知识 - 成本分析篇

简介: 欢迎来到小李哥全新亚马逊云科技AWS云计算知识学习系列,适用于任何无云计算或者亚马逊云科技技术背景的开发者,让大家零基础5分钟通过这篇文章就能完全学会亚马逊云科技一个经典的服务开发架构方案。 我将每天介绍一个基于亚马逊云科…

数据结构 - 相邻节点迭代器

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 文章目录 引言一、相邻节…

nuxt3实战:完整的 nuxt3 + vue3 项目创建与useFetch请求封装

一. 安装 pnpm dlx nuxilatest init <project-name>// ornpx nuxilatest init <project-name>如遇到报错 手动安装&#xff1a; 浏览器访问报错https请求地址&#xff1a; 点击tar(项目初始文件的下载地址)对应地址,下载starter-3.tar.gz 包到本地 本地创建项…

【Android】使用网络技术——WebView的用法、http协议、OKHttp、解析XML、JSON格式数据笔记整理

WebView的用法 新建一个WebView项目 修改activity_main中的代码&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:id"id/main"and…

STM32F1之SysTick系统定时器详细解析

目录 1. 简介 2. SysTick功能框图 3. SysTick寄存器 3.1 SysTick控制及状态寄存器 3.2 SysTick重装载数值寄存器 3.3 SysTick当前数值寄存器 3.4 SysTick校准数值寄存器 4. SysTick定时时间计算 5. SysTick寄存器结构体 6. 写一个us级延时函数 7. 写一个…

240806-RHEL 无法通过 ssh username@ip 远程连接,报错:Connection closed by ip port 22

A. 原因排查 遇到这个错误通常意味着 SSH 服务可能在目标主机上没有正常运行&#xff0c;或有防火墙/网络配置问题。以下是一些排查步骤&#xff1a; 检查 SSH 服务状态&#xff1a; 确认 SSH 服务是否正在目标主机上运行。 sudo systemctl status sshd重启 SSH 服务&#xff…

探索 Python 异步通信的奥秘:WebSockets 库的神奇之旅

文章目录 探索 Python 异步通信的奥秘&#xff1a;WebSockets 库的神奇之旅背景&#xff1a;为何选择 WebSockets&#xff1f;什么是 websockets 库&#xff1f;安装 websockets 库5个简单的库函数使用方法场景应用示例常见问题与解决方案总结 探索 Python 异步通信的奥秘&…

用Manim实现三维坐标系的绘制

1.ThreeDAxes 函数 ThreeDAxes是 Manim 中用于创建三维坐标系的类。在manim中常用的三位坐标绘制函数是&#xff1a; class ThreeDAxes(x_range(-6, 6, 1), y_range(-5, 5, 1), z_range(-4, 4, 1), x_length10.5, y_length10.5, z_length6.5, z_axis_configNone, z_normala…

数据仓库怎么建设?一文详解数仓的建设过程!

随着信息技术的飞速发展&#xff0c;企业不仅需要存储和管理海量数据&#xff0c;更迫切需要从这些数据中提取有价值的信息&#xff0c;以支持复杂的决策制定过程。数据仓库不仅是存储数据的场所&#xff0c;更是支持复杂查询、报告和数据分析的强有力工具&#xff0c;其建设已…

JavaScript异步简介|Promise快速入门

异步&#xff08;Asynchronous, async&#xff09;是与同步&#xff08;Synchronous, sync&#xff09;相对的概念。 异步 JavaScript 简介 异步编程技术使你的程序可以在执行一个可能长期运行的任务的同时继续对其他事件做出反应而不必等待任务完成。与此同时&#xff0c;你…

Linux工具|运维工具rename常用命令详解

&#x1f4eb; 作者简介&#xff1a;「六月暴雪飞梨花」&#xff0c;专注于研究Java&#xff0c;就职于科技型公司后端工程师 &#x1f3c6; 近期荣誉&#xff1a;华为云云享专家、阿里云专家博主、腾讯云优秀创作者、ACDU成员 &#x1f525; 三连支持&#xff1a;欢迎 ❤️关注…

【vulnhub】Wakanda :1靶机

靶机安装 下载地址&#xff1a;https://download.vulnhub.com/wakanda/wakanda-1.ova 运行环境&#xff1a;Virtual Box 信息收集 靶机IP扫描 netdiscover -i eth0 -r 192.168.7.0/24 端口扫描 nmap -A 192.168.7.243 -p- 80端口开启了http服务&#xff0c;在3333端口开启…

案例研究丨盛泰光电携手DataEase实现数据驱动智能制造

盛泰光电科技股份有限公司&#xff08;以下简称为“盛泰光电”&#xff09;是中国第一批摄像头模组制造企业。自成立至今&#xff0c;一直专注于手机摄像头模组的研发、制造、销售与服务&#xff0c;并向非手机包括笔记本、车载、医疗、AIoT等领域延伸&#xff0c;形成以手机摄…

PHP + Laravel + RabbitMQ + Redis 实现消息队列 (二) 消费队列在RabbitMQ和redis中的简单使用

最简单的队列功能 RabbitMQ和消息传递通常会使用一些术语&#xff1a; 生产者&#xff08;Producer&#xff09;意味着发送消息。一个发送消息的程序称为生产者。队列&#xff08;Queue&#xff09;尽管消息通过RabbitMQ和您的应用程序流动&#xff0c;但它们只能存储在队列中…

数据结构(01):数据结构概述(基本术语、逻辑结构和物理结构)

1、数据结构概述 (1)基本术语 A.数据元素 具有一定意义的基本单位。如人类的数据元素是人&#xff08;张三、李四等&#xff09;。 B.数据项 可以看作是数据元素的属性。如人的属性&#xff08;姓名、年龄、身高等&#xff09; C.数据对象 性质相同的数据元素的集合。如某一栋…

群聊的创建 表情包发送 图片发送

目录 群聊&#xff1a; ​编辑 表情包发送&#xff1a; 图片发送&#xff1a; 群聊&#xff1a; 1.群资料的表groupinformation 字段&#xff1a;GroupId 群id&#xff0c;GroupName 群名&#xff0c;CreatTime 创群时间&#xff0c;CreatUserId 创群的人&#xff0c;…

萤石云 ezuikit-js创建的播放器实例esc取消全屏后变黑屏

原因&#xff1a;上层页面重新设置了容器的宽高&#xff0c;导致uikit退出全屏时宽高计算异常 解决方法&#xff1a;实例初始化的时候会传入宽高width、height&#xff0c;播放器的画面尺寸是根据这两个参数设置的&#xff0c;然后退出全屏会回到这两个值

计算机的错误计算(五十五)

摘要 展示大数的余弦函数值的错误计算。 根据国际IEEE 754 标准[1]&#xff0c;包括余弦在内的三角函数的定义域是整个实数范围&#xff1a; 但是&#xff0c;实际情况怎样呢&#xff1f; 例1. 计算 . 在 Python下计算&#xff1a; x30**65 print(x) import math print(ma…

只强的Java学习之路8-7

一. 安装配置nodejs npm create vitelatest npm install vue-router npm install axios npm install element-plus --save npm run dev https://element-plus.org/zh-CN/#/zh-CN 新建项目&#xff1a; easy.vue <script setup></script><!--绑定数据-->…