自然语言处理实验报告材料_第1页
自然语言处理实验报告材料_第2页
自然语言处理实验报告材料_第3页
自然语言处理实验报告材料_第4页
自然语言处理实验报告材料_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

1、wordword文案大全word“自然语言处理实验报告专业:智能科学与技术班级:1501学号:0918150102某某:宋晓婷日期:2018/4/16目录 TOC o 1-3 h z u HYPERLINK l _Toc513321541 实验1 PAGEREF _Toc513321541 h 3 HYPERLINK l _Toc513321542 1、实验目的: PAGEREF _Toc513321542 h 3 HYPERLINK l _Toc513321543 2、实验原理和内容: PAGEREF _Toc513321543 h 3 HYPERLINK l _Toc513321544 3

2、、实验环境和编程语言: PAGEREF _Toc513321544 h 3 HYPERLINK l _Toc513321545 4、主要功能与实现: PAGEREF _Toc513321545 h 3 HYPERLINK l _Toc513321546 5、实验结论 PAGEREF _Toc513321546 h 8 HYPERLINK l _Toc513321547 实验2 中文分词 PAGEREF _Toc513321547 h 8 HYPERLINK l _Toc513321548 1、实验目的和内容 PAGEREF _Toc513321548 h 8 HYPERLINK l _Toc5

3、13321549 2、实验原理 PAGEREF _Toc513321549 h 9 HYPERLINK l _Toc513321550 3、实验平台与语言 PAGEREF _Toc513321550 h 10 HYPERLINK l _Toc513321551 4、主要功能与实现 PAGEREF _Toc513321551 h 11 HYPERLINK l _Toc513321552 4.1 算法流程图 PAGEREF _Toc513321552 h 11 HYPERLINK l _Toc513321553 PAGEREF _Toc513321553 h 11 HYPERLINK l _Toc

4、513321554 5、实验结论 PAGEREF _Toc513321554 h 13 HYPERLINK l _Toc513321555 实验三 中文文本分类 PAGEREF _Toc513321555 h 13 HYPERLINK l _Toc513321556 1、小组成员以与分工 PAGEREF _Toc513321556 h 13 HYPERLINK l _Toc513321557 2、实验目的和内容 PAGEREF _Toc513321557 h 13 HYPERLINK l _Toc513321558 3、实验原理以与数据处理 PAGEREF _Toc513321558 h 14

5、 HYPERLINK l _Toc513321559 4、实验平台和语言 PAGEREF _Toc513321559 h 16 HYPERLINK l _Toc513321560 5、实验结果 PAGEREF _Toc513321560 h 16 HYPERLINK l _Toc513321561 6、实验结论 PAGEREF _Toc513321561 h 16 HYPERLINK l _Toc513321562 四、实验1-3 代码 PAGEREF _Toc513321562 h 17实验11、实验目的:本实验学习如何在利用NLTK进展分词词性分析与句法分析,。通过次实验项目的练习,增强学

6、生对课堂理论知识的理解,帮助学生以知识获取与自主实践相结合,学习对英文自然语言信息的处理的实践。2、实验原理和内容:NLTK自然语言处理工具包,里面包含了许多处理自然语言的库可以直接调用,本实验利用NLTK对obama。txt语料库进展对应的分词和词频统计,再对布朗语料库进展词性和句法分析。3、实验环境和编程语言:windows下 anaconda3 spyder(python3.6)4、主要功能与实现:4.1 怎样载入自己的英文语料库obama.txt,在自己的语料库中找出responsibility,education和 working出现的频率与其他们词干出现的频率。使用nltk的英文分

7、词函数tokenize和stem。使用open以与read函数读取obama.txt文档,调用nltk里面的word_tokenize()函数,先把文档进展分词,再调用nltk中的FreDist()函数进展词频统计。统计responsibility,education和 working出现的频率。结果见表一。提取词干的时候,NLTK中提供了三种最常用的词干提取器接口,即Porter stemmer, Lancaster Stemmer 和 Snowball Stemmer。统计词干频率时,先对全文提取词干(whole_stems),然后在提取的词干中统计三者词干出现的频率,结果见表二。表一 原

