第八课_Spark MLlib及企业级案例

第八课_Spark MLlib及企业级案例的相关问题都在下面进行提问回帖
1、大家在这个帖子上回复自己想要提的问题。(相同的问题,请点赞表示自己关注这个问题,不用重复提问)
2、提出的问题,老师在直播课的最后30分钟统一回答。
3、课后会整理出参考答案,给每个问题回帖。

水晶紫爱睡觉

赞同来自:

请问如何在Scala写的spark程序中调用使用r语言构建的分析模型?

水晶紫爱睡觉

赞同来自:

请问如何在spark streaming中实现als的递增建模,每次都是用最新的全部数据建模。

tl_oni

赞同来自:

1、dstream处理结果保存到hbase\mysql等库中,联接驱动写在哪里可以共用?保证不会每次都创建? 2、dstream处理过程能用sparkSQL处理?如果能,如何创建sparkSession? 3、java与scala 混合编程,需要 注意什么?比如:java类中写了一个mysql写库操作方法,在dstream处理结果保存时调用这个写库方法,是否可行?

贰怪兽lyn

赞同来自:

请问sparkSQL中的hive-thriftserver是什么?其功能是什么?

jhg22

赞同来自:

视频网站初期,只有内容(movid,director),没有用户信息,怎么做推荐? 基于内容作推荐 视频网站中、后期用了用户信息,没有打分机制,又怎么做推荐?​老师能给点思路吗或者好点的博文?

jhg22

赞同来自:

spark mllib中协同过滤算法ALS做推荐:
 
1.//隐性反馈 val model = ALS.trainImplicit(ratings, 10, 10, 0.01, 1.0) 2.//显性反馈 val model = ALS.train(ratings, 50, 10, 0.0001) 老师能说 一下这俩种的区别吗?各自用在什么场景?  

贰怪兽lyn

赞同来自:

请问mllib中LabelPoint支持一组feature对应多个label吗? 现在有个需求是一组feature会对应多个label,如果一组feature只对应一个label,就需要针对每一个label训练一次模型了。

jhg22

赞同来自:

只有用户信息和物品信息,怎么做基于用户和物品信息的推荐?

xmlnet

赞同来自:

老师您好,我运行您github上MovieLenseALS代码,第一次运行可以行到推荐结果,第二次运行就报错了,每次只能重新获取代码来运行,麻烦老师帮看下 (本地mac intellij Idea中debug运行) 错误是从这段循环中出来的
for (rank <- ranks; lambda <- lambdas; numIter <- numIters) {
      val model = ALS.train(training, rank, numIter, lambda)
      val validationRmse = computeRmse(model, validation, numValidation)
      println("RMSE (validation) = "   validationRmse   " for the model trained with rank = "
            rank   ", lambda = "   lambda   ", and numIter = "   numIter   ".")
      if (validationRmse < bestValidationRmse) {
        bestModel = Some(model)
        bestValidationRmse = validationRmse
        bestRank = rank
        bestLambda = lambda
        bestNumIter = numIter
      }
    }
 17/05/02 20:51:05 ERROR Executor: Exception in task 0.0 in stage 396.0 (TID 1036) java.lang.StackOverflowError     at java.lang.reflect.InvocationTargetException.<init>(InvocationTargetException.java:72)     at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     at java.lang.reflect.Method.invoke(Method.java:498)     at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1909)     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)     at scala.collection.immutable.List$SerializationProxy.readObject(List.scala:479)     at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     at java.lang.reflect.Method.invoke(Method.java:498)     at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1909)     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)     at scala.collection.immutable.List$SerializationProxy.readObject(List.scala:479)     at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     at java.lang.reflect.Method.invoke(Method.java:498)      

frmark

赞同来自:

问一下老师,spark1.6的时候sparksql创建临时表是用registerTempTable和2.1的registerOrCreateTempView本质一样吗,都是sparkContext关闭的时候被drop掉吗?这个注册临时表是将元数据信息放到内存中吗,数据是不是还在hdfs上?

allen_cdh

赞同来自:

董老师 您讲的召回率是什么意思?

xmlnet

赞同来自:

ML学习得到的模型可以保存下来重用么?怎么保存?

allen_cdh

赞同来自:

sparkstreaming 中的 checkpoint的作用是什么?

要回复问题请先登录注册