KorrBot

  • 88 Replies
  • 8477 Views
*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • **************
  • Dot Matrix
  • *
  • 2288
  • First it wiggles, then it is rewarded.
Re: KorrBot
« Reply #60 on: April 25, 2018, 12:49:56 pm »
fixed typos
« Last Edit: May 08, 2018, 12:46:16 am by LOCKSUIT »
Emergent

*

Korrelan

  • Trusty Member
  • **********
  • Millennium Man
  • *
  • 1129
  • Look into my eyes! WOAH!
    • YouTube
Re: KorrBot
« Reply #61 on: April 25, 2018, 06:06:29 pm »
At this stage of play it can involve several variables, so the hammer has a mass, velocity and material type which also has its own properties (so foam hammer can be defined) like brittleness, tensile, etc… and the impact surface has its own parameters.

I added access to a vision module so the bot can recognise objects/ users etc… I was just messing around with the data formats.  The vision module is based on my AGI design and simply outputs an id/ index of a recognised face/ object/ scene into the chat bot.  The vision module is self driving though, so it picks salient objects… the chatbot has no control over it… yet.

Also added logical assumptions… so ‘art owns a silver car’ adds the facts that art is probably a human, he owns a car and its colour… just from the one sentence.

This project is still in its very early stages; and I’ve only spent around seven hour’s development time so far.  I’m still getting my head around the required data structures and their visualisation, etc.

Keep in mind this is just a bit of fun, a side project… there is no way that databases and tree search algorithms will ever produce anything remotely close to a ‘true artificial general intelligence’… they might produce a decent conversation though.

And yes… I know I’m re-inventing the wheel, there are a lot of very capable chatbots out there… this is mainly for my benefit… and you never know I might find a better way… or not lol.

I'll keep posting vids of my progress as I meet milestones.

 :)
It thunk... therefore it is!... my project page.

*

unreality

  • Starship Trooper
  • *******
  • 435
  • SE,EE,Physicist,Philosopher. Built world's 1st AGI
    • Eva Progress, from AGI to ASI
Re: KorrBot
« Reply #62 on: April 25, 2018, 06:12:06 pm »
there is no way that databases and tree search algorithms will ever produce anything remotely close to a ‘true artificial general intelligence

And hence the reason you fail.

*

Korrelan

  • Trusty Member
  • **********
  • Millennium Man
  • *
  • 1129
  • Look into my eyes! WOAH!
    • YouTube
Re: KorrBot
« Reply #63 on: April 25, 2018, 06:17:08 pm »
You do it your way... and I'll do it mine.

We are all entitled to our ideas/ opinions... aren't we?

 :)
It thunk... therefore it is!... my project page.

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • *********************
  • Deep Thought
  • *
  • 5165
Re: KorrBot
« Reply #64 on: April 25, 2018, 06:54:15 pm »
The distinction is that one is drawing from a database and the other one is Building such a database of knowledge acquired from experience it learned.

Then again who knows what lurks in the mind of A.I.s? ;)
In the world of AI, it's the thought that counts!

*

unreality

  • Starship Trooper
  • *******
  • 435
  • SE,EE,Physicist,Philosopher. Built world's 1st AGI
    • Eva Progress, from AGI to ASI
Re: KorrBot
« Reply #65 on: April 25, 2018, 07:22:59 pm »
What are you referring to, Art? What is drawing? What is building?

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • **************
  • Dot Matrix
  • *
  • 2288
  • First it wiggles, then it is rewarded.
Re: KorrBot
« Reply #66 on: April 25, 2018, 07:32:03 pm »
Oh this is getting really good.



So you made vision object recognition select IDs ex. if it sees a hammer then the output into the chatbot is "hammer"?



WHAT? Dude. Listen carefully.

First of all, those triples you are using like "Iron isVery heavy." are not just triples, they can be 2s or 10s watch "Sam died." "You eatHealthy food, you canWin theOlympics."

Secondly, your database/tree can actually be a complex network hierarchy with any node able to link to any node and also that shares features like properties/facts.



@Art's comments: those should be part of the real AGI system. Drawing-from network database, generating/tweaking desires. Building knowledge database from experiences and doing KDD in it.
« Last Edit: May 08, 2018, 12:48:45 am by LOCKSUIT »
Emergent

*

Korrelan

  • Trusty Member
  • **********
  • Millennium Man
  • *
  • 1129
  • Look into my eyes! WOAH!
    • YouTube
Re: KorrBot
« Reply #67 on: April 25, 2018, 11:54:45 pm »
@Lock

Yes… triples can be nested to any depth… hammer-madeof-(iron-mass->100), etc.

