Normalization: How to Control It?

Have specific questions about how to work with certain MemBrain features? Not sure about which checkbox in MemBrain has which effects? Want to know if a certain functionality is available in MemBrain or not?

Your questions will be appreciated here!
Post Reply
MrCreosote
Posts: 55
Joined: Wed 21. Jul 2010, 18:43

Normalization: How to Control It?

Post by MrCreosote »

I am having some difficulty controlling Normalization:

There are 2 ways I need to control Normalization:
  • Set Normalization Limits and Hold constant for all subsequent lessons.
  • Set Normalization Limits and Reset them for a given New Lesson
My biggest confusion is with manually set limits (through the Properties window) somehow resetting themselves to the Max/Min associated with a Lesson.

I am trying to do this real time and also through scripts.

Part of my difficulty may be not knowing when Normalization is actually calculated (or what step causes Normalization to be calculated) given its settings in Properties or by Wizard. It might be that you set up Normalization and then when you hit the Learn button, then, it is calculated.

Also, for me, Normalization as a Node Property is not intuitive. It would seem that it is more like a Lesson Property since how you normalize is determined by what Lesson you are processing.

Thanks in advance,
Tom

______________________________

EDIT:

Another way to explain difficulty would be to pose this QUESTION: How do I Normalize a subsequent Lesson based on the Max/Min of a previous Lesson?

or the question: How do I Normalize a subsequent Lesson based on the Manually Set Limits of a previous Lesson?
MrCreosote
Posts: 55
Joined: Wed 21. Jul 2010, 18:43

Re: Normalization: How to Control It?

Post by MrCreosote »

Any clarification on when Normalization based on Lesson is done when Normalization is checked in the node properties?
User avatar
Admin
Site Admin
Posts: 438
Joined: Sun 16. Nov 2008, 18:21

Re: Normalization: How to Control It?

Post by Admin »

MrCreosote wrote:Any clarification on when Normalization based on Lesson is done when Normalization is checked in the node properties?
Normalization is always done in the moment when an activation value is applied to an input neuron or when an activation value is read from an output neuron.
I.e. when applying an activation value to an input neuron the internal 'behind-the-scenes' activation value is calculated by converting from user defined activation range into the range used by the input neuron (either 0..1 or -1..1 depending on the selected activation function of the input neuron).

Correspondingly, when retrieving the activation value from an output neuron (e.g. for displaying it on the screen or when requesting it through script etc.) the neuron's normalization settings are used to convert the internally used 'behind-the-scenes' activation value (0..1 or -1..1, respectively) to the user defined range.

Specifically, normalization does not influence data like the net error value since this is calculated based on the normalized (i.e. internally used) activation values.

Regards
Thomas Jetter
MrCreosote
Posts: 55
Joined: Wed 21. Jul 2010, 18:43

Re: Normalization: How to Control It?

Post by MrCreosote »

My question is not about what Normalization is but how its limits are set by Lesson Max/Min or by User spec.

I have 3 situations I'm having troubles with:
  • Normalize based on Lesson 1 and then use those limits for Normalizing Lessons 2, 3, 4...
  • Normalize based on Lesson 1 limits, then Normalize on Lesson 2 limits, then... Lesson... 3...
  • Normalizing from User Defined Limits as in the previous 2 scenarios.
I get the impression that when you start a session, the Node Property Normalize loads the limits of the first Lesson. That "auto load" is never done again for subsequent lessons. I think you may have to invoke the Wizard for getting Normalization limits based on a new lesson. But I'm only guessing.

Thanks
Tom

PS. I get into the nuts and bolts of my problem on the initial post.

YES! Your following reply is what I was looking for. (I like your having the "last word" so the topic appears answered. Maybe a way to close a topic?) Thanks
Last edited by MrCreosote on Thu 16. Sep 2010, 05:24, edited 1 time in total.
User avatar
Admin
Site Admin
Posts: 438
Joined: Sun 16. Nov 2008, 18:21

Re: Normalization: How to Control It?

Post by Admin »

Hi Tom,
MrCreosote wrote:I get the impression that when you start a session, the Node Property Normalize loads the limits of the first Lesson.
The node property should never change automatically, if it does so then this would be a bug, please in this case post your example together with an instruction on how to re-create the issue.
Normalization limits can only be changed through the following three approaches:
- Manually in the neuron's properties dialog
- Through modifying the neuron's properties in a script (see scripting examples in the homepage download section for an example script class of a NetEditor that can perform script based normalization)
- Through invoking the Normalization Wizard.
The Wizard always only works on the currently selected input and output neurons, i.e. all not selected nodes are left untouched. It uses the Min and Max values for every column of the currently active lesson in the lesson editor and proposes normalization limits for the corresponding input and output neurons based on these Min and Max values.

Does that better answer your question?

Regards
Thomas Jetter
Post Reply