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

上海外贸soho网站建设百度大数据中心

上海外贸soho网站建设,百度大数据中心,在线视频网站a做免费下载,网页制作与网站建设在线作业基于github项目:https://github.com/shibing624/nlp-tutorial/tree/main 自然语言处理任务 1) 简单任务 拼写检查 Spell Checking 关键词检索 Keyword Search 同义词查找 Finding Synonyms 2) 中级任务 解析来自网站、文档等的信息 3) 复杂任务 机器翻译 Ma…

基于github项目:https://github.com/shibing624/nlp-tutorial/tree/main

自然语言处理任务

1) 简单任务

  • 拼写检查 Spell Checking

  • 关键词检索 Keyword Search

  • 同义词查找 Finding Synonyms

2) 中级任务

  • 解析来自网站、文档等的信息

3) 复杂任务

  • 机器翻译 Machine Translation

  • 语义分析 Semantic Analysis

  • 指代消解 Coreference

  • 问答系统 Question Answering

文本表示

传统离散表示

在自然语言处理(Natural Language Processing,NLP)领域,文本表示是处理流程的第一步,主要是将文本转换为计算机可以运算的数字。

文本表示方法的技术演进:

符号表示法(Symbolic)

示例:词典编码「自然语言处理」→ {"自":1, "然":2, "语":3, "言":4, "处":5, "理":6}

from sklearn.feature_extraction.text import CountVectorizer
corpus = ["自然语言处理 是 人工智能 的 重要 分支"]
vectorizer = CountVectorizer(token_pattern=r'\b\w+\b')
X = vectorizer.fit_transform(corpus)
print(vectorizer.get_feature_names_out())  # ['人工智能', '分支', '处理', '自然语言处理', '重要']

词袋模型(Bag-of-Words, BoW)

原理:忽略词序,统计每个词在文档中的出现次数

from sklearn.feature_extraction.text import CountVectorizer
corpus = ["I love NLP.", "NLP is amazing!"]
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(corpus)
print(X.toarray())  # 输出:[[1 1 1 0] [0 1 0 1]] 
print(vectorizer.vocabulary_)  # {'love': 2, 'nlp': 1, 'is': 3, 'amazing': 0}

例子1:

句1:Jane wants to go to Shenzhen 句2:Bob wants to go to Shanghai

使用两个例句来构造词袋: [Jane, wants, to, go, Shenzhen, Bob, Shanghai]

两个例句就可以用以下两个向量表示,对应的下标与映射数组的下标相匹配,其值为该词语出现的次数

句1:[1,1,2,1,1,0,0] 句2:[0,1,2,1,0,1,1]

TF-IDF(词频-逆文档频率)

原理:降低常见词权重,提升重要词权重
TF-IDF = TF(t, d) × IDF(t)

from sklearn.feature_extraction.text import TfidfVectorizer
corpus = ["The cat sat on the mat.", "Dog on mat."]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(corpus)
print(X.toarray())  # 非对称矩阵

优劣对比

方法优点缺点
BoW简单高效,易于实现忽略词序、语义信息,维度灾难
TF-IDF减少常见词干扰仍无法捕捉语义关系

 分布式表示(词嵌入)

核心思想:用稠密向量表示词语,捕获语义关联

Word2Vec

原理:通过上下文预测目标词(Skip-Gram)或反之(CBOW)

from gensim.models import Word2Vec
sentences = [["nlp", "is", "cool"], ["deep", "learning", "too"]]
model = Word2Vec(sentences, vector_size=100, window=5, min_count=1)
print(model.wv["nlp"])  # 输出100维向量

向量示例"king" - "man" + "woman" ≈ "queen"

GloVe(Global Vectors)

原理:基于全局词共现矩阵的加权最小二乘训练

from gensim.scripts.glove2word2vec import glove2word2vec
from gensim.models import KeyedVectors
glove2word2vec("glove.txt", "word2vec_format.txt")
model = KeyedVectors.load_word2vec_format("word2vec_format.txt")

优劣对比

方法优点缺点
Word2Vec高效捕获局部语义未利用全局统计信息
GloVe结合全局共现统计训练速度较慢

 上下文感知表示

核心突破:根据上下文动态调整词向量

ELMo(Embeddings from Language Models)

原理:双向LSTM生成上下文相关向量

from allennlp.modules.elmo import Elmo, batch_to_ids
options_file = "https://allennlp.s3.amazonaws.com/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json"
weight_file = "https://allennlp.s3.amazonaws.com/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5"
elmo = Elmo(options_file, weight_file, 1)
character_ids = batch_to_ids(["hello world"])
embeddings = elmo(character_ids)['elmo_representations'][0]

BERT(Bidirectional Encoder Representations)

原理:Transformer编码器 + Masked LM训练

from transformers import BertTokenizer, BertModel
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
model = BertModel.from_pretrained('bert-base-uncased')
inputs = tokenizer("Hello NLP!", return_tensors="pt")
outputs = model(**inputs)
last_hidden_states = outputs.last_hidden_state  # [1, seq_len, 768]

向量示例
同一词在不同上下文的BERT表示:

  • "bank" in "river bank" → [0.2, -0.7, ..., 0.4]

  • "bank" in "bank account" → [0.8, 0.1, ..., -0.3]

方法类型典型代表语义捕获上下文敏感训练成本应用场景
传统离散表示BoW, TF-IDF极低简单文本分类
静态词嵌入Word2Vec中等(静态)中等关键词扩展、推荐
上下文动态嵌入BERT✔️极高语义理解、问答系统
http://www.dtcms.com/wzjs/497030.html

相关文章:

  • 临沂建设企业网站深圳seo外包
  • wampserver做网站百度百家号登录入口
  • 雷山网站建设搜索指数分析
  • 开发区网站建设的目的搜外网友情链接
  • 珠海网站建设找哪家百度账号个人中心
  • 怎么在360做网站百度信息流
  • 嘉定网站设计seo搜索引擎优化入门
  • 网站建设最简单的教程视频网络优化工程师吃香吗
  • 制作html购物网站源代码凡科网小程序
  • 哈尔滨城乡建设局网站开封seo公司
  • 蓝色网站建设常用的网络营销平台有哪些
  • 湖北省住房与城乡建设厅网站芜湖seo
  • 网站建设模块网站数据
  • 做网站需要交管理费吗镇江百度公司
  • 国内免费产品发布网站线上推广方案模板
  • php网站整合dz论坛成都网站seo推广
  • 做ppt的模板的网站有哪些国内专业的seo机构
  • 青海公安网站建设seo是什么及作用
  • 成功的个人网站又一病毒来了比新冠可怕
  • 餐饮酒店网站怎么做精准引流客源的方法可靠吗
  • 做公司网站棋牌淘宝seo搜索引擎优化
  • 百度网站排名突然消失企业营销推广策划
  • 代理注册公司需要什么条件北京官网seo
  • 搞一个网站要多少钱长沙正规竞价优化推荐
  • 山西武汉网站建设搜索软件排行榜前十名
  • 怎么用抓爬工具做网站中山seo推广优化
  • 网站上传不了湖南产品网络推广业务
  • 分销网站有哪些厦门网站seo哪家好
  • 有关做美食的网站有哪些优化网址
  • 关于网站设计的毕业论文百度推广落地页