当前位置: 首页 > news >正文

自然语言处理NLP (1)

基础可以先看看:深度学习入门(1)
深度学习入门(2)(计算机视觉)

自然语言和用向量表示单词:基于计数的方法
  1. 自然语言 natural language

    平常说话写作使用的语言

  2. 自然语言处理 NLP

    让计算机理解人类语言的技术

  3. 同义词词典

    将具有相同含义或者相似含义的单词归类到同一个组中,在NLP中用的同义词词典有时会定义单词之间的粒度更细的关系(层级结构关系等),形成一个单词网络

    example:

    1. WordNet

      使用WordNet,可以获得单词的近义词,计算单词之间的相似度

  4. 基于计数的方法

    1. 语料库:用于自然语言处理研究和应用的文本数据

    2. 语料库预处理:corpus单词ID列表 word_to_id单词到ID的字典 id_to_word ID到单词的字典

    3. 单词的分布式表示(类似所有的颜色都可用RGB来表示一样)

    4. 分布式假设:某个单词的含义由它周围的单词形成

    5. 基于计数/统计的方法:对某个单词的周围出现了多少次什么单词进行计数,然后再汇总

    6. 共现矩阵:汇总了所有单词的上下文其他单词出现的次数

    7. 如何测量单词的向量表示的相似度:余弦相似度

      在这里插入图片描述

  5. 改进:

    1. 点互信息 PMI:PMI↑ 相关性↑

      1. P(x): 单词x在语料库出现的概率

        C(x): 单词x在语料库出现的次数

      在这里插入图片描述

      在这里插入图片描述

      ​ 正的点互信息 PPMI:

      在这里插入图片描述

    2. 降维:尽量保留重要信息的基础上减少向量维度

      1. 奇异值分解 SVD

        在这里插入图片描述

        将共现矩阵转化为PPMI,并SVD降维:可以将大的稀疏向量转变为小的密集向量

word2vec和用向量表示单词:基于推理的方法
  1. 基于计数的方法弊端:一次性处理全部学习数据,不适用于大的语料库

  2. 基于推理的方法:选取mini_batch的数据,逐步学习

    输入上下文,模型输出各个单词的出现频率

  3. 基于推理的方法 -神经网络学习

    1. 单词的处理:转换成one-hot独热编码
  4. word2vec

    word2vec中使用的两个神经网络模型:CBOW模型 & skip-gram模型

    1. CBOW模型:根据上下文预测目标词

      输入:上下文 -> one-hot

      并行两个输入(表示上文 & 下文),经过1个隐藏层 两个全连接计算 到输出层

      输出层后加上Softmax层和Cross Entropy Error交叉熵层 反向传播更新参数

    2. skip-gram模型:根据给定单词预测上下文

      输入:给定单词

      经过一个隐藏层 两个全连接计算 输出层并行两个输出(表示上文 & 下文)

      输出层后加上Softmax层和Cross Entropy Error交叉熵层 反向传播更新参数

  5. GloVe(融合基于推理和基于计数)

    将整个语料库的统计数据的信息纳入损失函数,进行mini_batch学习

Error交叉熵层 反向传播更新参数

  1. GloVe(融合基于推理和基于计数)

    将整个语料库的统计数据的信息纳入损失函数,进行mini_batch学习

http://www.lryc.cn/news/601914.html

相关文章:

  • Java 集合进阶:从 Collection 接口到迭代器的实战指南
  • 基于多智能体的任务管理系统架构设计与实现
  • 【DataWhale】快乐学习大模型 | 202507,Task08笔记
  • 卷积神经网络研讨
  • 墨者:SQL注入漏洞测试(布尔盲注)
  • 零基础,如何入手学习SAP?
  • Ashampoo Background Remover(照片去背景工具) v2.0.2 免费版
  • WSL切换网络模式
  • 持续优化Cypress自动化测试
  • CentOS 镜像源配置与 EOL 后的应对策略
  • MySQL进阶学习与初阶复习第四天
  • 【测试报告】思绪网(Java+Selenium+Jmeter自动化测试)
  • 自动出题与批改系统(数学题生成+OCR识别)
  • ABB机器人多任务详解
  • OpenLayers 综合案例-轨迹回放
  • java的break能加标签,return可以加标签吗
  • 83.删除排序链表中的重复元素
  • DeepCompare文件深度对比软件“.dpcp“工程项目文件功能深度解析
  • vector使用和模拟
  • 网络虚拟化:veth,bridge,network namespace与docker网络
  • ESP32学习-FreeRTOS队列使用指南与实战
  • 使用低级上位画图法理解在对磁盘空间进行容量分配时【低级单位上位至高级单位的换算】
  • Mybatis Plus 多数据源
  • AI时代,我们更需要自己的开发方式与平台
  • Coze Studio概览(一)
  • 链表算法常用技巧与操作
  • 通过硬编码函数地址并转换为函数指针来调用函数
  • 【Agentic】通过LangGrah实现RAG评分和重写
  • 清华大学具身智能多传感器融合感知综述:背景、方法、挑战与展望
  • Flutter开发实战之CI/CD与发布流程