《旅游电子商务》项目八:旅游电子商务数据挖掘(教案)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
tjson = r.json()
t = len(tjson['data']['commentList'])
fp = open("qnercomments.txt","w",encoding = "utf-8")
for i in range(0,t):
tempstr = tjson['data']['commentList'][i]['content']
7. 建议文章中要用相应的表格、图片
8. 要注意报告的WORD排版
9. 项目设计报告不少于2000字
反
馈
练
习
见教材各任务的任务拓展练习及综合实训任务。归纳总
结
课外作业与参考资料
作业(包含书面和口头作业)
1.去图书馆或检索互联网,进一步查阅python语言的编程技巧。
2.进一步学习网络信息提取的编程方法
任务二:电商数据挖掘工具
一、常见数据挖掘工具
数据挖掘工具是使用数据挖掘技术从大型数据集中发现并识别模式的计算机软件。数据在当今世界中就意味着金钱,但是因为大多数数据都是非结构化的。因此,拥有数据挖掘工具将成为帮助您获得正确数据的一种方法。下面为大家介绍5款常用的数据挖掘工具。
1.Rapid Miner
Jieba中文分词:
支持三种分词模式:
精确模式,试图将句子最精确地切开,适合文本分析;
全模式,把句子中所有的可以成词的词语都扫描处理,速度非常快,但是不能解决歧义;
搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于引擎分词。
另外jieba还支持繁体分词和支持自定义词典。
以下代码实现了一段景区点评的中文分词。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。
数据挖掘是从海量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程。数据挖掘中用到了大量的机器学习界提供的数据分析技术和数据库界提供的数据管理技术。
Tom Mitchell在1997年出版的Machine Learing一书中指出,从数据分析的角度来看,数据挖掘与机器学习有很多相似之处,但不同之处也十分明显,例如,数据挖掘并没有机器学习中所包含的探索人的学习机制这一科学发现任务,数据挖掘中的数据分析是针对海量数据进行的,等等。从某种意义上说,机器学习的科学成分更重一些,而数据挖掘的技术成分更重一些。
r.encoding='utf-8'
s=etree.HTML(r.text)
result=etree.tostring(s)
comments=s.xpath('//p[@class="mp-comments-desc"]/text()')
print(comments)
去哪儿旅游网上有些景点网页无法直接用上面的办法提取评价信息,需要使用json进行解析,以下代码可以实现这类网页评价信息的提取并保存到本地硬盘。
headers ={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'}
r=requests.get(url,headers = headers)
数据挖掘的目标是从数据库中发现隐含的、有意义的知识,林杰斌,刘明德等学者在《数据挖掘与 OLAP 理论与实务》一书中认为:数据挖掘主要有以下五类功能:
1.自动预测趋势和行为。
2.关联分析。
3.聚类。
4. 概念描述。
5.偏差检测。
一般数据挖掘技术包括关联分析、序列分析、分类、预测、聚类分析及时间序列分析。
实训演练:
1.利用网页数据提取和文本情感分析技术,对某景区景点旅客评价进行分析,得出某种结论,并把工作过程写成报告;
2. 文字需要是正规书面用语,结论需要有数据支持;
3.情感分析的结果,需要得出正向评价的平均概率;
4. 要有python源代码
5. 需要对所使用的理论和技术进行介绍;
6. 要符合一般论文的格式要求;
2.IBM SPSS Modeler
3.Oracle Data Mining
4.KNIME
5.Python
二、Python语言使用
(一)Python 简介
(二)Python的基本用法
1.安装与配置
2.语法简介
任务三:电商数据挖掘的方法
一、情感分析技术
1.情感分析技术简介
情感分析, 通常是指对一段带有主观性情感的文本进行分析的过程。情感分析有很强的实用价值,例如,通过对某酒店服务评论的情感分析, 可以发现顾客对该酒店软硬件设施和服务的褒贬态度和意见,从而改进设施并改善服务, 赢得竞争优势;通过对游客对某条旅游线路的评论情感分析,旅行社可以了解游客对该线路的态度倾向分布, 从而优化路线,提高服务品质,从竞争中脱颖而出。通过情感分析技术,可以帮助企业从互联网上海量的产品评论中获取对产品综合、全面的评价信息。因此,许多企业都对应用情感分析技术分析客人的网络评价,有着迫切的需要,因此,如何从旅游网络评价中获取游客的情感倾向,并更好的服务于游客,是一个非常有实用价值的研究方向。
以4人为一个小组,查阅大数据与数据挖掘在旅游业应用的案例,分组讨论:什么是数据挖掘?数据挖掘在电子商务业务上有哪些成功的案例?旅游业是否也需要进行旅游数据挖掘?
学
习
新
课
任务一:旅游数据挖掘基础知识
数据挖掘: Gordon S.Linoff对数据挖掘的定义是:数据挖掘是一项分析大量数据以发现有意义的模式和规则的业务流程。
目前进行情感分析,主要使用两种方法,分别是:基于机器学习的方法和基于语义的方法。基于机器学习的方法是利用分类技术来处理文本,分类技术一般是使用某种学习算法来确定分类模型,该模型不但很好地拟合输入数据中的类标号与属性集之间的关系,还能够正确地预测未知样本的类标号中类标号,我们需要为它提供一个人工标注的训练集,通过上述的学习算法,训练并建立分类模型,然后可以将这个模型运用于检验集,从而检验类标号未知情感文本记录。基于语义的方法,一般是先获得情感倾向词,把表示情感的词语划分成正面词语和负面词语,同时构造一个专用的情感词典,然后利用这个词典,使用线性代数和统计分析的方法,来统计文本中的正面和负面情感词语的相对数量,从而确定文本的情感倾向。
if tempstr != "用户未点评,系统默认好评。":
fp.write(tempstr+"\n")
fp.close()
print("已经成功的写入文件!")
中文分词:
将游客对景区的评价信息从网页中提取出来以后,需要对评论内容进行预处理,第一步需要进行中文分词,分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在词这一层上,中文比之英文要复杂得多、困难得多。中文分词就是将由汉字序列组成的评价语句,通过一定的方法分割成若干个有着单独意义的汉语词条,这一步比较关键,同时这也是中文文本挖掘的重点和难点。中文分词是文本挖掘的基础,对于输入的一段中文,成功的进行中文分词,可以达到电脑自动识别语句含义的效果。中文分词技术属于自然语言处理技术范畴,对于一句话,人可以通过自己的知识来明白哪些是词,哪些不是词,但如何让计算机也能理解?其处理过程就是分词算法。分词方法一般有3种方法:机械匹配的方法、最大概率的方法、语义理解的方法。机械匹配的方法是最常用的方法,在借助一个词典的帮助下,它主要利用正向或者反向最大匹配的原则来分词,清华大学CSEG系统就是这种方法实现的。最大概率是根据一个事先建立的常用词语的概率表,依据这张概率表,对汉字字符串可能存在的多种分词结果进行统计分析,将其中概率最大的那个结果,作为该汉字字符串的分词结果,代表系统有中科院计算所ICTCLAS系统;基于语义理解的方法,这种方法可以实现新词识别功能,亦称为人工智能分词方法,山西大学ABWS系统是其代表。
态度目标:提升学生对旅游数据挖掘工作的理解和职业热爱;培养学生的创意创新思维和团队协作精神;培养学生认真细致的工作态度和工匠精神;通过中文分词的学习,让学生感悟汉字与中文之美,坚定文化自信。
教学重点、难点
重点内容:理解和掌握数据挖掘、机器学习等概念;掌握使用Python语言和相关软件包进行简单的数据挖掘实验。
参考书目与资料
[1]Robert Layton著,杜春晓译.Python数据挖掘入门与实践[M].中国工信出版集团,2016.
[2]Gordon S.Linoff等著,张小明等译.数据挖掘技术[M].清华大学出版社,2013.
[3]卢辉.数据挖掘与数据化运营实战思路、方法、技巧与应用[M].机械工业出版社,2018.
任务四:旅游数据挖掘应用——景区游客点评词频分析
以下Python代码,可以提取“去哪儿”旅游网站的上游客对某一景点评价:
import requests
from lxml import etree # 要抓取的页面链接
url='https:///ticket/detail_7984.html?from=mpshouye_hotdest_sight'
难点内容:能够使用Python语言进行简单的程序设计,编写网络提取信息的程序,应用软件包进行简单的数据挖掘实验。
教学方法
投影仪PPT讲授+上机
教学手段
多媒体教学、互动教学、演示教学
教学内容及其过程
教学内容及其过程
教学环节
教 学 程 序
导
入
新
课
近年来,大数据和数据挖掘的概念频繁出现在各类媒体上,“曝光率”和“回头率”都非常高,在旅游业中也不例外,请扫一扫二维码,阅读“第一财经”的这篇报道:《你有没有看懂旅游大数据?》
headers ={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'}
r=requests.get(url,headers = headers)
import requests
url='https:///ticket/detailLight/sightCommentList.json?sightId=7984&index=1&page=1&pageSize=850&tagType=0&tagName=%E5%85%A8%E9%83%A8'
二、亲和性分析
亲和性分析是根据样本个体之间的相似度,确定它们关系的亲疏。在数据挖掘中有大量的旅游营销的应用场景,比如游客更愿意同时购买哪些景点的门票、向景区网站用户提供多样化的服务或投放定向广告、旅行社向游客推荐旅行线路,卖给他们一些与之相关的产品。
亲和性有多种测量方法。例如,统计两个景点门票一起出售的频率,或者统计游客购买了景点1 后再买景点2的比率。最常用的用来进行亲和性分析的两个重要概念是:支持度(support)和置信度(confidence)。
import jieba
txt = "扬州瘦西湖,一直是闻其名,果然是美景怡人,门票稍贵了点,不过也算值得,在湖上荡舟,别有风味。就是四月的扬州人太多了些。"
words = jieba.cut(txt)
print("/".join(words))
运行结果为:扬州/瘦西湖/,/一直/是/闻其名/,/果然/是/美景/怡人/,/门票/稍贵/了/点/,/不过/也/算/值得/,/在/湖上/荡舟/,/别有风味/。/就是/四月/的/扬州人/太多/了/些/。
项目八:旅游数据挖掘(教案)
章(节)/模块
项目八
内容
旅游数据挖掘
教学目的与要求
知识目标:理解数据挖掘的概念和内涵;理解机器学习、数据挖掘之间的区别和联系;理解旅游数据挖掘的意义。
技能目标:能够运用Python语言从旅游网站上提取有用信息,并保存至本地存储;能够对中文文本进行文本分析,提取关键词,分析词频;能够运用情感分析技术对游客对景区的网络点评进行舆情分析。
t = len(tjson['data']['commentList'])
fp = open("qnercomments.txt","w",encoding = "utf-8")
for i in range(0,t):
tempstr = tjson['data']['commentList'][i]['content']
7. 建议文章中要用相应的表格、图片
8. 要注意报告的WORD排版
9. 项目设计报告不少于2000字
反
馈
练
习
见教材各任务的任务拓展练习及综合实训任务。归纳总
结
课外作业与参考资料
作业(包含书面和口头作业)
1.去图书馆或检索互联网,进一步查阅python语言的编程技巧。
2.进一步学习网络信息提取的编程方法
任务二:电商数据挖掘工具
一、常见数据挖掘工具
数据挖掘工具是使用数据挖掘技术从大型数据集中发现并识别模式的计算机软件。数据在当今世界中就意味着金钱,但是因为大多数数据都是非结构化的。因此,拥有数据挖掘工具将成为帮助您获得正确数据的一种方法。下面为大家介绍5款常用的数据挖掘工具。
1.Rapid Miner
Jieba中文分词:
支持三种分词模式:
精确模式,试图将句子最精确地切开,适合文本分析;
全模式,把句子中所有的可以成词的词语都扫描处理,速度非常快,但是不能解决歧义;
搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于引擎分词。
另外jieba还支持繁体分词和支持自定义词典。
以下代码实现了一段景区点评的中文分词。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。
数据挖掘是从海量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程。数据挖掘中用到了大量的机器学习界提供的数据分析技术和数据库界提供的数据管理技术。
Tom Mitchell在1997年出版的Machine Learing一书中指出,从数据分析的角度来看,数据挖掘与机器学习有很多相似之处,但不同之处也十分明显,例如,数据挖掘并没有机器学习中所包含的探索人的学习机制这一科学发现任务,数据挖掘中的数据分析是针对海量数据进行的,等等。从某种意义上说,机器学习的科学成分更重一些,而数据挖掘的技术成分更重一些。
r.encoding='utf-8'
s=etree.HTML(r.text)
result=etree.tostring(s)
comments=s.xpath('//p[@class="mp-comments-desc"]/text()')
print(comments)
去哪儿旅游网上有些景点网页无法直接用上面的办法提取评价信息,需要使用json进行解析,以下代码可以实现这类网页评价信息的提取并保存到本地硬盘。
headers ={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'}
r=requests.get(url,headers = headers)
数据挖掘的目标是从数据库中发现隐含的、有意义的知识,林杰斌,刘明德等学者在《数据挖掘与 OLAP 理论与实务》一书中认为:数据挖掘主要有以下五类功能:
1.自动预测趋势和行为。
2.关联分析。
3.聚类。
4. 概念描述。
5.偏差检测。
一般数据挖掘技术包括关联分析、序列分析、分类、预测、聚类分析及时间序列分析。
实训演练:
1.利用网页数据提取和文本情感分析技术,对某景区景点旅客评价进行分析,得出某种结论,并把工作过程写成报告;
2. 文字需要是正规书面用语,结论需要有数据支持;
3.情感分析的结果,需要得出正向评价的平均概率;
4. 要有python源代码
5. 需要对所使用的理论和技术进行介绍;
6. 要符合一般论文的格式要求;
2.IBM SPSS Modeler
3.Oracle Data Mining
4.KNIME
5.Python
二、Python语言使用
(一)Python 简介
(二)Python的基本用法
1.安装与配置
2.语法简介
任务三:电商数据挖掘的方法
一、情感分析技术
1.情感分析技术简介
情感分析, 通常是指对一段带有主观性情感的文本进行分析的过程。情感分析有很强的实用价值,例如,通过对某酒店服务评论的情感分析, 可以发现顾客对该酒店软硬件设施和服务的褒贬态度和意见,从而改进设施并改善服务, 赢得竞争优势;通过对游客对某条旅游线路的评论情感分析,旅行社可以了解游客对该线路的态度倾向分布, 从而优化路线,提高服务品质,从竞争中脱颖而出。通过情感分析技术,可以帮助企业从互联网上海量的产品评论中获取对产品综合、全面的评价信息。因此,许多企业都对应用情感分析技术分析客人的网络评价,有着迫切的需要,因此,如何从旅游网络评价中获取游客的情感倾向,并更好的服务于游客,是一个非常有实用价值的研究方向。
以4人为一个小组,查阅大数据与数据挖掘在旅游业应用的案例,分组讨论:什么是数据挖掘?数据挖掘在电子商务业务上有哪些成功的案例?旅游业是否也需要进行旅游数据挖掘?
学
习
新
课
任务一:旅游数据挖掘基础知识
数据挖掘: Gordon S.Linoff对数据挖掘的定义是:数据挖掘是一项分析大量数据以发现有意义的模式和规则的业务流程。
目前进行情感分析,主要使用两种方法,分别是:基于机器学习的方法和基于语义的方法。基于机器学习的方法是利用分类技术来处理文本,分类技术一般是使用某种学习算法来确定分类模型,该模型不但很好地拟合输入数据中的类标号与属性集之间的关系,还能够正确地预测未知样本的类标号中类标号,我们需要为它提供一个人工标注的训练集,通过上述的学习算法,训练并建立分类模型,然后可以将这个模型运用于检验集,从而检验类标号未知情感文本记录。基于语义的方法,一般是先获得情感倾向词,把表示情感的词语划分成正面词语和负面词语,同时构造一个专用的情感词典,然后利用这个词典,使用线性代数和统计分析的方法,来统计文本中的正面和负面情感词语的相对数量,从而确定文本的情感倾向。
if tempstr != "用户未点评,系统默认好评。":
fp.write(tempstr+"\n")
fp.close()
print("已经成功的写入文件!")
中文分词:
将游客对景区的评价信息从网页中提取出来以后,需要对评论内容进行预处理,第一步需要进行中文分词,分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在词这一层上,中文比之英文要复杂得多、困难得多。中文分词就是将由汉字序列组成的评价语句,通过一定的方法分割成若干个有着单独意义的汉语词条,这一步比较关键,同时这也是中文文本挖掘的重点和难点。中文分词是文本挖掘的基础,对于输入的一段中文,成功的进行中文分词,可以达到电脑自动识别语句含义的效果。中文分词技术属于自然语言处理技术范畴,对于一句话,人可以通过自己的知识来明白哪些是词,哪些不是词,但如何让计算机也能理解?其处理过程就是分词算法。分词方法一般有3种方法:机械匹配的方法、最大概率的方法、语义理解的方法。机械匹配的方法是最常用的方法,在借助一个词典的帮助下,它主要利用正向或者反向最大匹配的原则来分词,清华大学CSEG系统就是这种方法实现的。最大概率是根据一个事先建立的常用词语的概率表,依据这张概率表,对汉字字符串可能存在的多种分词结果进行统计分析,将其中概率最大的那个结果,作为该汉字字符串的分词结果,代表系统有中科院计算所ICTCLAS系统;基于语义理解的方法,这种方法可以实现新词识别功能,亦称为人工智能分词方法,山西大学ABWS系统是其代表。
态度目标:提升学生对旅游数据挖掘工作的理解和职业热爱;培养学生的创意创新思维和团队协作精神;培养学生认真细致的工作态度和工匠精神;通过中文分词的学习,让学生感悟汉字与中文之美,坚定文化自信。
教学重点、难点
重点内容:理解和掌握数据挖掘、机器学习等概念;掌握使用Python语言和相关软件包进行简单的数据挖掘实验。
参考书目与资料
[1]Robert Layton著,杜春晓译.Python数据挖掘入门与实践[M].中国工信出版集团,2016.
[2]Gordon S.Linoff等著,张小明等译.数据挖掘技术[M].清华大学出版社,2013.
[3]卢辉.数据挖掘与数据化运营实战思路、方法、技巧与应用[M].机械工业出版社,2018.
任务四:旅游数据挖掘应用——景区游客点评词频分析
以下Python代码,可以提取“去哪儿”旅游网站的上游客对某一景点评价:
import requests
from lxml import etree # 要抓取的页面链接
url='https:///ticket/detail_7984.html?from=mpshouye_hotdest_sight'
难点内容:能够使用Python语言进行简单的程序设计,编写网络提取信息的程序,应用软件包进行简单的数据挖掘实验。
教学方法
投影仪PPT讲授+上机
教学手段
多媒体教学、互动教学、演示教学
教学内容及其过程
教学内容及其过程
教学环节
教 学 程 序
导
入
新
课
近年来,大数据和数据挖掘的概念频繁出现在各类媒体上,“曝光率”和“回头率”都非常高,在旅游业中也不例外,请扫一扫二维码,阅读“第一财经”的这篇报道:《你有没有看懂旅游大数据?》
headers ={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'}
r=requests.get(url,headers = headers)
import requests
url='https:///ticket/detailLight/sightCommentList.json?sightId=7984&index=1&page=1&pageSize=850&tagType=0&tagName=%E5%85%A8%E9%83%A8'
二、亲和性分析
亲和性分析是根据样本个体之间的相似度,确定它们关系的亲疏。在数据挖掘中有大量的旅游营销的应用场景,比如游客更愿意同时购买哪些景点的门票、向景区网站用户提供多样化的服务或投放定向广告、旅行社向游客推荐旅行线路,卖给他们一些与之相关的产品。
亲和性有多种测量方法。例如,统计两个景点门票一起出售的频率,或者统计游客购买了景点1 后再买景点2的比率。最常用的用来进行亲和性分析的两个重要概念是:支持度(support)和置信度(confidence)。
import jieba
txt = "扬州瘦西湖,一直是闻其名,果然是美景怡人,门票稍贵了点,不过也算值得,在湖上荡舟,别有风味。就是四月的扬州人太多了些。"
words = jieba.cut(txt)
print("/".join(words))
运行结果为:扬州/瘦西湖/,/一直/是/闻其名/,/果然/是/美景/怡人/,/门票/稍贵/了/点/,/不过/也/算/值得/,/在/湖上/荡舟/,/别有风味/。/就是/四月/的/扬州人/太多/了/些/。
项目八:旅游数据挖掘(教案)
章(节)/模块
项目八
内容
旅游数据挖掘
教学目的与要求
知识目标:理解数据挖掘的概念和内涵;理解机器学习、数据挖掘之间的区别和联系;理解旅游数据挖掘的意义。
技能目标:能够运用Python语言从旅游网站上提取有用信息,并保存至本地存储;能够对中文文本进行文本分析,提取关键词,分析词频;能够运用情感分析技术对游客对景区的网络点评进行舆情分析。