1.本发明涉及计算机技术领域,尤其涉及基于社交媒体数据的交通事件分类方法、系统及介质。
背景技术:
2.随着信息化发展,社交媒体平台已经广泛应用于日常生活中,其信息传播速度之快、信息更新之及时、信息保留时间之长,使其成为了人工智能领域重要的数据来源。其中,社交媒体交通信息是指交通相关部门或个人用户在社交媒体平台上发表的与交通事件相关的内容,可通过对海量的社交媒体交通信息进行数据挖掘从而反馈交通情况方便居民出行规划。
3.目前交通事件的检测大多采用机器学习模型,或一般的深度学习模型。机器学习模型速度比较快、可解释性强,但是其准确率却相对较低;一般深度学习模型则过度依赖数据集,当训练集不足时,会发生过拟合,导致模型线上表现差,但是充足的训练集又需要耗费大量的人力,因此目前交通事件自动检测的方案还存在准确率和效率较低的问题。
技术实现要素:
4.鉴于上述现有技术的不足,本发明的目的在于提供基于社交媒体数据的交通事件分类方法、系统及介质,旨在提高交通事件识别的准确率和效率。
5.本发明的技术方案如下:
6.一种基于社交媒体数据的交通事件分类方法,包括:
7.从预设社交媒体平台上爬取交通事件数据并构建数据集;
8.对所述数据集进行预处理;
9.将预处理后的数据集进行文本编码,并将文本编码后的数据集划分为训练集、验证集和测试集;
10.将所述训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到所述交通事件分类模型的最优超参数,其中所述交通事件分类模型中包括预训练模型;
11.基于所述最优超参数对所述交通事件分类模型进行多组交叉验证后对所述测试集进行交通分类预测,并通过投票算法在多组预测结果中确认最佳交通事件分类结果。
12.在一个实施例中,所述从预设社交媒体平台上爬取交通事件数据并构建数据集,包括:
13.获取所述交通事件数据的预设搜索条件;
14.根据所述预设搜索条件从所述预设社交媒体平台中爬取相应的交通事件数据;
15.在所述交通事件数据中筛选得到满足预设价值条件的有效数据,根据所述有效数据构建所述数据集。
16.在一个实施例中,所述对所述数据集进行预处理,包括:
17.使用正则表达式去除所述数据集中的网页代码,提取得到文本数据;
18.使用正则表达式去除所述文本数据的后缀;
19.统计所述数据集中每条文本数据的长度,对长度小于预设下限值的文本数据进行文本增强;
20.根据预设的交通事件类别对每条文本数据进行标注,得到预处理后的数据集。
21.在一个实施例中,所述将预处理后的数据集进行文本编码,并将文本编码后的数据集划分为训练集、验证集和测试集,包括:
22.通过分词器对预处理后的数据集中的每条文本数据进行编码;
23.根据预设调整规则将编码后的每条文本数据的长度均调整至预设长度,得到文本编码后的数据集;
24.将文本编码后的数据集随机打乱,并调用预设分割函数将文本编码后的数据集按预设比例划分为训练集、验证集和测试集。
25.在一个实施例中,所述将所述训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到所述交通事件分类模型的最优超参数,其中所述交通事件分类模型中包括预训练模型之前,所述方法还包括:
26.构建所述交通事件分类模型、用于训练所述交通事件分类模型的损失函数、用于控制参数更新的学习率策略以及用于评价模型效果的评价指标,其中,所述交通事件分类模型包括预训练模型和下游分类模型。
27.在一个实施例中,所述将所述训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到所述交通事件分类模型的最优超参数,包括:
28.将所述训练集和验证集输入至所述交通事件分类模型中进行周期性的训练与效果验证,得到相应的损失函数值与评价指标值;
29.根据每个周期的所述损失函数值与评价指标值控制所述预训练模型以第一学习率进行参数更新,并控制所述下游分类模以第二学习率进行参数更新,所述第一学习率小于所述第二学习率;
30.当验证所述交通事件分类模型的效果达到最优时得到对应的最优超参数。
31.在一个实施例中,所述基于所述最优超参数对所述交通事件分类模型进行多组交叉验证后对所述测试集进行交通分类预测,并通过投票算法在多组预测结果中确认最佳交通事件分类结果,包括:
32.获取交叉验证的折数,并根据所述折数将所述数据集随机划分n次,得到n组训练子集、n组验证子集和n组测试子集;
33.保持所述最优超参数不变,通过所述n组训练子集和n组验证子集对所述交通事件分类模型进行交叉验证训练后得到n个分类子模型;
34.通过n个分类子模型分别对所述测试集进行交通事件分类预测,得到n组预测结果;
35.根据投票算法在所述n组预测结果中确认最佳交通事件分类结果。
36.在一个实施例中,所述预训练模型为bert模型或roberta模型。
37.一种基于社交媒体数据的交通事件分类系统,所述系统包括至少一个处理器;以及,
38.与所述至少一个处理器通信连接的存储器;其中,
39.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述基于社交媒体数据的交通事件分类方法。
40.一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的基于社交媒体数据的交通事件分类方法。
41.有益效果:本发明公开了基于社交媒体数据的交通事件分类方法、系统及介质,相比于现有技术,本发明实施例通过在社交媒体平台上自动采集海量的交通事件信息作为数据源,并对以预训练模型为基础建立的交通事件分类模型进行训练与效果验证,使得模型能实现高效且准确的交通事件智能分类。
附图说明
42.下面将结合附图及实施例对本发明作进一步说明,附图中:
43.图1为本发明实施例提供的基于社交媒体数据的交通事件分类方法的一个流程图;
44.图2为本发明实施例提供的基于社交媒体数据的交通事件分类方法中交通事件分类模型的框架示意图;
45.图3为本发明实施例提供的基于社交媒体数据的交通事件分类方法中的模型效果对比图;
46.图4为本发明实施例提供的基于社交媒体数据的交通事件分类系统的硬件结构示意图。
具体实施方式
47.为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下结合附图对本发明实施例进行介绍。
48.请参阅图1,图1为本发明提供的基于社交媒体数据的交通事件分类方法一个实施例的流程图。本实施例提供的基于社交媒体数据的交通事件分类方法适用于对交通事件信息进行智能分类的情况。如图1所示,该方法具体包括如下步骤:
49.s100、从预设社交媒体平台上爬取交通事件数据并构建数据集。
50.本实施例中,通过从预设社交媒体平台上自动爬取交通事件的相关信息,以高效获取实时且足量的交通事件数据,具体的预设社交媒体平台可以是例如微博平台、微信平台、短视频平台等(例如抖音平台、快手平台等),具体可以根据实际需求灵活设置爬取的社交媒体平台,本实施例对此不作限定,社交媒体平台上的信息具有高度的自由性和实时性,通过及时采集到的最新交通事件数据构建得到数据集作为后续模型训练的数据来源,确保模型训练时数据的完备性和实时性,提高交通事件分类预测的准确率。
51.在一个实施例中,步骤s100包括:
52.获取交通事件数据的预设搜索条件;
53.根据预设搜索条件从预设社交媒体平台中爬取相应的交通事件数据;
54.在交通事件数据中筛选得到满足预设价值条件的有效数据,根据有效数据构建数据集。
55.本实施例中,在进行数据爬取前先获取预设搜索条件,该预设搜索条件可以是系统默认设置的,也可以是用户根据需求更改设置的,具体该预设搜索条件包括搜索关键词、搜索时间段或搜索地点中的至少一项,通过当前设置的预设搜索条件从预设社交媒体平台中搜索爬取相应的交通事件数据,例如以微博平台为例,设置搜索关键词为“车、堵、公交、交通、拥堵、出行、路况、绕行、道路施工或交通故障”,设置搜索时间段为2018年12月1日至2018年12月31日,更进一步设置地点为北京市,从社交媒体的海量数据中爬取出与当前设置的搜索条件相符的微博信息,具体在爬取时,可以预先设置点击事件、滑动事件和翻页事件,自动调用浏览器后打开新浪微博网页并模拟用户登录,根据预设搜索条件采集符合要求的微博信息,进一步实现自动滑动右侧滚动条和自动翻页,做到无间断自动爬取信息,其中爬取的内容包括微博文案、评论、转发量和评论量等等,共爬取得到12355条数据,当然在其它实施例中也可根据需要设置其它的预设搜索条件,例如不限制搜索地点或者修改搜索时间段等等,本实施例对此不作限定。
56.在爬取得到与预设搜索条件相符合的交通事件数据后,进一步从中筛选得到满足预设价值条件的有效数据,根据有效数据构建数据集,也就是说,本实施例中通过预设价值条件对爬取到的交通事件数据进一步进行有效性评估,具体该预设价值条件可以是转发量大于第一阈值且评论量大于第二阈值,例如对爬取到的12355条交通事件数据先以转发量作为筛选标准,当转发量大于第一阈值(例如10)时标记为初筛有效数据,否则标记为无效样本,之后对初筛有效数据以评论量作为筛选标准,当评论量大于第二阈值(例如5)时则标记为有效数据,否则标记为无效数据,最终得到7224条有效数据,从而实现有效数据的筛选,进一步地,在构建数据库时可以对全部的7224条有效数据构建,也可以从全部有效数据中随机选取若干条数据(本实施例中筛选4644条)进行构建,可以理解的是,也可以先通过评论量初筛,再通过转发量进一步筛选,本实施例对此不作限定,本实施例通过预设价值条件从冗余的海量数据中筛选得到价值较高的数据以构建得到数据集,有效提高了数据来源的可靠性。
57.s200、对数据集进行预处理。
58.本实施例中,在构建数据集后则进一步对该数据集进行预处理,该预处理可以是例如文本清洗、文本增强、文本标注等等,将爬取得到的杂乱数据统一预处理为模型训练、验证与测试可用的样本数据,确保模型训练、验证和测试过程的准确性。
59.在一个实施例中,步骤s200包括:
60.使用正则表达式去除数据集中的网页代码,提取得到文本数据;
61.使用正则表达式去除文本数据的后缀;
62.统计数据集中每条文本数据的长度,对长度小于预设下限值的文本数据进行文本增强;
63.根据预设的交通事件类别对每条文本数据进行标注,得到预处理后的数据集。
64.本实施例中,首先使用正则表达式对数据集中的有效数据进行清洗,去除其中的网页代码,保留文本数据的内容,之后进一步观察文本数据,发现后缀均是与交通事件无关
的内容,因此使用正则表达式将文本后缀去除;其次统计数据集中每条文本数据的长度,对长度过小的文本数据进行文本增强,具体通过文本重复实现增强,根据全量数据集文本长度的分布,确定包含较多文本的长度区间,使用random库在该长度区间随机选择一个整数,该整数就是文本重复所需达到的指定长度,例如对文本长度小于10的文本进行增强,具体增强操作为:第一步,统计文本长度的分布;第二步,选择文本长度的集中区间,在该案例下,文本长度集中在[100,120],该区间的文本占比达到15%,高于其他区间;第三步,遍历长度小于10的文本,使用random库每次从[100,120]之间随机选择一个整数,以该整数作为该文本将要扩充到的长度,文本增加处理中针对短文本的重复未改变该文本所描述的交通事件信息,并且通过文本重复使得该信息反复出现,起到了增强语义的作用,使得文本向量与该交通事件的主题向量更加接近,有效提高文本数据的可靠性。
[0065]
此外,在文本清洗和增加后,则根据预设的交通事件类别对每条文本数据进行标注,即给每条文本数据进行分类,具体的交通事件类别可以包括例如交通事故,交通拥堵,道路施工,交通管制,恶劣天气,路况正常,违法停车,设备故障等等,当某条文本数据属于该类别时,记为1,不属于则记为0,一条文本可以属于多个类别,所以针对交通事件数据进行时间分类是多标签分类问题,例如经过对4644条文本数据进行标注,得到其中交通事故有2332条,交通拥堵有1683条,道路施工有149条,交通管制有437条,恶劣天气有531条,路况正常有309条,违法停车有88条,设备故障有47条,从而得到预处理后具有准确标注信息的数据集,以用于后续实现高效可靠的分类模型训练。
[0066]
s300、将预处理后的数据集进行文本编码,并将文本编码后的数据集划分为训练集、验证集和测试集。
[0067]
本实施例中,针对预处理后的数据集进一步进行文本编码,将社交媒体平台上采集到的非结构文本信息转化为满足模型输入格式要求的结构化文本编码,使得在数据集较少的场景下依然能实现高效且准确的模型学习效果,降低模型训练对数据集的依赖。
[0068]
在一个实施例中,步骤s300包括:
[0069]
通过分词器对预处理后的数据集中的每条文本数据进行编码;
[0070]
根据预设调整规则将编码后的每条文本数据的长度均调整至预设长度,得到文本编码后的数据集;
[0071]
将文本编码后的数据集随机打乱,并调用预设分割函数将文本编码后的数据集按预设比例划分为训练集、验证集和测试集。
[0072]
本实施例中,使用分词器(tokenizer)给数据集每条文本数据进行编码,包括字符编码、位置编码以及句子编码,其中字符编码在首位需加上开始字符[cls],末位加上结束字符[sep];位置编码的首位和末位添加1;句子编码的首位和末位添加0,其中字符编码是该字符在字典中的索引,位置编码由01元素组成,由于输入只有一个句子,所以句子编码是一个零向量;其次,根据预设调整规则将编码后的文本数据的长度统一,具体是将长文本截断,短文本填充,填充的内容均为0,从而将每条文本数据的长度均调整为统一的预设长度;最后,使用sklearn库将文本编码后的数据集随机打乱,再固定随机种子为2021,之后选择需要划分的比例,例如本实施例中采用8:1:1,调用预设分割函数将文本编码后的数据集划分为训练集、验证集和测试集,从而完成了交通事件分类模型的数据部分,为后续实现准确高效的交通事件分类提供转的数据基础。
[0073]
s400、将训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到交通事件分类模型的最优超参数,其中交通事件分类模型中包括预训练模型;
[0074]
步骤s400之前还包括:
[0075]
构建交通事件分类模型、用于训练交通事件分类模型的损失函数、用于控制参数更新的学习率策略以及用于评价模型效果的评价指标,其中,交通事件分类模型包括预训练模型和下游分类模型。
[0076]
本实施例中,在进行模型学习之前,先构建用于交通事件分类预测的交通事件分类模型,该交通事件分类模型包括预训练模型和下游分类模型,具体来说,预训练模型可以采用例如bert模型或者roberta模型等等,本实施例中以bert模型进行说明,如图2所示,该交通事件分类模型采用bert预训练模型作为编码层,下游分类模型则采用深度学习模型,具体包括bilstm、多头注意力层以及线性层,模型将经过bert预训练模型编码的输出数据作为bilstm的输入;lstm可以提取文本的时序信息,并提取出与bert不同方面的语义信息,而bilstm则可以改善lstm存在的长期依赖问题,并从不同的角度提取出字之间的依赖关系;bilstm的输出进一步作为多头注意力层的输入,多头注意力层起到注意力加权的作用,通过字向量之间的内积和softmax函数实现对每个字向量的加权求和,突出文本中关键的语义信息;最后使用双层线性层结合relu激活函数、softmax激活函数实现对文本的分类,即本实施例中交通事件分类模型采用了两个线性层进行分类,第一个线性层使用relu激活函数,用来提取对特征向量信息;第二个线性层的输入是第一个线性层的输出,其输出维度为目标类别数|d|,使用softmax作为激活函数,实现对文本的分类,其中relu激活函数的计算公式为:
[0077]
relu=max(0,r)
[0078]
其中r表示relu函数的输入;
[0079]
softmax激活函数的计算公式为:
[0080][0081]
其中i表示当前类别,d表示类别集合,s为d中的某一类别。由于是二分类,所以最后一层线性层的激活函数可以选择softmax和sigmoid,由于softmax函数比sigmoid函数的一阶导数值更大,所以其能提供更大的梯度,因此可以有效缓解梯度消失的情况,并且能加快模型的收敛。
[0082]
进一步地,在构建了基于预训练模型的交通事件分类模型后,则进一步定义交通事件分类模型的损失函数、用于控制参数更新的学习率策略以及用于评价模型效果的评价指标,并将训练集和验证集输入至交通事件分类模型中进行模型训练与效果评价,根据验证集的线下效果寻找得到交通事件分类模型的最优超参数。
[0083]
在一个实施例中,步骤s400包括:
[0084]
将训练集和验证集输入至交通事件分类模型中进行周期性的训练与效果验证,得到相应的损失函数值与评价指标值;
[0085]
根据每个周期的损失函数值与评价指标值控制预训练模型以第一学习率进行参数更新,并控制下游分类模以第二学习率进行参数更新,第一学习率小于第二学习率;
[0086]
当验证交通事件分类模型的效果达到最优时得到对应的最优超参数。
[0087]
本实施例中,以训练集和验证集作为模型的输入,其中以训练集作为模型的训练数据,以验证集对模型训练过程中线下效果的验证对该交通事件分类模型进行周期性的训练与效果验证,通过对比每个训练训练集的损失函数值与验证集的评价指标值来对模型的学习情况进行分析,确认模型是否已达到预设学习效果,根据分析结果调整模型的超参数,直到验证模型的效果达到最优(例如评价指标值大于预设阈值或者在若干训练周期中寻找最大的评价指标值),则得到模型对应的最优超参数。
[0088]
具体实施时,为使得模型在寻优过程中可以有合适的梯度,本实施例采用多标签二分类交叉熵作为模型的损失函数,该损失函数的计算公式为:
[0089][0090]
i表示当前类别,d表示类别集合,|d|表示类别集合的元素个数,即类别数,yi表示样本实际的标签,表示样本被预测为“1”的置信度。取一个batch的平均loss作为反向传播的loss,其中batch表示训练集中的一批样本,用于对模型权重进行一次反向传播的参数更新。优选地,还可以通过矩阵运算进一步简化损失函数表达式,矩阵可以表示为:
[0091][0092]
其中d表示类别集合,|d|表示类别集合的元素个数,即类别数,y表示真实标签矩阵,表示预测为0的置信度矩阵,表示预测为1的置信度矩阵。
[0093]
进一步地,在进行反向传播来更新模型的参数时,还定义了相应的学习率策略对参数更新进行控制,具体选择adam优化器作为模型参数寻优的优化器,使用合理的学习率对模型的参数进行更新,由于预训练模型是提前训练过的,其参数已经接近最优解,所以需要使用较小的第一学习率来进行参数的更新,防止参数值跳出最优解空间,造成bert模型的过拟合。而下游分类模型未经过训练,所以需要设置较大的第二学习率,来加快模型的收敛。
[0094]
具体地,在分层的学习率策略中,bert参数的第一学习率设置为1e-5,下游分类模型参数的第二学习率设置为1e-4,实现分层学习率时定义两个不同学习率的优化器,根据所需学习率的不同对两组参数使用对应的优化器,其中两个优化器都使用adam。
[0095]
特别地,对于下游分类模型选择的第二学习率为1e-4,当下游分类模型参数接近最优解时,该较大的第二学习率有可能使参数跳过最优解,造成过拟合,甚至难以收敛的后果。为解决这一问题,本实施例中进一步采用学习率下降策略,在模型训练过程中,不断降低下游分类模型的第二学习率,即第二学习率不是固定值,而是随着训练进度逐步减小的,使得参数可以稳定的接近最优值。其中学习下降策略使用的是余弦下降策略,其计算公式如下:
[0096]
[0097]
其中p表示第p次启动,σ
t
表当前的学习率,表示学习率的最大值,表示学习率的最小值,t
cur
表示当前执行了多少个epoch,t
cur
在每个batch运行之后更新,当一个epoch(一代训练,训练集的全部数据对模型进行一次完整)还未执行完时,t
cur
取小数,t
p
表示第p次运行中总的epoch数。在对交通事件进行分类时,重启的意义不大,并且耗时成倍增加,所以不需要进行重启,取p≡1。
[0098]
更进一步地,由于采集到的数据集中很可能存在样本不平衡现象,即正负样本比例相差较大,此时损失函数代表的准确率已经无法对模型的学习效果进行有效的衡量,因此本实施例进一步选择f1-score及其变种作为模型的评价指标,对模型的训练及线下效果进行评价验证。优选地,采用加权f1-score指标作为模型分类结果的评价指标,加权f1-score得分越高表示模型学习的效果越好。其中f1-score的计算公式为:
[0099][0100][0101]
其中p为准确率,即预测为正例的样本中,预测正确的比例;r为召回率,表示所有正例样本中,预测正确的比例;tp表示真实为正例预测也为正例的样本数;fp表示真实为负例预测为正例的样本数;fn表示真实为正例预测为负例的样本数。
[0102]
加权f1-score的计算公式为:
[0103][0104]
mi=|{pattern:pattern>0}|
[0105][0106][0107]
加权f1-score使用每个类别中正样本的个数占全部正样本个数的比例作为权重,对模型预测的所有类别的f1-score加权求和。其中i表示当前类别,wf1i表示模型在第i个类别的加权f1-score,mi表示匹配模式,匹配数据中大于0的数,即统计数据集中第i个类别正样本的数量,f1scorei表示模型在第i个类别的f1-score,m表示所有类别中正样本的数量和,x表示数据集在第i个类别的标签(0或1),|d|表示类别个数,在本案例中|d|=8,wf1表示模型的加权f1-score。使用加权f1-score作为评价指标,对模型学习的效果进行了有效的评价,确保能训练得到交通事件分类效果满足需求的模型,提高模型分类预测的准确率。
[0108]
s500、基于最优超参数对交通事件分类模型进行多组交叉验证后对测试集进行交
score为0.8868,roberta+bilstm的加权f1-score为0.8957,bilstm的加权f1-score为0.8569,gru的加权f1-score为0.8545,lightgbm的加权f1-score为0.7549,使用bert作为编码层的模型(bert+bilstm)先将输入向量化,然后将得到的文本向量送到下游模型进行特征提取与分类,比使用一般的深度学习模型的加权f1-score高出0.0299-0.0323,比机器学习模型lightgbm的f1-score高出0.1319。特别地,采用roberta作为预训练模型(roberta+bilstm)的效果比使用bert作为预训练模型(bert+bilstm)的效果更加稳定,其加权f1-score搞出0.0089,这是由roberta使用了更多的语料、更长的时间进行预训练,但由于使用roberta进行下游任务训练时间比bert更长,而且提高也有限,因此可根据实际需求进行综合选择,根据以上实验结果可知,加入bert或者roberta预训练模型后,模型对交通事件进行预测分类的性能与效果会有较大提升。
[0122]
表1
[0123][0124]
本发明另一实施例提供一种基于社交媒体数据的交通事件分类系统,如图4所示,系统10包括:
[0125]
一个或多个处理器110以及存储器120,图4中以一个处理器110为例进行介绍,处理器110和存储器120可以通过总线或者其他方式连接,图4中以通过总线连接为例。
[0126]
处理器110用于完成系统10的各种控制逻辑,其可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acorn risc machine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp和/或任何其它这种配置。
[0127]
存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的基于社交媒体数据的交通事件分类方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行系统10的各种功能应用以及数据处理,即实现上述方法实施例中的基于社交媒体数据的交通事件分类方法。
[0128]
存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系
统、至少一个功能所需要的应用程序;存储数据区可存储根据系统10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至系统10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0129]
一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,执行上述任意方法实施例中的基于社交媒体数据的交通事件分类方法,例如,执行以上描述的图1中的方法步骤s100至步骤s500。
[0130]
本发明实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图1中的方法步骤s100至步骤s500。
[0131]
作为示例,非易失性存储介质能够包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦rom(eeprom)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(ram)。通过说明而非限制,ram可以以诸如同步ram(sram)、动态ram、(dram)、同步dram(sdram)、双数据速率sdram(ddrsdram)、增强型sdram(esdram)、synchlink dram(sldram)以及直接rambus(兰巴斯)ram(drram)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。
[0132]
综上,本发明公开的基于社交媒体数据的交通事件分类方法、系统及介质中,方法通过从预设社交媒体平台上爬取交通事件数据并构建数据集;将预处理后的数据集进行文本编码并划分为训练集、验证集和测试集;将训练集和验证集输入至交通事件分类模型进行模型训练与效果评价得到最优超参数,其中交通事件分类模型中包括预训练模型;基于最优超参数对交通事件分类模型进行多组交叉验证后对测试集进行交通分类预测,通过投票算法在多组预测结果中确认最佳交通事件分类结果。本发明通过在社交媒体平台上自动采集海量的交通事件信息作为数据源,并对以预训练模型为基础建立的交通事件分类模型进行训练与效果验证,使得模型能实现高效且准确的交通事件智能分类。
[0133]
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,的计算机程序可存储于一非易失性计算机可读取的存储介质中,该计算机程序在执行时可包括如上述各方法实施例的流程。其中的存储介质可为存储器、磁碟、软盘、闪存、光存储器等。
[0134]
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
技术特征:
1.一种基于社交媒体数据的交通事件分类方法,其特征在于,包括:从预设社交媒体平台上爬取交通事件数据并构建数据集;对所述数据集进行预处理;将预处理后的数据集进行文本编码,并将文本编码后的数据集划分为训练集、验证集和测试集;将所述训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到所述交通事件分类模型的最优超参数,其中所述交通事件分类模型中包括预训练模型;基于所述最优超参数对所述交通事件分类模型进行多组交叉验证后对所述测试集进行交通分类预测,并通过投票算法在多组预测结果中确认最佳交通事件分类结果。2.根据权利要求1所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述从预设社交媒体平台上爬取交通事件数据并构建数据集,包括:获取所述交通事件数据的预设搜索条件;根据所述预设搜索条件从所述预设社交媒体平台中爬取相应的交通事件数据;在所述交通事件数据中筛选得到满足预设价值条件的有效数据,根据所述有效数据构建所述数据集。3.根据权利要求1所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述对所述数据集进行预处理,包括:使用正则表达式去除所述数据集中的网页代码,提取得到文本数据;使用正则表达式去除所述文本数据的后缀;统计所述数据集中每条文本数据的长度,对长度小于预设下限值的文本数据进行文本增强;根据预设的交通事件类别对每条文本数据进行标注,得到预处理后的数据集。4.根据权利要求1所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述将预处理后的数据集进行文本编码,并将文本编码后的数据集划分为训练集、验证集和测试集,包括:通过分词器对预处理后的数据集中的每条文本数据进行编码;根据预设调整规则将编码后的每条文本数据的长度均调整至预设长度,得到文本编码后的数据集;将文本编码后的数据集随机打乱,并调用预设分割函数将文本编码后的数据集按预设比例划分为训练集、验证集和测试集。5.根据权利要求1所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述将所述训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到所述交通事件分类模型的最优超参数,其中所述交通事件分类模型中包括预训练模型之前,所述方法还包括:构建所述交通事件分类模型、用于训练所述交通事件分类模型的损失函数、用于控制参数更新的学习率策略以及用于评价模型效果的评价指标,其中,所述交通事件分类模型包括预训练模型和下游分类模型。6.根据权利要求5所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述将
所述训练集和验证集输入至预先构建的交通事件分类模型进行模型训练与效果评价,得到所述交通事件分类模型的最优超参数,包括:将所述训练集和验证集输入至所述交通事件分类模型中进行周期性的训练与效果验证,得到相应的损失函数值与评价指标值;根据每个周期的所述损失函数值与评价指标值控制所述预训练模型以第一学习率进行参数更新,并控制所述下游分类模以第二学习率进行参数更新,所述第一学习率小于所述第二学习率;当验证所述交通事件分类模型的效果达到最优时得到对应的最优超参数。7.根据权利要求1所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述基于所述最优超参数对所述交通事件分类模型进行多组交叉验证后对所述测试集进行交通分类预测,并通过投票算法在多组预测结果中确认最佳交通事件分类结果,包括:获取交叉验证的折数,并根据所述折数将所述数据集随机划分n次,得到n组训练子集、n组验证子集和n组测试子集;保持所述最优超参数不变,通过所述n组训练子集和n组验证子集对所述交通事件分类模型进行交叉验证训练后得到n个分类子模型;通过n个分类子模型分别对所述测试集进行交通事件分类预测,得到n组预测结果;根据投票算法在所述n组预测结果中确认最佳交通事件分类结果。8.根据权利要求1-7任意一项所述的基于社交媒体数据的交通事件分类方法,其特征在于,所述预训练模型为bert模型或roberta模型。9.一种基于社交媒体数据的交通事件分类系统,其特征在于,所述系统包括至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8任一项所述的基于社交媒体数据的交通事件分类方法。10.一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行权利要求1-8任一项所述的基于社交媒体数据的交通事件分类方法。
技术总结
本发明公开了基于社交媒体数据的交通事件分类方法、系统及介质,通过从预设社交媒体平台上爬取交通事件数据并构建数据集;将预处理后的数据集进行文本编码并划分为训练集、验证集和测试集;将训练集和验证集输入至交通事件分类模型进行模型训练与效果评价得到最优超参数,其中交通事件分类模型中包括预训练模型;基于最优超参数对交通事件分类模型进行多组交叉验证后对测试集进行交通分类预测,通过投票算法在多组预测结果中确认最佳交通事件分类结果。本发明通过在社交媒体平台上自动采集海量的交通事件信息作为数据源,并对以预训练模型为基础建立的交通事件分类模型进行训练与效果验证,使得模型能实现高效且准确的交通事件智能分类。通事件智能分类。通事件智能分类。
技术研发人员:管中港 林宏涛 吕毅彬 夏雨 徐建闽
受保护的技术使用者:广州运星科技有限公司
技术研发日:2021.12.10
技术公布日:2022/3/8