jiaxing-commits / PatternAi

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PatternAi

This is a simple AI that learns how to spit an output from supervised data.

The relationship of each individual sets of patterns is not accounted for.

Data Samples Input Expected Output
#1 {1,0,1,1,0} 1
#2 {0,0,1,0,0} 0
#3 {1,1,1,0,1} 1
#4 {1,1,0,0,1} 1
#5 {1,0,0,1,1} 1

NEW SITUATION

{0,1,0,1,1} --------> OUTPUT = ?

Notice that the pattern of the EXPECTED OUTPUT is directly connected to the first integer of the INPUT pattern.

NOTE: The Pattern can change later on.
Therefore, OUTPUT = ? = 0.

Equations

  • Sigmoid equation

  • Calculate activation

  • Nudge Value

// C is the nudge direction, and lambda is the nudge vaue

Neuron Layers

[
    [50 sets of input combinations],
    [193 sets of complex filter combinations]
]

Weight Map

  • POSITIVE ----> Matters more
  • NEGATIVE ----> Matters less

Weight Map Array

[
    [ 193 Sets of relational synapses],
    [ 2 sets of 193 synapses]
]
// Relational synapses are the connections between two neurons that are the same.
// Non-Relational synapses are undecided connections between two synapses.

Activation Array

[
    [50 activations],
    [193 activations],
    [2 activations] // [0, 1]
]

Nudge Direction

[
    [2 nudge directions],
    // Nudge direction at index 0 => '0' connections
    // Nnudge direction at index 1 => '1 conections
    [193 nudge directions] // For each neuron in order
]

TO-DO:

  • Set up randomized pattern generation
  • Be able to activate neurons and adjust weights
  • Forward propagations
  • Backwards propagations
  • Iteration function

NOTE: I am looking for patterns so the filters/neurons are the patterns

About


Languages

Language:JavaScript 99.9%Language:Java 0.1%Language:HTML 0.0%