2022年第三届MathorCup高校数学建模挑战赛——大数据竞赛 赛道B 北京移动用户体验影响因素研究 问题二建模方案及代码实现详解

2022年第三届MathorCup高校数学建模挑战赛——大数据竞赛 赛道B 北京移动用户体验影响因素研究 建模方案及代码实现

在这里插入图片描述

更新进展

2022年12月21日 12:20 发布问题一、二思路及问题一的python代码实现

2022年12月22日 15:00 发布问题二python实现的代码

更新完毕

相关链接

(1)问题一建模方案及代码实现

(2)问题二建模方案及代码实现

1 题目

移动通信技术飞速发展,给人们带来了极大便利,人们也越来越离不开移动通信技术带来的各种便捷。随着网络不断的建设,网络覆盖越来越完善。各个移动运营商,越来越重视客户的网络使用体验,从而进一步提升网络服务质量。 客户满意度是客户对运营商产品服务的满意程度,反映了客户期望与实际感知的产品服务之间的差异。特别是在信息透明、产品同质化的今天, 客户满意度的表现成为各大运营商市场运营状况的重要体现。数字经济时代,各大运营商需要运用数字经济的管理理念和技术手段,建立客户体验生态的全方位系统性测评体系,实现客户满意度评测的数字化转型,让客户体验赋能商业决策,让商业决策真正服务客户,共同推动移动网络高质量可持续发展。 根据客户投诉,对影响用户体验的问题逐点解决,是传统提升客户满意度的方法。但是随着用户数量的大幅增加,移动产品的种类越来越丰富, 客户的需求越来越高,传统的方法已经难以有效提升客户的满意度。本研究拟通过分析影响用户满意度的各种因素,为决策提供依据,从而实现更早、更全面提升用户满意度。 中国移动通信集团北京公司,让客户根据自身在网络覆盖与信号强度、语音通话清晰度和语音通话稳定性三个方面的体验进行打分,同时还让客户根据语音通话的整体体验进行语音通话整体满意度的打分,并统计整理影响客户语音业务体验的因素,希望以此来分析客户语音业务满意度的主要影响因素,并提升客户语音业务满意度。同时,对于上网数据业务,中国移动北京公司让客户根据自身在网络覆盖与信号强度、手机上网速度、手机上网稳定性三个方面的体验进行打分,同时还让客户根据手机上网的整体体验进行手机上网整体满意度的打分,并统计整理影响客户上网体验的因素,希望以此可以分析影响客户上网业务体验的主要因素,并提升客户的上网体验。

初赛问题 基于以上背景,请你们的团队根据附件给出的数据,通过数据分析与建模的方法帮助中国移动北京公司解决以下问题:

问题 1:根据附件 1 和附件 2,分别研究影响客户语音业务和上网业务满意度的主要因素,并给出各因素对客户打分影响程度的量化分析和结果。附件 1、2 中各字段的解释说明见附件 5。

问题 2:结合问题 1 的分析,对于客户语音业务和上网业务分别建立客户打分基于相关影响因素的数学模型,并据此对附件 3、4 中的客户打分

进行预测研究,将预测结果分别填写在result.xlsx 的Sheet1“语音”和Sheet2“上网”两个工作表中,并上传到竞赛平台,说明你们预测的合理性。

附件

附件 1 语音业务用户满意度数据 附件 2 上网业务用户满意度数据 附件 3 语音业务用户满意度预测数据 附件 4 上网业务用户满意度预测数据附件 5 附件 1、2、3、4 的字段说明result.xlsx

2 思路分析

2.1 问题一

这是相关性分析问题,分别对附件1和附件2计算所有因素与语音通话整体满意度和手机上网整体满意度的相关性。首先对数据集进行数据预处理和数据可视化分析,具体的分析过程看以下 部分python代码实现。查看异常值,去除异常值,查看数据分布,对分布进行抓换等处理。预处理完毕后,采用的相关性分析方法有

  • Pearson相关