8、词以与对应词干频率统计responsibilityresponseducation(educ)working(work)原词出现频率8112词干出现频率91112全文总词数:3066 全文总词干数:3066表二 三种词干提取器提取结果Porter stemmerLancaster StemmerSnowball Stemmerresponsibilityresponsresponsresponseducationeduceduceducworkingworkworkwork4.2写程序处理布朗语料库,找到以下答案:4.2.1哪些名词常以他们复数形式而不是它们的单数形式出现?只考虑常规的复数形式

9、,-s后缀形式的。先查看布朗语料库里面包含的类别如图一图一 布朗语料库包含类别选取其中一个类别的语料库adventure, 提取里面的所有NNS标注的复数词放入word_double;提取NN标注而非NNS标注的单数词放入word_single;然后对这两个词表提取词干,比拟两个词干表里面一样的词干,同时去除里面重复出现的词干,然后再在复数词表里面找出这些词。可得常以复数不以单数出现的词有:hands eyes clothes fools kids nights horses mountains hills fences wings buildings rifles friends wars

10、Eyes riders hopes springs snakes houses times lights Riders troubles keys rocks Looks boots looks cigarettes streets counties authorities means deputies murders Houses Springs saloons bars attackers holes Zeros powers elbows Lights officers feelings waters throats lifeboats islands uncles mothers ha

11、irs valleys Hills manders kills offices centers farmers horns products talks marines murderers stores persons4.2.2选择布朗语料库的不同局部其他目录,计数包含wh的词:此处我查找新闻news类别里面包含wh的词,结果如图二图二 布朗语料库新闻类别中包含wh的词wheat: 1 wherever: 1 whip: 2 whipped: 2 wholesale: 1 whichever: 1whisking: 1 why: 14 wheeled: 2 wholly-owned: 1 wh

12、ims: 1 where: 59whiplash: 1 which: 245 whereby: 3 white: 57 wheels: 1 who: 268 wheel: 4whites: 2 when: 169 whatever: 2 whose: 22 white-clad: 1 while: 55 wholly: 1whether: 18 what: 95 whopping: 1 whole: 11 whom: 8 whirling: 1 whiz: 24.3、输出brown文本集名词后面接的词性,结果如图三图三 brown文本集名词后面接的词性由统计可知:名词后面出现频率最高的是 AD

13、P介词和后置词第二是标点 第三是 动词依次是名词、连接词、副词、限定词、PRT 、形容词、数量词、代名词、以与其他。使用nltk的句法分析器parser 自底向上nltk.app.srparser() 后打开以下窗口,运行step 会逐步演示对 my dog saw a man in the park with a statue这句话进展文法分析。结果见图四、图五图四 parser句法分析器nltk.app.rdparser() 使用递归下降解析器自顶向下,进展文法分析 文法=词法+句法图五rdparser递归下降解析器nltk里面一共有5个对话框系统,我选择1,情绪分析。结果如图六、图七图六

14、图七5、实验结论掌握了对语料库的根本操作,分词分句、统计词频以与对词性分析。句法分析的自顶向上以与自底向下思路简单但是实现起来比拟麻烦,回溯会出现屡次。实验中掌握了两种不同的句法分析的流程。nltk的对话框经测试后觉得有点根底,分析以与人机对话的可用性不是很强。实验2 中文分词1、实验目的和内容a.用最大匹配算法设计分词程序实现对文档分词,并计算该程序分词召回率。b.可以输入任意句子,显示分词结果。实验数据:1word_freq_list.txt 分词词典2pku_test.txt 未经过分词的文档文件3pku_test_gold.txt 经过分词的文档文件2、实验原理核心思想:最大匹配算法算

15、法描述: 正向最大匹配法算法如下所示:逆向匹配法思想与正向一样,只是从右向左切分,这里举一个例子:输入例句:S1=计算语言学课程有意思 ;定义:最大词长MaxLen = 5;S2= ;分隔符 = “/;假设存在词表:,计算语言学,课程,意思,;最大逆向匹配分词算法过程如下:1S2=;S1不为空,从S1右边取出候选子串W=课程有意思;2查词表,W不在词表中,将W最左边一个字去掉,得到W=程有意思;3查词表,W不在词表中,将W最左边一个字去掉,得到W=有意思;4查词表,W不在词表中,将W最左边一个字去掉,得到W=意思5查词表,“意思在词表中,将W参加到S2中,S2= 意思/,并将W从S1中去掉,此

