Github user takuti commented on the issue:
https://github.com/apache/incubator-hivemall/pull/149
I'll change default options and consider to implement early stopping option
as you suggested.
> What happens without `-l2norm` ?
Once we drop instance-wise L2 normalization, a model easily overfits to
training samples, and prediction accuracy gets exceptionally worse.
**LIBFFM**:
```
$ ./ffm-train -k 4 -t 15 -l 0.00002 -r 0.2 -s 1 --no-norm ../tr.sp model
First check if the text file has already been converted to binary format
(0.0 seconds)
Binary file NOT found. Convert text file to binary file (0.0 seconds)
iter tr_logloss tr_time
1 4.24374 0.0
2 0.53960 0.1
3 0.09525 0.2
4 0.01288 0.2
5 0.00215 0.3
6 0.00133 0.3
7 0.00112 0.3
8 0.00098 0.4
9 0.00089 0.4
10 0.00082 0.5
11 0.00076 0.5
12 0.00072 0.6
13 0.00068 0.6
14 0.00064 0.6
15 0.00061 0.7
$ ./ffm-predict ../va.sp model submission.csv
logloss = 1.75623
```
**Hivemall**:
```
Iteration #2 | average loss=0.5186307939402891, current cumulative
loss=823.0670699832388, previous cumulative loss=6640.3299608989755, change
rate=0.876050275388452, #trainingExamples=1587
Iteration #3 | average loss=0.06870252595245425, current cumulative
loss=109.0309086865449, previous cumulative loss=823.0670699832388, change
rate=0.8675309550547743, #trainingExamples=1587
Iteration #4 | average loss=0.01701292407900819, current cumulative
loss=26.999510513386, previous cumulative loss=109.0309086865449, change
rate=0.7523682886014696, #trainingExamples=1587
Iteration #5 | average loss=0.003132377872105223, current cumulative
loss=4.971083683030989, previous cumulative loss=26.999510513386, change
rate=0.8158824516256917, #trainingExamples=1587
Iteration #6 | average loss=0.001693780516846469, current cumulative
loss=2.6880296802353465, previous cumulative loss=4.971083683030989, change
rate=0.4592668617888987, #trainingExamples=1587
Iteration #7 | average loss=0.0013357168592237345, current cumulative
loss=2.1197826555880668, previous cumulative loss=2.6880296802353465, change
rate=0.21139908864307172, #trainingExamples=1587
Iteration #8 | average loss=0.0011459013923848537, current cumulative
loss=1.8185455097147627, previous cumulative loss=2.1197826555880668, change
rate=0.1421075623386188, #trainingExamples=1587
Iteration #9 | average loss=0.001017751388111345, current cumulative
loss=1.6151714529327046, previous cumulative loss=1.8185455097147627, change
rate=0.11183336116452601, #trainingExamples=1587
Iteration #10 | average loss=9.230266490923267E-4, current cumulative
loss=1.4648432921095225, previous cumulative loss=1.6151714529327046, change
rate=0.0930725716766649, #trainingExamples=1587
Iteration #11 | average loss=8.493080071393429E-4, current cumulative
loss=1.3478518073301373, previous cumulative loss=1.4648432921095225, change
rate=0.07986621190783184, #trainingExamples=1587
Iteration #12 | average loss=7.898623710141035E-4, current cumulative
loss=1.2535115827993821, previous cumulative loss=1.3478518073301373, change
rate=0.0699930244687856, #trainingExamples=1587
Iteration #13 | average loss=7.406521210973545E-4, current cumulative
loss=1.1754149161815017, previous cumulative loss=1.2535115827993821, change
rate=0.06230230951952787, #trainingExamples=1587
Iteration #14 | average loss=6.990685420175246E-4, current cumulative
loss=1.1094217761818115, previous cumulative loss=1.1754149161815017, change
rate=0.056144548696113294, #trainingExamples=1587
Iteration #15 | average loss=6.633493164996776E-4, current cumulative
loss=1.0527353652849885, previous cumulative loss=1.1094217761818115, change
rate=0.051095455410939475, #trainingExamples=1587
Performed 15 iterations of 1,587 training examples on memory (thus 23,805
training updates in total)
```
```
LogLoss: 1.8970086009757248
```
---