Pearson相关用于评估两个连续变量之间的线性关联强度。这种统计方法本身不区分自变量和因变量,但如果您根据研究背景已经对变量进行了区分,我们仍可以采用该方法判断相关性。

  • Spearman相关

Spearman相关又称Spearman秩相关,用于检验至少有一个有序分类变量的关联强度和方向。

  • Kendall’s tau-b相关系数

Kendall’s tau-b 相关系数是用于检验至少有一个有序分类变量关联强度和方向的非参数分析方法。该检验与Spearman相关的应用范围基本一致,但更适用于存在多种关联的数据(如列联表)。

  • 卡方检验

卡方检验常用于分析无序分类变量之间的相关性,也可以用于分析二分类变量之间的关系。但是该检验只能分析相关的统计学意义,不能反映关联强度。因此,我们常联合Cramer’s V检验提示关联强度。

  • Fisher精确检验

Fisher精确检验可以用于检验任何RC数据之间的相关关系,但最常用于分析22数据,即两个二分类变量之间的相关性。与卡方检验只能拟合近似分布不同的是,Fisher精确检验可以分析精确分布,更适合分析小样本数据。但是该检验与卡方检验一样,只能分析相关的统计学意义,不能反映关联强度。

2.2 问题二

这是一个多分类问题,1-10的评分,10分类问题。简单的机器学习问题。首先数据预处理,包括缺失值处理、异常值处理、类别特征编码,label 采用onehot编码或者数值编码。接下来是特征工程,特征工程的方法有,特征筛选、特征降维、特征交叉、特征标准化或归一化等等。接下来选择常用的机器学习分类模型

  • 1.KNN
  • 2.感知机
  • 3.朴素贝叶斯法
  • 4.决策树
  • 5.逻辑斯谛回归模型*
  • 6.SVM
  • 7.AdaBoost
  • 8.随机森林
  • 9.XGB
  • 10.LGB

XGB、LGB一般效果更好。此比赛时间充足,可以多对比几种模型,看实验效果。此外还可以采用神经网络分类模型,耗时较长,效果更佳。

3 问题二python代码实现

3.1 读取数据

import datetime
import numpy as np
import pandas as pd
import numpy as np
from tqdm import tqdm
tqdm.pandas()file1 = pd.read_excel('./data/附件1语音业务用户满意度数据.xlsx')
clear_file1=file1[(file1['语音通话整体满意度']<=10) & (file1['语音通话整体满意度']>=1)]
label = clear_file1['语音通话整体满意度']

3.2 数据预处理

用户描述,用户描述.1,重定向次数,重定向驻留时长 ,是否关怀用户,是否去过营业厅列,这些列缺失值太多,直接删除。

clear_file1_1 = clear_file1.drop(columns=['语音通话整体满意度','用户描述','用户描述.1','重定向次数','重定向驻留时长','是否关怀用户','是否去过营业厅'])
clear_file1_1 

在这里插入图片描述

异常值填充,类别特征,用众数填充,数值特征,用平均值填充

是否4G网络客户(本地剔除物联网),终端品牌,终端品牌类型,外省流量占比,是否5G网络客户,是否实名登记用户,客户星级标识,当月欠费金额,前第3个月欠费金额

for s in ['是否4G网络客户(本地剔除物联网)','终端品牌','终端品牌类型','外省流量占比','是否5G网络客户','是否实名登记用户','客户星级标识','当月欠费金额','前第3个月欠费金额']:if clear_file1_1[s].dtype==object:fill_none = clear_file1_1[s].value_counts().index[0]else:fill_none = np.mean(clear_file1_1[s])clear_file1_1[s] = clear_file1_1[s].fillna(fill_none)
clear_file1_1.isnull().any()

在这里插入图片描述

3.3 特征工程

3.3.1 特征交叉

统计类别特征和数值特征


cross_cat = []
cross_num = []
for s in clear_file1_1.columns:if clear_file1_1[s].dtype==object or clear_file1_1[s].dtype==int:cross_cat.append(s)else:cross_num.append(s)cross_cat

在这里插入图片描述

将类别特征编码

