public void LoadInputLayerWithData() { List <DiffNode> nodeLayer = nodeLayers[0]; int numNodes = nodeLayer.Count; if (numNodes == data.Length) { for (int n = 0; n < numNodes; n++) { DiffNode node = nodeLayer[n]; float value = data[n]; node.UpdateValue(value); } imageValues.Apply(); } else { Debug.Log("LoadInput: data:" + data.Length + " / input:" + numNodes + " count mismatch!\n"); } }
public void FeedForward() { for (int layer = 1; layer < layerNodeCounts.Count; layer++) { List <DiffNode> nodeLayer = nodeLayers[layer]; int numNodes = nodeLayer.Count; for (int n = 0; n < numNodes; n++) { DiffNode node = nodeLayer[n]; DiffNode nodeA = nodeLayers[layer - 1][n]; float valueA = nodeA.value; DiffNode nodeB = nodeLayers[layer - 1][n + 1]; float valueB = nodeB.value; float value = 0; if (IsDifferent(valueA, valueB) == true) { value = 1; } node.UpdateValue(value); } } imageValues.Apply(); }