LeastSquareSLIM error

23 views
Skip to first unread message

Djoels

unread,
Mar 14, 2017, 9:07:09 AM3/14/17
to MyMediaLite
Command:
"
module load MyMediaLite

item_recommendation --recommender=LeastSquareSLIM  --recommender-options="reg_l1=0.01 reg_l2=0.001 num_iter=5 K=50" \
    --num-test-users=20000 --test-ratio=0.2 --random-seed=123 \
    --find-iter=1 --num-iter=1 --max-iter=5  \
    --measures="AUC,prec@10,MAP,recall@10,NDCG,MRR" \
    --training-file=data/MyMediaLite_ItemRecommender.tsv > MML_06_LeastSquareSLIM.log 2>&1  
"

produces the following error:

Set random seed to 123.
loading_time 31.53
memory 203
training data: 254083 users, 233917 items, 9346546 events, sparsity 99.98427
test data:     217574 users, 184827 items, 2335071 events, sparsity 99.99419
LeastSquareSLIM reg_l1=0.01 reg_l2=0.001 num_iter=1 K=50

  *****************************************************************************************************
  *** An uncaught exception occured. Please send a bug report to ...,***
  *** or report the problem in our issue tracker: https://github.com/zenogantner/MyMediaLite/issues ***
  *** MyMediaLite 3.11                                                                              ***
  *****************************************************************************************************
Index was outside the bounds of the array.  at MyMediaLite.DataType.Matrix`1[T].set_Item (System.Int32 i, System.Int32 j, T value) [0x00088] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/MyMediaLite/DataType/Matrix.cs:149 
  at MyMediaLite.ItemRecommendation.SLIM.InitModel () [0x00039] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/MyMediaLite/ItemRecommendation/SLIM.cs:79 
  at MyMediaLite.ItemRecommendation.LeastSquareSLIM.InitModel () [0x00000] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/MyMediaLite/ItemRecommendation/LeastSquareSLIM.cs:78 
  at MyMediaLite.ItemRecommendation.LeastSquareSLIM.Train () [0x00000] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/MyMediaLite/ItemRecommendation/LeastSquareSLIM.cs:92 
  at ItemRecommendation.Train () [0x00000] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/Programs/ItemRecommendation/ItemRecommendation.cs:185 
  at ItemRecommendation.Run (System.String[] args) [0x0011b] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/Programs/ItemRecommendation/ItemRecommendation.cs:222 
  at ItemRecommendation.Main (System.String[] args) [0x00006] in /tmp/vsc40003/easybuild/MyMediaLite/3.11/intel-2016b/zenogantner-MyMediaLite-b9d0478/src/Programs/ItemRecommendation/ItemRecommendation.cs:151 
Terminate on unhandled exception.

Djoels

unread,
Mar 27, 2017, 10:22:49 AM3/27/17
to MyMediaLite
More details are now available, as I finally got debugging working in Xamarin.

Calling the constructor public Matrix(int dim1, int dim2) results in an OutOfMemoryException when dim1 and/or dim2 are too large.

In my case, dim1 and dim2 are around 240.000 . When the following line is run: this.data = new T[dim1 * dim2]; a very large (impossibly large) array is created.

Am I correct in assuming that using a "sparsematrix" will not solve the issue, as all values in this matrix should be able to change to a "non-zero" value when InitNormal function is called?
I wonder how this can be fixed.. 
Any thoughts?

Op dinsdag 14 maart 2017 14:07:09 UTC+1 schreef Djoels:

Zeno Gantner

unread,
Aug 3, 2017, 2:01:07 PM8/3/17
to mymed...@googlegroups.com
Hello,

I fear there is no simple, straightforward solution.
We would need to look at the algorithm and see how to scale it to those dimensions.

Potentially we would need to learn the "similarities" on the fly?

Not sure, I have not looked at SLIM in years.

Cheers,
   Z.

--
You received this message because you are subscribed to the Google Groups "MyMediaLite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mymedialite+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages