Package network.aika.neuron.activation
Class Activation
- java.lang.Object
-
- network.aika.neuron.activation.Activation
-
- All Implemented Interfaces:
java.lang.Comparable<Activation>
public final class Activation extends java.lang.Object implements java.lang.Comparable<Activation>
TheActivationclass is the most central class in Aika. On the one hand it stores the activation value for a given neuron in theStatesubstructure. On the other hand it specifies where this activation is located within the document and to which interpretation it belongs. TheActivation.Keytherefore consists of the logic node to which this activation belongs. If this logic node is an or-node, then this activation automatically also belongs to the neuron as well. Furthermore, the key contains the char range within the document and the relational id (rid). The relational id might be used to store the word pos for instance. Lastly, the key contain the interpretation node of this activation, specifying to which interpretation this activation belongs.The activations are linked to each other on two levels. The fields
inputsandoutputscontain the activation links within the logic layer. The fieldsinputLinksandoutputLinkscontain the links on the neural layer.- Author:
- Lukas Molzberger
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classActivation.Builderstatic classActivation.LinkTheSynapseActivationmirror the synapse link in the network of activations.static classActivation.ModeclassActivation.Optionstatic classActivation.RoundsSince Aika is a recurrent neural network, it is necessary to compute several rounds of activation values.static classActivation.StateAStateobject contains the activation value of an activation object that belongs to a neuron.classActivation.StateChangeTheStateChangeclass is used to store the state change of an activation that occurs in each node of the binary search tree.
-
Field Summary
Fields Modifier and Type Field Description static java.util.Comparator<Activation>ACTIVATION_ID_COMPstatic intBEGINbooleanblockedCandidatecandidateActivation.StateChangecurrentStateChangelongcurrentStateVstatic booleanDEBUG_OUTPUTSearchNode.Decisiondecisionstatic intENDWritableextensionSearchNode.DecisionfinalDecisionActivation.RoundsfinalRoundsSearchNode.DecisioninputDecisionjava.lang.DoubleinputValuedoublelowerBoundlongmarkedAncDesclongmarkedDirtylongmarkedHasCandidatelongmarkedPredecessorstatic ActivationMAX_ACTIVATIONstatic intMAX_PREDECESSOR_DEPTHstatic intMAX_SELF_REFERENCING_DEPTHstatic ActivationMIN_ACTIVATIONjava.util.List<Activation.Option>optionsActivation.Roundsroundsjava.lang.Integersequencejava.util.Map<java.lang.Integer,Position>slotsjava.lang.DoubletargetValuebooleanubQueueddoubleupperBound
-
Constructor Summary
Constructors Constructor Description Activation(Document doc, INeuron neuron, java.util.Map<java.lang.Integer,Position> slots)
-
Method Summary
-
-
-
Field Detail
-
BEGIN
public static int BEGIN
-
END
public static int END
-
ACTIVATION_ID_COMP
public static final java.util.Comparator<Activation> ACTIVATION_ID_COMP
-
MAX_SELF_REFERENCING_DEPTH
public static int MAX_SELF_REFERENCING_DEPTH
-
MAX_PREDECESSOR_DEPTH
public static int MAX_PREDECESSOR_DEPTH
-
DEBUG_OUTPUT
public static boolean DEBUG_OUTPUT
-
MIN_ACTIVATION
public static Activation MIN_ACTIVATION
-
MAX_ACTIVATION
public static Activation MAX_ACTIVATION
-
slots
public java.util.Map<java.lang.Integer,Position> slots
-
sequence
public java.lang.Integer sequence
-
upperBound
public double upperBound
-
lowerBound
public double lowerBound
-
options
public java.util.List<Activation.Option> options
-
rounds
public Activation.Rounds rounds
-
finalRounds
public Activation.Rounds finalRounds
-
ubQueued
public boolean ubQueued
-
markedHasCandidate
public long markedHasCandidate
-
currentStateV
public long currentStateV
-
currentStateChange
public Activation.StateChange currentStateChange
-
markedDirty
public long markedDirty
-
markedPredecessor
public long markedPredecessor
-
targetValue
public java.lang.Double targetValue
-
inputValue
public java.lang.Double inputValue
-
extension
public Writable extension
-
inputDecision
public SearchNode.Decision inputDecision
-
decision
public SearchNode.Decision decision
-
finalDecision
public SearchNode.Decision finalDecision
-
candidate
public Candidate candidate
-
markedAncDesc
public long markedAncDesc
-
blocked
public boolean blocked
-
-
Method Detail
-
setInputNodeActivation
public void setInputNodeActivation(OrNode.OrActivation inputNodeActivation)
-
getInputNodeActivation
public OrNode.OrActivation getInputNodeActivation()
-
getOutputNodeActivation
public InputNode.InputActivation getOutputNodeActivation()
-
setOutputNodeActivation
public void setOutputNodeActivation(InputNode.InputActivation outputNodeActivation)
-
getSlot
public Position getSlot(int slot)
-
length
public java.lang.Integer length()
-
setTargetValue
public void setTargetValue(java.lang.Double targetValue)
-
getId
public int getId()
-
getDocument
public Document getDocument()
-
getThreadId
public int getThreadId()
-
getNewVisitedId
public long getNewVisitedId()
-
getVisitedId
public long getVisitedId()
-
checkVisited
public boolean checkVisited(long v)
-
getLabel
public java.lang.String getLabel()
-
getType
public INeuron.Type getType()
-
getText
public java.lang.String getText()
-
getINeuron
public INeuron getINeuron()
-
getNeuron
public Neuron getNeuron()
-
getSynapseById
public Synapse getSynapseById(int synapseId)
-
addLink
public void addLink(Linker.Direction dir, Activation.Link l)
-
getLinkBySynapseId
public Activation.Link getLinkBySynapseId(int synapseId)
-
getInputLinks
public java.util.stream.Stream<Activation.Link> getInputLinks(boolean onlySelected)
-
getOutputLinks
public java.util.stream.Stream<Activation.Link> getOutputLinks()
-
getInputLink
public Activation.Link getInputLink(Activation.Link l)
-
getInputLinksBySynapse
public java.util.stream.Stream<Activation.Link> getInputLinksBySynapse(Synapse syn)
-
getOutputLinksBySynapse
public java.util.stream.Stream<Activation.Link> getOutputLinksBySynapse(Synapse syn)
-
process
public double process(SearchNode sn, int round, long v)
-
computeValueAndWeight
public Activation.State computeValueAndWeight(int round)
-
isActiveable
public boolean isActiveable()
-
processBounds
public void processBounds()
-
computeBounds
public void computeBounds()
-
getActivationFunction
public ActivationFunction getActivationFunction()
-
hasUndecidedPositiveFeedbackLinks
public boolean hasUndecidedPositiveFeedbackLinks()
-
getFinalInputActivationLinks
public java.util.List<Activation.Link> getFinalInputActivationLinks()
-
getFinalOutputActivationLinks
public java.util.List<Activation.Link> getFinalOutputActivationLinks()
-
getConflicts
public java.util.Collection<Activation> getConflicts()
-
adjustSelectedNeuronInputs
public void adjustSelectedNeuronInputs(SearchNode.Decision d)
-
checkSelfReferencing
public boolean checkSelfReferencing(boolean onlySelected, int depth, long v)
-
setDecision
public void setDecision(SearchNode.Decision newDecision, long v)
-
isFinalActivation
public boolean isFinalActivation()
-
getFinalState
public Activation.State getFinalState()
-
getSequence
public java.lang.Integer getSequence()
-
markDirty
public void markDirty(long v)
-
markPredecessor
public void markPredecessor(long v, int depth)
-
match
public boolean match(java.util.function.Predicate<Activation.Link> filter)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
toStringDetailed
public java.lang.String toStringDetailed()
-
getExpectedState
public Activation.State getExpectedState()
-
compareTo
public int compareTo(Activation act)
- Specified by:
compareToin interfacejava.lang.Comparable<Activation>
-
slotsToString
public java.lang.String slotsToString()
-
identityToString
public java.lang.String identityToString()
-
linksToString
public java.lang.String linksToString()
-
saveOldState
public void saveOldState(java.util.Map<Activation,Activation.StateChange> changes, long v)
-
saveNewState
public void saveNewState()
-
-