基于spark_streaming的logistic流式机器学习

本文介绍了如何基于Spark Streaming实现Logistic流式机器学习。首先,通过示例展示了Spark Streaming的基本操作,然后利用C语言编写程序发送数据到Spark Streaming。接着,使用UCI的乳腺癌数据集进行实验,去除无关列和缺失值。最后,设计了一个非纯粹随机梯度下降的批量梯度下降算法,以提高模型稳定性,并展示了随着训练数据增加,模型错误率趋于稳定的结果。
摘要由CSDN通过智能技术生成

在前期搭建好spark、scala平台和学习基于python的logistic流式机器学习例程后,这一周正式基于spark做一个基于logistic的流式机器学习的实现。

一、spark streaming例程

首先尝试spark streaming指导手册中自带的例程(链接http://spark.apache.org/docs/latest/streaming-programming-guide.html),由于网上的例子比较详细,在此不过多阐述,例程主要实现的是基于流数据的单词统计功能的实现,通过不断向本机的9999端口发送英文单词,spark streaming的NetworkWordCount例程则按照一定的频率对接收到的数据按照单词出现的次数进行统计,并打印出来。如下图所示。

二、给spark streaming发送数据

由于我们要实现基于logistic模型的流式学习得将学习的数据库通过TCP网络发往spark streaming端,因此我们通过C语言编写一个读取数据文件并开启TCP端口侦听spark streaming的连接,连接成功后再不断地向spark streaming端发送数据。

数据发送端的程序流程图如下图所示。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值