clear_file1_2 = clear_file1_1.copy()
for s in clear_file1_2.columns:if clear_file1_2[s].dtype==object:class_mapping = {label:idx+1 for idx,label in enumerate(set(clear_file1_2[s]))}clear_file1_2[s] = clear_file1_2[s].map(class_mapping)

定义交叉特征统计

def cross_cat_num(df, num_col, cat_col):for f1 in tqdm(cat_col):g = df.groupby(f1, as_index=False)for f2 in tqdm(num_col):。。。略df = df.merge(feat, on=f1, how='left')return(df)
data = cross_cat_num(clear_file1_2, cross_num, cross_cat)  # 一阶交叉
data.shape

3.3.2 特征降维

步骤一:根据与满意度打分的相关性,筛选性相关性高的特征

tmp_train = data.copy()
tmp_train['语音通话整体满意度'] = label
col_list = tmp_train.columns.tolist()
mcorr = tmp_train[col_list].corr().abs()
tt = mcorr['语音通话整体满意度'] > 0.2
new_col = list(tt[tt == True].index)
new_col.remove('语音通话整体满意度')clear_dataset_df1 = data[new_col].copy()
clear_dataset_df1['语音通话整体满意度'] = label
clear_dataset_df1.to_csv('data/clear_file1.csv',index=False)
len(new_col)

将清洗后的数据集存储起来

clear_dataset_df1 = data[new_col].copy()
clear_dataset_df1['label'] = label
clear_dataset_df1.to_csv('data/clear_file1.csv',index=False)

3.4 模型训练

划分训练集和测试集


from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_splitdf = pd.read_csv('data/clear_file1.csv')
Y = df['label']
X = df.drop(columns=['label'])X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size=0.3, random_state=42)
scaler = StandardScaler()
train_X = scaler.fit_transform(X_train)
test_X = scaler.transform(X_test)

XGB分类模型

