Sign in to follow this  

What's next after training a network?

This topic is 386 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi,
 
I am new to this forum, but not quite new to the world of AI. It's been about a year now since I began and so far I have quite understanding of how neural networks are made and function. So far I know how to feedforward, backpropagate, and train the network. Now it seems as I am stuck in the next process. That is, I want to learn how after I have trained a network I can predict the next output based in data that was already learned. Just wondering if anyone can guide me towards the right direction for this. I am familiar with Python and Java, not so much in C.
 
Mostly, I am looking to learn the next mathematical algorithm in predicting an output. Is statistics involved in this?
Thanks.
Edited by SophiaL

Share this post


Link to post
Share on other sites

You're probably in the wrong place to ask about this because neural networks are very rarely used in games, and you haven't specified your game-related usage anyway.

 

The good news is that you've already done all the hard work. You should be able to put your data into the network, feed it forward, and the output is your prediction. You don't need anything else.

 

If that doesn't answer your question, you'll have to provide more details.

Share this post


Link to post
Share on other sites

What youve described is the basic workings of the Neural Net system.

 

Usually the bigger effort is matching it to the game mechanism and the AI problem(s) you are seeking the NN to solve for you.

 

That fisrt includes  processing/interpretting of the game state (or sequence of game states) to classify and encode it in a form that works with a NN (as its Input)

 

Next is  what is to be decided by the AI, and what outputs (actions directives)  it needs to produce. (decode what the NN produces)

 

Those things can get quite complex depending on the game specifics   (like having inputs for 3+ turns back in a game so that the NN can detect a Trend instead of just a static single-situational analysis  (if thats the type of game it is....)

 

Next, you may have your training system, but what about how you acquire all the training data for that game (which again in complex games can be a monumental task)

 

You may have to adjust (fiddle with/trial and error) the particular solution NNs (the neuron counts, the layers, even breaking into seperate NNS for different sub problems).  You then need some method that PROVES the NN created  does (sufficiently) what you want it to.

 

Then the packaging into an operating game  - and testing it with real people (if they are the opponents) who dont always do what you expect .

You may have to revise the capabilities of the AI upward to compete with the opponents (and modify and restart the whole proceess)

 

One consideration may be optimization - HOW the NN AI is used in the game. Ex- does it need to be run every cycle or can its results be allowed to work for a while - and then part of the logic might be to determine HOW often/when  the AI needs to be rerun .

Some optimization methods may make use of cached partial analysis (the encoding part) to cut down on the total AI processing the NN will make use of.

Edited by wodinoneeye

Share this post


Link to post
Share on other sites

You're assuming a lot about the use cases there, when really a neural net could be used for all sorts of simpler tasks that don't require anything more complex than training it on a decent data set. Unfortunately the original poster hasn't elaborated further on their requirements.

Share this post


Link to post
Share on other sites

If you're interested in prediction, recurrent NN are quite powerful. (Loops in the topology of a MLP, for example). Try also LSTM (Long short term memory networks)

But using them inline, while AI, physics and rendering are struggeling, is not practicable.

You can however train your network offline, and just using it, in your game, for its responses (not for learning).

 

If your NN is correctly trained, there's nothing more to do : use it.

You should check if it is not in over-learning (sorry for the terminology, in french this is called "sur-apprentissage). This is "over-specialization".

Check the responses of your NN on a DB that was not used during training. If they are relatively correct, the training is correct .... just use your NN now ! :)

Edited by Tournicoti

Share this post


Link to post
Share on other sites

This topic is 386 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this