[ 
https://issues.apache.org/jira/browse/SPARK-10078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15809876#comment-15809876
 ] 

Debasish Das commented on SPARK-10078:
--------------------------------------

I looked into the code and I see we are replicating Breeze BFGS and OWLQN core 
logic in this PR:
https://github.com/yanboliang/spark-vlbfgs/tree/master/src/main/scala/org/apache/spark/ml/optim.

We can provide a DiffFunction interface that works on feature partition and add 
the VL-BFGS paper logic as a refactoring to current Breeze BFGS code...

Now DiffFunction can run with a DistributedVector or a Vector. What that helps 
with is that even with features < 100M, we can run multi-core VLBFGS with 
putting multiple partitions and a if-else switch is not necessary.

I can provide breeze interfaces based on your PR if you agree with the idea. 
BFGS and OWLQN are few variants but Breeze has several constraint solvers that 
use BFGS code...  

> Vector-free L-BFGS
> ------------------
>
>                 Key: SPARK-10078
>                 URL: https://issues.apache.org/jira/browse/SPARK-10078
>             Project: Spark
>          Issue Type: New Feature
>          Components: ML
>            Reporter: Xiangrui Meng
>            Assignee: Yanbo Liang
>
> This is to implement a scalable version of vector-free L-BFGS 
> (http://papers.nips.cc/paper/5333-large-scale-l-bfgs-using-mapreduce.pdf).
> Design document:
> https://docs.google.com/document/d/1VGKxhg-D-6-vZGUAZ93l3ze2f3LBvTjfHRFVpX68kaw/edit?usp=sharing



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to