0
$\begingroup$

I am currently working on a binary regression network that would try to predict the annual awards of a sport league. (The NBA namely) I have done some testing and I am quite discouraged by the data I have gathered. I cannot even get good results on the training set and I wonder it its because of the problem itself or I have some bug in my code. (I do not use ML libraries/frameworks)

So the way I imagined it would go is that I construct a network with multiple hidden layers and quite a lot of nodes in them so it could seperate the cases. The output layer contains a single node (with Sigmoid but I have been trying out different activation functions in every layer) and the error function is a Binary Cross-Entropy function. The features include traditional statistics like points per game, rebound, assist etc. I believe I have about 16 of them.

Now, I have different training sets, divided by the season. That is about 200 players in one season. Only one of those have a label of 1, all the others have 0s.

Would this problem be too complicated for an ordinary NN? Is it a problem that there is such a big difference in the number of passes and fails? Maybe too many features?

(P.s I haven't tested my code on basic, more conventional problems, the XOR and other more complicated classifcation problems worked but I have not done any regressin yet.)

$\endgroup$

1 Answer 1

0
$\begingroup$

Are you training your network with a single one of those training sets? Meaning that you just have 200 samples for the training of which one is positive and the rest negative?

I think this is a tough classification problem anyways, because you classes are highly imbalanced. In this case, you usually want to re-balance the dataset, but this might be difficult in your case. However, you should try to include as much training data as possible and probably try some weighted accuracy measures like weighted cross-entropy (see here and here for a short explanation).

Due to the lack of data you might also want to consider other (and maybe less sophisticated) models like decision trees/random forests or basic logistic regression.

$\endgroup$
2
  • $\begingroup$ Yes, I have only used one of those training sets so far, as I have tried to verify that the model could work. Thank you for the links, I will look into it. I was thinking about re-balancing my training sets into smaller ones that are more balanced so the model wouldn't have to account for a bunch of negative cases that are unnecessary. $\endgroup$ Commented Sep 14, 2019 at 8:33
  • $\begingroup$ I think using the whole data that you have available (multiple years I guess) might help the algorithm to learn the patterns in the data better. A dataset with just one positive/negative example is very difficult to learn $\endgroup$
    – Chowkah
    Commented Sep 16, 2019 at 6:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.