全部产品
云市场

实时热点新闻挖掘案例

更新时间:2019-01-11 15:16:09

PAI OnlineLearning挖掘实时热点新闻

打开新闻客户端,往往会收到热点新闻推送相关的内容。新闻客户端作为一个承载新闻的平台,实时会产生大量的

新闻,如何快速挖掘出哪些新产生的新闻会成为成为热点新闻,决定着整个平台的新闻推荐质量。

如何从平台中海量的新闻素材中找到最有潜力成为热点的新闻需要使用机器学习相关的算法,传统做法是将每天获取的历史咨询下载并且离线训练模型,再将生成的热点发现模型推上线供第二日使用。但是这种离线训练所生成的模型往往缺乏时效性的属性,因为每天热点新闻都是实时产生的,用过去的模型预测实时产生的数据显然是缺乏对数据时效性的理解。

针对这种场景,PAI平台开创性的提出来Online-Learning的解决方案,通过流式算法和离线算法的结合,既能够发挥离线训练对大规模数据的强大处理能力,又能够发挥流式机器学习算法对实时模型的更新能力,做到流批同跑,完美解决模型时效性的问题。今天就以实时热点新闻挖掘案例为例,为大家介绍PAI OnlineLearning的解决方案。

实验流程

1.开通并使用

目前PAI-OnlineLearning解决方案仍处于邀请公测阶段,有需求的客户请填写问卷:

开通服务后,点击“体验新版”按钮即可开启试用

2.实验流程介绍

(注:PAI中离线计算组件用蓝色标识,流式计算组件由绿色标识,流式组件相连将形成计算组,因为流式组件需要多个组件的运行停止状态一致)

步骤1:离线模型训练

本文使用的数据是3万条来自UCI开放数据集提供的新闻文本数据。

地址:https://archive.ics.uci.edu/ml/datasets/Online+News+Popularity

数据组成:包含新闻的URL以及产生时间,另外还包含了58个特征以及1个目标值,目标值“share”是新闻的分享次数,建模过程中将share字段利用sql组件处理成一个二分类问题,新闻share次数超过10000次为热点新闻,小于10000次为非热门新闻

特征的组成如下图所示:

利用逻辑回归模型训练生成一个二分类模型,这个模型用来评估新闻是否会成为热点新闻。

(注:目前PAI OnlineLearning只支持逻辑回归算法)

步骤2:离线模型转换成流式模型

通过“模型转换”组件,可以将离线生成的逻辑回归模型转换成流式算法可读取了流式模型。

步骤3:生成流式数据

从步骤3开始就进入了流式算法组件的步骤,PAI平台提供多种流式数据源,本案例以Datahub为例。

Datahub地址:https://datahub.console.aliyun.com/datahub

Datahub是一种流式数据对列,支持JAVA、PYTHON等多种语言采集方式,在具体使用过程中可以通过Datahub链接用户实时产生的数据以及PAI的训练服务。注意:Datahub输入的数据流格式需要与离线训练的数据流的字段完全一致,这样才可以对离线的模型进行实时更新。

步骤4:流式模型训练

FTRL算法基本等同于流式的逻辑回归算法,在使用过程中需要按照LR算法配置参数,需要注意”模型保存时间间隔参数“的配置,这个参数决定了实时计算产生模型的时间周期。

步骤5:流式模型导出

先将分类模型导出为PMML格式,然后可以支持将模型写入OSS,写入周期同模型生成的周期。写入模型示例:

如果有流式评估数据,系统也可以将实时的模型评估指标与模型一同存入OSS。

3.模型使用介绍

通过以上步骤已经产生了新闻热点预测模型,生成的模型已经存入OSS,可以直接在PAI-EAS在线预测服务引擎进行部署也可以下载下来在本地预测引擎使用。新闻数据进来后先要做特征工程(同”步骤1:离线模型训练“中的特征处理方式),然后将特征工程处理结果输入”热点新闻挖掘服务“,将会返回新闻是否是热点新闻。