Comments (2)
3D input needs to be catered for in uniform-ff-synapses, this creates
synapses by mapping input topology to corresponding areas of column
topology. We will eventually need similar functionality when growing
distal synapses locally, as well as if we grow feed-forward synapses at run
time.
We could use your squash-last-dimension to get the input and columns into
the same dimensions before doing proportional scaling?... Maybe should
have a function to translate a point in one topology to a corresponding
nearest point on another topology?
On 4 December 2014 at 01:30, Marcus Lewis [email protected] wrote:
(require '[org.nfrac.comportex.demos.isolated-2d :as demo])
(demo/n-region-model 2)
==>
NullPointerException from clojure.lang.Numbers/addFewer than 3 dimensions are getting passed into
ThreeDTopology/index_of_coordinatesBefore 5a860d8
5a860d8,
this code would cause a stack overflow, so this is just another layer of
the onion.I'm tentatively exploring the issue, but feel free to jump in if it's a
no-brainer.Numbers.java: 961 clojure.lang.Numbers/ops Numbers.java: 126 clojure.lang.Numbers/add topology.cljx: 83 org.nfrac.comportex.topology.ThreeDTopology/index_of_coordinates columns.cljx: 61 org.nfrac.comportex.columns$uniform_ff_synapses$fn__11848/invoke core.clj: 6353 clojure.core/mapv/fn ArrayChunk.java: 58 clojure.lang.ArrayChunk/reduce protocols.clj: 98 clojure.core.protocols/fn protocols.clj: 19 clojure.core.protocols/fn/G protocols.clj: 31 clojure.core.protocols/seq-reduce protocols.clj: 54 clojure.core.protocols/fn protocols.clj: 13 clojure.core.protocols/fn/G core.clj: 6289 clojure.core/reduce core.clj: 6353 clojure.core/mapv columns.cljx: 55 org.nfrac.comportex.columns$uniform_ff_synapses/invoke cells.cljx: 638 org.nfrac.comportex.cells$layer_of_cells/invoke core.cljx: 94 org.nfrac.comportex.core$sensory_region/invoke core.cljx: 317 org.nfrac.comportex.core$region_network$fn__12331/invoke protocols.clj: 143 clojure.core.protocols/fn protocols.clj: 19 clojure.core.protocols/fn/G protocols.clj: 147 clojure.core.protocols/fn protocols.clj: 19 clojure.core.protocols/fn/G protocols.clj: 31 clojure.core.protocols/seq-reduce protocols.clj: 54 clojure.core.protocols/fn protocols.clj: 13 clojure.core.protocols/fn/G core.clj: 6289 clojure.core/reduce core.cljx: 324 org.nfrac.comportex.core$region_network/invoke core.cljx: 345 org.nfrac.comportex.core$regions_in_series/invoke isolated_2d.cljx: 111 org.nfrac.comportex.demos.isolated_2d$n_region_model/invoke isolated_2d.cljx: 108 org.nfrac.comportex.demos.isolated_2d$n_region_model/invoke REPL: 1 user/eval19149 Compiler.java: 6703 clojure.lang.Compiler/eval Compiler.java: 6666 clojure.lang.Compiler/eval core.clj: 2927 clojure.core/eval main.clj: 239 clojure.main/repl/read-eval-print/fn main.clj: 239 clojure.main/repl/read-eval-print main.clj: 257 clojure.main/repl/fn main.clj: 257 clojure.main/repl RestFn.java: 1523 clojure.lang.RestFn/invoke interruptible_eval.clj: 67 clojure.tools.nrepl.middleware.interruptible-eval/evaluate/fn AFn.java: 152 clojure.lang.AFn/applyToHelper AFn.java: 144 clojure.lang.AFn/applyTo core.clj: 624 clojure.core/apply core.clj: 1862 clojure.core/with-bindings* RestFn.java: 425 clojure.lang.RestFn/invoke interruptible_eval.clj: 51 clojure.tools.nrepl.middleware.interruptible-eval/evaluate interruptible_eval.clj: 183 clojure.tools.nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn interruptible_eval.clj: 152 clojure.tools.nrepl.middleware.interruptible-eval/run-next/fn AFn.java: 22 clojure.lang.AFn/run ThreadPoolExecutor.java: 1142 java.util.concurrent.ThreadPoolExecutor/runWorker ThreadPoolExecutor.java: 617 java.util.concurrent.ThreadPoolExecutor$Worker/run Thread.java: 745 java.lang.Thread/run
—
Reply to this email directly or view it on GitHub
#9.
Felix Andrews / 安福立
http://www.neurofractal.org/felix/
from comportex.
Wait, I remember now what I was thinking.
Typically we have a 2D column field receiving input from other 2D region(s)
with an added 3rd dimension of cells. So it makes sense to do local
topological mapping with only the first 2 dimensions, i.e. ignore the last
(cell) dimension when calculating spatial location.
Not sure whether this really works when we are combining dimensions of
several regions... but seems reasonable to just ignore the 3rd dimension
rather than trying to get the whole hypercube to conform.
On 4 December 2014 at 09:07, Felix Andrews [email protected] wrote:
3D input needs to be catered for in uniform-ff-synapses, this creates
synapses by mapping input topology to corresponding areas of column
topology. We will eventually need similar functionality when growing
distal synapses locally, as well as if we grow feed-forward synapses at run
time.We could use your squash-last-dimension to get the input and columns into
the same dimensions before doing proportional scaling?... Maybe should
have a function to translate a point in one topology to a corresponding
nearest point on another topology?On 4 December 2014 at 01:30, Marcus Lewis [email protected]
wrote:(require '[org.nfrac.comportex.demos.isolated-2d :as demo])
(demo/n-region-model 2)
==>
NullPointerException from clojure.lang.Numbers/addFewer than 3 dimensions are getting passed into
ThreeDTopology/index_of_coordinatesBefore 5a860d8
5a860d8,
this code would cause a stack overflow, so this is just another layer of
the onion.I'm tentatively exploring the issue, but feel free to jump in if it's a
no-brainer.Numbers.java: 961 clojure.lang.Numbers/ops Numbers.java: 126 clojure.lang.Numbers/add topology.cljx: 83 org.nfrac.comportex.topology.ThreeDTopology/index_of_coordinates columns.cljx: 61 org.nfrac.comportex.columns$uniform_ff_synapses$fn__11848/invoke core.clj: 6353 clojure.core/mapv/fn ArrayChunk.java: 58 clojure.lang.ArrayChunk/reduce protocols.clj: 98 clojure.core.protocols/fn protocols.clj: 19 clojure.core.protocols/fn/G protocols.clj: 31 clojure.core.protocols/seq-reduce protocols.clj: 54 clojure.core.protocols/fn protocols.clj: 13 clojure.core.protocols/fn/G core.clj: 6289 clojure.core/reduce core.clj: 6353 clojure.core/mapv columns.cljx: 55 org.nfrac.comportex.columns$uniform_ff_synapses/invoke cells.cljx: 638 org.nfrac.comportex.cells$layer_of_cells/invoke core.cljx: 94 org.nfrac.comportex.core$sensory_region/invoke core.cljx: 317 org.nfrac.comportex.core$region_network$fn__12331/invoke protocols.clj: 143 clojure.core.protocols/fn protocols.clj: 19 clojure.core.protocols/fn/G protocols.clj: 147 clojure.core.protocols/fn protocols.clj: 19 clojure.core.protocols/fn/G protocols.clj: 31 clojure.core.protocols/seq-reduce protocols.clj: 54 clojure.core.protocols/fn protocols.clj: 13 clojure.core.protocols/fn/G core.clj: 6289 clojure.core/reduce core.cljx: 324 org.nfrac.comportex.core$region_network/invoke core.cljx: 345 org.nfrac.comportex.core$regions_in_series/invoke isolated_2d.cljx: 111 org.nfrac.comportex.demos.isolated_2d$n_region_model/invoke isolated_2d.cljx: 108 org.nfrac.comportex.demos.isolated_2d$n_region_model/invoke REPL: 1 user/eval19149 Compiler.java: 6703 clojure.lang.Compiler/eval Compiler.java: 6666 clojure.lang.Compiler/eval core.clj: 2927 clojure.core/eval main.clj: 239 clojure.main/repl/read-eval-print/fn main.clj: 239 clojure.main/repl/read-eval-print main.clj: 257 clojure.main/repl/fn main.clj: 257 clojure.main/repl RestFn.java: 1523 clojure.lang.RestFn/invoke interruptible_eval.clj: 67 clojure.tools.nrepl.middleware.interruptible-eval/evaluate/fn AFn.java: 152 clojure.lang.AFn/applyToHelper AFn.java: 144 clojure.lang.AFn/applyTo core.clj: 624 clojure.core/apply core.clj: 1862 clojure.core/with-bindings* RestFn.java: 425 clojure.lang.RestFn/invoke interruptible_eval.clj: 51 clojure.tools.nrepl.middleware.interruptible-eval/evaluate interruptible_eval.clj: 183 clojure.tools.nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn interruptible_eval.clj: 152 clojure.tools.nrepl.middleware.interruptible-eval/run-next/fn AFn.java: 22 clojure.lang.AFn/run ThreadPoolExecutor.java: 1142 java.util.concurrent.ThreadPoolExecutor/runWorker ThreadPoolExecutor.java: 617 java.util.concurrent.ThreadPoolExecutor$Worker/run Thread.java: 745 java.lang.Thread/run
—
Reply to this email directly or view it on GitHub
#9.Felix Andrews / 安福立
http://www.neurofractal.org/felix/
Felix Andrews / 安福立
http://www.neurofractal.org/felix/
from comportex.
Related Issues (20)
- Readme out of date... HOT 1
- q_learning_1d demo showing "nth not supported" error in tgt->i arg destructuring HOT 1
- Just getting started - cljc files? HOT 2
- separated and serializable encoders HOT 13
- caching in encoders
- lazy-growing synapse graph HOT 5
- better hash / random number generator
- naming things HOT 1
- testing / validation strategy HOT 2
- learning functions more like STDP HOT 5
- random selection of learning cells from bursting columns
- Suggestion to try "substitution" or "context" pooling HOT 22
- select cells consistently, esp. when beginning sequences HOT 54
- allow algorithm alternatives HOT 2
- Rainbow order is incorrect in logo HOT 2
- Please export public API for javascript interop HOT 8
- Better docs please :) HOT 6
- composable layers only; get rid of regions
- Support for Clojure 1.9
- Any benefit to htm.java again HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from comportex.