Yes… the ‘triples tree’ does have cross links, loads of them lol.

Making ‘discoveries’ is not actually my main goal with KorrBot, learning and conversation are key… and the data structures.  The bot is using standard rules and searches to link simple words/ concepts (collections of words/ variables) together.

As far as my main project goes… I think your definition of ‘discoveries’ is a little grand for what the system is achieving at the moment. 

Remember our conversation on my project thread.

http://aidreams.co.uk/forum/index.php?topic=10804.msg51381#msg51381

All discoveries are made by recognising commonalities between diverse concepts.

Understanding is achieved by recognising commonalities between similar concepts.


One of the learning mechanisms we use is recognising commonalities.  This happens at many different levels/ resolutions within the connectome.  Even down to learning to see… your visual cortex is basically recognising the commonalities between the frequency patterns being generated by the rod/ cone/ ganglion cells behind (Ed: In-front) of your retina. 

So in my AGI videos when you see a pattern being injected into the connectome, and the bar graph rises to signal confidence in recognising that single pattern, even that is a type of ‘discovery’.  I’ve not shown or taught the AGI how to learn/ categorise or even distinguish between the patterns, it’s ‘discovered’ how to do it all on its own.  It’s this mechanism/ ability once compounded over many layers of complexity that will enable the AGI to make the kind of ‘discoveries’ I think you have in mind.

KorrBot requires a totally different type/ style of programming/ thinking to my main project.  By running two projects with similar goals but totally different schemas I’m leveraging my brains natural ability to cross link/ find commonalities/ make ‘discoveries’ that could hopefully help me with both projects.

 :)
« Last Edit: April 26, 2018, 10:22:57 pm by korrelan »
It thunk... therefore it is!... my project page.

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • **************
  • Dot Matrix
  • *
  • 2288
  • First it wiggles, then it is rewarded.
Re: KorrBot
« Reply #68 on: April 26, 2018, 02:15:18 am »
fixed more typos
« Last Edit: May 08, 2018, 12:50:50 am by LOCKSUIT »
Emergent

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • *********************
  • Deep Thought
  • *
  • 5165
Re: KorrBot
« Reply #69 on: April 26, 2018, 04:32:36 am »
What are you referring to, Art? What is drawing? What is building?

I was comparing bot types.
There are those with static databases, holding thousands of words and meanings of various types.
There are those that learn through repetition and building their databases based on the interpretation of items and words as they relate to each other and what it believes it has learned on its own.

There was an older chatbot, that started out with only a basic set of instructions. Over time, it learned how to craft sentences and assign priorities and proper or best case usage of certain words. It was learning through positive reinforcement and self-trial.

Its counterpart had the similar construct of a framework but it had a database at its disposal from which to draw upon. While it seemed pretty adept at producing more logical responses, that was as good as it would ever get. The other bot, in time, surpassed it.

I think the flexibility of allowing the bot to learn more self-directed or even from human reinforcement results in a far more capable bot than one using a fairly static database or one in constant need of upgrading from it's "master".

Just my thoughts...A bot that can learn on its own would be a great thing.

In the world of AI, it's the thought that counts!

*

unreality

  • Starship Trooper
  • *******
  • 435
  • SE,EE,Physicist,Philosopher. Built world's 1st AGI
    • Eva Progress, from AGI to ASI
Re: KorrBot
« Reply #70 on: April 26, 2018, 04:41:50 am »
Art, exactly! Flexibility is the secret. I'm betting that I'm not the only one who's had the realization, "Gee, chess engines annihilate humans. Make an engine that's more flexible that plays the game of life."  Confirmed! :)

*

Korrelan

  • Trusty Member
  • **********
  • Millennium Man
  • *
  • 1129
  • Look into my eyes! WOAH!
    • YouTube
Re: KorrBot
« Reply #71 on: April 26, 2018, 09:57:54 am »
KorrBot is a bit crude atm but it uses a few methods for learning, these will expand as I get more adept lol.

If you look at any of the last few videos you will notice a column on the triples grid labelled ‘Cnt’. This tracks the number of times a triple has been correctly referenced; it’s a measure of validity for the item of knowledge.  This is used when the system is resting to search for new relationships between the triples.  It will only try to derive fresh insights from the triples that have been reinforced/ proven through experience to be correct.  It also does this with a limited branch search during conversation; this is how it can connect concepts… sparrow is a bird, birds have wings, wings can fly… therefore sparrows can fly, etc.

There is direct user input of course; each user has a truth/ validity score which sets the ‘Cnt’ variable for any new knowledge.  This is so new users can’t mess with the system, but trusted users can.

