欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > NLP自然语言处理期末

NLP自然语言处理期末

2025/2/11 7:37:43 来源:https://blog.csdn.net/weixin_74889578/article/details/143833301  浏览:    关键词:NLP自然语言处理期末

1.自然语言处理概述

自然语言面临的问题

  • 歧义:语法、结构、词性、语义上的歧义
  • 未知语言的出现:即新词新梗
  • 知识性:专业名词
  • 上下文依赖
  • 多模态:单一的文本输入或输出难以全面表达和解决问题,需要结合其他形式的输入或输出数据,如图像、视频、语音等多种形式的信息来更好地理解和表达。

自然语言概念:利用计算机技术对语言文本进行加工和处理

自然语言类型

自然语言理解:

  • 实体识别:如自动快递识别人名地名手机号
  • 情感分析:美团点评
  • 关键词分析:商品关键词提取
  • 文本分类:今日头条
  • 知识图谱

自然语言生成:

  • 机器翻译
  • 对话问答
  • AI写诗、写歌

2.基于NLP工具的中文分词

1.开发流程中有哪些特征工程?

  • 离散型表示方法:One-Hot、BOW、TF-IDF
  • 分布式表示方法:N-gram、wordEmbedding:Word2vec、Glove、FastText、BERT、GPT

2.中英文分词区别

  • 分词方式不同、中文更难
  • 英文单词有多种形态:单复数和时态(就涉及到词性、词干还原)
  • 中文分词有多种粒度问题:即多种划分方式 

3.中文分词方法有?

  • 基于词典
  • 基于统计:CRF条件随机场、HMM隐马尔可夫模型、SVM
  • 基于深度学习:CNN、RNN、LSTM

自然语言处理的基本流程

获取语料——数据处理——特征工程——模型训练——评估指标——部署上线

获取语料:语料,即数据集

数据处理:语料清洗、分词、词性标注、去停用词

ed9e2d2da93a4d8889dabd3d1d5ac9c6.png 特征工程:把单词表示成向量

  • 离散型表示方法:One-Hot编码、词袋模型BOW、TF-IDF词频-逆文档频率
  • 分布式表示方法:N-gram、wordEmbedding:Word2vec、Glove、FastText、BERT、GPT

模型训练: 模型选择有机器学习(GBDT梯度提升决策树、LR逻辑回归、SVM支持向量机、RF随机森林、KNN最近邻分类算法),深度学习

模型优化就涉及到四个问题:拟合和梯度

评估指标

部署上线:本地部署、服务器部署

中文分词CWS介绍 

概念:中文字序列插入分隔符,将其切分为词

 注意:机器学习分词是必须的、但深度学习时代,算法飞涨,分词不是必须的。只有关键词提取、实体识别等任务分词是必须的。

难点:

  • 没有统一标准
  • 歧义词
  • 新词 

中文分词方法 

  • 基于词典
  • 基于统计:CRF条件随机场、HMM隐马尔可夫模型、SVM
  • 基于深度学习:CNN、RNN、LSTM

中英文分词区别 

  • 分词方式不同、中文更难
  • 英文单词有多种形态:单复数和时态(就涉及到词性、词干还原)

b72c9342a4324b1db700cdd4675a11e8.png

  • 中文分词有多种粒度问题:即多种划分方式 

词性标注 POS

概念:即为每个单词标注一个词性,多用于预处理阶段

469c959e67414385a56e0d59e0364dcc.png 词性标注难点 

  • 一次多性问题
  • 词性标注规则不统一
  • 训练语料缺失:OOV,词汇超出
  • 新词如何标注

3.基于情感词典的文本情感分析理论

1.情感分析的缩写是SA

2.什么是情感时序分析

  • 时间也是情感分析的维度,如时间改变,人会改变想法。如热门话题讨论。

3.情感分类的方法

  • 按任务分类
  • 按文本级别分类

情感分析分类

5bc01948c0154f2ba5f83a5efa3d34e5.png

c663e44443a548a29b744aa3babeb2cb.png

情感广义狭义区分

狭义:分积极、消极、中性 

广义:相关任务:情绪识别、情感分类、观点挖掘

情感分析方法

狭义上,情感分析即指情感分类,大致流程为:

