-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Here's a quick review of the math. Please allow the terse notation as the algebra gets gnarly.
Operator precedence is as in ruby:
- Unary right binding operators
- *, /
- +, -
- =
But I add spacing to create groups:
- ๐ + ๐/๐ + ๐ = ๐ + (๐/๐) + ๐
- ๐+๐ / ๐+๐ = (๐+๐) / (๐+๐)
The above spacing rule reduces the amount of symbols needed to show structure and makes the algebra less cluttered.
The product, *
, may be implied:
- ๐*๐ = ๐ ๐ = ๐๐
- (๐+๐)*(๐+๐) = ๐+๐ ๐+๐
- ๐ฅยฒ = ๐ฅ๐ฅ = ๐ฅ*๐ฅ
Definitions are set by :=
and consequent equivalences by =
.
I may use Einstein notation. And once indices are shown, they may be dropped:
- โโ(๐พโ*๐โ) = ๐พโฟ๐โ = ๐พ๐
Be aware of these rules.
Referencing Wikipedia's Mathematical operators and symbols in Unicode and Unicode subscripts and superscripts:
- Italic small(๐..๐ง): scalar variables
- Bold italic small(๐..๐): single-indexed variables, vectors.
- Bold italic capital(๐จ..๐): multi-indexed variables, matrices.
- Bold script capital(๐..๐ฉ): operators, like ๐๐ฅ.
- Double struck small(๐..๐ซ): finite ordered sets.
- Bold Fraktur small(๐..๐): derived constant parameters.
Consider a value in a collection of ๐
in level h dependent on values in
collection of ๐
in level i:
๐โ := โ(๐โ + โแตข(๐พโแตข * ๐แตข))
The index โ
enumerates values of ๐
in level h, whereas แตข
enumerates
values of ๐
in level i. The levels are labeled alphabetically:
{...,โ,แตข,โฑผ,โ,โ,โ,โ,โ,โ,...}
I'll want to express the relation between levels without specifying the level. Given the above, please allow:
๐ = โ(๐ + ๐พ ๐')
๐ = โ ๐+๐พ(๐')
๐ = โ ๐+๐พ๐'
In The Math of Species Conflict - Numberphile the following function is referred to as "binary competition":
๐(๐ฅ) := ๐ฅ * (1 - ๐ฅ)
This form occurs in the derivative of the squash function, and so I'll use ๐
in it's expression.
# Please let:
โ(๐ฅ) := Math.exp(๐ฅ)
# Define the squash function:
โ(๐ฅ) := 1 / (1 + Math.exp(-๐ฅ))
โ(๐ฅ) = 1 / (1 + โ(-๐ฅ))
โ๐ฅ = 1 / 1+โ-๐ฅ
= โ๐ฅ / โ๐ฅ+1
โ๐ฅ = โ๐ฅ / 1+โ๐ฅ
โ(๐ฅ) = โ(๐ฅ) / (1 + โ(๐ฅ)) # Alternate definition of squash
# Equivalence 1-โ๐ฅ = โ-๐ฅ
1 - โ(๐ฅ) = 1 - (โ(๐ฅ) / (1 + โ(๐ฅ)))
1-โ๐ฅ = 1 - โ๐ฅ / 1+โ๐ฅ
= โ๐ฅ+1-โ๐ฅ / 1+โ๐ฅ
= 1 / 1+โ๐ฅ
1-โ๐ฅ = โ-๐ฅ
1 - โ(๐ฅ) = โ(-๐ฅ)
# Equivalence โ-๐ฅ = 1-โ๐ฅ
โ(-๐ฅ) = 1 - โ(๐ฅ)
โ-๐ฅ = 1-โ๐ฅ
# Equivalence โ๐ฅ = 1-โ-๐ฅ
โ(๐ฅ) = 1 - โ(-๐ฅ)
โ๐ฅ = 1-โ-๐ฅ
# Derivative:
๐๐ฅ(โ(๐ฅ)) = ๐๐ฅ(1 / (1 + โ(-๐ฅ)))
๐๐ฅโ๐ฅ = ๐๐ฅ(1 / 1+โ-๐ฅ)
= 1/(1+โ-๐ฅ)ยฒ -๐๐ฅโ-๐ฅ
= 1/(1+โ-๐ฅ)ยฒ โ-๐ฅ
= โ-๐ฅ/(1+โ-๐ฅ)ยฒ
= โ-๐ฅ/(1+โ-๐ฅ) 1/(1+โ-๐ฅ)
= โ-๐ฅ/(1+โ-๐ฅ) โ๐ฅ
= 1/(โ๐ฅ+1) โ๐ฅ
= 1/(1+โ๐ฅ) โ๐ฅ
= โ-๐ฅ โ๐ฅ
๐๐ฅโ๐ฅ = 1-โ๐ฅ โ๐ฅ
๐๐ฅ(โ(๐ฅ)) = (1 - โ(๐ฅ)) * โ(๐ฅ)
= ๐(โ(๐ฅ))
# Please let:
โ(๐ฅ) := Math.log(๐ฅ)
# Recall that Log and Exp are inverses:
โ(โ(๐ฅ)) = ๐ฅ
โโ๐ฅ = ๐ฅ
# Recall that Log(1)=0
โ(1) = 0
# Define the unsquash function:
โ(๐ฅ) := Math.log(๐ฅ / (1 - ๐ฅ))
โ(๐ฅ) = โ(๐ฅ / (1 - ๐ฅ))
โ๐ฅ = โ ๐ฅ/(1-๐ฅ)
# Show that unsquash is the inverse of squash:
โ(โ(๐ฅ)) = โ(โ(๐ฅ))
โโ๐ฅ = โ โ๐ฅ
= โ โ๐ฅ/(1-โ๐ฅ) # by definition of unsquash, it's the log of...
= โโ๐ฅ - โ 1-โ๐ฅ
= โ โ๐ฅ/(โ๐ฅ+1) - โ 1-โ๐ฅ # by alternate definition of squash.
= โโ๐ฅ - โ โ๐ฅ+1 - โ 1-โ๐ฅ
= ๐ฅ - โ โ๐ฅ+1 - โ 1-โ๐ฅ
= ๐ฅ - โ โ๐ฅ+1 - โ 1-โ๐ฅ/(โ๐ฅ+1)
= ๐ฅ - โ โ๐ฅ+1 - โ (โ๐ฅ+1-โ๐ฅ)/(โ๐ฅ+1)
= ๐ฅ - โ โ๐ฅ+1 - โ 1/(โ๐ฅ+1)
= ๐ฅ - โ โ๐ฅ+1 - (โ1 - โ โ๐ฅ+1)
= ๐ฅ - โ โ๐ฅ+1 - (0 - โ โ๐ฅ+1)
= ๐ฅ - โ โ๐ฅ+1 - (-โ โ๐ฅ+1)
= ๐ฅ - โ โ๐ฅ+1 + โ โ๐ฅ+1
โโ๐ฅ = ๐ฅ
โ(โ(๐ฅ)) = ๐ฅ
# The activation of the h-th Neuron(in level h connecting to level i):
๐โ := โ(๐โ + โแตข(๐พโแตข * ๐แตข))
= โ ๐โ+๐พโฑ๐แตข
๐ = โ ๐+๐พ๐'
โ๐ = ๐+๐พ๐'
โ๐โ = ๐โ+๐พโฑ๐แตข
โ(๐โ) = ๐โ + โแตข(๐พโแตข * ๐แตข)
# The value of the h-th Neuron is the unsquashed activation:
๐โ = โ(๐โ)
= ๐โ + โแตข(๐พโแตข * ๐แตข)
๐ = ๐ + ๐พ ๐'
# The bias and weight of a neuron that roughly mirrors the value of another:
๐ง := {-1, 0, 1}
๐ := โ(๐ + (๐ * ๐)) = โ ๐+๐*๐
๐ง := โ(๐) = โ๐
# Notice that:
๐ = โ(๐ง) = {โ(-1), โ(0), โ(1)}
โ(0) = โ0 = ยฝ
# Find the bias and weight:
๐ง = โโ(๐ + (๐ * ๐))
= โโ๐+๐๐
= โโ ๐+๐โ๐ง
= ๐+๐โ๐ง
๐ง = ๐ + (๐ * โ(๐ง))
# Set the value to zero:
0 = ๐ + ๐โ(0)
0 = ๐+๐โ0
๐ = -๐โ0
๐ = -ยฝ๐
๐ = -2๐
# Set the value to one and substitute the bias:
1 = ๐ + ๐โ(1)
1 = ๐+๐โ1
1 = -ยฝ๐+๐โ1
1 = ๐(โ1 - ยฝ)
๐ = 1 / (โ1 - ยฝ)
๐ = ยฝ / (ยฝ - โ1)
# Verify this works when value is negative one:
-1 = ๐ + (๐ * โ(-1))
-1 = ๐ + ๐โ-1
-1 = -ยฝ๐ + ๐โ-1
-1 = -ยฝ๐ + ๐(1-โ1)
-1 = -ยฝ๐ + ๐ - ๐โ1
-1 = ยฝ๐ - ๐โ1
1 = ๐โ1 - ยฝ๐
1 = ๐(โ1 - ยฝ)
๐ = 1 / (โ1 - ยฝ)
๐ = 1 / (โ(1) - ยฝ) # OK
# Value is the unsquashed activation:
๐โ := โ(๐โ)
๐ = โ๐
# Error in output value from errors in bias and weights:
๐โ + ๐โ := (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * ๐แตข)
๐+๐ = ๐+๐บ + (๐พ+๐บ')๐'
๐ = ๐+๐บ + (๐พ+๐บ')๐'- ๐
๐ = ๐ + ๐บ + ๐พ๐' + ๐บ'๐' - ๐
๐ = ๐บ + ๐บ'๐' + (๐ + ๐พ๐') - ๐
๐ = ๐บ + ๐บ'๐' + (๐) - ๐
๐ = ๐บ + ๐บ'๐'
๐โ = ๐บโ + ๐บโฑ๐แตข
๐โ = ๐บโ + โแตข(๐บแตข * ๐แตข)
# Assume equipartition of errors:
โโ{ ๐บโ = ๐ }
๐โ = ๐บโ + โแตข(๐บแตข * ๐แตข)
= ๐ + โแตข(๐ * ๐แตข)
= ๐ + ๐โ๐แตข
= ๐(1 + โ๐แตข)
๐โ = ๐ * (1 + โแตข(๐แตข))
# *** Equipartitioned error level one ***
# Solve for ๐:
๐ = ๐โ / 1+โ๐แตข
๐ = ๐โ / (1 + โแตข(๐แตข))
# Mu
๐โ := 1 + โแตข(๐แตข)
๐ = 1+โ๐'
๐ = ๐โ / ๐โ
๐ = ๐/๐
๐ = ๐๐
๐โ = ๐ * ๐โ
# As an estimate, set ๐~ยฝ and the length of โแตข at ๐:
๐ ~ ๐ / (1 + ยฝ๐)
# Or very roughly:
๐ ~ 2๐/๐
# Activation error
๐โ + ๐นโ = โ(๐โ + ๐โ)
๐+๐น = โ ๐+๐
~ โ๐ + ๐๐๐โ๐
~ โ๐ + ๐๐โ๐
~ โ๐ + ๐๐๐
๐โ + ๐นโ ~ ๐โ + (๐โ * ๐(๐โ))
~ ๐โ + (๐โ * (1 - ๐โ) * ๐โ)
๐นโ ~ ๐โ * (1 - ๐โ) * ๐โ
~ ๐โ * ๐(๐โ)
๐น ~ ๐๐๐
~ ๐(1-๐)๐
# Recall that ๐=๐๐:
๐น ~ ๐๐(1-๐)๐
~ ๐๐๐๐
๐นโ ~ ๐ * ๐โ * ๐(๐โ)
~ ๐ * ๐โ * (1 - ๐โ) * ๐โ
# Assume ๐ยฒ~0
๐ยฒ ~ 0
# Consider ๐๐น
๐ * ๐นโ = ๐ * ๐ * ๐โ * ๐(๐โ)
= ๐ยฒ๐๐๐
~ 0 * ๐๐๐
๐๐น ~ 0
๐ * ๐นโ ~ 0
# Error in ouput value from errors in bias and weights and activation:
๐โ + ๐โ := (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * (๐แตข + ๐นแตข))
๐+๐ = ๐+๐บ + (๐พ+๐บ')(๐'+๐น')
= ๐ + ๐ + ๐พ๐' + ๐พ๐น' + ๐บ'๐' + ๐บ'๐น'
~ ๐ + ๐ + ๐พ๐' + ๐พ๐น' + ๐บ'๐' # ๐๐น vanishes
~ ๐ + ๐พ๐' + ๐พ๐น' + ๐ + ๐บ'๐'
~ ๐ + ๐พ๐น' + ๐ + ๐บ'๐'
๐ ~ ๐พ๐น' + ๐ + ๐บ'๐'
๐ ~ ๐พ๐น' + ๐(1+โ๐')
๐ ~ ๐พ๐น' + ๐๐
๐ ~ ๐๐ + ๐พ๐น' # Same as level one with an extra +๐พ๐น'
# Recall ๐น ~ ๐๐๐:
๐+๐น = โ ๐+๐
~ ๐ + ๐๐๐
๐น ~ ๐๐๐
# Substitute out ๐น':
๐ ~ ๐๐ + ๐พ๐น'
~ ๐๐ + ๐พ ๐'๐๐'
~ ๐๐ + ๐พ ๐๐'๐'
# Substitute out ๐':
๐ ~ ๐๐ + ๐พ ๐๐'๐'
~ ๐๐ + ๐พ ๐๐'(๐๐' + ๐พ'๐น")
~ ๐๐ + ๐พ ๐๐'๐๐' + ๐พ ๐๐'๐พ'๐น"
~ ๐๐ + ๐๐พ ๐๐'๐' + ๐พ ๐๐'๐พ'๐น" # reorder
~ ๐(๐ + ๐พ ๐๐'๐') + ๐พ ๐๐'๐พ'๐น"
# Introduce ๐ง :
๐งโโฑ๐แตข := โแตข ๐พโแตข๐๐แตข๐แตข
๐ง ๐' = ๐พ ๐๐'๐'
# Substitute in ๐ง :
๐ ~ ๐(๐ + ๐พ ๐๐'๐') + ๐พ ๐๐'๐พ'๐น"
~ ๐(๐ + ๐ง ๐') + ๐ง ๐พ'๐น"
# *** Equipartitioned error level two ***
# For level two, ๐น"=0
๐ ~ ๐(๐ + ๐ง ๐')
๐โ ~ ๐ * (๐โ + ๐งโโฑ๐แตข)
# Solve for ๐:
๐ ~ ๐ / (๐ + ๐ง ๐')
๐โ ~ ๐โ / (๐โ + ๐งโโฑ๐แตข)
# Notice that:
0 < ๐ < 1
0 < ๐๐=(1-๐)๐ < 0.25 = ยผ
# So there's an upper bound for ๐:
๐ ~ ๐(๐ + ๐ง ๐')
~ ๐(๐ + ๐พ ๐๐'๐')
|๐| < |๐(๐ + ยผ๐พ ๐')|
# Assume ๐ is somewhat random about 0.5=ยฝ in a level of size large ๐:
๐ = 1+โ๐' โ ๐ช ~ 1+ยฝ๐ ~ ยฝ๐
|๐| <~ |๐(๐ช + ยผ๐ช โ๐พ)|
# Consider the case when weights are random plus or minus one.
# Let this be like a random walk of ๐ steps.
# Then โ๐พ ~ โ๐:
|๐| <~ |๐(๐ช + ยผ๐ช โ๐)|
<~ |๐(ยฝ๐ + ยผ*ยฝ๐*โ๐)|
<~ ๐|๐(ยฝ + ยผ*ยฝโ๐)|
|๐| <~ ๐โ(๐)|๐|/8
# If you don't believe the random walk and are pessimistic, you might prefer
# using ๐ยฒ:
๐ <~ ๐๐โ๐/8 < ๐๐ยฒ/8
๐ ~> 8๐ / ๐โ๐ > 8๐/๐ยฒ
๐โ := ๐โ + โแตข(๐พโแตข * ๐แตข)
๐โ + ๐โ := (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * (๐แตข + ๐นแตข))
๐แตข + ๐แตข := (๐แตข + ๐บแตข) + โโฑผ((๐พแตขโฑผ + ๐บโฑผ) * (๐โฑผ + ๐นโฑผ))
๐แตข + ๐นแตข := โ(๐แตข + ๐แตข)
= โ((๐แตข + ๐บแตข) + โโฑผ((๐พแตขโฑผ + ๐บโฑผ) * (๐โฑผ + ๐นโฑผ)))
= โ(๐แตข + ๐บแตข + โโฑผ(๐พแตขโฑผ*๐โฑผ + ๐บโฑผ*๐โฑผ + ๐พแตขโฑผ*๐นโฑผ + ๐บโฑผ*๐นโฑผ))
= โ(๐แตข + ๐บแตข + ๐พแตขสฒ๐โฑผ + ๐บสฒ๐โฑผ + ๐พแตขสฒ๐นโฑผ + ๐บสฒ๐นโฑผ)
= โ(๐แตข + ๐บแตข + ๐พแตขสฒ๐โฑผ + ๐บสฒ๐โฑผ + ๐พแตขสฒ๐นโฑผ) # ๐บ๐น vanishes
= โ(๐แตข + ๐พแตขสฒ๐โฑผ + ๐บแตข + ๐บสฒ๐โฑผ + ๐พแตขสฒ๐นโฑผ)
= โ(๐แตข + ๐พแตขสฒ๐โฑผ + ๐ + ๐โ๐โฑผ + ๐พแตขสฒ๐นโฑผ) # All ๐บ are the same ๐
= โ(๐แตข + ๐พแตขสฒ๐โฑผ + ๐(1 + โ๐โฑผ) + ๐พแตขสฒ๐นโฑผ)
= โ(๐แตข + ๐พแตขสฒ๐โฑผ + ๐๐แตข + ๐พแตขสฒ๐นโฑผ) # ๐แตข=1+โ๐โฑผ as ๐=1+โ๐'
~ ๐แตข + (๐๐แตข + ๐พแตขสฒ๐นโฑผ) ๐๐แตข
~ ๐แตข + (๐๐แตข + ๐พแตขสฒ๐นโฑผ)(1-๐แตข)๐แตข
๐แตข + ๐นแตข ~ ๐แตข + (๐๐แตข + โโฑผ(๐พแตขโฑผ * ๐นโฑผ)) * (1 - ๐แตข) * ๐แตข
# Solve for ๐นแตข:
๐นแตข ~ (๐๐แตข + โโฑผ(๐พแตขโฑผ * ๐นโฑผ)) * (1 - ๐แตข) * ๐แตข
๐นแตข ~ (๐๐แตข+๐พแตขสฒ๐นโฑผ)(1-๐แตข)๐แตข
๐นแตข ~ ๐๐แตข(1-๐แตข)๐แตข + ๐พแตขสฒ๐นโฑผ(1-๐แตข)๐แตข
# Consider the case where the j-th level is error free input:
๐นแตข ~ ๐๐แตข(1-๐แตข)๐แตข # ๐นโฑผ is zero
๐โ + ๐โ := (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * (๐แตข + ๐นแตข))
~ (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * (๐แตข + ๐๐แตข(1-๐แตข)๐แตข))
~ ๐โ + ๐บโ + ๐พโโฑ(๐แตข + ๐๐แตข(1-๐แตข)๐แตข) + ๐บโฑ(๐แตข + ๐๐แตข(1-๐แตข)๐แตข)
~ ๐โ + ๐บโ + ๐พโโฑ๐แตข + ๐๐พโโฑ๐แตข(1-๐แตข)๐แตข + ๐บโฑ๐แตข + ๐บโฑ๐๐แตข(1-๐แตข)๐แตข
~ ๐โ + ๐บโ + ๐พโโฑ๐แตข + ๐๐พโโฑ๐แตข(1-๐แตข)๐แตข + ๐บโฑ๐แตข # ๐บโฑ๐ vanishes
~ ๐โ + ๐พโโฑ๐แตข + ๐๐พโโฑ๐แตข(1-๐แตข)๐แตข + ๐บโ + ๐บโฑ๐แตข # reordered terms
~ ๐โ + ๐๐พโโฑ๐แตข(1-๐แตข)๐แตข + ๐บโ + ๐บโฑ๐แตข
~ ๐โ + ๐๐พโโฑ๐แตข(1-๐แตข)๐แตข + ๐(1+โ๐แตข)
~ ๐โ + ๐(1+โ๐แตข) + ๐๐พโโฑ๐แตข(1-๐แตข)๐แตข # reordered
~ ๐โ + ๐๐โ + ๐๐งโโฑ๐แตข # ๐ง = ๐พ๐๐'
๐โ + ๐โ ~ ๐โ + ๐(๐โ + ๐งโโฑ๐แตข)
๐โ ~ ๐(๐โ + ๐งโโฑ๐แตข)
๐ ~ ๐โ / (๐โ + ๐งโโฑ๐แตข)
๐ ~ ๐ / (๐ + ๐ง ๐') # OK!
# Given:
๐โ := โ(๐โ)
๐โ + ๐นโ := โ(๐โ + ๐โ)
๐โ := ๐โ + โแตข(๐พโแตข * ๐แตข)
๐โ + ๐โ := (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * (๐แตข + ๐นแตข))
๐โ := 1 + โแตข(๐แตข)
๐งโโฑ๐แตข := โแตข(๐พโแตข * (1 - ๐แตข) * ๐แตข * ๐แตข)
= ๐พโโฑ๐๐แตข๐แตข
# Assume:
โโ{ ๐บโ = ๐ }
๐ยฒ ~ 0
๐๐น ~ 0
# Recall:
๐๐ฅ(โ(๐ฅ)) = โ(๐ฅ) * (1 - โ(๐ฅ))
= ๐(โ(๐ฅ))
โ(๐ฅ + ๐) ~ โ(๐ฅ) + ๐ * ๐๐ฅ(โ(๐ฅ))
~ โ(๐ฅ) + ๐ * โ(๐ฅ) * (1 - โ(๐ฅ))
~ โ(๐ฅ) + ๐ * ๐(โ(๐ฅ))
# Note that one may transpose indices for each level:
โโฌแตขโฌโฑผโฌโ
# Solve for level 3 ๐.
## ๐นแตข:
๐แตข + ๐นแตข := โ(๐แตข + ๐แตข)
~ โ๐แตข + ๐แตข * ๐โ๐แตข
~ ๐แตข + ๐แตข * ๐โ๐แตข
๐นแตข ~ ๐แตข * ๐โ๐แตข
~ ๐แตข * ๐๐แตข
๐นแตข ~ ๐แตข * (1-๐แตข) * ๐แตข
## Expand first level and solve for ๐โ:
๐โ + ๐โ := (๐โ + ๐บโ) + โแตข((๐พโแตข + ๐บแตข) * (๐แตข + ๐นแตข))
= ๐โ+๐ + (๐พโโฑ+๐บโฑ)(๐แตข+๐นแตข)
= ๐โ+๐ + ๐พโโฑ๐แตข + ๐บโฑ๐แตข + ๐พโโฑ๐นแตข + ๐บโฑ๐นแตข
~ ๐โ+๐ + ๐พโโฑ๐แตข + ๐บโฑ๐แตข + ๐พโโฑ๐นแตข # ๐บ๐น vanishes
~ ๐โ+๐พโโฑ๐แตข + ๐+๐บโฑ๐แตข + ๐พโโฑ๐นแตข
~ ๐โ + ๐+๐บโฑ๐แตข + ๐พโโฑ๐นแตข
๐โ ~ ๐+๐บโฑ๐แตข + ๐พโโฑ๐นแตข
~ ๐(1+โ๐แตข) + ๐พโโฑ๐นแตข
~ ๐๐โ + ๐พโโฑ๐นแตข
## Substitute out ๐นแตข:
๐โ ~ ๐๐โ + ๐พโโฑ๐นแตข # ๐=๐๐+๐พ๐น'
~ ๐๐โ + ๐พโโฑ๐แตข๐๐แตข
~ ๐๐โ + ๐พโโฑ๐๐แตข๐แตข
## Substitute out ๐แตข:
๐โ ~ ๐๐โ + ๐พโโฑ๐๐แตข๐แตข
~ ๐๐โ + ๐พโโฑ๐๐แตข(๐๐แตข + ๐พแตขสฒ๐นโฑผ) # ๐~๐๐+๐พ๐น'
~ ๐๐โ + ๐พโโฑ๐๐แตข๐๐แตข + ๐พโโฑ๐๐แตข๐พแตขสฒ๐นโฑผ
~ ๐๐โ + ๐๐พโโฑ๐๐แตข๐แตข + ๐พโโฑ๐๐แตข๐พแตขสฒ๐นโฑผ # reorder
~ ๐๐โ + ๐๐งโโฑ๐แตข + ๐งโโฑ๐พแตขสฒ๐นโฑผ # ๐ง =๐พ๐๐'
๐โ ~ ๐(๐โ + ๐งโโฑ๐แตข) + ๐งโโฑ๐พแตขสฒ๐นโฑผ # Level 2 plus an additional term due to ๐นโฑผ
# Recall that in level 2, ๐นโฑผ was zero, but level three continues...
๐โ ~ ๐(๐โ + ๐งโโฑ๐แตข) + ๐งโโฑ๐พแตขสฒ๐นโฑผ
~ ๐(๐โ + ๐งโโฑ๐แตข) + ๐งโโฑ๐พแตขสฒ๐๐โฑผ๐โฑผ # ๐น~๐๐๐
~ ๐(๐โ + ๐งโโฑ๐แตข) + ๐งโโฑ๐งแตขสฒ๐โฑผ
~ ๐(๐โ + ๐งโโฑ๐แตข) + ๐งโโฑ๐งแตขสฒ(๐๐โฑผ+๐พโฑผแต๐นโ) # ๐~๐๐+๐พ๐น'
~ ๐(๐โ + ๐งโโฑ๐แตข) + ๐๐งโโฑ๐งแตขสฒ๐โฑผ + ๐งโโฑ๐งแตขสฒ๐พโฑผแต๐นโ
~ ๐(๐โ + ๐งโโฑ๐แตข + ๐งโโฑ๐งแตขสฒ๐โฑผ) + ๐งโโฑ๐งแตขสฒ๐พโฑผแต๐นโ
# For level three, ๐นโ is zero:
๐โ ~ ๐(๐โ + ๐งโโฑ๐แตข + ๐งโโฑ๐งแตขสฒ๐โฑผ)
# The above establishes a clear pattern:
๐โ ~ ๐(๐โ + ๐งโโฑ๐แตข + ๐งโโฑ๐งแตขสฒ๐โฑผ + ๐งโโฑ๐งแตขสฒ๐งโฑผแต๐โ + ...)
๐ ~ ๐(๐ + ๐ง ๐' + ๐ง ๐ง'๐" + ๐ง ๐ง'๐ง"๐"' + ...)
# Error bound estimate:
0 < ๐ < 1
0 < ๐๐=(1-๐)๐ < 0.25 = ยผ
|๐๐| ~ ยผ
|๐| ~ ยฝ
|๐| ~ 1+โ|๐'|
~ 1+โยฝ
~ 1+ยฝ๐ := ๐ช
|โ๐พ| ~ โ๐ # random walk
|๐ง| ~ |๐พ||๐๐|
~ ยผโ๐
|๐| ~ |๐|(|๐| + |๐ง ๐'| + |๐ง ๐ง'๐"| + |๐ง ๐ง'๐ง"๐"'| + ...)
~ |๐|(๐ช + |๐ง |๐ช + |๐ง ๐ง'|๐ช + |๐ง ๐ง'๐ง"'|๐ช + ...)
~ |๐|๐ช(1 + |๐ง| + |๐ง|ยฒ + |๐ง|ยณ + ...)
# Consider very large ๐ on each level in an ๐+2 layer network:
|๐| ~ |๐|ยฝ๐(ยผโ๐)โฟ
# For a 3 layer network(input, middle, and output layers), ๐=1:
|๐| ~ |๐|๐ช(1 + |๐ง|)
~ |๐|๐โ๐ / 8 # ๐>>1, large ๐
|๐| ~ 8|๐| / ๐โ๐ # ๐>>1
# In trying to find the recursion pattern, I came across several interesting
# expressions. I define them all here, including the ones actually used above:
๐๐ := ๐(1-๐)
๐ := โ๐
๐ := ๐ + ๐พ ๐'
๐ = โ ๐+๐พ๐'
๐+๐น := โ(๐+๐)
๐ = โ๐
๐+๐ := ๐+๐บ + (๐พ+๐บ)(๐'+๐น')
๐ := 1+โ๐'
๐ง ๐' := ๐พ ๐๐'๐'
# Legacy:
๐ := ๐๐ ๐
๐ฟ := ๐ง ๐' = ๐พ ๐๐'๐' = ๐พ ๐'
๐พ := ๐ง ๐ฟ' = ๐ง ๐ง'๐"