Day31_【 NLP _1.文本预处理 _(2)文本张量表示方法】

目录:

文本张量表示方法

  • one-hot编码

  • Word2vec

  • Word Embedding

文本张量表示:将一段文本使用张量进行表示这个过程就是文本张量表示。

1.文本--->张量

文本-->词-->词向量-->词向量矩阵-->张量

  1. one-hot属于稀疏向量表示。

Word2vec和Word Embedding都是稠密向量表示。

一、one-hot编码

也叫 独热编码 或 0-1编码

  • 优势:操作简单
  • 劣势:高维稀疏
    • 高维:每个向量长度过大占内存(长度=不同词汇的总数)
    • 稀疏:割裂了词与词之间的联系

二、Word2vec

含义:将词表示成词向量的无监督方法

原理:构建神经网络模型,将网络参数作为词向量表示

模式:CBOW、skipgram。

CBOW模式 思路:

  1. 给定一段用于训练的文本语料
  2. 再选定某段长度(窗口)作为研究对象
  3. 使用上下文词汇预测目标词汇

skipgram模式 思路:

  1. 给定一段用于训练的文本语料
  2. 再选定某段长度(窗口)作为研究对象
  3. 使用目标词汇预测上下文词汇

实现API

安装:fastext词向量训练工具包

复制代码
pip install fasttext-wheel==0.9.2 -i

fasttext两大作用:文本分类、训练词向量。

API:

复制代码
# 训练词向量
model=fasttext.train_unsupervised()
# 加载模型
model.save_model()
# 保存模型
fasttext.load_model()
# 获取词向量
model.get_word_vector()
# 获取邻近词
model.get_nearest_neighbors()

三、Word Embedding

广义:密集词向量的表示方法,如word2vec

狭义:在神经网络中嵌入nn.embedding层,nn.Embedding()

狭义Word Embedding就是指词嵌入层nn.Embedding()

Word Embedding与Word2vec区别

Word2vec

  • 静态词向量:模型训练好后,使用模型输入词汇加载词向量,参数固定
  • 实现任务需分两步
    • 训练词向量
    • 基于训练好的词向量完成任务

Word Embedding

  • 动态词向量:词嵌入层作为整体神经网络的一部分,权重参数会参与更新,是动态的
  • 实现任务一步到位
相关推荐
moMo3 分钟前
当LLM学会"递纸条",AI是如何调用工具的
人工智能
拾年2755 分钟前
大模型的"聪明"从哪来?聊聊 AI 数据集的那些事儿
人工智能·深度学习·机器学习
拾年27516 分钟前
从 Prompt 到 Context 再到 Harness:AI 工程化的三年三级跳
人工智能
用户30904636139430 分钟前
Claude 不会直接执行你的函数,它只会生成一段结构化的工具调用请求。真正执行函数、访问数据库、请求外部 API 的动作,必须由你的后端完成。
人工智能
不加辣椒31 分钟前
第14章 Prompt 编排与优化技术
人工智能
Bolt34 分钟前
读懂 Claude Code `/loop` 与编码 Agent 的循环革命
人工智能·程序员·agent
用户2080468045634 分钟前
文本分块策略与最佳实践实战指南
人工智能
用户208046804562 小时前
文档解析实战:PDF、Word 与 HTML 的清洗提取指南
人工智能
得物技术2 小时前
从狂野代码到按目标生产:得物推荐 AI Harness 的工程化实践|AICon 演讲整理
人工智能·算法·架构
HokKeung2 小时前
飞书 lark-cli 如何存储 tenant_access_token 和 user_access_token
人工智能·go