79e79be9b8c145e791e609c12dc70bc0.png

  • 基于机器学习b572977f770a40d3899fa128584afb22.png
  • 基于深度学习78374a55cfdd4c37b5043a46bbaae218.png
  • 基于词典d93e1bd68c474141966c06df011ef4ff.png

基于词典情感分析流程 

1.分词

2.确定情感词及其极性:根据词典来的

3.情感极性计算:即加减法

c1ccaa57ee71496cba1af3091e6836d7.png

4.综合判断

词典方法优缺点 

d7d2a82cf8ab4ba0b5c395c3fa146903.png

评估指标计算 

c221a70056db457d9e7d34362b2f5bad.png

 9422d0cafbc24322827a822a09248756.png

c54487934e4149748a9281506bc94460.png

还有真正例率,多少正确的被预测对,公式同查全率。

假正例率,多少反例被预测成正率: eq?%5Cfrac%7BFP%7D%7BFP+TN%7D

ROC曲线:曲线下为AUC值,该方法无视样本不平衡。

计算题 

91dbefd7a7ab4b68a48cd8942ad5c4c9.png

算法1的查准率为78/82=0.95, 查全率为78/80=0.975, F1-score为0.9624。
算法2的查准率为80/88=0.91, 查全率为80/80=1.0, F1-score为0.9524。

可见两种算法的查准率和F1-score都比较优秀,算法2在查全率上略胜一筹。

4.基于Kmeans的短文本聚类

1.Kmeans算法步骤及优缺点

2.聚类和分类的区别

  • 分类有类别标识,聚类没有

3.常见的聚类算法

  • 基于均值:K-means
  • 基于密度:DBSCAN,基于密度的抗噪聚类方法
  • 基于层次:凝聚层次聚类、分裂层次聚类

4. 为什么选TF-IDF作为K-means的特征提取工程?

  • TF-IDF能有效提取文本特征减少噪声、处理多义词、具有良好的可扩展性、与K-means算法兼容性好、无需标注数据、易于实现

文本聚类场景及概念 

如新闻分类、检索结果聚类(但存在检索词多义的情况)、数字图书馆、

概念:就是将数据集中数据划分成若干子集,子集内部样本具有相同性质,不同子集间差异较大。每个子集称为簇,簇内相似、簇间相异

8a244912435d41069e43052256216061.png

聚类算法 

  • 基于均值:K-means
  • 基于密度:DBSCAN,基于密度的抗噪聚类方法
  • 基于层次:凝聚层次聚类、分裂层次聚类

距离度量 

欧氏距离即两点间距离,曼哈顿距离即直线距离

c64c6ff5dfbe4dde945622382bd75167.png K-means聚类算法

算法流程:

f249a3fe30ab47a4b569f9e8b2c3fd37.png

评估指标:

f2713b42d7e841ddb998314fb3416ac9.png

kmeans算法优缺点:

  • 优:速度快、效率高、成本低、易理解、很灵活
  • 缺:易受噪声 边缘点 孤立点影响、K值不好取、偏向于识别球形或类球形结构的簇 

密度聚类DBSCAN 

910b010ccdd1490a838d22ca073a8d06.png

聚类效果图:

 b72d2fb233944b788ed4bd8c0ba68073.png

层次聚类Agglomerative

0b82b1ec922f430da13b26b9aa1527e4.png

文本聚类

即聚类应用在文本上。无监督学习,无需文档标注,对文本信息进行有效组织摘要导航,两类代表算法:

  • 基于距离的聚类算法
  • 基于概率模型的聚类方法

聚类流程:

文本准备——数据预处理 ——特征工程——聚类算法——聚类结果

TF-IDF词频-逆文本频率

公式:TF-IDF = TFXIDF

TF词频:

词频可不是词文章中出现的次数。 而是 某词再文章出现的次数/文章总词数

061de9b21de0413380f2a06d878f1cb6.png IDF逆文本频率:

指一个单词在文档中区分度

728e7e0a083c4de4abe864eca15ceb55.png

TF-IDF优缺点:

  • 优:简单快速易理解、语料库不变时可离线计算 
  • 缺:数据集分布不均影响结果、无法反映词序信息

e993b0301e6348b08a6036936906a886.pngTF-IDF使用场景

