徐建鹏,张 辉,伍 琼,王 晖,汪 兵
(1.安徽省农村综合经济信息中心,安徽 合肥 230001; 2.天长市气象局,安徽 滁州 239064)
气象为农服务工作一直是气象部门业务工作的重中之重,是气象部门服务“乡村振兴战略”的重要抓手。随着传统农业向现代化农业转型发展,农业生产经营模式发生了变革,农业产业结构日趋多元,同时乡村信息产业日趋完善,农业农村对气象为农服务的需求发生了巨大的变化[1]。同时,气象为农服务手段也由传统的电视、报纸、手机短信息变为了以网络为主,网站、手机App、微信、微博已经成为气象为农服务的主要媒介,安徽省建立了“惠农气象”“聚农e购”“爱上农家乐”3个服务平台[2]。本文基于Hadoop架构、自然语言处理、相关度分析等大数据和人工智能相关技术,开发一种气象为农服务大数据平台,实现气象、农业、工商等多源涉农数据的集成、气象为农服务信息的精准化推荐以及服务效果评估,为安徽省气象部门对新型农业经营主体开展精准性、针对性的信息服务提供重要技术支持。
平台基于大数据的架构,按照统一资源汇集、统一数据治理、统一数据资源管控、统一数据共享服务以及统一的大数据开发应用支撑服务的一体化设计理念,全面接入气象、农业、农机、组织、文化、林业、工商等部门的网站、手机APP、微信等服务媒介的多源异构涉农大数据资源,实现了涉农数据资源从采集、存储交换、清洗融合、智慧分析、数据共享到可视化展示的全流程贯通[3]。本文平台的系统逻辑架构如图1所示。
图1 系统逻辑架构
数据源层:对接安徽省气象局气象为农服务各大应用系统及设备,包括信息系统、网络设备、传感器、互联网、手机APP等,接入安徽各涉农部门的数据资源,数据类型支持结构化、半结构化、非结构化数据。
数据采集层:建立强大的数据感知与获取能力,通过JDBC/OGG、消息队列、爬虫、网络接口、FTP、物联网等各种数据采集技术,汇聚安徽省各类涉农数据资源。
数据存储层:对原始数据进行数据清理、数据集成融合、数据规约与数据“转换”等预处理,基于HDFS、DBMS、分布式消息队列、内存数据库等各种存储技术,实现海量异种数据(结构化数据、半结构化数据、非结构化数据)的存储。
分析挖掘层:提供完善的大数据分析挖掘功能,包括模型管理、统计分析工具、数据挖掘工具、预测分析工具、深度学习工具、语义引擎等。并且具备完善的数据分析与数据挖掘接口,能对接业界主流的数据分析与数据挖掘工具。
应用服务层:提供用户画像、服务预测、数据监控等精细化服务,开展信息服务、农气产品、趋利避害、应用案例等的大数据可视化服务。
根据本文平台能力定位和业务需求,充分考虑不同业务场景对数据服务支撑的诉求,经过严格的测试与丰富的架构经验,本文平台采用Hadoop分布式文件存储/处理系统结合内存数据库和MPP数据形成混合式存储架构[4],采用Flume NG对各类应用系统产生的用户日志数据进行收集,采用Kafka分布式消息队列中间件来解决数据收集的速度和数据处理速度不一致问题,并采用Storm对数据做实时处理,处理完成后用Redis+MySQL做数据的持久化,应用服务程序以Java语言编写,主要开发工具为Android Studio。
1.3.1 多元异构数据资源集成
利用自动感知、网络爬虫、系统填报、数据交换、数据调度等多种采集技术,将农村相关数据资源按照数据格式、数据体量、数据种类、数据维度进行聚类、采集,根据不同的数据类型建立存储模型:结构化数据主要存放于MPP数据库中;原始非结构化数据存放于HDFS中,部分经过预处理解析所得的标签数据存放在MPP数据库中,并建立联合索引,实现高速的查询关联[4]。
1.3.2 自然语言处理技术
将服务产品通过结巴分词工具进行分词,通过增补关联变量、剔除噪声数据、无关变量、无效样本等方法对分词结果进行清洗,使用TF-IDF模型公式(1)生成服务产品的关键词指标[5]。
TFIDF=TF×IDF
(1)
其中,TF为服务内容内频率,IDF为关键词在所有文档中出现的频率的相反值。关键词在某个服务中出现的频率最大、在所有服务中出现的频率越小,表明该关键词对这个服务内容的特征标识作用越大。
通过整理和规范化数据等方法对分词结果进行清洗处理,将区分正常词库和停用词库,形成服务内容的关键词集合标识[6]。表1和表2分别为2条服务产品的关键词指标TFIDF聚合。
表1 服务内容1关键词指标集合表
表2 服务内容2关键词指标集合表
1.3.3 用户偏好服务产品推荐
2个服务内容的相似度通过重合的关键词的TFIDF值来衡量,本文使用夹角余弦算法来计算服务内容关键词的相似度,夹角越小,相似度越高,计算方式如公式(2)所示:
(2)
其中,A、B分别代表2个不同的服务产品,Ai和Bi分别代表向量A和向量B对于这个集合中各个关键词的词频。
表1和表2的2个服务内容中有2个重合的关键词:安徽、小麦,因此2条新闻的相关性由这2个关键词决定,得到服务内容特征以后,还需要得到用户特征才能对两者进行匹配和推荐。用户通过阅读、点赞、评论、分享来表达自己对服务内容的喜爱,这样的网络行为数据[7]与用户行为结合后,就能得到用户的特征分。随着用户阅读的服务数越来越多,该用户的标签也越来越多,并且越发精准。当得到服务内容的特征后,就能与用户的关键词列表作匹配[8],得出服务产品与用户阅读特征的匹配度,做出个性化服务产品推荐。
1.3.4 服务产品热度值计算
利用百度热点、今日头条等建立互联网热词库,确认服务产品初始热度,由于皖南、皖北的种植作物种类和气候差异较大,因此对服务产品的关键词库的初始热度做了关注度统计,计算方式如公式(3)所示,即栏目的关注度系数等于该栏目的阅读用户数除以各栏目的平均阅读用户数,根据实际情况,作一定的人工调整。
(3)
其中,m是农业信息栏目分类数,N(i)为服务产品i的阅读用户数。
随着时间流逝,用户对信息服务的热度值会衰减,并且衰减趋势越来越快,直至趋近于0。新闻i的热度系数公式如下:
(4)
根据农业服务产品的特点,设定1个月的热度衰减周期,用户点击、收藏、分享、评论等行为会提高热度值,建立用户行为提升热度规则,最终计算服务产品热度指数[9]。
1.3.5 涉农大数据可视化
集成Tableau和Pentaho作为数据展示与可视化工具,实现了饼状图、柱状图、折线图、雷达图、散点图、树图等方式展示各类数据,集成GIS、三维场景的直观表达,满足不同用户的应用展示需求[10]。提供系统SDK包及标准接口供第三方应用系统进行调用,实现了电脑、LED显示屏等多终端的内容和规格自适应、样式和风格预定义。
气象为农服务大数据服务平台实现了安徽涉农数据资源的多源接入、统一汇聚、集中存储、深度利用,对用户需求及互联网传播进行分析,跟踪评估服务产品网络传播效果,为网络用户提供精准化的信息推荐服务[11]。
1)建立涉农大数据资源池。
①通过部门联动、数据共享等途径,实现对全省22个农业气象观测站、85个土壤水分观测站、64个农业物联网监测信息,全省农业生产经营主体、农产品电商、病虫害知识库等101 TB的数据集中调度与管理,为气象为农服务提供数据支撑。②汇集了冬小麦、玉米、大豆、一季稻等主粮作物,油菜、茶叶、酥梨等经济作物,大棚蔬菜、设施草莓、河塘水产养殖等特色农业的“种(养)、管、收”3大关键农事活动,农用天气预报、灾害评估、产量预测、天气指数保险4大类、10余种、20多个指标、指数和模型,为农业气象服务产品制作提供技术支持[12]。
2)进行网络用户需求分析预测。
①对用户网络行为进行画像[13],建立了农业行业、地理位置等4类用户标签24项指标,发现网络用户的聚类特征[14],刻画出网络用户作物种类、种植区域、经济产业等精准画像[15]。②对服务产品进行自然语言解析[16],按照区域、作物、时效、类别4个维度20个分类标签,对服务产品进行了分类。③建立网络用户需求模型,将用户特征与各服务产品语义、信息获取渠道关联[17],根据用户访问平台习惯,结合近期网络关注热点和天气预测信息,智能生成符合用户需求的服务内容[6]。
3)开展精准化的信息推荐服务。
开发网络数据收集和服务产品推荐WebAPI/WebService数据接口,嵌入“惠农气象”“聚农e购”“爱上农家乐”3个服务平台,实时获取用户信息,并为用户提供气象服务、农业生产、市场行情、农业科技、涉农政策等综合服务信息的精准化智能推荐服务。
4)进行网络传播效果分析评估。
①对通过服务产品的网络用户访问情况按区域、行业进行统计分析,生成分类产品传播热度指数,直观反映服务产品在互联网受欢迎的程度和传播范围。②根据服务产品的语义生成近期关注热度标签,集合农业高影响天气预报和病虫害发生发展情况,开展服务重点预测,指导后续关键农时农事建议和决策服务产品制作[18]。
5)搭建气象为农大数据展示系统。
气象为农服务大数据展示系统主要模块由用户画像、服务评估、数据监控、农气产品、信息服务、趋利避害、应用案例7个功能模块组成,如图2所示。
图2 平台功能结构
气象为农服务大数据服务平台汇集安徽省各涉农部门、农业生产经营主体、农业生产环境以及管理的各类涉农数据资源,通过用户行为分析建立用户画像[19],为安徽省农业企业、农民专业合作社、种养大户等提供精细化、针对性的技术支撑、信息产品和信息服务[20]。图3集中展示了平台用户画像及其关联的平台信息服务产品。
图3 平台用户精准画像
平台通过对服务产品的热词进行分析,生成了服务产品的热度指数,开展各类气象为农服务产品的服务效果评估,有效提高了服务产品的实用性。图4集中展示了不同时间段和不同市县的关注重点和服务热点。
图4 服务效果分析
图5所示页面实时监控展示各类农业气象观测数据,并对各类观测数据进行分析统计,为农业业务人员开展科研和管理提供了便捷服务。
图5 数据采集监控
通过搭建气象为农服务大数据展示系统,在实现数据、服务的实时监控的基础上,直观全面地展示了安徽气象为农服务效果和效益。
安徽气象为农服务大数据服务平台通过云计算、大数据、人工智能等新技术的深入应用[21],为安徽省气象局为农服务3大平台(惠农气象、聚农e购与爱上农家乐)提供了数据支撑和技术支持[22],实现了对不同网络群体个性化、智能化的信息推荐服务和网络传播效果评估,探索实现从“人找信息”到“信息找人”的转变。本文平台已在安徽气象为农业务服务中应用,使得气象为农服务、业务和管理全过程都充满智慧,提升了安徽气象为农服务能力,具有较好的行业知名度和社会影响力,受到各级领导、中央和地方媒体的广泛关注。但本文平台未深入使用大数据和人工智能相关技术,后续将进一步加深相关技术的研究与应用。