<p>I can't answer all your questions in depth, but I try to give you some advice.</p>
<ul>
<li>you can understand better <em>avg.loss</em>, reading <a href="https://github.com/facebookresearch/fastText/issues/690#issuecomment-441570351" rel="nofollow noreferrer">this thread</a></li>
<li>learning rate is updated according <em>lrUpdateRate</em> option (read <a href="https://fasttext.cc/docs/en/options.html" rel="nofollow noreferrer">this</a>).</li>
<li>in general, increasing the number of epochs can improve learning. However, as you can read in <a href="https://arxiv.org/pdf/1906.06669.pdf" rel="nofollow noreferrer">this paper</a>, the most popular language models have a number of epochs between 10 and 100.</li>
<li>default loss function is softmax. You can also choose hs (hierarchical softmax) or ns. You can read more in the <a href="https://fasttext.cc/docs/en/supervised-tutorial.html#advanced-readers-hierarchical-softmax" rel="nofollow noreferrer">official tutorial</a>.</li>
<li>if you want to learn more about the effects of the <em>ws</em> and <em>wordngrams</em> parameters, you can read <a href="https://stackoverflow.com/questions/57507056/difference-between-max-length-of-word-ngrams-and-size-of-context-window">this answer</a>.</li>
</ul>
Fast Text unsupervised model loss
<p>I wanted to create a fastText unsupervised model for my text data of size 1GB. I'm using fastText command line tool to implement the model training process.</p>
<pre><code>./fasttext skipgram -input PlainText.txt -output FastText-PlainText- -dim 50 -epoch 50 
</code></pre>
<p>The above are few arguments I used for created word representation.</p>
<pre><code>Read 207M words
Number of words:  501986
Number of labels: 0
Progress:  97.5% words/sec/thread:   87224 lr:  0.001260 avg.loss:  0.089536 ETA:   0h 4m 9s
</code></pre>
<p>Here, in the output of the fastText command, I see this avg.loss and the learning rate has been decreased from default (0.5) to 0.001. I don't really understand, what does this avg.loss mean and why is the learning rate is dropped?</p>
<ol>
<li>Should I want to increase the epoch to make fastText to learn my data better?</li>
<li>Can I use any loss function to improve the loss? If yes, what kind of loss function will be better?</li>
<li>And how can I evaluate my fastText model's learning whether is good or bad?</li>
<li>Just out of interest, Can I use wordngrams to make my model learn better with context in unsupervised learning?</li>
</ol>