文本聚类

搜索引擎

智能客服

关键词提取:即计算出各词的TF-IDF值,按权值从大到小依次排列

为什么TF-IDF作为K-means的特征提取工程?

TF-IDF能有效提取文本特征、减少噪声、处理多义词、具有良好的可扩展性、与K-means算法兼容性好、无需标注数据以及易于实现等特点,成为K-means文本聚类算法中常用的特征提取方法。

5.基于FastText的文本分类

1.常见的深度学习文本分类框架有哪几种?

  • FastText、TextCNN 、XLNet、BERT 

2.FastText包含哪三部分?

  • 模型架构
  • N-gram
  • 层次softmax

3.Word2Vec有哪两种模式?

  • CBOW:即连续词袋模型。通过上下文来预测当前值
  • skip-gram:跳词模型。当前词预测上下文

4.TextCNN的滑动窗口和图像处理的滑动有什么区别?

  • 数据格式不同:一个是图像一个是文本
  • 文本卷积卷积核只向下滑动,卷积核宽度(固定的)=词向量维度,所以卷积核大小指的是卷积核高度

5.文本分类任务有

  •  二元文本分类
  • 多类文本分类
  • 层次文本分类
  • 文本序列分类

6.逻辑回归为什么能处理分类问题?

  • 输出为概率值
  • 有决策边界
  • 可解释性

7.多分类任务使用激活函数是softmax。每个类别都有一个概率值,且所有类别的概率之和为1。

8.FastText与Word2vec的不同

  • f是词袋模型,w是循环词袋模型
  • w只能处理词典中的词,无法处理构词信息。但f有构词优化
  • f预测的是类别,w预测的是词
  • f输入是整个句子的的单词和N-gram特征,w输入的是上下文

9.FastText改进点

  • 构词优化,能处理构词信息
  • 快速的训练和推理

  • 高效的文本分类

  • 可解释性

文本分类概述

定义:机器分析文章内容、将文本数据自动分配到一个或多个预定义的类别

特点:自动化、监督学习

文本分类分为:

  • 新闻文章分类、垃圾邮件过滤、客户反馈分析、医疗记录分析

分类任务类型

  •  二元文本分类
  • 多类文本分类
  • 层次文本分类
  • 文本序列分类

 基于情感词典的情感分析也可以被视为一种文本分类任务。

机器学习的文本分类

深度学习的文本分类 

独热编码one-hot

1e638cf2588d4a009ec83002f1932342.png

独热编码缺点很大:

  • 词汇较多时就会造成维度灾难,计算代价大
  •  无法体现词与词之间的关系

提出WordEmbedding(词嵌入)技术 :

  • word2vec
  • Glove
  • FastTest

求余弦相似度 :
56b02a20d29f41119f4dfc175789fb15.png

FastText模型概述

带监督的文本分类问题。包含三部分:

  • 模型架构
  • N-gram:一种生成式模型。将文本按照字节进行大小为N的滑动窗口操作。
  • 层次softmax

OOV

Out of Vocabulary词汇外,即模型在训练时没有见过的单词。FastText通过将词汇分解为字符n-gram来处理OOV问题。、

N-gram 构词的三步总结

1.选择 N 的大小

2.切分文本为 N-grams

3.构造词组或特征提取

2c84a69813514570a9f475b0ae7ea8e9.png

词袋模型BOW :文本表示为一个词的集合,忽略词语的顺序和语法结构,只关注词语的顺序。

eq?TF-IDF%20%3D%20TF%20*IDF

16a01f2b94ce4f42aec2c610beea90a7.pngFastTest与Word2vec的比较

可以理解为:word2vec+分类+构词优化=FastText

具体看章节开始的问题

6.基于Seq2Seq的问答系统

1.问答系统的分类

2.E-D的缺陷

  • 不论输入和输出的长度是什么,中间向量c(也就是编码器的输出,解码器的输入)长度固定。

3.说一说Seq2Seq结构相比于循环神经网络实现序列生成,有什么优点?

  • 编码解码器并行化,加快训练
  • 不具备短期记忆长程依赖问题
  • 灵活性

4.Seq2Seq结构可以有哪些应用场景?

  • 照片压缩
  • 文字-文字:机器翻译、文章摘要、代码补全、对话机器人
  • 音频-文字:语音识别
  • 图片-文字:图像描述生成

