Advertisement
Guest User

discussion import

a guest
Sep 5th, 2016
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 32.45 KB | None | 0 0
  1. [21:55] == GMpow2_2 [~5@2a02:810a:83c0:cb14:50eb:211d:9215:4379] has joined #netention
  2. [21:56] <GMpow2_2> [14:10:38] <patham9> Seth used events like a. :|: since a long time
  3. [21:56] <GMpow2_2> [14:11:00] <patham9> while I always resisted on statements such as <{pixel0} --> [on]>. :|:
  4. [21:56] <GMpow2_2> now you finally got it
  5. [21:56] <GMpow2_2> after like ~1 year
  6. [21:56] == GMpow2 [~5@2a02:810a:83c0:cb14:879:569d:ea01:547f] has quit [Ping timeout: 264 seconds]
  7. [21:56] <GMpow2_2> or even more...hard to tell
  8. [21:57] == GMpow2_2 has changed nick to GMpow2
  9. [21:57] <GMpow2> yes most of my ideas are crap
  10. [21:57] <GMpow2> and tony handwaves too much
  11. [21:58] <GMpow2> my rant got spamed away
  12. [21:58] <GMpow2> point was, tony just says "nars can learn anything if you teach it like a child, use your imagination !!!one one eleven"
  13. [21:58] <GMpow2> while in practice NARS is propably rather limited
  14. [21:58] <patham9> yes I agree here
  15. [21:59] <patham9> not limited when we compare it to other AI systems, but still not the holy grail Tony like it to be
  16. [21:59] <sseehh__> https://github.com/deepstupid/sphinx5/blob/master/sphinx4-core/src/main/java/edu/cmu/sphinx/decoder/search/SortingActiveList.java this is nothing more than a nars bag described with diferent words
  17. [21:59] <sseehh__> and a focus on the top priority elements
  18. [21:59] == sseehh__ [~me@c-67-186-58-124.hsd1.pa.comcast.net] has quit [Excess Flood]
  19. [21:59] == sseehh__ [~me@c-67-186-58-124.hsd1.pa.comcast.net] has joined #netention
  20. [21:59] <GMpow2> <patham9> not limited when we compare it to other AI systems
  21. [22:00] <GMpow2> i dont even agree there
  22. [22:00] <sseehh__> motherfucking rate limit wtf
  23. [22:00] <sseehh__> spam coming
  24. [22:00] <patham9> :D
  25. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> https://www.youtube.com/watch?v=U0KTL62BsKI
  26. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> i think you guys need to watch this video
  27. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> and apply everythng this guy says about the energy generator to nars
  28. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> how he says that there are a number of different devices that work etc
  29. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> just like there would be a number of differetn nars that work
  30. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> i saw a number of different parallels between his team's research in energy generation, and how the same sort of innovation is happening in AI
  31. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> so i dont expect convergence on all points, maybe none
  32. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> probably some important ones like you said
  33. [22:00] <sseehh__> <sseehh__> <sseehh__> <sseehh__> but dont expect full convergence or design agreement
  34. [22:00] <patham9> i saw it :D
  35. [22:00] <GMpow2> yes the freenode got retarded again
  36. [22:00] <sseehh__> <sseehh__> <sseehh__> symvision or something like it is still needed
  37. [22:00] <sseehh__> <sseehh__> <sseehh__> more helpful if it's woven into the nars control mechanism more completely
  38. [22:00] <sseehh__> <sseehh__> <sseehh__> just like i imagine now how sphinx voice recognition could also be
  39. [22:00] <sseehh__> <sseehh__> <sseehh__> since i see similarities in the data structures they use or could be "unified" to use
  40. [22:00] <sseehh__> <sseehh__> <sseehh__> mainly the bag-like priority queue
  41. [22:00] <sseehh__> <sseehh__> <sseehh__> ill show u an example
  42. [22:00] <sseehh__> <sseehh__> <sseehh__> https://github.com/deepstupid/sphinx5/blob/master/sphinx4-core/src/main/java/edu/cmu/sphinx/decoder/search/SortingActiveList.java this is nothing more than a nars bag described with diferent words
  43. [22:00] <patham9> i know your plans about unifying NARS with this
  44. [22:00] <sseehh__> <sseehh__> <sseehh__> and a focus on the top priority elements
  45. [22:00] <GMpow2> like deepminds RL AI can do a better job than nars i think...
  46. [22:01] <patham9> looks reasonable if it operates like this anyway
  47. [22:01] <GMpow2> <patham9> i know your plans about unifying NARS with this
  48. [22:01] <GMpow2> ?
  49. [22:01] <GMpow2> no
  50. [22:01] <patham9> was talking to seth not you
  51. [22:01] <sseehh__> yeah i mean if it cna work for voice recognition it can work for symvision
  52. [22:02] <GMpow2> cna?
  53. [22:02] <sseehh__> can
  54. [22:02] <GMpow2> oh
  55. [22:02] <GMpow2> :D
  56. [22:02] <patham9> "[22:00] <GMpow2> like deepminds RL AI can do a better job than nars i think..." im not convinced, compare for example the time needed googles deepmind trains their systems on something like Pong, with how long Seth does it
  57. [22:02] <patham9> seconds versus days
  58. [22:02] <sseehh__> whe ni see them using millions of training steps i have to think that nars is potentially much faster
  59. [22:02] <sseehh__> because i run things no where near that lon
  60. [22:02] <sseehh__> long
  61. [22:02] <GMpow2> ah sehs version, i talked about 2.x.y....
  62. [22:03] <patham9> we will both come there.
  63. [22:03] <GMpow2> hm this is true...
  64. [22:03] <GMpow2> (that seh's is more efficient)
  65. [22:03] <sseehh__> my intuition says that NAL can learn so much faster than any numerical connectionist learning
  66. [22:03] <GMpow2> effective...whatever
  67. [22:03] <sseehh__> that its ridiculous how ignored it is
  68. [22:03] <sseehh__> but i havent bothered to demonstrate this factually
  69. [22:03] <sseehh__> i figured that's something someone with a more academic approach should try
  70. [22:04] <sseehh__> in the meantime im happy with my new bags and index
  71. [22:04] <sseehh__> HijackBag
  72. [22:04] <sseehh__> fuck CurveBag
  73. [22:04] <sseehh__> lol CurveBag still has its place somewhere
  74. [22:04] <sseehh__> but HijackBag is like the sawed off shotgun of bags
  75. [22:05] <patham9> yes thats also my intiution about NAL, seh
  76. [22:05] <sseehh__> it should be possible to mathematically prove why its the case that NAL can learn faster and represent solutions more compactly
  77. [22:05] <sseehh__> aside from the most important fact which is that it maintains a human readble symbol grounding
  78. [22:05] <sseehh__> not a big matrix of floats
  79. [22:06] <GMpow2> it could be seens as a boolean sparse matrix
  80. [22:07] <GMpow2> a big matrix :D
  81. [22:07] <GMpow2> i was thinking about using this as an representation for the terms...its not that fruitful i think
  82. [22:07] <sseehh__> a deep learning network just shits out a big turd of arbitrarily calculated 0's and 1's
  83. [22:08] <sseehh__> nars on the other hand shits out perfectly crystlaline term logic formulas
  84. [22:08] <GMpow2> its still incomprehensible at some point :S
  85. [22:09] <sseehh__> ((is&this)~incomprehensible)?
  86. [22:09] <GMpow2> no, but the results of this with term complexity > 9000 :D
  87. [22:09] <sseehh__> (--,(this --> incomprehsnible)).
  88. [22:10] <sseehh__> yeah but those are like the subconscious thought underpinnings
  89. [22:10] <GMpow2> (--,({this} --> incomprehsnible)).
  90. [22:10] <sseehh__> if it cant produce a simple output then its no better than DL
  91. [22:10] <GMpow2> makes more sense...
  92. [22:10] <sseehh__> but even in the mean time before it forms that simple conclusion, it still is symbol grounded
  93. [22:11] <sseehh__> and potentially lossless with regard to the input it's fed
  94. [22:11] <sseehh__> or at least lossy in some logically explainable way
  95. [22:11] <sseehh__> relative to the input budgeting and truth confidences
  96. [22:11] <sseehh__> where is the relative confidence adjustment for a DL network input
  97. [22:11] <sseehh__> it cant do such a thing
  98. [22:12] <GMpow2> maybe its just another mic strategy to point "researchers" into the wrong direction
  99. [22:12] <sseehh__> i dont doubt that possibility
  100. [22:12] <GMpow2> or maybe we need an AGI xplosion that it gets recognized
  101. [22:13] <sseehh__> i dont care about proving any of this stuff right now
  102. [22:13] <sseehh__> just to get it to work
  103. [22:13] <sseehh__> if "they" dont want to help its their loss
  104. [22:13] <GMpow2> like a concious nars which has hacked itself into all google cars and does a syncronized nars dance with the new bodies...
  105. [22:13] <GMpow2> :D
  106. [22:13] <GMpow2> "not in my lifetime"...yes i know
  107. [22:14] <patham9> ^^
  108. [22:14] <sseehh__> i have radiation levels for it to monitor, security cameras for it to watch. if this isnt AGI i dont care
  109. [22:14] <sseehh__> and likewise if there is a tool out there that can do this already, ill use it
  110. [22:14] <sseehh__> but i cant find it
  111. [22:14] <GMpow2> well, it has enough papers and books to read and compress
  112. [22:15] <sseehh__> i have politicians and an entire space administration to prosecute for crimes aginst humanity
  113. [22:15] <sseehh__> with a robo lawyer
  114. [22:15] <sseehh__> etc
  115. [22:15] <GMpow2> and youtube "workers" work furiously too all the time
  116. [22:15] <sseehh__> companies to bankrupt, etc\
  117. [22:15] <GMpow2> and it could help getting rid of closed source crap like mathematica
  118. [22:16] <sseehh__> yeah they are definitely asking for it
  119. [22:16] <sseehh__> "we compute math so well we cant figure out how to optimize our income so we can give u it for free. oh pretend you didnt realize that"
  120. [22:17] <GMpow2> the irony would be if the AI does it by bootstrpping of mathematica :D
  121. [22:17] <sseehh__> what good is mathematica if it cant solve its own financial burdens
  122. [22:17] <sseehh__> that it has to shift that burden to people
  123. [22:17] <GMpow2> then it goes like "meh i replaced these numerial solvers myself with something better"
  124. [22:17] <GMpow2> (yes not in my lifetime, im not so sure)
  125. [22:17] <sseehh__> strong AI will end all proprietary software
  126. [22:18] <sseehh__> so i dont see why Cyc bothers to pretend to do anything extraordinary they would just end themselves
  127. [22:18] <GMpow2> hopefully
  128. [22:18] <sseehh__> instead it just looks like a joke
  129. [22:18] <GMpow2> and i'll know how big games work before i die...
  130. [22:19] <GMpow2> wishful thinking
  131. [22:19] <GMpow2> then there is software which is closed source and used by .gov
  132. [22:20] <GMpow2> like firewall, vpn... etc
  133. [22:20] <GMpow2> can't remember what they used
  134. [22:20] <sseehh__> https://github.com/automenta/narchy/blob/skynet2/doc/meme/belief_and_antidesire.jpg
  135. [22:23] <sseehh__> now that i got done with that AFK shit i will continue the next step after this hijackbag which is to re-use links. i have a very interesting expreiment to try
  136. [22:23] <sseehh__> its like scattering brainwaves
  137. [22:23] <sseehh__> as a consequence of link re-use
  138. [22:27] <GMpow2> i still need to get educated about links :D
  139. [22:27] <GMpow2> someday...
  140. [22:28] <sseehh__> i think the remaiing GC dead weight is held in dead links in inactive concepts
  141. [22:28] <sseehh__> but if these get re-purposed they will not be dead
  142. [22:28] <sseehh__> but they will also not necessarily be the same values or even relevant values as to what they originally were
  143. [22:28] <sseehh__> which wuld add a degree of unpredictability
  144. [22:28] <sseehh__> as they are used in premise formation
  145. [22:28] <sseehh__> but this might help
  146. [22:29] <sseehh__> to scatter brainwaves where they wouldnt have ordinarily crossed
  147. [22:29] <sseehh__> but the re-use of the links will be more computationally efficient regardless
  148. [22:52] <GMpow2> https://www.youtube.com/watch?v=KRGca_Ya6OM
  149. [22:55] <GMpow2> https://www.youtube.com/watch?v=FflcA85zcOM
  150. [22:55] <GMpow2> so they are saying that just by driving with a fast vehicle the timedialation could add up to a measurable range...
  151. [23:14] <GMpow2> hm or not...
  152. [23:14] <GMpow2> will take a while to add up 5 ps :D
  153. [23:23] <sseehh__> did u see either of the 2 important youtube videos i posted today
  154. [23:23] <sseehh__> ive heard the guy in the first one talk about it before
  155. [23:23] <sseehh__> but its explained better here
  156. [23:24] <sseehh__> he says nukes can only truly detonate when and where there is a certain configuration of the earth and the sun
  157. [23:24] <sseehh__> otherwise they explode as just dirty bombs
  158. [23:24] <sseehh__> then he explained what the launch computer really must have to calculate
  159. [23:24] <sseehh__> because they cant just detonate a nuke whenever and wherever they want
  160. [23:25] <GMpow2> hm nope
  161. [23:25] <sseehh__> it has to do with the point along the line between the sun and center of the earth
  162. [23:25] <sseehh__> where this occurs on the surface/atmosphere
  163. [23:26] <sseehh__> that a certain resonance is what enables the nuke to explode
  164. [23:26] <GMpow2> but this is nothing new
  165. [23:26] <GMpow2> but i dont believe this ^^
  166. [23:26] <sseehh__> he calculated it based on all the nuclear blasts
  167. [23:26] <sseehh__> their location and time
  168. [23:26] <sseehh__> and found a pattern
  169. [23:26] <GMpow2> yes i know :D
  170. [23:26] <sseehh__> how can u argue with that
  171. [23:27] <GMpow2> "no we can't launch nukes on germany because it doesn't resonate"
  172. [23:27] <sseehh__> "no we can't launch nukes on berlin germany until 5pm 10/11/2016 that is the next resonance"
  173. [23:27] <GMpow2> if i look at static in the TV i'll for sure see someday green aliens news
  174. [23:27] <sseehh__> what i wnat to know is how this resonance effect affects NPP's
  175. [23:27] <sseehh__> the reactors
  176. [23:28] <sseehh__> if they cross this arc
  177. [23:28] <sseehh__> do they create like a surge in power output or something
  178. [23:28] <GMpow2> can it be veriefied or disproven easily...no
  179. [23:28] <sseehh__> or maybe they know in advance and shield the rods
  180. [23:28] <sseehh__> i would like to know more about the 2nd video i linked
  181. [23:28] <sseehh__> that is more practcal
  182. [23:28] <sseehh__> the magnet motor generators
  183. [23:29] <sseehh__> http://magneticenergysecrets.com/
  184. [23:30] <sseehh__> loooks simple enough
  185. [23:30] <GMpow2> i dont put a label "BS" on it...i guess my mind immune system is again a bit tune against these strange ideas
  186. [23:30] <sseehh__> it might be easier to pull off with a microcontroller than all that circuitry
  187. [23:30] <GMpow2> goes up and down and up and down :D
  188. [23:30] <sseehh__> well i am susceptible to unwarranted gullibility
  189. [23:30] <sseehh__> so im fact checking
  190. [23:31] <sseehh__> this isnt the only magnetic motor like this, he says in the video
  191. [23:31] <sseehh__> that there are several using the same princiiple
  192. [23:31] <sseehh__> http://peswiki.com/directory:bedini-sg:exhaustive-summary
  193. [23:34] <GMpow2> order now...order now
  194. [23:34] <GMpow2> seems like a good idea to gt money for nothing...uhh...free energy
  195. [23:35] <sseehh__> yeah but they admit that thre are other magnet generators based on the same principle
  196. [23:47] <patham9> re
  197. [23:47] <patham9> howsit going seh? :)
  198. [23:47] <patham9> narchy world domination already? ^^
  199. [23:48] <GMpow2> huh?
  200. [23:48] <sseehh__> no, narchy promises anarchy
  201. [23:49] <sseehh__> i made this new bag yesterday
  202. [23:49] <sseehh__> it is my favorite so far
  203. [23:49] <sseehh__> https://github.com/automenta/narchy/blob/skynet2/nal/src/main/java/nars/bag/impl/experimental/HijackBag.java
  204. [23:49] <GMpow2> patrick knows how my bag looks like :S
  205. [23:49] <sseehh__> its a leaky hashtable
  206. [23:50] <GMpow2> lets see
  207. [23:50] <sseehh__> but the leak is determined by relative budget strength of the potential item replacement
  208. [23:50] <sseehh__> float probNext = den > Param.BUDGET_EPSILON ? np / den : 0.5f;
  209. [23:50] <sseehh__> if (rng.nextFloat() < probNext) {
  210. [23:50] <sseehh__> dPending = np - dp; //keep the new value
  211. [23:50] <sseehh__> range(np);
  212. [23:50] <sseehh__> } else {
  213. [23:50] <sseehh__> remove(x);
  214. [23:50] <sseehh__> put(displaced.get(), displaced); //reinsert what was removed
  215. [23:50] <sseehh__> it is represented entirely with one map
  216. [23:50] <sseehh__> which i use nonblocking hashmap for
  217. [23:51] <sseehh__> so its locklessly concurrent
  218. [23:51] <sseehh__> its like a bloom filter using nars budget
  219. [23:51] <sseehh__> for sampling i use a linear probing that selects based on priority
  220. [23:51] * GMpow2 looked at the code and understood nothing :D
  221. [23:51] <sseehh__> this i need to tune a bit better with some summary statistics
  222. [23:51] <sseehh__> if ((r < p) || (r < p + tolerance((((float)j) / jLimit)))) {
  223. [23:51] <sseehh__> if (target.test(x)) {
  224. [23:51] <sseehh__> n--;
  225. [23:51] <sseehh__> r = curve();
  226. [23:51] <sseehh__> thats because you have to understand the superclass too
  227. [23:52] <sseehh__> public class HijackBag<X> extends HijacKache<X,BLink<X>> implements Bag<X> {
  228. [23:52] <sseehh__> HijacKache is essentially an open indexed Map<>
  229. [23:52] <sseehh__> but it is a modification of NonBlockingHashMap so it can do all the super concurrency
  230. [23:52] <sseehh__> any open-indexed / cuckoo hashtable can work for this
  231. [23:53] <patham9> cool
  232. [23:53] <patham9> so it builds on this nonblocking hashmap?
  233. [23:53] <patham9> does it have a selection curve still?
  234. [23:53] <sseehh__> yes it extends it but it could also be rewritten to work for other Map implementations like UnifiedMap from eclipse collections
  235. [23:53] <sseehh__> yes in a way
  236. [23:53] <sseehh__> but since there is no sorting, it has to do it statistially
  237. [23:54] <sseehh__> when it probes the entries
  238. [23:54] <patham9> ah i see, interesting
  239. [23:54] <sseehh__> i measured some of the selection behavior, and it approximates what i can get with curvebag
  240. [23:54] <patham9> nice1
  241. [23:54] <sseehh__> so yes any arbitrary curve can still be defined
  242. [23:54] <patham9> if sorting can be avoided this is great
  243. [23:54] <sseehh__> yah and also keeping two data structures synchronized was a headache
  244. [23:54] <sseehh__> the map and the list
  245. [23:54] <patham9> oh i see. ^^
  246. [23:55] <sseehh__> http://i.imgur.com/BXaZsI4.png
  247. [23:55] <sseehh__> B and C are two different executions with different random seeds
  248. [23:55] <sseehh__> to show that it would get smoother
  249. [23:56] <patham9> nice
  250. [23:56] <sseehh__> this is for a 32 item bag without any forgetting
  251. [23:56] <sseehh__> if forgetting were involved, things would shift
  252. [23:56] <sseehh__> and the curve would become smoother
  253. [23:56] <sseehh__> but i think if they are stuck in place it has the jagged edges
  254. [23:56] <sseehh__> ill analyze it more
  255. [23:57] <sseehh__> after i make the better probing selector
  256. [23:57] <sseehh__> it uses a 'beam' threshold which widens
  257. [23:57] <sseehh__> the closer it gets to the end of the probe
  258. [23:57] <sseehh__> so that it tries to get a more precise result early on, starting from a random index
  259. [23:57] <sseehh__> but as it nears the end of the cycle through them all, it becomes more willing to accept anything
  260. [23:57] <sseehh__> i use a curve for this too
  261. [23:57] <sseehh__> also i randomize the iteration order that it will probe, either forward or backward
  262. [23:58] <sseehh__> in some ways this is like levelbag
  263. [23:58] <sseehh__> in how it probed levels
  264. [23:58] <sseehh__> except here each level is length 0 or 1
  265. [23:58] <sseehh__> and unsorted
  266. [23:58] <patham9> i see
  267. [23:59] <sseehh__> if it can measure the min/max range beter then it can be more precise in the threshold value it samples with
  268. [23:59] <sseehh__> anyway this is all fine-tuning
  269. [23:59] <sseehh__> it works here as a drop-in alternative for CurveBag
  270. [23:59] <sseehh__> now im using both
  271. [23:59] <sseehh__> CurveBag for concepts bag, and this for all cocnept's termlink and tasklink bags
  272. [23:59] <sseehh__> memory usage is lowered, bag access is faster
  273. [23:59] <GMpow2> <sseehh__> but since there is no sorting, it has to do it statistially
  274. [00:00] <GMpow2> i always woundered why the sorting is required at all
  275. [00:00] <sseehh__> it isnt here
  276. [00:00] <GMpow2> yes i know why but it sucks
  277. [00:00] <sseehh__> thas why i said its like the sawed off shotgun of bags, or more accurately its like a machine gun
  278. [00:00] <sseehh__> which sprays bullets everywhree
  279. [00:01] <GMpow2> its like as if pei was like "meh, that will be no performance issue"
  280. [00:01] <patham9> Peis bag didn't sort
  281. [00:01] <sseehh__> im stil using curvebag for concepts, which is sorted
  282. [00:01] <sseehh__> it "binned" like a histogram
  283. [00:01] <patham9> indeed
  284. [00:02] <GMpow2> hm i never understood this
  285. [00:02] <GMpow2> because i never looked into it
  286. [00:02] <sseehh__> it was like N lists
  287. [00:02] <GMpow2> hm...right
  288. [00:02] <sseehh__> and each one corresponded to a range of the priority 0..100%
  289. [00:02] <GMpow2> i can remember now :D
  290. [00:02] <sseehh__> like 0..0.1, 0.1..0.2
  291. [00:02] <patham9> indeed
  292. [00:02] <sseehh__> the problem with this is that the ranges cant be assumed to be balanced
  293. [00:03] <sseehh__> so sampling from them isnt fair without some accounting for their distribution
  294. [00:03] <sseehh__> which could be possible
  295. [00:03] <sseehh__> we may make a better level bag at some point with adaptive binning
  296. [00:03] <patham9> yes which sometimes gave items in sparse leves of low priority higher selection chance than items in dense levels of high priority
  297. [00:03] <sseehh__> like quartiles or something
  298. [00:03] <GMpow2> hm
  299. [00:03] <patham9> this might work yes
  300. [00:04] <GMpow2> is it actually a problem that the priorities run against zero
  301. [00:04] <sseehh__> no, the dynamic range can be whatever
  302. [00:04] <sseehh__> in curvebag you have a well known min and max
  303. [00:04] <sseehh__> so you can normalize any sampling to these if you want
  304. [00:04] <GMpow2> i have no idea how float behaves but i think it will round down to zero at some point
  305. [00:04] <sseehh__> like dynamic range compression in audio
  306. [00:04] <sseehh__> thats why we use an epsilon minimum value below which is considereed zero
  307. [00:05] <patham9> curvebag seems to be the simplest way to get the bag right. but i agree its not the most performant option
  308. [00:05] <sseehh__> /**
  309. [00:05] <sseehh__> * minimum difference necessary to indicate a significant modification in budget float number components
  310. [00:05] <sseehh__> */
  311. [00:05] <sseehh__> public static final float BUDGET_EPSILON = 0.0002f;
  312. [00:05] <GMpow2> ah i see
  313. [00:05] <sseehh__> this can be reduced arbitrarly within float precision limits
  314. [00:05] <sseehh__> but this gives enough room at the bottom for interseting dynamics
  315. [00:05] <sseehh__> no i think this hijackbag is simpler
  316. [00:05] <sseehh__> well it is algorithmically simpler
  317. [00:05] <patham9> algorithmically yes
  318. [00:05] <sseehh__> curvebag is more complex becaues it involves keeping two distinct data structures in sync
  319. [00:06] <sseehh__> and while this has been solved, even in the concurrent case (which is a headache) i wish i had thought of this approach earlier
  320. [00:07] <sseehh__> what i mentioned before, my next step is to try to re-use links
  321. [00:07] <sseehh__> but in a way which allows links, wherever they may be, to receive the new value rather than just get deleted
  322. [00:08] <sseehh__> do you see what this will do
  323. [00:08] <sseehh__> lets say a concept A gets a tasklink X
  324. [00:08] <sseehh__> er,
  325. [00:09] <sseehh__> maybe im confusing it
  326. [00:09] <sseehh__> ill see what the code turns out to do
  327. [00:09] <sseehh__> basically using a fixed set of link instances
  328. [00:09] <sseehh__> so anywhere that also uses them will be affected
  329. [00:09] <patham9> sounds like you want to avoid creating new objects for new links
  330. [00:10] <sseehh__> yes thats all
  331. [00:10] <sseehh__> but im tyring to think if there are any side effects this will have
  332. [00:10] <sseehh__> but i think thers only one situation i keep a refernce to a link
  333. [00:10] <sseehh__> so i can just clone them there
  334. [00:10] <sseehh__> and then the bag will be free to re-use its own links
  335. [00:11] <sseehh__> the link objects themselves can eventually get merged into the Map's data structure
  336. [00:11] <sseehh__> so it can be one array
  337. [00:11] <sseehh__> not one array referencing N link objects
  338. [00:12] <sseehh__> the problem with the extra instances is not just memory consumption but it puts pressure on the garbage collector
  339. [00:12] <sseehh__> while profilling i can see there are typically millions of these
  340. [00:12] <sseehh__> and they are relatively small objects each
  341. [00:12] <sseehh__> like < 50 bytes
  342. [00:12] <sseehh__> but its in the number of them that complicates the memory
  343. [00:14] <sseehh__> after i address this then the next step will be to revisit the deriver and optimize that further
  344. [00:14] <sseehh__> then ill evalaute what the remaining hotspots are
  345. [00:14] <sseehh__> this is specifically implementation side of things
  346. [00:14] <sseehh__> there are other areas to concentrate on wrt theory, user interface etc
  347. [00:17] <patham9> i see
  348. [00:18] <patham9> another question
  349. [00:18] <patham9> when you give feedback to links
  350. [00:18] <patham9> will this preference be used by tasks of different content? or is the budget increase just for native tasks?
  351. [00:18] <patham9> consider the concept cat
  352. [00:19] <patham9> ehm no consider this one:
  353. [00:19] <patham9> light --> on
  354. [00:19] <patham9> a task like switch --> on ==> light --> on can also be in this concept light --> on in your implementation right?
  355. [00:21] <sseehh__> any tasklink can be in any concept
  356. [00:21] <sseehh__> i should document where this happens, and also find if i'm missing any links which should be added
  357. [00:22] <patham9> im not talking about the object
  358. [00:22] <patham9> any task can be in any concept?
  359. [00:22] <sseehh__> any tasklink can be in any concept
  360. [00:22] <patham9> <light --> on> can be in <fruit --> [green]> ?
  361. [00:22] <sseehh__> in its tasklink table
  362. [00:23] <sseehh__> as a tasklink yeah
  363. [00:23] <sseehh__> not belief table
  364. [00:23] <patham9> why would you allow this?
  365. [00:23] <sseehh__> im just saying its possible for this to happen
  366. [00:23] <sseehh__> im not sure every case that a tasklink is inserted
  367. [00:23] <patham9> yes, and i am asking why you would allow this ^1
  368. [00:23] <patham9> ^^
  369. [00:23] <patham9> i claim its a bug if its happening
  370. [00:23] <sseehh__> well, we allow termlinks from anywheer to anywhere like in STM link
  371. [00:24] <sseehh__> if a strange tasklink is for some reason inserted into another concept, it could be for a purpose similar to this. again i need to check if any of my plugins do this
  372. [00:24] <patham9> termlinks? they link term to sub or superterms in your design
  373. [00:24] <sseehh__> but the net effecdt will be that a novel permise may be generated
  374. [00:24] <sseehh__> both
  375. [00:25] <patham9> yes but there wont be a termlink between <fruit --> [green]> and <{tim} --> human>
  376. [00:25] <sseehh__> due to STMLinkage maybe
  377. [00:25] <patham9> and task <fruit --> [green]> has no place in concept human
  378. [00:25] <sseehh__> again due to something like STMLinkage
  379. [00:25] <sseehh__> but ordinary concept activation, no
  380. [00:25] <patham9> i see
  381. [00:25] <patham9> there is an issue though
  382. [00:26] <patham9> for concept <light --> on> both tasks <light --> on>. and <switch --> on ==> light --> on>. will go into this concept
  383. [00:26] <patham9> when one is used, the link feedback will just reward the termlink
  384. [00:26] <patham9> where the information of which task was used, will be lost
  385. [00:26] <sseehh__> no my feedback works like this:
  386. [00:27] <patham9> so termlink budget is an ambiguity problem for different task contents
  387. [00:27] <sseehh__> each derived task records the termlink and tasklink and concept that formed it
  388. [00:27] <patham9> *has
  389. [00:27] <sseehh__> this is known because the premise contains this and the premise is what forms the task
  390. [00:27] <patham9> yes, and the feedback then strenghtens what?
  391. [00:27] <sseehh__> if there is feedback to apply i go to this concept, find this termlink and this tasklink
  392. [00:27] <sseehh__> and apply the feedback to them if they exist
  393. [00:27] <sseehh__> one or both may or may not exist anymore
  394. [00:28] <patham9> so you apply the feedback to tasklink-termlink combinations and not termlink alone?
  395. [00:28] <sseehh__> so its only if they still exist
  396. [00:28] <sseehh__> to both individually
  397. [00:28] <sseehh__> if possible
  398. [00:28] <sseehh__> or only one individually
  399. [00:28] <sseehh__> or neither
  400. [00:28] <sseehh__> and thats as far as it goes
  401. [00:28] <patham9> so both the task and the termlink will be strenghtened
  402. [00:28] <sseehh__> task, termlink, and tasklink
  403. [00:29] <patham9> yes
  404. [00:29] <patham9> i dont think that this can work very well
  405. [00:30] <sseehh__> compared to what?
  406. [00:30] <patham9> hm but on the other hand its not that much differently than rewarding the task-belief pair
  407. [00:30] <patham9> *differenzt
  408. [00:30] <sseehh__> it is different because it doesnt affect the task or belief
  409. [00:30] <sseehh__> it jus affects the links which chose it
  410. [00:30] <patham9> yes
  411. [00:31] <sseehh__> negative feedback is also generated if the task already existed, so in this way it also functions as a novelty filter
  412. [00:31] <patham9> problem here is that a termlink can also be chosen from another task of different content in the same concept
  413. [00:31] <patham9> leading to a ambiguity that becomes an issue
  414. [00:31] <sseehh__> true but thats why the feedback's effect is tunable
  415. [00:31] <sseehh__> it could be 1%, 5%, 100% whatever
  416. [00:31] <sseehh__> its in the aggregate activity of this that i expect results
  417. [00:31] <patham9> this doesn't resolve this ambiguity issue
  418. [00:31] <sseehh__> with low affect %
  419. [00:32] <patham9> the feedback strength doesn't resolve it
  420. [00:32] <sseehh__> if a termlink consistently receives negative feedback then it will be suppresed generally
  421. [00:32] <patham9> one way to resolve is having different termlink budgets for different task contents
  422. [00:32] <patham9> for each termlink!
  423. [00:32] <sseehh__> if you want to make the feedback based on pairs of termlink and tasklink then you need tasklink record and where is all this memory coming from to hold this effectively?
  424. [00:33] <sseehh__> what is the point of having termlink and tasklink if they are fused together into a big matrix
  425. [00:33] <patham9> we dont have them
  426. [00:33] <patham9> but we are currently resolving this ambiguity problem
  427. [00:34] <patham9> and i found two ways, having task-term-specific termlink budgets is one way
  428. [00:34] <sseehh__> it comes down to what you want the system to remember to improve the prediction ability for future premises
  429. [00:34] <sseehh__> but this is limited to memory
  430. [00:34] <patham9> the other one is giving up the idea of foreign tasks
  431. [00:34] <sseehh__> there will always be design tradeoffs like this
  432. [00:34] <sseehh__> a compromise might be to use a vector of termlink values each for corresponding operation type of a task applied with it
  433. [00:35] <sseehh__> then it will be a vectorized termlink model whcih is less expensive than a Map<TaskLink,Budget> sort of memory in each termlink
  434. [00:35] <patham9> there will be some tradeoffs, but it might later turn out that this ambiguity problem is so fundamental that the system will never overcome it
  435. [00:35] <patham9> without a fundamental change like the two i am currently investigating
  436. [00:36] <sseehh__> so far i havent seen a need to address this
  437. [00:36] <sseehh__> one other reason is how i budget premises
  438. [00:36] <sseehh__> which is in how termlink and tasklink budget result in the premise's budget
  439. [00:36] <sseehh__> there are a few options
  440. [00:36] <sseehh__> AND, OR, AVERAGE, PLUS etc
  441. [00:36] <sseehh__> if OR is used, then a premise wil be budgeted by either the termlink or tasklink
  442. [00:37] <sseehh__> so it has half the chance of being affected by the ambiguity
  443. [00:37] <sseehh__> of being suppressed by ambiguity i mean
  444. [00:37] <patham9> i see
  445. [00:37] <sseehh__> because it will be optimistic
  446. [00:38] <sseehh__> but if AND is chosen then it will be pessimistic
  447. [00:38] <sseehh__> etc
  448. [00:38] <sseehh__> but i dont see this as being a problem here
  449. [00:38] <sseehh__> because this feedback should only manifest such drastic consequences in the aggregate
  450. [00:38] <sseehh__> and even then its effect is only short-term
  451. [00:39] <sseehh__> as new links replace the old ones, this information is lost anywya
  452. [00:39] <sseehh__> also there are many ways to form the same premise
  453. [00:39] <sseehh__> from different termlink, tasklink pairs
  454. [00:40] <sseehh__> so if one fails, another wont
  455. [00:40] <sseehh__> via another concept etc
  456. [00:40] <sseehh__> there is a lot of redundancy built into NAL
  457. [00:40] <sseehh__> for better or worse
  458. [00:41] <sseehh__> er, many ways to form the same derivation from multiple premises
  459. [00:41] <sseehh__> and consistent merging of their results will have the same net effect
  460. [00:42] <sseehh__> even down to the same durability and quality calculations if careful
  461. [00:42] <sseehh__> like if there existed a hypothetical "steady state" budget for a derivation given the current system state
  462. [00:42] <sseehh__> each derivation being a sample which contributes to the result
  463. [00:42] <sseehh__> yo ucould theoretically calculate every premise possible in the memory
  464. [00:43] <sseehh__> and the resulting task budget, from all the merging, would have a final value
  465. [00:43] <sseehh__> nars only tries to approximate this as best as it can
  466. [00:43] <patham9> yes, indeed
  467. [00:43] <sseehh__> but imagine how much cpu would be required to get an exhaustive result for one task alone
  468. [00:44] <patham9> 1000 ^^
  469. [00:44] <patham9> do you mind if i share this discussion to #nars btw.?
  470. [00:44] <sseehh__> ok
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement