Spark 的 StreamingLinearRegressionWithSGD 是如何工作的?

2024-03-03

我正在研究StreamingLinearRegressionWithSGD https://spark.apache.org/docs/1.6.3/api/java/org/apache/spark/mllib/regression/StreamingLinearRegressionWithSGD.html它有两个方法trainOn https://spark.apache.org/docs/1.6.3/api/java/org/apache/spark/mllib/regression/StreamingLinearAlgorithm.html#trainOn(org.apache.spark.streaming.dstream.DStream) and predictOn https://spark.apache.org/docs/1.6.3/api/java/org/apache/spark/mllib/regression/StreamingLinearAlgorithm.html#predictOn(org.apache.spark.streaming.dstream.DStream)。这个类有一个model https://spark.apache.org/docs/1.6.3/api/java/org/apache/spark/mllib/regression/StreamingLinearAlgorithm.html#latestModel()当训练数据到达指定的流中时更新的对象trainOn争论。

同时它使用相同的模型给出预测。

我想知道模型权重如何在工作人员/执行人员之间更新和同步。

任何链接或参考都会有帮助。谢谢。


这里没有魔法。StreamingLinearAlgorithm 保留可变引用 https://github.com/apache/spark/blob/a1e40b1f5d651305bbd0ba05779263a44f607498/mllib/src/main/scala/org/apache/spark/mllib/regression/StreamingLinearAlgorithm.scala#L65到目前的GeneralizedLinearModel.

trainOn uses DStream.foreachRDD在每个批次上训练一个新模型,然后更新model https://github.com/apache/spark/blob/a1e40b1f5d651305bbd0ba05779263a44f607498/mllib/src/main/scala/org/apache/spark/mllib/regression/StreamingLinearAlgorithm.scala#L92-L94。相似地predictOn uses DStream.map预测 https://github.com/apache/spark/blob/a1e40b1f5d651305bbd0ba05779263a44f607498/mllib/src/main/scala/org/apache/spark/mllib/regression/StreamingLinearAlgorithm.scala#L123与当前版本的model.

由于 Spark 将为每个阶段序列化闭包,因此不需要任何额外的同步。 Spark 将使用当前值model每次计算闭包时。

实际上,它相当于在具有交错的驱动程序上运行循环run and predict.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spark 的 StreamingLinearRegressionWithSGD 是如何工作的? 的相关文章

随机推荐

  • Excel:使用外部链接可以提高性能吗?

    我想知道使用外部链接与打开电子表格和复制单元格 使用 VBA 相比是否有性能提升 我想 Excel 必须以同样的方式打开文件 但是当我使用以下代码进行测试时 外部链接速度更快 Dim t As Double Dim rng As Range
  • 使用 Xcode 6 从命令行进行 UIAutomation 测试调用

    在新的 Xcode 版本中 从命令行运行 UIAutomation 测试似乎经常会中断 根据过去的帖子判断 由于从未使用过命令行脚本 我发现了 2012 年的这篇文章 来自命令行的自动化仪器 https stackoverflow com
  • setup.py:如何查找用户指定的括号内的附加内容

    我有一个通过 PyPI 分发的包 其中包含大量数据 PyPI 有 100MB 的限制 我想分发比这更多的数据 数据相当不变 因此在每次代码发布时不断将大量数据推送到 PyPI 似乎也很浪费 相反 我更愿意分发最少的数据 并将大数据选项作为可
  • d3:不规则/分散数据的等高线或曲面图

    我可以采用一组三元组 X Y Z 并立即使用 Python 和 matplotlib 生成一个 平滑 等高线图单次通话 to 三角轮廓 https matplotlib org examples pylab examples tricont
  • 实时调试堆栈溢出

    我有一个托管代码 Windows 服务应用程序 由于托管 StackOverFlowException 该应用程序在生产中偶尔会崩溃 我知道这一点是因为我在崩溃模式下运行了 adplus 并使用 SoS 事后分析了崩溃转储 我什至附加了 W
  • Firebase:从 UID 获取 DisplayName [重复]

    这个问题在这里已经有答案了 我将用户的显示名称存储在 Firebase Auth 中 当同一用户登录时 从 Firebase Auth 获取很简单 但是 当另一个用户登录时 当我拥有帐户的唯一 UID 用户 ID 时 如何获取帐户的显示名称
  • 在 WebApplicationFactory 的配置源中关闭“ReloadOnChange”

    这既是一个问题 也是一个答案 我已经解决了我的问题 但似乎有点不对劲 我最初的问题是在 bitbucket 管道中运行我的 ASP NET Core 集成测试 原因是System IO IOException The configured
  • 不允许 HTTPS 页面运行来自 safari-extension:// URI 的不安全内容

    我在 Safari 9 1 11601 5 17 1 的 Safari 扩展中遇到了奇怪的行为 我尝试使用 safari extension 插入一个新的 Iframe 其 src 指向扩展包中的 html 文件 如果我单击控制台中显示的错
  • 无法在 Google 操作中使用隐式/授权流程来授权用户

    我正在尝试链接到该帐户 这是我的谷歌云功能 var AuthHandler function this googleSignIn googleSignIn this googleSignInCallback googleSignInCall
  • C# - 如何使两个表单相互引用

    我正在用 MS Visual C 编写一个 WindowsForms 应用程序 我需要两个表单才能相互引用 在测试时 我在 Form1 上创建了两个按钮 一个按钮显示 Form2 另一个按钮隐藏它 代码如下 我想对 Form2 做同样的事情
  • 动态变量如何影响性能?

    我对性能有疑问dynamic在 C 中 我读了dynamic让编译器再次运行 但它有什么作用呢 是否必须使用以下命令重新编译整个方法dynamic变量用作参数还是仅那些具有动态行为 上下文的行 我注意到使用dynamic变量可以使简单的 f
  • Git:从一个分支的给定文件中删除所有更改的最佳方法

    我有一个有点混乱的分支 有 20 个左右的提交 我正在准备合并回 master 我已经将其重新设置为脱离 master 仔细观察 我意识到有些文件正在以与该分支完全无关的方式进行修改 并且尚未准备好提交 对这些文件的更改并不局限于特定的提交
  • 使用curl和php自动填写表单

    我正在尝试编写一个自动填写表单然后自动按下提交按钮的脚本 我读过您可以使用curl来发布HTTP请求 但是当表单使用JavaScript处理post请求时 您会做什么 就像下面的代码一样
  • 使 DIV 覆盖 100% 的视口而不是 100% 的主体

    我的帖子是关于http www thepostboard net http www thepostboard net 我需要让当前覆盖 100 视口的黑框覆盖整个页面 只有当您的屏幕需要滚动条才能查看网站时 您才会注意到这一点 否则它看起来
  • 您能否将具有更严格内存排序的原子加载存储拆分为单独的宽松加载存储以及内存屏障指令?

    下面是用于跨线程数据同步的获取 释放语义的简单示例 thread 1 thread 2 data 100 flag store true std memory order release while flag load std memory
  • 查找调用可执行文件时命令行使用的路径

    我遇到以下问题 我想跑步ecd exe从命令行 我已将其完整路径添加到 路径 环境变量中 打电话时ecd exe从命令行 我得到以下输出 Error ecd exe should be located under the Eclipse h
  • 在Python中模拟“局部静态”变量

    考虑以下代码 def CalcSomething a if CalcSomething cache has key a return CalcSomething cache a CalcSomething cache a ReallyCal
  • 来自实体框架的 WCF 合同?

    我在这个问题上遇到了很多死胡同 据称 NET 3 5 SP1 支持 WCF 合约中的 ADO NET 实体框架实体 但当我寻找有关它的可靠信息时 我没有得到很多答案 我在 MSDN 线程上找到了这个片段 有人对这个有经验么 DataCont
  • MVC 中的 IoC Castle Windsor 路由问题

    我已经在我的 mvc 应用程序中设置了温莎城堡 一切都很好 除了它还捕获链接或图像类型的路由 问题是 在退出控制器并生成视图之前 GetControllerInstance 是以 null 类型执行的 只要页面上有如下链接 就会发生这种情况
  • Spark 的 StreamingLinearRegressionWithSGD 是如何工作的?

    我正在研究StreamingLinearRegressionWithSGD https spark apache org docs 1 6 3 api java org apache spark mllib regression Strea