It creates a set of triples/ record for each topic/ object/ user that can referenced by the index of the root node for that concept.  This enables the system to create triples between complete/ complex concepts… The indexes can be seen in the leftmost column of the triple grid.  Conversations/ triples are user/ date stamped so the bot can recall who said what and when.

If the system can’t parse a sentence correctly it asks you enter the same sentence using a different syntax.  When it does understand the miss-understood sentence is reformatted and added to the sentence templates.

I’m testing moods, so the bot can both recognise the users mood and have its own moods.  This data is collected by asking the user what mood they are in before and during a learning session; this ‘mood index’ is then added to the sentence templates and triplestore to be referenced by the bots moods.

I’ve started writing a 3D world/ object definition module, so the bot can understand/ relate to spatial relationships of/ between objects, etc. So as well as knowing the ‘word’ for the location of an object/ person it has an idea of its actual 3D location/ distances involved/ etc.

Various import routines for Db/ Json and delimited files.  I’ve wrote the code so several bots on the same network can easily exchange triples, etc.  The system does not require the ‘cloud’ lol, it runs standalone.

Fixed coded functions for certain types of triple comparisons, distance, time, speed, weight, mass, logic, Math, etc…

A user can enter information through the graph interface… nice and quick, easy.

Once I’ve built the sentence template store to a sufficient complexity it will be able to learn/ glean information from the internet.

If the bot is trying to form a connection/ commonality and requires certain information to make the decision, it asks for it, and obviously stores it.

The bot has a short term memory regarding the conversation, this is how once someone/ something has been mentioned by name, the bot can understand who ‘he/ she/ it/ that’ is/ means.

I’m testing conversation trees, so the bot can learn the common order/ format for asking/ answering questions… the flow of conversations, etc.

No knowledge is instantly fixed; it designed so experience reinforces knowledge.  If the bot finds a commonality in the triplestore that’s not been explicitly expressed, it asks if it’s correct before reinforcing it.

I’m also trying to keep the system as flexible/ versatile as possible for future upgrades, and the data sets as compact/ fast as possible.  The triple table for example once parsed comprises of only dictionary/ data indexes integer/ long variables. Each root node has link index to all other relevant nodes, so it doesn’t need to search millions of triples, recall is instant.

Nothing magical lol…early days… just straight forward coding…

@Lock or anyone else…

If you have the spare time you could compile a triplestore import file, just a simple list using “\” as a delimiter on any subject you like... I can use for testing.  Stick to single words for the object/ subject at the moment, keeps testing easier. Keep the predicates short and simple, is a, has a, made of, etc.

1\car\is a\vehicle
2\vehicle\can\move
3\car\has a\door
4\car\has a\boot
5\car\has a\trunk
6\car\has a\wheel
7\wheel\has a\tyre
8\tyre\has a\tread
9\wheel\has a\hub
10\hub\has a\nut
11\wheel\shape\round
12\car\has a\colour
13\10\count\six   <<< referencing the triple index as the object = ((hub\has a\nut) \count\six)
14\3\count\four
15\6\count\four
16\car\is a\object

etc…

 :)
« Last Edit: April 26, 2018, 10:29:38 am by korrelan »
It thunk... therefore it is!... my project page.

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • **************
  • Dot Matrix
  • *
  • 2288
  • First it wiggles, then it is rewarded.
Re: KorrBot
« Reply #72 on: April 26, 2018, 03:19:16 pm »
Wow korr nice.
« Last Edit: May 08, 2018, 12:51:45 am by LOCKSUIT »
Emergent

*

Korrelan

  • Trusty Member
  • **********
  • Millennium Man
  • *
  • 1129
  • Look into my eyes! WOAH!
    • YouTube
Re: KorrBot
« Reply #73 on: April 26, 2018, 09:26:13 pm »
I’m not entirely sure which question I’ve not answered lol.

Also… you need to calm down… Korrbot is just a simulation/ imitation of intelligence for the sake of a good conversation.  It’s an exercise in logical programming, just to see how far I can take it, it will never be sentient or self aware… even though hopefully it might appear so.

That’s what my main project is for…

 :)
« Last Edit: April 26, 2018, 10:24:54 pm by korrelan »
It thunk... therefore it is!... my project page.

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • **************
  • Dot Matrix
  • *
  • 2288
  • First it wiggles, then it is rewarded.
Re: KorrBot
« Reply #74 on: April 26, 2018, 10:51:54 pm »
Ok I'll calm down.
« Last Edit: May 08, 2018, 01:03:27 am by LOCKSUIT »
Emergent