Github user coderxiang commented on the pull request:

    https://github.com/apache/spark/pull/458#issuecomment-40997301
  
    @mengxr  @yinxusen  Here are some comparison results between ADMM and SGD. 
These results are just for these particular parameter settings and data sets 
and no over-generalization should be drawn.
    
    The experiments are carried out on a small data set (200 by 200 design 
matrix) and a large one (10k by 10k design matrix), both randomly generated.  
Only L1-regularization is employed and the parameter is 5 and 20 respectively. 
At most 500 iterations are run.
    
    | Method                                 | loss-small / loss-large          
 |  AUC-small / AUC-large :|
    | 
------------------------------------|:------------------------------------:|:------------------------------:|
    | SGD                                     | 96.42 /NaN  |    0.8838 / NaN   
    |
    | ADMM                                  | 93.54 / 4008.55  |  0.8771/ 
0.9464       |
    | FISTA (local lasso solver)    | 93.52 / 4009.88  | 0.8767/0.9481|    
    
    On average, each aggregate step in SGD takes 11s on average, while each 
reduce step in ADMM requires 8s, as shown on the web UI. The ROC is available 
from [here](https://www.dropbox.com/s/4qhdz3nugzr5kcu/spark_admm_pr.jpg)
    
    I tried two parameter settings (stepsize=0.05/0.01, iter=500/100) for SGD , 
both seem to encounter some convergence problem. The results are shown as NaN. 
Maybe we can discuss this separately.
    



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to