项目4 任务1 探析车载自然语言处理的技术基础与需求_第1页
项目4 任务1 探析车载自然语言处理的技术基础与需求_第2页
项目4 任务1 探析车载自然语言处理的技术基础与需求_第3页
项目4 任务1 探析车载自然语言处理的技术基础与需求_第4页
项目4 任务1 探析车载自然语言处理的技术基础与需求_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

探析车载自然语言处理的技术基础与需求主讲教师:王开石汽车人工智能通识讲义项目四

任务1CONTENTS一、自然语言处理的核心技术二、车载场景的文本数据特征汽车人工智能通识讲义三、自然语言处理的车载适配挑战汽车人工智能通识讲义一、自然语言处理的核心技术词法分析句法分析语义分析文本生成深度学习模型汽车人工智能通识讲义(一)词法分析1.基于空格和标点符号的分词importresentence="Didyouspend$12.4onforyourpre-print?"+"No,it'sfree!It's..."pattern=r"\w+"print(re.findall(pattern,sentence))pattern=r"\w+|\S\w*"['Did','you','spend','12','4','on','taobao','com','for','your','pre','print','No','it','s','free','It','s']pattern=r"\w+(?:[-']\w+)*"new_pattern=r"(?:\w+\.)+\w+(?:\.)*"pattern=new_pattern+r"|"+pattern匹配a-z、A-Z、0-9和下划线这4种类型的字符匹配除了空格以外的字符匹配’-’字符匹配’.’字符汽车人工智能通识讲义(一)词法分析1.基于空格和标点符号的分词importreimportnltkfromnltk.tokenizeimportword_tokenizefromnltk.tokenizeimportregexp_tokenize

tokens=regexp_tokenize(sentence,pattern)print(tokens)汽车人工智能通识讲义(一)词法分析2.词间不含空格的语言的分词以“当下雨天地面积水”为例,应得到分词结果:(1)当下/雨天/地面/积水;(2)当/下雨天/地面/积水。目前,最常见的3种基于子词的分词方法分别是:字节对编码(byte-pairencoding,BPE)一元语言建模分词(unigramlanguagemodelingtokenization)词片(WordPiece)汽车人工智能通识讲义(一)词法分析2.词间不含空格的语言的分词上述的3种方法都采用两个步骤来分词:(1)一个词元学习器在大量的训练语料上进行学习,并构建出一个词表,词表表示词元的集合;(2)给定一个新的句子,词元分词器会根据总结出的词表进行分词。词元学习器重复以下步骤来构建词表:(1)找出训练语料库中最常相连的两个符号,这里不妨称其为“C1”和“C2”;(2)将新组合的符号“C1C2”加入词表中;(3)将训练语料库中所有相连的“C1”和“C2”转换成“C1C2”;(4)重复步骤(1)-步骤(3)若干次。汽车人工智能通识讲义(一)词法分析2.词间不含空格的语言的分词nannannannannanjingnanjingnanningnanningnanningnanningnanningnanningxianxianxianxixixixicorpus="nannannannannanjingnanjingnanningnanning"+"nanningnanningnanningnanningxianxianxianxixixixi"tokens=corpus.split('')#构建基于字符的初始词表vocabulary=set(corpus)vocabulary.remove('')vocabulary.add('_')vocabulary=sorted(list(vocabulary))#根据语料构建词频统计表corpus_dict={}fortokenintokens:

key=token+''

ifkeynotincorpus_dict:

corpus_dict[key]={"split":list(key),"count":0}

corpus_dict[key]['count']+=1print(f"语料:")forkeyincorpus_dict:

print(corpus_dict[key]['count'],corpus_dict[key]['split'])print(f"词表:{vocabulary}")汽车人工智能通识讲义(一)词法分析2.词间不含空格的语言的分词第9次选代当前最常出现的前5个符号组合:[('nanjing',1),('nann',1),('ning',1),('xian',1),('an',1)]本次选代组合的符号为:nanjing