16、时S1=计算语言学课程有;6S1不为空,于是从S1左边取出候选子串W=言学课程有;7查词表,W不在词表中,将W最左边一个字去掉,得到W=学课程有;8查词表,W不在词表中,将W最左边一个字去掉,得到W=课程有;9查词表,W不在词表中,将W最左边一个字去掉,得到W=程有;10查词表,W不在词表中,将W最左边一个字去掉,得到W=有,这W是单字,将W参加到S2中,S2=“ /有 /意思,并将W从S1中去掉,此时S1=计算语言学课程;11S1不为空,于是从S1左边取出候选子串W=语言学课程;12查词表,W不在词表中,将W最左边一个字去掉,得到W=言学课程;13查词表,W不在词表中,将W最左边一个字去掉,

17、得到W=学课程;14查词表,W不在词表中,将W最左边一个字去掉,得到W=课程;15查词表,“意思在词表中,将W参加到S2中,S2=“ 课程/ 有/ 意思/,并将W从S1中去掉,此时S1=计算语言学;16S1不为空,于是从S1左边取出候选子串W=计算语言学;17查词表,“计算语言学在词表中,将W参加到S2中,S2=“计算语言学/ 课程/ 有/ 意思/,并将W从S1中去掉,此时S1=;18S1为空,输出S2作为分词结果,分词过程完毕。3、实验平台与语言windows anconda3 spyder(python3.6)4、主要功能与实现图八 正向最大匹配算法实验流程图a、基于上述算法,写代码实现。

18、实现前对词典中的词的最大长度进展计算,可得词典里面词最大词长为4。于是初始化三个空列表来存放词长为2、3、4的词。把原词典里面的词分成三份,这样匹配时可以加快匹配速度。匹配完之后计算召回率R、准确率P、F测度,准确率:P=系统输出正确词的个数/系统输出词的个数词典词的个数*100%召回率:R=系统输出正确词的个数/金标词典中词的个数词典词的个数*100%F-测度:F=2*P*R/(P+R)以下是实现结果,如图九。图九 最大匹配算法性能值整理成表之后可得表三表三 正向最大匹配算法评价正向最大匹配算法准确率P82.7830%召回率R88.7967%F-测度85.6844%b、将文本文件改成外部输入

19、,对输入的词自动分词,以下是测试结果:图十 实验2-b测试5、实验结论正向最大匹配算法是汉语分词的一个重要算法,思路简单,实验中我将词顺序存储,但是把词长不同的词分开,比拟的时候在对应词长的列表里面进展比拟,这样大大提高了算法的运行效率。对于逆向匹配算法,虽然思路和正向差不多,但是对我而言实践起来比正向要困难。同时我最后分词的准确率不高,对分词歧义并没有进展消除,这可能是导致歧义的原因之一。实验三 中文文本分类1、小组成员以与分工宋晓婷、陈曦分工:陈曦 数据预处理宋晓婷 数据预处理去html标签以与分词、特征提取以与分类2、实验目的和内容对语料库进展数据预处理,利用朴素贝叶斯算法或SVM完成对

20、测试集的文本进展分类。语料库主要包括 健康、财经、教育三个类别,每个类别里面各有6篇文档以与一篇test.txt待测试的文档。3、实验原理以与数据处理自然语言处理文本分类的主要步骤如图十一图十一 实验5流程图预处理局部:去除文档中的html标签,删除文档中多余的空格和换行。这里没有去除停用词,因为在后续调用sklearn中的算法的时候可以直接利用其中的算法进展停用词去除。分词:这里调用的是结某某文分词系统import jieba。结构和表示-构建词向量空间:对于分好词的文档,利用sklearn里面的bunch数据结构,由于给的test.txt测试集没有标签,在后续对算法测评的时候无法测评,于是

