After struggling for almost a week understanding the underlying concepts used in Artificial Neural Network (ANN), we came to agreement with the instructor that ANN is more like a black box. Although, people in different research areas tried to apply neural networks for variety of purposes, process of designing neural networks still involves trial and error and it require knowledge about low-level concepts applied to this model. That is, we thought this makes explaining this model in our final report really hard.
Based on instructor suggestions, we looked at local (spreading activation) network, we read more about it. Spreading activation is a method for searching associative networks. The search process is initiated by labeling a set of source nodes (e.g., in our case two teams that we want to predict their result are initial source nodes) with weights or “activation” and then iteratively propagating or “spreading” that activation out to other nodes linked to the source nodes.
How did we apply spreading activation network to our problem?
In the context of our soccer prediction task, the two teams competing are given node weights of 1.0 while all the other nodes in the network are weighted at 0.0. The weights on the links are as per those established during the feature extraction phase. As the spreading activation algorithm proceeds through the activation cycles, the feature nodes connected to the teams in question get activated according to the firing and decaying processes. The feature nodes connected to the ‘Win’ target node contribute their activated node weight to a Win score for both teams. On the other hand, the feature nodes connected to the ‘Loss’ target node contribute their activated weight to the loss score of both teams. The final score of a team is calculated as the Win score minus Loss score.
Finally, the prediction is made by comparing the final scores of both teams. If the final scores are equal, the teams are predicted to draw (or tie) the match.