# Picking Model The picking model should pick a set of possible choice for moving model, because the player may compare different moves at the same time. The elements of the set will be chosen on the basis of confidence score. Top n accuracy will be the main indicator to evaluate the performance. Top n accuracy here can be interpreted as the accuracy of the set of size n. We may choose to pass n size set that has the accuracy we expected. In this section, we will introduced the architecture we tested, and discuss about pros and cons. ## Model Architecture The main model architecture is similar to the Maia chess model we introduced previously, a Resenet structure. The only difference is that we replaced the Relu by GRelu to get better performance. **Architecture (The former part before forked)** ![image alt](https://saumikn.com/wp-content/uploads/2021/05/image-1024x337.png) ## Seperate Prediction (Fail) A position of a piece can be indicated using row and column coordinate. We try not to predict the position directly, but predict row and column respectively. This method will reduced the number of prediction from 64 to 8+8. We expected that the performance can be enhanced by the reduction of predcition job. ### Method This model use the main model architecture, with two separate linear layer behind for row and column. The model first compute the confidence score for each row and column, then overlap the result to form a board by addition or mutiplication. ![](https://i.imgur.com/wZSMHB4.png) ### Result * **Overlap by addition (cross-like)** ![](https://i.imgur.com/Odn4PKZ.png =400x400) * **Overlap by mutiplication (square-like)** ![](https://i.imgur.com/jKaQIlE.png =400x400) This model has a very low top 1 accuracy about **0.023**. The prediction result of two overlapping way has a big difference. Addition overlapping method generates a cross-like predcition. Mutiplication overlapping method generates a square-like predcition. ### Conclusion This seperate prediction method isn't working in our project. There are some main reason leads to the failure. During the training process, the gradient-base will modified the model by gradients, but the result is overlapped by two seperate result which will cause a gradient stop point. The model can't learn correctly from this method. The overlapping result is also a main reason. When players are playing, they might pick a set which is in different row and column. However this method force the player to pick a cross-like or square-like set. ## Mapping (Best) The decision making process can split into 2 steps, fetch information from environments and making a decision. Similarly, this method provides a filter head for model, which transfer the board into informations for decision making. ### Model Architecture ![](https://i.imgur.com/YdFOtpF.png) ### Method The filter is a model that takes a 3D bitmap input, beacuse we might weight different pieces with different values. The filter first fetch the information out, then DeConv them to a new 2D matrix, then use the main model to predict the result. * Convert the board to 11 * 11 decision map ![](https://i.imgur.com/RuUyARP.png) ### Result * Prediction ![](https://i.imgur.com/sShpVf6.png =400x400) * Confidence score for the board ![](https://i.imgur.com/lnCt5e5.png) * Accuracy ![](https://i.imgur.com/cbfLoiO.png) ``` Best Top 1 Accuracy : 48% Best Top 3 Accuracy : 77% Best Top 5 Accuracy : 85% ``` ### Conclusion This method works quite well, the performance increase 10% in contrast to the main model without a filter head. The top 3 set has a accuracy about 77% and top 5 set has a accuracy about 85%. We can interpret the result that human do weight the pieces and the decision making process is formed by fetching small information and evaluting. This method can also be expand in time dimension.We can use a 4D filter to weight a pieces at different time. The size and shape of decision map is also a future work to researh. What is the shape of the decision map of human ?