21、把每篇文档中的第五篇5.txt分出来作为测试集。用这三篇文档作为测试集来进展算法测评。 Bunch化后训练集以与测试集数据如表四、表五所示。TF-IDF算权重、提取特征:去除测试集和训练集中的停用词,计算数据集里面的词频,把词频大于50%的去掉,因为这些高频词对分类的特异性没有多大作用,而后根据词频,计算每个词的权重,得到权重矩阵tdm,并把这些词统一到同一个词向量空间里面提取特征。分类:此处是多分类,调用sklearn中的朴素贝叶斯函数中的伯努利模型和多项式模型,以与svm中的SVC算法,用训练集数据进展训练,利用训练好的算法预测类别。评价:计算准确率P,召回率R,F-测评值表四 Bunch

22、化后训练集数据target_namefilenameslabelcontents财经财经重要 财务指标 财务指标 每股 收益.财经致命 的 停滞 : 谁 在 监测 京石 高速 ? 杜家.财经朱宏任 : 上半年 工业 经济运行 总体 保持 平稳.财经利率 市场化 或 推 升高 风险 贷款.财经 炎黄 保壳 仍 无 具体措施.健康健康中国 每天 新 增加 糖尿病 患者 约.健康重 酒石酸 间 羟胺 注射液 鲜花.健康脂肪乳 注射液 【 主要.健康马来酸 麦角 新碱 注射液.健康盐酸 可乐 定片 【 须知事项 】.教育教育 杜 拉拉 升职 记 开播 的 时候.教育中学 拟用 平板 电脑 代替 纸质

23、教材.教育 考研 数学 备考 指导.教育高考 后 学生 纷纷 去 看 心理医生.教育 政法 干警 行测 数学 运算 指南.表五 bunch化后测试集数据target_namefilenameslabelcontents财经财经中 俄 专家 谈 东盟 : 三方.健康健康水杨酸 软膏 【 主要 成分 】 水杨酸 。.教育教育学生 课程 生活 日记 显示 : 本市.4、实验平台和语言windows anaconda3 spyder(python 3.6)5、实验结果测评总结准确率P召回率RF-测评效果最好的是朴素贝叶斯中的多项式模型,该模式适合多分类问题。朴素贝叶斯多项式alpha=0.00194.

24、4%93.3%93.3%伯努利alpha=0.00150.0%66.7%68.3%线性核C=0.185.2%73.3%68.3%多项式核C=0.193.9%92.8%92.9%6、实验结论对于中文文本分类,初次动手尝试,拿到数据集之后也是不知道该如何下手。参考网上一篇博客。里面博主对于中文文本分类说的很清楚,让我受益颇多。对于分本分类采用bunch结构也是一个非常巧妙地结构化表示方法。四、实验1-3代码实验一# -*- coding: utf-8 -*-Created on Thu Apr 5 09:39:09 2018author: sxt#Natrual Language #experim

25、ent_1from nltk import*import nltkfile=open(obama.txt)raw_file=file.read()#读取文件sens=nltk.sent_tokenize(raw_file)#将文本拆分成句子列表words=nltk.word_tokenize(raw_file)#get every word of the txt,分词#print(obama中的总词数:)#总词数#print(len(words)fdist=nltk.FreqDist(words)sdist=nltk.FreqDist(sens)print(responsibility出现次数

26、:)print(fdistresponsibility)print(education出现次数:)print(fdisteducation)print(working出现次数:)print(fdistworking)#提取三个词的词干from nltk.stem.lancaster import LancasterStemmerlancaster_stemmer=LancasterStemmer()#print(responsibility的词干:)#print(lancaster_stemmer.stem(responsibility)#print(sdistrespons)#print(e

27、ducation的词干:)#print(lancaster_stemmer.stem(education)#print(working的词干:)#print(lancaster_stemmer.stem(working)from nltk.stem.porter import PorterStemmerporter_stemmer=PorterStemmer()print(responsibility的词干:)print(porter_stemmer.stem(responsibility)print(education的词干:)print(porter_stemmer.stem(educat

