OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-sensory commits / 9b4e557

spell check
9b4e55790501d2055dea0dcb3a2291e1364ceac9
by Linas Vepstas <linas@linas.org> · 2026-01-13T06:06:20.000Z

Changed files (1) +21 -21

DesignLearn-A.md +21 -21
……@@ -13,15 +13,15 @@ there. However, I want to incorporate the new ideas here, and so, for
1313now, this chapter is here.
1414
1515The language learning started with computing pair-wise MI between words,
16then uusing this to create a network between words, then breaking up the
16then using this to create a network between words, then breaking up the
1717network into jigsaws. The jigsaws were then clustered, and the clusters
1818then used to parse the same text, again. This all worked fine. The next
1919step of the plan was to then repeat: find correlations between these
20clustered jigsaws, then tile again, etc. ad ininfinitum. That step was
20clustered jigsaws, then tile again, etc. ad infinitum. That step was
2121never taken, for two reasons:
2222
2323* Managing the batch processing pipeline became overwhelming. The
24 propsoed solution to that was to create sensori-motor agents that
24 proposed solution to that was to create sensori-motor agents that
2525 could crawl the data "of their own volition"; or rather, automated
2626 in such a way that I could aim agents at the data and have them
2727 process and digest without my explicit intervention at a low level.
……@@ -38,7 +38,7 @@ never taken, for two reasons:
3838 at all with a sensori-motor design.
3939
4040 The solution to that stumbling block was to develop the concept of
41 "flows" in Atomese: of flowng data that travels through networks
41 "flows" in Atomese: of flowing data that travels through networks
4242 defined declaratively in Atomese. This required lots of low-level
4343 grunt-work: defining Atoms that could add, multiply, accumulate,
4444 take dot-products, mask bits, transpose columns and tows, but also
……@@ -103,23 +103,23 @@ axioms are specific building blocks that are assembled.
103103The rules and axioms are jigsaw pieces; theorem proving is the assembly
104104of these. If it is free an unconstrained, then it is generation; if its
105105constrained, then some sort of satisfiability solver is needed: the
106jigsaw much assmble so as to build be bridge between constraints. The
106jigsaw much assemble so as to build be bridge between constraints. The
107107satisfiability algorithm must be fast, but also the bridge that is build
108mst be minimal or optimal in some way.
108must be minimal or optimal in some way.
109109
110110### Minimization
111111The words "minimal" and "optimal" make me personally think of minimal
112112surfaces: soap bubbles, for instance. Geodesics in Riemannian geometry.
113113Assemblies of jigsaws do not have smooth differentiable structure, but
114114still, some of the ideas carry over analogously, because there are
115several natural ideas of "minimal" for jigaw assemblies. For example:
115several natural ideas of "minimal" for jigsaw assemblies. For example:
116116the assembly that uses the minimal number of pieces. Or, if we weight
117117each piece with e.g. log probability (i.e. "entropy" or "information")
118118then minimize the sum of that.
119119
120120### Homtopic deformation
121The general "feel" of continutity is taken up by the Scott topology,
122where we can talk about the homotopic deformation of jigsaw aassemblies.
121The general "feel" of continuity is taken up by the Scott topology,
122where we can talk about the homotopic deformation of jigsaw assemblies.
123123There is a very easy way of understanding this if you are a software
124124programmer: a "homotopic deformation" is a "refactoring of the
125125software". Any collection of small changes that can be made to a
……@@ -138,7 +138,7 @@ work on bare assembly, but in abstract insn sets, the "intermediate
138138language" being a way-point.
139139
140140But this analogy can be pushed "all the way": A compiler is a homotopic
141defomration of a C/C++ program into assembly code; an assembler is a
141deformation of a C/C++ program into assembly code; an assembler is a
142142further deformation (and linking!) into machine binary. A bridge between
143143two different representations that does not alter the function: Whatever
144144the programmer wrote the C/C++ code to do, the machine binary will do
……@@ -158,9 +158,9 @@ equations (the solution of which defines geodesics)? I don't know.
158158Perhaps. People already run around claiming that one should maximize
159159free energy (Gibbs free energy) or perhaps the "integrated information";
160160all of these ideas imply some kind of differentiable structure minimized
161or maximized via some Euler-Lagrange-style differentail or difference
161or maximized via some Euler-Lagrange-style differential or difference
162162eqns. I don't want to get hung up on the details, but rather the
163artistic impression: when there is stuff to be minimized and maximzed,
163artistic impression: when there is stuff to be minimized and maximized,
164164and when one has paths that can take you from here to there in some
165165quasi-continuous fashion, then one has some local difference-type
166166gradient that helps figure out how to move.
……@@ -185,7 +185,7 @@ I want, and I think it is possible, to have a system that self-reifies:
185185a self-assembly of pieces that can figure out how to reason, deduce,
186186prove, use logic and discover axioms. A system that can perceive
187187structure, in a "sensori-" way, and can manipulate structure, in a
188"motor" kind of way. So a sensori-motor system that percives structure,
188"motor" kind of way. So a sensori-motor system that perceives structure,
189189and acts on, manipulates that structure.
190190
191191### Perceiving structure
……@@ -215,7 +215,7 @@ $
215215 A . B = Sum_{p,q,r..} N(A | p,q,r...) N(B | p,q,r...)
216216$
217217In practice, (i.e. experimentally measured) the dot products are
218gaussian distributed, i.e. the data is distributed uniformly on a very
218Gaussian distributed, i.e. the data is distributed uniformly on a very
219219high dimensional sphere.
220220
221221### Clustering
……@@ -229,7 +229,7 @@ on it, and assign vectors to the closest one. Duh. That is, each
229229vertex label in the set {A, B, ...} is assigned to one of K different
230230clusters.
231231
232Unfortunately, this K-means clustering is horrble and ugly, because
232Unfortunately, this K-means clustering is horrible and ugly, because
233233although it reduced the bras $(A|$ to a small number, it did not reduce
234234the kets $|p,q,r...)$, of which there are still a gazzilion. Well,
235235sort-of. Given that each p,q,r,... is a vertex indicator plus a sex
……@@ -253,7 +253,7 @@ schema! Too bad, so sad, lets continue."
253253So, K-means clustering, as described above, will fail to discover the
254254axioms of mathematics, at least in the naive first attempt. If we start
255255from raw 3D space and time, then the perceived sensory data is what
256conventional robots peceive: sight, sound, radar, sonar. Whatever.
256conventional robots perceive: sight, sound, radar, sonar. Whatever.
257257
258258We can certainly design robots that crawl filesystems, or crawl social
259259media posts, and the clustering there will be textual. Experimental
……@@ -291,7 +291,7 @@ than moving forwards.)
291291Sound and Vision
292292----------------
293293Writing the above was procrastination for writing this section. But now
294I'm so bored, I don't feel like writing this sectiion. Alas.
294I'm so bored, I don't feel like writing this section. Alas.
295295
296296The idea in a nutshell was to restart the jigsaw learning process, this
297297time not just for natural language, but also for vision and sound.
……@@ -322,14 +322,14 @@ agent to experiment with blur filter size? What is it doing, except
322322being forced to dream?
323323
324324### Rubiks
325Adam proposed somethng slightly more agentic: solving the rubiks cube.
325Adam proposed something slightly more agentic: solving the rubiks cube.
326326The agent can "see" all the facets of the cube, and the agent can apply
327327any of the basic moves, and see the resulting changes. The learning task
328328is to see if the agent can learn to solve the cube.
329329
330330How should I think of this? "Solving" is finding a set of moves that
331take it from one (predeterimined, given) location in configuration
332space to another (predetermined, requested) location in confidguration
331take it from one (predetermined, given) location in configuration
332space to another (predetermined, requested) location in configuration
333333space. To build a bridge, a sequence of moves, from one to the other. To
334334solve a certain constraint satisfaction problem.
335335
……@@ -338,7 +338,7 @@ possible moves, and search for shortest paths from one configuration to
338338another". It would need to remember things that it tried. How do I, as
339339a programmer, encode positions? How do I give it efficient high-speed
340340search of memory of prior configurations and moves to get there? This
341trns into an engineering task, where I do the difficult engineering, so
341turns into an engineering task, where I do the difficult engineering, so
342342that a small and stupid agent can rapidly solve a Rubiks cube? I don't
343343think so.
344344