5.Encoder-Decoder与Seq2Seq的关系?

  • 主流的Seq2Seq模型通常基于Encoder-Decoder框架实现

6.Encoder-Decoder的编码部分和解码部分的作用分别是什么?

  • encoder:将输入序列(如文字图片音频)转化为固定维度的稠密向量。可以理解将现实问题转化为数学问题。
  • decoder:生成目标译文。可看作求解数学问题,转化为现实解决方案。

7.LSTM神经网络的工作逻辑?

  • 通过引入门控机制控制信息流,从而克服长期依赖。由三个关键的门控单元构成:输入门、遗忘门和输出门,它们共同决定了细胞状态的更新以及最终的隐藏状态输出

问答系统的分类

  • 开放域问答(小爱)、封闭域问答(淘宝客服)
  • 基于知识库的问答系统(依赖于结构型数据)
  • 基于检索的问答系统(依赖于大量文本数据)
  • 基于对话的问答系统
  • 基于生成的问答系统

面临的挑战:

  •  自然语言理解、知识获取和更新、答案准确性、上下文理解、需求的多样性

Encoder-Decoder架构

编码解码,指示一类算法的统称,该架构下可使用不同算法。

  • encoder:将输入序列(如文字图片音频)转化为固定维度的稠密向量。可以理解将现实问题转化为数学问题。
  • decoder:生成目标译文。可看作求解数学问题,转化为现实解决方案。

4b2d957fd29944b78e8c13ef7b202fed.png

显著特征:端到端的学习算法。

Encoder-Decoder应用 

  • 照片压缩
  • 文字-文字:机器翻译、文章摘要、代码补全、对话机器人
  • 音频-文字:语音识别
  • 图片-文字:图像描述生成

Seq2Seq模型

先问什么是序列生成问题?

根据输入的内容X和Y历史序列信息来预测序列中的下一个值的生成有监督任务。

这里的有监督可理解为:输入为目标语言和源语言,二者是一一对应的。类似label。

引申到深度学习中即:构建一个联合的神经网络,以端到端的方式将一个序列化数据映射成另一个序列化数据,简称Seq2Seq模型。

主流的Seq2Seq模型通常基于Encoder-Decoder框架实现; 模型结构为:

9de7e788674f4b0ca18bdc5494586a0d.png

根据不同的任务可以选择不同的编码器和解码器:

  • 循环神经网络:RNN、LSTM、GRU
  • 卷积神经网络:CNN
  • 注意力机制:Attention、Transformer 

557af275fea146d5aded89fddde3a3eb.png

关于RNN和LSTM这里不做赘述,详细移步 神经网络与深度学习

RNN循环神经网络的缺点:

  • 长期依赖问题:RNN 有短期记忆问题,无法处理很长的输入序列
  • 训练投入成本大;
  • 梯度消失和梯度爆炸;

7.基于Seq2Seq+Att的翻译系统

1.说一说Attention值的计算公式是什么?

eq?Attention%28Q%2CK%2CV%29%3Dsoftmax%28%5Cfrac%7BQK%5E%7BT%7D%7D%7B%5Csqrt%7Bd_%7Bk%7D%7D%7D%29V

2.Attention的优缺点?

  • 优:参数更少、速度更快、效果更好
  • 缺:计算成本大、序列长度限制 、训练难度大

3.Attention机制基于Encoder-Decoder提出了哪些改进?

  • 解决了长期依赖问题、 并行化和高效训练、提高了对长序列的处理能力

4.Attention机制的工作步骤

  • query和key进行相似度计算,得到权值;
  • 将权值进行归一化softmax,得到直接可用的权重;
  • 将权重和value进行加权求和;

翻译系统

即利用计算机将一种源语言转化为目标语言的过程。分为:

  • 机器翻译:百度翻译
  • 翻译机:讯飞
  • 拍照翻译

Attention机制 

attention三大优点:

  • 参数更少
  • 速度更快:并行计算:同时执行多个计算任务。
  • 效果更好

缺点:

  • 计算成本大、序列长度限制 、训练难度大

rnn由于递归结构可以执行并行计算但效率低

引入Attention的Encoder-Decoder