28、ion)print(working的词干:)print(porter_stemmer.stem(working)from nltk.stem import SnowballStemmersnowball_stemmer = SnowballStemmer(english) print(responsibility的词干:)print(snowball_stemmer.stem(responsibility)print(education的词干:)print(snowball_stemmer.stem(education)print(working的词干:)print(snowball_stem

29、mer.stem(working)#统计词干出现的频率,先对全文提取词干whole_stems=lancaster_stemmer.stem(t) for t in words#提取全文的词干print(全文词干总数:)print(len(whole_stems)wdist=nltk.FreqDist(whole_stems)print(responsibility的词干出现频率:)print(wdistrespons)print(education的词干出现频率:)print(wdisteduc)print(working的词干出现频率:)print(wdistwork)from nltk.

30、corpus import brownimport nltkimport re#包含wh的词计数c=brown.categories()#布朗语料库包含的目录类别news_text=brown.words(categories=news)#新闻#romance_text=brown.words(categories=romance)#浪漫ndist=nltk.FreqDist(w.lower() for w in news_text)modals=set(w for w in news_text if re.search(wh,w)for m in modals: print(m+:,ndis

31、tm)#名词后面词性统计#brown_Irnd_tagged=brown.tagged_words(categories=learned,tagset=universal)#tags=b1 for (a,b) in nltk.bigrams(brown_Irnd_tagged) if a1=NOUN#tags=b1 for (a,b) in nltk.bigrams(brown_Irnd_tagged) if a0=often#nd=nltk.FreqDist(tags)#统计频率#nd.tabulate()#统计常以复数形式出现的词#wsj=nltk.corpus.treebank.tagg

32、ed_words(simplify_tags=True)#word_tag_fd=nltk.FreqDist(wsj)#from nltk.corpus import brownfrom nltk.stem.porter import PorterStemmerporter_stemmer=PorterStemmer()#print(brown.categories()#打出布朗语料库里面的类别brown_news_tagged=brown.tagged_words(categories=adventure)#print(brown_news_tagged)word_double= nltk.

33、FreqDist(word for (word, tag) in brown_news_tagged if tag.startswith(NNS)#提取词性标注为复数的词word_single= nltk.FreqDist(word for (word, tag) in brown_news_tagged if tag.startswith(N) and not tag.startswith(NNS)#word_single= nltk.FreqDist(word for (word, tag) in brown_news_tagged if tag.startswith(NNS)#提取词性标

34、注为复数的词#word_double= nltk.FreqDist(word for (word, tag) in brown_news_tagged if tag.startswith(N) and not tag.startswith(NNS)#提取词性标注为单数的词double_keys=list(word_double.keys()single_keys=list(word_single.keys()a=b=c=d=e=w=0for i in range(len(double_keys): x=porter_stemmer.stem(double_keysi) a.append(x)#

35、提取常见复数的词干 放进a中for j in range(len(single_keys): y=porter_stemmer.stem(single_keysj) b.append(y)#提取常见单数的词干,放进b#print(a)#print(b)for n in a: for m in b: if m=n: c.append(w)#单复数词干一样的字数的放进c w=w+1#统计#print(c)#for g in c:# d.append(double_keysg)#d=double_keysg for g in c#print(d)for i in range(len(d): if d

36、i=di-1: e.append(di)#去除重复的词#print(e)result=list(set(e)#结果result.sort(key=e.index)print(常以复数不以单数出现的词有:)for i in result: if i-2=: result.remove(i)for i in result:print(i)实验二# -*- coding: utf-8 -*-Created on Thu Apr 12 12:58:36 2018author: sxt# -*- coding: utf-8 -*-MAXLEN=4import codecsimport re#语料#wor

37、d_freq_list.txt 分词词典#pku_test.txt 未经过分词的文档文件,测试集#pku_test_gold.txt 经过分词的文档文件,金标语料库words_test=codecs.open(pku_test.txt,rb)test=words_test.read().decode(gbk)#需要分词的#金标语料库gold_words=codecs.open(pku_test_gold.txt,rb)gold=gold_words.read().decode(gbk)gold_words.close()#标准词典dic=codecs.open(word_freq_list.t

38、xt,rb)diclines=dic.readlines()#按行读取dic.close()for i in diclines: len(i)print(max(i)#分别存储四字词、三字词和二字词char_4=char_3=char_2=#j=0for i in diclines:#词典 每一行,解码 a=re.sub(r(d+s+),i.decode(gb18030,ignore).split(rn)0) # print(a.strip(),len(a.strip() b=a.strip() c=len(b) if c=4: char_4.append(b) elif c=3: char_

39、3.append(b) else: char_2.append(b) # j+=1;char_4=set(char_4)#去重char_3=set(char_3)char_2=set(char_2)sentences=dicslines=test.split(rn)#之前定义,读取的未分词数据for senten in dicslines: sentences.append(senten)#全放到句子里#sentences=input(请输入字符串:)temp=result=codecs.open(result.txt,w,utf-8)#建新文件,存结果#print(sentencesk,le

40、n(sentencesk)k=0#正向最大匹配算法while k!=len(sentences): i=0 while ilen(sentencesk):#对每一个句子,分成小的词 if i+MAXLENlen(sentencesk):#当前字符串长度 possible_word=sentenceski:i+MAXLEN.split(rn)0#取长度为4 if possible_word in char_4:#四字词,能查到 temp+=possible_word+ #segResult.write(possible_word+ ) i+=MAXLEN#i每次变化不同,取词串的长度 conti

41、nue if i+3len(sentencesk): possible_word=sentenceski:i+3.split(rn)0 if possible_word in char_3: temp+=possible_word+ #segResult.write(possible_word+ ) i+=3 continue if i+2len(sentencesk): possible_word=sentenceski:i+2.split(rn)0 if possible_word in char_2: temp+=possible_word+ #segResult.write(possi

42、ble_word+ ) i+=2 continue possible_word=sentenceski#为单字 temp+=possible_word+ i+=1 k+=1#k值变化temp=temp.strip()#方法用于移除字符串头尾指定的字符(默认为空格)result.write(temp)#待切分的词 结果写入tempresult.close()print(temp)print(最大匹配分词完毕)result=codecs.open(result.txt,rb,utf-8)my=result.read()result.close()#print(gold)gold_split_ent

43、er=gold.split(rn)#切片gold=for i in gold_split_enter: gold+=igold_list=gold.strip().split( )#split通过指定分隔符对字符串进展切片 strip返回移除字符串头尾指定的字符生成的新字符串。my_list=my.split( )#切片,去自己切分的结果gold_len=len(gold_list)#验证my_len=len(my_list)#自己的结果长度correct=0gold_before=my_before=i=1j=1gold_before+=gold_list0my_before+=my_lis

44、t0if gold_before=my_before and gold_list0=my_list0:#计算对的个数 correct+=1while True: if gold_listi=my_listj: correct+=1 gold_before+=str(gold_listi) my_before+=str(my_listj) i+=1 j+=1 elif len(gold_before)len(my_before): my_before+=str(my_listj) j+=1 elif gold_listi!=my_listj: gold_before+=str(gold_list

45、i) my_before+=str(my_listj) i+=1 j+=1 if i=len(gold_list) and j=len(my_list): # print(i,i,j,j) breakP=correct/my_len #准确率=系统输出正确词的个数/系统输出词的个数R=correct/gold_len#召回率=系统输出正确词的个数/金标语料库中词的个数F=(2*P*R)/(P+R)print(准确率:,P)print(召回率R:,R)print(F-测度:,F)实验2-1# -*- coding: utf-8 -*-Created on Thu Apr 12 15:41:02

46、2018author: sxtMAXLEN=4import codecsimport re#word_freq_list.txt 分词词典#标准词典dic=codecs.open(word_freq_list.txt,rb)diclines=dic.readlines()#按行读取dic.close()#分别存储四字词、三字词和二字词char_4=char_3=char_2=#j=0for i in diclines:#词典 每一行,解码 a=re.sub(r(d+s+),i.decode(gb18030,ignore).split(rn)0)#分开写就好,太长的不行 # print(a.st

47、rip(),len(a.strip() b=a.strip() c=len(b) if c=4: char_4.append(b) elif c=3: char_3.append(b) else: char_2.append(b)char_4=set(char_4)#去重char_3=set(char_3)char_2=set(char_2)#s1=input(请输入任意字符串:)temp=sentence=input(请输入任意字符串:)sentences=dicslines=sentence.split(rn)#之前定义,读取的未分词数据for senten in dicslines: sentences.append(senten)#全放到句子里k=0while k!=len(sentences):#对每个字符 i=0 while ilen(sentencesk):#对每一个句子,分成小的词 if i+MAXLENlen(sentencesk):#当前字符串长度 possible_word

温馨提示

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

评论

0/150

提交评论