import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.metrics import accuracy_score
import xgboost as xgb
from xgboost import plot_importance
from sklearn import metrics
import warnings
warnings.filterwarnings("ignore")model = xgb.XGBClassifier(learning_rate=0.01,n_estimators=10,           # 树的个数-10棵树建立xgboostmax_depth=4,               # 树的深度min_child_weight = 1,      # 叶子节点最小权重gamma=0.,                  # 惩罚项中叶子结点个数前的参数subsample=1,               # 所有样本建立决策树colsample_btree=1,         # 所有特征建立决策树scale_pos_weight=1,        # 解决样本个数不平衡的问题random_state=27,           # 随机数slient = 0)
model.fit(train_X,y_train)
y_pred = model.predict(test_X)
print("Accuracy : %.4g"%accuracy_score(y_test, y_pred)) 

输出:Accuracy : 0.7724

预测附件3,并存储为csv文件

test_df = pd.read_csv('data/clear_file3.csv')
y_pred = model.predict(test_df)
pd.DataFrame(y_pred).to_csv('result_1.csv',index=False)

同理,对附件2和附件4进行处理,附件4预测结果存储为result_2.csv,最后合并两个csv为result.xlsx。

对附件2 的代码在下载内容中,不再在文章中展示。

在这里插入图片描述

4 两问代码及图片下载

# https://www.betterbench.top/#/17/detail

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/10237.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年MathorCup数学建模赛题浅析

MathorCup俗称妈杯&#xff0c;是除了美赛国赛外参赛人数首屈一指的比赛&#xff0c;而我们的妈杯今天也如期开赛。今年的妈杯难度&#xff0c;至少在我看来应该是2023年截至目前来讲最难的一场比赛。问题的设置、背景的选取等各个方面都吐露着我要难死你们的想法。难度是恒定的…

2021MathorCup高校数学建模挑战赛——大数据竞赛的一些想法总结

文章目录 1 前言2 数据预处理2.1 数据文件的分割2.2 数据文件的去重 3 问题一的求解3.1 数据提取3.2 去除数据异常值3.3 数据格式化3.4 数据集的插值3.5 ARIMA模型进行短期预测 4 问题二的求解4.1 人工神经网络&#xff08;ANN&#xff09;4.2 深度神经网络&#xff08;DNN&…

2023MathorCup数学建模比赛的思路汇总帖

更新时间【4.13 19&#xff1a;45】ABCD均已更新&#xff0c;选题指导已更新&#xff0c;速看&#xff01;后续会出各题详细思路及代码&#xff01; 这里是小云的2023MathorCup数学建模比赛的思路汇总帖&#xff0c;比赛开始后将实时更新~ 竞赛共4道题目&#xff08;A题、B题…

参加大学生数学建模大赛,Matlab和Python到底哪个更好?

前言 后台的小伙伴经常会问编程过程中&#xff0c;MATLAB和Python到底哪个更好&#xff1f;这个问题一直困惑很多同学&#xff0c;今天小编来给大家从实用型来综合分析一下&#xff1a; 首先从两者各自的应用做个对比。 一、python的优势 Python相对于Matlab最大的优势&…

chatgpt赋能python:Python和数学建模:如何参与数学建模比赛

Python和数学建模&#xff1a;如何参与数学建模比赛 介绍 数学建模比赛通常是学术界和工业界一起组织的比赛&#xff0c;旨在让学生掌握实际问题的建模方法以及如何处理数据、分析和解决实际问题。Python是一个流行的编程语言&#xff0c;广泛应用于数据科学和数学建模领域&a…

2023Mathorcup数学建模(妈妈杯)思路分析与选题建议

选题建议 建议根据自己的专业背景和兴趣&#xff0c;选择适合自己的题目进行作答。根据比赛规定的难度和开放度&#xff0c;我们推荐如下&#xff1a; A题 量子计算机在信用评分卡组合优化中的应用&#xff1a;建议统计学、数学等相关专业同学选择&#xff0c;难度较易&#x…

ChatGPT在Web3.0的应用:如何探索去中心化AI的新领域?

随着Web3.0技术的不断发展&#xff0c;去中心化应用已经成为了互联网领域的热点之一。作为人工智能领域的新星&#xff0c;ChatGPT的出现&#xff0c;进一步推动了去中心化应用的发展。在Web3.0应用中&#xff0c;ChatGPT可以被用于许多新领域&#xff0c;为用户提供更加智能、…

人类怎么管好以 ChatGPT 为代表的 AI ?

这个问题很有意思。 当前的 ChatGPT 模型并没有真正的意识&#xff0c;它只是根据训练数据和算法生成回答。在当前的技术水平下&#xff0c;人工智能不具备自我意识和自我决策的能力&#xff0c;也无法脱离其预先设定的目标进行行动。 然而&#xff0c;随着人工智能技术的发展…

解决局域网下安装python和pycharm的两个问题

第一个问题&#xff0c;无法启动此程序&#xff0c;因为计算机中丢失api-ms-win-core-path-11-1-0.dll&#xff0c;实际是因为win10和win7系统不兼容出现的问题。解决方式&#xff0c;把api-ms-win-core-path-l1-1-0.dll复制到一个文件夹中C:\Windows\System32。下载地址如下。…

腾讯首次投资大模型!Minimax被曝完成2.5亿美元新融资

衡宇 发自 凹非寺量子位 | 公众号 QbitAI 大模型正在垒起新的投资掘金热潮。 最新消息&#xff0c;大模型赛道创业公司MiniMax&#xff0c;又完成了新一轮2.5亿美元融资&#xff0c;整体估值超过12亿美元。 量子位进一步获悉&#xff0c;MiniMax这轮投资&#xff0c;还成功吸引…

答题老翻车,网友为360GPT起名“红孩儿”;暴雪曾要求网易支付5亿美元才能续约;暂停GPT-5研发呼吁引激战 | EA周报...

EA周报 2023年3月31日 每个星期1分钟&#xff0c;元宝带你喝一杯IT人的浓缩咖啡&#xff0c;了解天下事、掌握IT核心技术。 周报看点 1、曝暴雪CEO“狮子大开口”&#xff0c;曾要求网易支付 5 亿美元才能续约 2、暂停 GPT-5 研发呼吁引激战&#xff0c;吴恩达田渊栋反对千人联…

聚观早报|网易开放暴雪游戏退款申请通道;鱼跃医疗回应被罚270万

今日要闻&#xff1a;网易开放暴雪游戏退款申请通道&#xff1b;谷歌 ChatGPT 竞品搜索设计将迎来大改&#xff1b;“鱼跃医疗”回应被罚270万元&#xff1b;大众考虑在加拿大建设新的电池工厂&#xff1b;微软将把ChatGPT整合到必应搜索中 网易开放暴雪游戏退款申请通道 2 月…

字节辟谣 140 万美元年薪挖角 OpenAI 成员;网之易起诉暴雪欠款 3 亿;​确认侵权!三星被判赔 20 亿|极客头条...

「极客头条」—— 技术人员的新闻圈&#xff01; CSDN 的读者朋友们早上好哇&#xff0c;「极客头条」来啦&#xff0c;快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 一分钟速览新闻点&#…

网易称暴雪离婚不离身;苹果发布 M2 Pro 和 M2 Max 芯片;滴滴出行 App 已重新上架安卓应用商店 | 极客头条...

「极客头条」—— 技术人员的新闻圈&#xff01; CSDN 的读者朋友们早上好哇&#xff0c;「极客头条」来啦&#xff0c;快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 一分钟速览新闻点&#…

大话数据二

前言 10年前成功预测天道将临&#xff08;即Chatgpt&#xff09;&#xff0c;10年后将继续为大家带来新的遐想 想了解大话数据一的同学可以到华为数据库论坛查看原文&#xff1a;http://3ms.huawei.com/km/groups/2025905/blogs/details/1815399?lzh-cn 数据库的前身今世一 …

网易起诉暴雪欠款3亿/ ChatGPT又崩了/ 腾讯前副总裁因重婚被起诉…今日更多新鲜事在此...

日报君 发自 凹非寺量子位 | 公众号 QbitAI 大家好&#xff0c;今天是4月24日星期—————。 五一前最后一周&#xff0c;冲。 今日科技圈更多新鲜事儿&#xff0c;一起来看。 腾讯前副总裁郄小虎因重婚被诉 大模型创业潮期间&#xff0c;不少企业高管离职&#xff0c;近期就…

本地化部署AI语言模型RWKV指南,ChatGPT顿时感觉不香了。

之前由于ChatGpt处处受限&#xff0c;又没法注册的同学们有福了&#xff0c;我们可以在自己电脑上本地化部署一套AI语言模型&#xff0c;且对于电脑配置要求也不是非常高&#xff0c;对它就是RWKV。 关于RWKV RWKV是一个开源且允许商用的大语言模型&#xff0c;灵活性很高且极…

提问的艺术 for ChatGPT

原文地址&#xff1a;https://jiangliuhong.top/2023/04/09/normal/chatgpt_ti_wen_fen_xiang/ 《提问的艺术 for ChatGPT》&#xff08;prompt 技术工程高质量答案完全指南 关于 prompt 技巧的全面指导&#xff09;这本书是一本全面的指南&#xff0c;介绍了各种Prompt技术的…

ChatGPT 和 Elasticsearch:使用 ChatGPT 处理 Elastic 数据的插件

作者&#xff1a;Baha Azarmi 你可能已经阅读过这篇关于我们将 Elasticsearch 的相关性功能与 OpenAI 问答功能相结合的博文。 该帖子的主要思想是说明如何将 Elastic 与 OpenAI 的 GPT 模型结合使用来构建响应并向用户返回上下文相关的内容。 我们构建的应用程序可以公开一个…

预测“叫停GPT-4后续AI大模型”后续:这是一个囚徒困境

文章目录 前言一、公开信内容二、公开信核心观点和诉求三、个人思考AI安全和伦理囚徒困境 总结 前言 生命未来研究所 (Future of Life Institute) 发表了一封公开信&#xff0c;信件&#xff1a;https://futureoflife.org/open-letter/pause-giant-ai-experiments/&#xff0c…