“固定向量->向量序列”可能指的是编码器将固定长度的输入向量转换为一系列内部表示

9ae2800629664144b490859ddcf10fdc.png

Attention结构原理 

454458f3bfd54dcaa604ab6ac67704ba.png

attention中KQV的通用计算流程:

  • query和key进行相似度计算,得到权值;
  • 将权值进行归一化softmax,得到直接可用的权重;
  • 将权重和value进行加权求和输出注意力值;

各att变体主要就相似度计算不同

d7d93958c97a4835bbac19153c2ff79a.png Attention种类 

c04354bd38024ba4b6392ef2b1c3a18e.png

self-attention计算公式:

eq?Attention%28Q%2CK%2CV%29%3Dsoftmax%28%5Cfrac%7BQK%5E%7BT%7D%7D%7B%5Csqrt%7Bd_%7Bk%7D%7D%7D%29V 

8.基于Transformer的翻译系统理论

1. Transformer本质上属于Encoder-Decoder结构。

2. 通过位置编码解决Attention无法捕捉顺序信息的问题。

3. 利用多头注意力机制从多个角度抓取重点信息。

4. 使用掩码解决Attention文本生成过程中偷窥下文的问题

5.Transformer具有多个子编解码结构

6.残差连接层归一化拨开乌云

网络整体结构 

encoder看作6个子encoder,decoder看作6个子decoder

b835318b5c854388978130838a739c18.png

每个encoder可看作自注意力+FFN前馈

每个decoder可看作自注意力+编码-解码注意力层+FFN

339af1fd72344189ae5e5e5461358c45.png

Encoder细节 

23ff2c3f4b1946d6af240a60ab3e2916.png

位置Positional Embedding的加入为了获取顺序信息,解决注意力无法捕捉顺序信息的问题。

位置编码即将位置向量添加到embedding中。是为了给模型提供序列中每个元素的位置信息。通过正弦和余弦函数的组合来实现的,这种编码方式可以确保不同位置的编码是唯一的,并且模型可以捕捉到序列的周期性特征。 

上图的encoder输入分两种,词embedding和位置embedding

常见的词embedding有:

  • Word2Vec、FastText、BERT、One-hot Encoding

 self-att结构

61b5c80a68cf4fcfa48ef1f3aa522d7f.png

这里KQV由输入X乘不同的权重得来的 。

self-att的输出为:注意这里的dk指的是向量维度,即Q、K矩阵的列数,根号dk防止内积过大,使得相似度得分更平滑。

eq?Attention%28Q%2CK%2CV%29%3Dsoftmax%28%5Cfrac%7BQK%5E%7BT%7D%7D%7B%5Csqrt%7Bd_%7Bk%7D%7D%7D%29V

多头注意力 

整体流程:

输入句子-embedding-生成QKV-计算att值-合并输出

0e4535d0dd094092a07b3f4dedb8ef99.png

4ef8c2ba3b70456d8500cba40ff27018.png

每一个头会产生不同的QKV,得到一个不同的注意力值,多头最终输出让输入与输出数量一致:

合并多个attention值 X 联合训练得到的权重矩阵W = 最终输出Z 

单多头注意力机制的不同点

计算方式

  • 单:只有一个注意力头
  • 多:多个注意力头,每个头使用独立的权重矩阵计算,并行计算效率高,最后拼接

学习能力

  • 只能学习一种类型关系
  • 可学习多种不同关系

信息融合

  • 易导致信息丢失,因为信息通过同一机制处理
  • 对信息多视角融合

复杂性:一个大一个小

 Add&Norm

即残差连接和归一化。这里指的是层归一化。引入原因来自两朵乌云:

  • 梯度消失和爆炸07781fded81e47a29e9c964ae8be64ca.png
  • 网络退化:网络过深准确率反而低:无法学习恒等映射

所以引入恒等映射,残差连接。 引入层归一化解决梯度消失和爆炸,提升数值稳定性。

484376f799ff48eab731f6c8767dae67.png

 

这里介绍一下常见的relu(ruai lu我这样读^v^) :其他常见的激活函数

即线性整流单元,

bc0940c361654fc694c78815a532a0f5.png

 layer和batch的区别

9a612528d4604c82bdf49a0e70414915.png