迭代后的词频统计表为:1['nan']1['nanjing']1['nan','n','ing']1['xi','an','']1['xi','']词表:['_','a','g','i','j','n','x','an','nan','in','ing','ing','xi','nan','nanj','nanjing']汽车人工智能通识讲义(一)词法分析2.词间不含空格的语言的分词ordered_vocabulary={key:xforx,keyinenumerate(vocabulary)}sentence="nanjingxian"print(f"输入语句:{sentence}")tokens=sentence.split('')tokenized_string=[]fortokenintokens:key=token+'_'splits=list(key)#用于在没有更新的时候跳出flag=1whileflag:flag=0split_dict={}#遍历所有符号进行统计foriinrange(len(splits)-1):#组合两个符号作为新的符号current_group=splits[i]+splits[i+1]ifcurrent_groupnotinordered_vocabulary:continueifcurrent_groupnotinsplit_dict:#判断当前组合是否在词表里、如果是的话加入split_dictsplit_dict[current_group]=ordered_vocabulary[current_group]flag=1ifnotflag:continue#对每个组合进行优先级的排序,此处为从低到高group_hist=[(k,v)fork,vinsorted(split_dict.items(),key=lambdaitem:item[1])]#优先级最高的组合汽车人工智能通识讲义(一)词法分析2.词间不含空格的语言的分词merge_key=group_hist[0][0]new_splits=[]i=0#根据优先级最高的组合产生新的分词whilei<len(splits):ifi+1>=len(splits):new_splits.append(splits[i])i+=1continueifmerge_key==splits[i]+splits[i+1]:new_splits.append(merge_key)i+=2else:new_splits.append(splits[i])i+=1splits=new_splitstokenized_string+=splitsprint(f"分词结果:{tokenized_string}")输入语句:nanjingxian分词结果:['nan','jing_','xian_']汽车人工智能通识讲义(二)句法分析句法分析,是指给定一个句子找出其句法结构。句法只关乎句子的结构而不关注句子的意思。成分句法树,其中的叶节点对应这个句子的词,非叶节点则对应这个句子所包含的短语(成分)。成分可以定义为句子中具有独立功能的部分,如名词短语,动词短语、介词短语等。SLCPVPNPLCVENPCPNPDPCPNPSDECSDECVPVPVVNPVVNPNRNNDTNRNN去上海的航班之前有哪些去深圳的航班汽车人工智能通识讲义(二)句法分析句法分析的目标是找出一个句子的句法结构,即找出句子的成分结构。歧义性是句法分析面临的最严重的问题,即一个句子可能有多棵不同的成分句法树。为了消除歧义,需要引入打分机制。句法分析是指打分之后找出得分最高的句法树,有时也被称为解码。S

SPNNP

DNPNP

PNNPNPDEG

QPNPQPNP

CDCLPDNPNPCDCLP

NPDEGNNMNNNN

MNN这是两个学校的学生

这是两个学校的学生汽车人工智能通识讲义(三)语义分析显示的语义表示:通过基于符号的形式化系统表示语义,例如逻辑表达式和语义图。隐式的语义表示:用向量来表示语义。语义表示一般需要满足几个要求。(1)无歧义性:一个语义表示应当只有一个含义;(2)形式规范:一个含义应当只有一个语义表示;(3)表达能力:语义表示应当能够表达各种主题和内容:(4)推理能力:语义表示应当能够支持推理。语义分析的目标:构建输入句子的语义表示。汽车人工智能通识讲义语义分析方法主要针对序列形式的语义表示,其原理是组合性原则,即一个自然语言短语的含义是由组成这个短语的若干子短语的含义决定的。基于句法的语义分析的基本思想是,依照输入句子的成分句法树结构构建语义组合的树结构,从而得到整个句子的语义表示。代表方法:同步上下文无关文法借助于神经网络的强大能力直接输出语义表示。代表方法:一、在语义图上进行深度优先遍历,按节点和边的访问顺序得到序列化表示,而根据这种表示也可以重构出语义图。二、对依存句法分析的扩展。首先构建语义图中的节点。对于语义依存图这样的语义图,节点就是所有的词。得到节点之后,再使用基于图的方法预测节点之间的边。基于句法的语义分析基于神经网络的语义分析(三)语义分析感谢您的关注!汽车人工智能通识讲义CONTENTS一、自然语言处理的核心技术二、车载场景的文本数据特征汽车人工智能通识讲义三、自然语言处理的车载适配挑战汽车人工智能通识讲义空调温度提高3度。这句话属于固定句式,容易被理解其意图。空调调高一点,我有点冷。要判断这句话,需要得知口语词汇“调高”的语义。我没法说车里不冷。这句话更复杂一些,需要根据句法推断出“冷”被双重否定,再推断其语义。这车里好像冰柜啊。要想理解这句话暗含的负面评价,不仅需要上述语言知识,还需要了解“冰柜的温度很低,是人无法忍受的”这一常识。二、车载场景的文本数据特征自然表达替代精确指令(一)口语化特性汽车人工智能通识讲义堵不堵车?意图是交通查询,替代“查询当前交通状况”。太亮了。意图是设备控制,隐含着“调暗屏幕/灯光”的意图。避开拥堵。找充电桩。去吃火锅。以上短语都指需要导航。玻璃起雾了。指代车辆控制,用户希望触发除雾功能。二、车载场景的文本数据特征模糊化场景描述(一)口语化特性场景关联短语使用方言汽车人工智能通识讲义避开拥堵并且找充电桩。用户希望执行路径规划和充电桩检索2个指令。开空调再打开座椅加热。用户希望执行温度调节和座椅控制2个指令,并且,还需要判断用户想要使用空调取暖,还是想

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论