《自然语言处理技术》——实训12 游客目的地聚类分析.docx
《《自然语言处理技术》——实训12 游客目的地聚类分析.docx》由会员分享,可在线阅读,更多相关《《自然语言处理技术》——实训12 游客目的地聚类分析.docx(32页珍藏版)》请在三一文库上搜索。
1、自然i,i处理.技术隗加吁心出仪我学茶CCVT.卜/。人八目录项目3深入文本进阶处理1一擀客目的地聚类分析11 实训目标12 实训环境13 实训说明I4 实训步骤34.1 数据读取34.2 数据预处理41. 基于规则的垃圾评论排除42. 基于机器学习无监督学习排除无效评论73. 数据拆分104.3 目的地评分分析H1. 计算情感得分122. 绘制情感分布直方图134.4 目的地特色分析151. 筛选各层次景区和酒店152. 景区和酒店特征聚类163. 聚类结果分析265 实训小结28项目3深入文本进阶处理游客目的地聚类分析1实训目标(1) 熟练使用SnowNLP类对评论情感进行计算。(2) 掌
2、握TF-IDF算法排除无效评论的原理与实现方法。(3) 熟悉使用K-Means聚类算法对数据进行聚类的过程。(4) 能够使用sklearn库的silhouette_score函数计算轮廓系数。2实训环境环境版本说明Windows1064电脑操作系统Python3.8.5Python语言版本pandas1.3.0主要用于数据读取、清洗等操作NumPy1.21.6主要用于Python中的数值计算jieba0.42.1主要用于文本分词Gensim4.2.0主要用于检索文本、计算文本相似度、训练词向量、建模主题等Matplotlib3.3.0主要用于数据可视化PaddlePaddle2.4.2是一个深
3、度学习框架,提供了高效的计算框架和优化算法PaddleSpeech1.2.0主要用于语音和音频中的各种关键任务的开发scikit-leam1.0.2广泛地用于统计分析和机器学习建模等数据科学领域Librosa0.8.1主要用于分析一般的音频信号,是一个非常强大的Python语音信号处理的第三方库NLTK3.5是一个常用的自然语言处理工具包,可用于文本处理、语义分析、词性标注等SciPy1.7.3是一个科学计算工具包,可用于数学、科学、工程学等领域pyttsx32.9.0主要用于将文本转换成语音3实训说明随着经济和人民生活水平的提高,旅游已成为人们生活中不可或缺的部分。在新时代中国特色社会主义的
4、指导下,相关部门应该充分认识到旅游业的重要性,并积极引导旅游企业遵循社会主义核心价值观,注重文明、和谐等价值观的践行。但我国大部分旅游景点基础设施薄弱、配套设施不完善,游玩产品缺乏创新,各个景点严重同质化,缺乏差异化竞争。因此,提高旅游企业的经营收益,提升景区的资源配置,已成为各大旅游企业所需解决的难题。同时,游客在选择旅游目的地时,也需要了解该目的地的评价情况。旅游企业和相关部门可以基于大量的评论反馈,对景点、酒店等进行更有针对性、实效性的质量管理,进而增加客流量,提高经营效益。游客满意度与评价紧密相关,掌握影响游客满意度的因素,有助于提升景区/酒店的美誉度,保证客源稳定,开发旅游产品,优化
5、资源配置,以及开展市场开拓。在全面建设社会主义现代化国家的目标下,旅游企业和相关部门可以。通过资源配置的优化,开发创新的旅游产品,实现旅游业的可持续发展,为人民群众提供更加丰富、多样化的旅游体验。本任务使用的数据集为某旅游平台近几年的景区及酒店评论数据和评分数据,该数据共有4张数据表,包括景区评论”“酒店评论”“景区评分”和“酒店评分”,数据说明如表3-1所示。表3-1景区/酒店评论和评分数据说明数据表名属性名称示例景区评论景区名称AOl评论日期2020-06-16评论内容是亲子游的绝佳场所酒店评论酒店名称HOl评论日期2020-01-01评论内容酒店很适合家庭出行入住房型标准客房景区评分景区
6、名称AOl总得分4.4服务得分3.8位置得分4.9设施得分4.9卫生得分4.5性价比得分4.5酒店评分,序:1酒店名称HOl总得分4.8服务得分4.8位置得分4.8设施得分4.7卫生得分4.8性价比得分4.0游客目的地聚类分析的基本流程如图3-1所示。图3-1游客目的地印象分析总体流程4实训步骤4.1 数据读取读取“景区评论.xlsx”和“酒店评论.xlsx”中的数据并查看前5条数据,如代码3-1所ZjSo代码3-1数据读取importpandasaspdscenic=pd.read_excel(./data/景区评论.xlsx)hotel=pd.read_excel(./data/酒店评论.
7、xlsx)Print(景区评论表部分为:nu,scenic.head()PrintC酒店评论表部分为:11,hotel.head()运行数据读取代码后,得到景区评论和酒店评论表的部分记录如下。景区评论表部分为:景区名称评论日期评论内容0AOI2020-06-16是亲子游的绝佳场所,门票就是有点贵,不过可以接受,爷爷奶奶不放心小朋友也跟上来了,当天我们十1AOl2020-01-23*景区差不多,票价偏贵了。大马戏比较精彩,八点的场次,6点40才能检票进入,我们6点多看看2AOI2020-03-22很有*特色的亲子酒店,房间里的装修很可爱,小孩子特别喜欢,洗漱用品也很有特色,对应的房间还3AOl2
8、020-12-25有园区的工作人员在那,他会主动给你园区里的地图和表演的时间安排,很周到,上接驳车大概也是34.4AOI2020-11-28朋友在广州集合!终于如愿以偿的到达欢乐世界。学生票198需要出示相关证件(校卡或酒店评论表部分为:酒店名称评论日期评论内容入住房型0HOl2020-01-01HOl2020-01-01酒店很适合家庭出行标准客房升级了房间延迟退房很赞标准客房2HOl2020-01-01这几年,每年都会来广州,每次都会住*酒店。因为位置好,酒店的性价比也不错,这次给免费升级了.标准客房HOI2020-01-014HOI2020-01-01酒店很好不错标准客房超五星好评高级客房
9、4.2 数据预处理平台上的评论信息经常会出现内容不相关、信息重复复制、无有效内容等,即垃圾评论。所谓的垃圾评论主要包含相似评论、无效评论(长度很短、毫无理由的夸赞或诋毁)和无关评论(意义不明、全是符号、同一个单词或词语等)。数据预处理的目标是找出不能提供有效信息的垃圾评论,进行垃圾数据清理,保留真正的、有价值的评论信息。本任务主要使用基于规则的垃圾评论排除方法和基于机器学习无监督学习排除方法进行数据预处理,同时对景区评论和酒店评论进行数据拆分。1.基于规则的垃圾评论排除针对评论数据中的重复数据,直接调用drop_duplicates()方法进行去除,同时保留重复数据中的第一条,如代码3-2所示
10、代码3-2去除重复评论# 对景区完全重复的评论进行去重Print(景区评论去重前的表格规模:,scenic.shape)scenic=scenic.drop_duplicates()Print(景区评论去重后的表格规模:,scenic.shape)# 对酒店完全重复的评论进行去重Print(酒店评论去重前的表格规模:,hotel.shape)hotel=hotel.drop_duplicates()Print(酒店评论去重后的表格规模:hotel.shape)运行重复评论去除代码后,表格的规模变化如下,共删除了305条重复景区评论和248条重复酒店评论。景区评论去重前的表格规模:(59106
11、3)景区评论去重后的表格规模:(58801,3)酒店评论去重前的表格规模:(25225,4)酒店评论去重后的表格规模:(24977,4)经观察,在景区评论字符长度低于8的评论和酒店评论字符长度低于8的评论中,出现了较多的无效评论,且分析这些评论的作用性不大,可将其直接剔除,如代码3-3错误!未找到引用源。所示。代码3-3去除字符长度低于8的评论# 除去景区评论字符长度低于8的评论scenic=scenicscenic.apply(lambdaxden(x评论内容)=8,axis=l)Printe除去景区评论字符长度低于8的评论后的表格规模:,scenic.shape)# 除去酒店评论字符长度
12、低于8的评论hotel=hotelhotel.apply(lambdaxJen(x,评论内容)=8,axis=1)Printe除去酒店评论字符长度低于8的评论后的表格规模:,hotel.shape)运行去除字符长度低于8的评论代码后,表格的规模变化如下,共删除了41条景区评论和5196条酒店评论。除去景区评论字符长度低于8的评论后的表格规模:(58760,3)除去酒店评论字符长度低于8的评论后的表格规模:(19781,4)在评论中存在凑字数、混经验和刷广告的情况,为此根据“小程序”“凑字”“字数”和“个字”这4个关键词进行无效评论的剔除,如代码34错误!未找到引用源。所示。代码3-4去除关键字
13、无效评论# 除去评论中有关键字的无效评论defdelete_comment(x):X=Xr评论内容ifC字数TnXandIen(X)70):#判断评论是否为有关键字字数的无效评论returnTrueeli9个字Tnx:#判断评论是否为有关键字个字的无效评论returnTrueelifC凑字HnXandIen(X)7O):#判断评论是否为有关键字凑字的无效评论returnTrue61if(小程序inxandlen(x)num/2andx+1=0.1SCeniC.tosv(.tmp预处理后的景区评论.csv,index=False,encoding-utf-8sig,)hotel=hotel.il
14、ocx0forxinarray_hifxl=0.01hoteLto_csvC./tmp/预处理后的酒店评论.csvindex=False,encoding=,utf-8sig)#输出处理后的部分景区评论和酒店评论Print(预处理后的部分景区评论:n,scenic.head()Print(预处理后的部分酒店评论:n,hotel.hcad()运行剔除无效评论代码,得到预处理后的部分景区/酒店评论如下。预处理后的部分景区评论:景区名称评论日期评论内容0AOl2020-06-16是亲子游的绝佳场所门票就是有点贵不过可以接受爷爷奶奶不放心小朋友也跟上来了当天我们十点多就到1AOI2020-01-23景
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自然语言处理技术 自然语言处理技术实训12 游客目的地聚类分析 自然语言 处理 技术 实训 12 游客 目的地 聚类分析