为什么使用层归一化而非批归一化?

  • 模型输入通常为变长序列,batch 处理变长序列会导致计算不一致。
  • layer对单样本所有层归一化,计算效率高
  • layer更有助于梯度流动,更适合深层网络

Decoder细节 

98ff811686274330bf275f845e2c45d6.png

第一个多头注意力的masked操作即:由输入X得到mask矩阵:

 

 第二个多头注意力的KV来自encoder,Q使用上一个输出的

掩码多头注意力只使用上文信息。即考虑该元素之前的元素,而不包括它自己或之后的元素。 

最后输出的softmax操作 eaefc5ea2767401b96cffed207e6e3f5.png

关键代码

如何正确地分割和合并注意力头(split_headscombine_heads方法):8ee090092f50436c91c7072c96f7ddf5.png

计算位置编码的公式,特别是正弦和余弦函数的应用。6b4f9b1758c84e70a5b54780ebdef1d2.png

如何正确地应用层归一化(LayerNorm)和实现前向传播中的残差连接和Dropout。bd457cac15934ee3b8741abb0b64bdb1.png

9.基于BERT模型的酒店评价分类

1.BERT分为bert-large(24层)bert-base(12层)版本

2.模型由多个transformer-encoder层堆叠而成,侧重于文本理解

3.BERT的输入Embedding(嵌入)由token embedding(字符编码)、segment embedding(分句编码)、position embedding(位置编码)三个部分相加得到。

4.预训练时,通过MLMNSP分别学习字符表征与句子表征。

  • MLM掩码语言模型 :输入文本部分词汇被随机掩码mask替代,从而根据上下文预测。通过完形填空学习单词级信息。
  • NSP下一句预测:判断给定两个句子是否合理(后一句前一句)。通过句子关系学习句子级信息。

5.可以在文本分类问答系统命名实体识别等特定的下游任务上微调提取文本特征。

Embedding是深度学习中的一个关键技术,它通过将离散数据转换为连续的向量表示,从而捕捉关系。

 BERT模型结构

0e515bbcc7f44a089334d6ead3c6d6e5.png

单项编码和双向编码

  •  只关注序列的一个方向,不考虑整个序列的上下文信息。
  • 考虑上下文

分句编码

在embedding中输入有句子和句子对,分句编码即区分句子和句子对。

  • 预训练输入句子对,微调输入单句

两个标记:

  • CLS分类标记:输出句子表征或句子关系
  • SEP分隔标记:区分句子和句子对

BERT微调 

Fine-tuning:使用特定数据微调BERT预训练模型,用于具体NLP任务。

  • 双句子级任务:文本相似度、问答匹配
  • 单句分类任务:情感分析、垃圾邮件检测
  • 文本问答任务:机器阅读理解、自动问答系统
  • 单据标注任务:信息抽取、文本分析

BERT改进模型 

RoBERTa、ALBERT、XLNet

处理中文时需要调整分词方法,可以使用BERT-wwm模型。掩盖整个词而不是单个字符

10.大模型LLM理论基础

1.请列举常见的prompt基础操作有哪些

  • 明确需求指示,避免模糊词语
  • 使用分隔符
  • 使用固定输出格式
  • 角色扮演
  • 提供充分上下文

2. 请解释什么是Zero Shot Prompt、Few-shot Prompt、One-shot Prompt?

  • 无样本学习:无需提供示例或训练数据直接让模型来生成答案

  • 小样本:提供少量示例来生成答案

  • 单样本:仅提供单个示例或上下文来生成答案,可以看作是Few-shot Prompt的一种特殊情况,

3.请列举常见的prompt进阶操作

  • 小样本学习
  • 思维链
  • 组合使用多种prompt
  • 多提供关键词
  • 指定输出长度
  • 长文本总结
  • COSTAR框架

4.costar框架具体含义

COSTAR框架

C:context背景   S:strategy 策略  A:action 行动

O:object 目标    T:tactics 战术     R:review 回顾

缩写大汇总

AIGC:人工智能生成内容                                    NSP:下一句预测

LLM:大语言模型                                              NLU:自然语言理解

CoT:思维链                                                     NLG:自然语言生成

BERT:基于transformer的双向编码器表征

 

 

 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com