[GameMaker Studio] Neural Network in Game Maker Studio – part 3

Before we continue coding the training part, we are going to do a short improvement to our neural net. We are going to add the following: Bias and Normalization.

Adding bias will help our neural net to solve more complex problem. Normalization, on the other hand, will be used to optimize inputs, allowing multiple inputs to be fed to our neural net.

Adding Bias

Bias is an offset from an origin. A simpler way to understand bias is through linear function.

y = mx + b

Where b is where the function line intercept the y-axis.

Without a bias, our activation function, tanh(x), is limited to adjusting the steepness of the tanh function. This can already allow the neural net to learn patterns. However, this can result to a poorer fit

Bias allows the tanh function to adjust horizontally.

Normalize Script

In the future, our neural net might require more than one input. Some input values might vary in ranges. For instance:

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

INPUTS  
Direction Direction will be measured in degrees, 0 to 360
Distance Distance on the other hand will be measured in pixels. Distance can range from 0 to ∞

This will result in a poorer fit. The distance input will influence the result more than the direction input. In order to counteract this problem, we have to limit the range of any inputs from 0 to 1 and this can be achieved through normalization.

Normalization should be used when dealing with multiple input values that posses different range. For instance, input 1 ranges from -100 to 100 and input 2 ranges from 0 to 5. Normalization will convert these values to a common range in this case -1 to 1.

In code, normalization will look like this:

///normalize(input, min, max)
var _x = (argument0-argument1)/(argument2-argument1);
return(_x);

Where:
• input (argument0) – input value
• min (argument1) – minimum possible value
• max (argument2) – maximum possible value

Everything is set! Our neural net is now ready for a little more complex task. On the next post, we are going to create training scripts for our neural net. Stay tuned!

[출처] https://highleapstudios.wordpress.com/2019/10/07/neural-network-in-game-maker-studio-3/

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED