我已在AIStudio将赛题方案上传,可以一键Fork运行。
步骤: 未注册的小伙伴需要先去AI Studio进行注册,完善资料后,访问下面方案链接(觉得好的话,记得给我点个关注和小红心哦):
问题一解决方案代码
问题二、三解决方案代码
竞赛地址:https://www.tipdm.org:10010/#/competition/1481159137780998144/question
- 一、项目介绍
- 1.1 赛题背景
- 1.2 第一问拟解决问题
- 1.3 数据展示
- 二、基于LDA的微信公众号分类
- 2.1 解决方案
- 2.2 数据预处理
- 2.3 LDA分析
- 2.4 词云展示
- 2.5 结果展示
- 三、总结
- 四、后续的任务
随着互联网和自媒体的繁荣,文本形式的在线旅游(online Travel Agency,OTA)和游客的用户生成内容(User Generated Content,UGC)数据成为了解旅游市场现状的重要信息来源。OTA和UGC数据的内容较为分散和碎片化,要使用它们对某一特定旅游目的地进行研究时,迫切需要一种能够从文本中抽取相关的旅游要素,并挖掘要素之间的相关性和隐含的高层概念的可视化分析工具。
为此本赛题提出本地旅游图谱这一概念,它在通用知识图谱的基础上加入了更多针对旅游行业的需求。本地旅游图谱采用图的形式直观全面地展示特定旅游目的地“吃住行娱购游”等旅游要素,以及它们之间的关联。图 1所示为我国西藏阿里地区的本地旅游图谱,中心位置节点为旅游目的地“阿里”,它的下层要素包括该地区的重要景点如“冈仁波齐”和“玛旁雍错”,以及“安全”、“住宿”等旅游要素。旅游要素分为多个等级,需要从文本中挖掘出面对不同要素游客所关注的下一级要素。如阿里地区的“安全”要素下包括“高反”、“天气”和“季节”等下一级要素,这个组合是西藏旅游所特有的。旅游要素之间会存在关联关系,如“冈仁波齐”和“玛旁雍错”这两个景点通过“神山圣湖”这一高层概念产生联系,在本地旅游图谱中使用连接两个节点的一条边来表示。
在近年来新冠疫情常态化防控的背景下,我国游客的旅游消费方式已经发生明显的转变。在出境游停滞,跨省游时常因为零散疫情的影响被叫停的情况下,中长程旅游受到非常大的冲击,游客更多选择短程旅游,本地周边游规模暴涨迎来了风口。疫情防控常态化背景下研究分析游客消费需求行为的变化,对于旅游企业产品供给、资源优化配置以及市场持续开拓具有长远而积极的作用。本赛题提供收集自互联网公开渠道的2018年至2021年广东省茂名市的OTA和UGC数据,期待参赛者采用自然语言处理等数据挖掘方法通过建立本地旅游图谱的方式来分析新冠疫情时期该市周边游的发展。
构建文本分类模型,对附件1提供的微信公众号的推送文章根据其内容与文旅的相关性分为“相关”和“不相关”两类,并将分类结果以表1的形式保存为文件“result1.csv”。与文旅相关性较强的主题有旅游、活动、节庆、特产、交通、酒店、景区、景点、文创、文化、乡村旅游、民宿、假日、假期、游客、采摘、赏花、春游、踏青、康养、公园、滨海游、度假、农家乐、剧本杀、旅行、徒步、工业旅游、线路、自驾游、团队游、攻略、游记、包车、玻璃栈道、游艇、高尔夫、温泉等等。
- 该数据文本长度长,且没有任何标签
共有8000多条微信公众号的文章,字数在4000+
** 首先对疫情前发布的394篇和疫情后发布的5665篇公众号文章,以文旅这一大主题为目标,建立模型判断公众号文章与文旅的相关性。先对原始数据集进行数据清洗,避免因为存在较大的噪声干扰模型的判断。然后用TF-IDF算法进行特征关键词提取,并将处理好的数据输入LDA模型中进行主题词和主题生成。考虑到细粒度的问题,最终对疫情前的公众号文章生成16个主题,疫情后的公众号文章生成40个主题,通过人工标注的方法对这56个主题进行相关性标注,最后生成公众号文章与文旅相关性表格。**
2.2.1 采用停词表过滤,并且从深蓝字典以及搜狗字典找了相关的一些字典,导入jieba进行分词
这里的2个文件,是按照疫情前后进行分开的 2018-2019微信公众号.xlsx;2020-2021微信公众号.xlsx
2.2.2 数据清洗
我们用LDA将上述处理好的content_cut进行LDA分析,生成Topk个主题。
设置主题词的个数
2.3.1 每个topic对应的关键词所占的比例图
2.3.2 输出主题对应的example
2.3.3 输出每篇文章对应主题
2.3.4 可视化
生成后在目录中的html文件,打开可以对每个主题进行拖拽查看
]
2.3.5 困惑度计算调优
2.5.1生成分类结果
我们先将topk的主题,这里我们生成了16个主题,通过主题词判断是否与文旅相关; 然后将对应的主题进行替换
2.5.2 输出总结果
最后分别将疫情前和疫情后的数据进行合并生成最终的结果
在微信公众号分类这个问题上,我们通过在网上查阅资料和对历年赛题的优秀作品的研究,了解了许多主题模型算法,比如LDA、BERTopic、Author-Topic。通过对各个主题模型分析和对比,最后选择了使用LDA模型,相比之下LDA模型能够更好的解决长文本的主题分类问题,并且LDA能够很好的对接LDAvis可视化工具。首先对文章进行分词特征抽取,之后进行主题词生成和主题生成,最后对生产的关键词进行了分析并进行了可视化。