5. How A.I integrates our lives?
Digital Assistants:
www.jcplaboratory.org
Microsoft Cortana Amazon Alexa EmoSpark AI
6. Do they achieve their intended purpose?
www.jcplaboratory.org
7. Where to they fail:
• No self-knowledge expansion/acquisition
• Fail to integrate fully with their environment
• Pre-programmed for basic tasks only
Why to they fail:
• Wrong development approach adopted?
www.jcplaboratory.org
10. What is {ISSL}?
Intelligent System Scripting Language
A Scripting Programming Language
Uses Tag Elements such as in HTML and XML
NON XML-Compliant Language
It is read and executed by an Interpreter
www.jcplaboratory.org
12. Why ISSL?
Dynamicity
Scripts can be altered non-programmatically
Scope of expansion is almost unlimited
Platform independent
ISSL Scripts can be shared among different platforms
Interpreted by a platform-specific interpreters
www.jcplaboratory.org
14. How does {ISSL} work?
Knowledge are written into scripts
Scripts are interpreted and executed using an Interpreter.
Written using any programming language
e.g: C#, Java, Python etc..
www.jcplaboratory.org
17. What is AIML?
XML-Compliant Markup Language
Uses pattern and categories to define and set and
conversion structure.
AIML was used to create the A.L.I.C.E Bot
Won the Loebner A.I Competition three times
www.jcplaboratory.org
24. ISSL Snippet (Explained)
www.jcplaboratory.org
{lex} Is a unit of knowledge
{var} Variable
{vali} Specifies the minimum matched words accepted
{pattern} String of characters intended to match user’s input to a percentage
<idn> Exact corresponding pattern
{q} Question match structure
{pans} Randomized Possible answers
26. Functions of ISSL’s Interpreter
• Interpret & execute ISSL Scripts
• Library of Functions
• To interact with the OS and other applications
• I/O Operations, OS Control, Sending email etc…
• Cognitive Services
• Online search for information
• Find images
• Detect emotions within text
• Speech recognition
• Speech Synthesizer
www.jcplaboratory.org
27. Using Text Analytics and Cognitive Services
www.jcplaboratory.org
User Input Interpreter:
Processes Input
Looks for matches
in ISSL Docs
Browse the Web for more
information
Processes new
Information
Response
Information is turned
into ISSL Knowledge
ISSL Scripts are
Updated
29. Baby-Steps Approach
Is the concept of considering the A.I Entity as a Baby
• Brain Programming
• Learning anything from the beginning
• Example: Its name and purpose
• Meta-Cognition
• Awareness of its know extents and limit of knowledge
• Broaden its knowledge by:
1. Asking for questions
2. Looking for other sources
www.jcplaboratory.org
30. www.jcplaboratory.org
ISSL A.I Entity Learning Concept
What is your name? I don’t know humanYour name is Bob Okay, :) my name is Bob
Lookup for Knowledge
Knowledge is Saved
Knowledge Not Found in
ISSL Knowledge Base
Query to Enquire
32. Integrating ISSL into Existing/New Applications
Why is Integration Important?
• Application automation
• The rise of Internet of Things
How to integrate?
• Using open sourced platform specific interpreters
• Shared Class Libraries
• Using cloud base API (?)
www.jcplaboratory.org
35. Common Knowledge Sharing (CKS) Hub
Common place (Hub) for ISSL Entities around the world to share
knowledge & acumen acquired over time.
• Disadvantage of the Baby-Step Model Approach
• A.I Entities will take a lot of time to mature up.
• The CKS Hub
• Sync and shares knowledge across all ISSL Entities
• Affects only acumen and no personalized/self-form knowledge
• You can opt-in and opt-out anytime
• Newer ISSL Entities will be more intelligent as created
www.jcplaboratory.org
38. Productiveness of ISSL Entities
• Smarter Systems
• Better productivity
• Helps you achieve more in limited time
• Better integration
• Provide technical support
• Backup, problem solving etc.
• Manual tasks are automated
• Disk defrag, system monitoring, tasks management, file sync
• Stress free computing
www.jcplaboratory.org
39. ISSL Entities – Dream A.I
• Learn to mimic human emotions
• Using available cognitive services
• Text Analytics with Sentiment Analysis
• Keep that insight for references
• Recurrence of events causing emotion
• Self-Personality development
• Learn conversations
• Take cues from your likes to develop it’s own personality
www.jcplaboratory.org
Welcome to this session
We are going to talk about a new technology that we’ve been working on the concept since 2014.
This technology is still in it’s development state so please bear in mind this session is not demonstration be rather a presentation of idea.
Since you are here today shows that we appreciate and love aritificial intelligence, so we use this session as a means gather ideas and feedback from you.
So don’t hesitate.
Introduction.
Akshay
Before Cedric and I start getting into the subject of what is ISSL and why we developing it.
Let’s try to see if AI applications that exist today integrates well into our lives and live style.
Where is AI found today, well in a lot of things for example:
Games
Expert systems
One of the most prevailing applications of concreate Artificial Intelligence today is the Robotics field.
Akshay
When we talk about the future is always in the future tense but that’s not really the case.
Robots are becoming realities I mean really intelligent robot. For instance, have a look at the Japanese technologies.
They are able to do amazing things such as helping in a store, be affectionate or they even come handy when we try to do some basic tasks such as cooking.
But if we try to be realistic, can we say that these integrate into our lives? Do people use it? If yes how much? It is affordable?
Therefore, we can be right to conclude that A.I doesn’t really integrate into our lives yet.
Yet does these robots has the ability to learn?
Cedric
There’s another application/implementation of A.I on which renowned companies are putting a lot of efforts on.
The so-called digital assistants.
How many of you have used Cortana, Siri or Google now. I support at least once right.
Do they really integrates our lives.
It’s true that they help us in doing simple-basic things such as send email, looking for directions, set remainders and let jokes but do they do more.
What can they do for example to help us when we are facing to problem?
What about they learning ability?
That’s why people don’t really use these. Do you use Cortana Akshay?
Cedric
Cedric
Why do these A.I fail? Where do they fail?
Akshay
Well mainly for three reasons. (See slide)
They can’t learn by themselves, inability to do that ultimately results in failure to integrate into their environment (Support with Cortana – shutting down computer example). Because environments changes anytime.
Pre-programmed to do basic things. They are limited to just that.
Cedric
OK. But why do they fail then? Companies are investing a lot of energies into these.
Is the development approach taken wrong?
Akshay
To counter this limitations and remove those barriers between environment and A.I, we are developing a solution and that solution is a new language.
A new programming or modelling language we might call it.
Akshay & Cedric
Ladies & Gentlemen, we proud to introduce to you for the first time the Intelligent System Scripting Language – Short ISSL.
Akshay
So that is ISSL exactly?
What ISSL is an scripting/mackup language
Uses tags element such as in HTML and XML
Is non-xml compliant language which means it does not respect and abide to the structure of the XML formatting. Why? We will talk about it later.
Finally, like any programming language or script document such as C# or Python it is read and executed by in interpreter.
Cedric
Now you might ask:
“OK wait. Why developing ISSL guys? There are tons of other technologies available such as the renowned Microsoft Bot framework or Rivescripts and etc so… why the hassle of creating a new A.I Language why depending time and effort”?
Cedric
Well mainly for two reasons:
(See slides)
What do we main by Dynamicity?
To understanding this more clearly let take as example one of the A.I technologies that exists today. If I would want to give knowledge/acumen to my AI application
I will have to mend the source code itself and this is really inconvenient why?
Mainly because as a developer I will have the hassle of editing re-compiling again, secondly because the A.I would be able to increase its own knowledge base. It can’t edit its source code right?
We found out that using a scripting/mockup like approach helps us to counter this issue.
Since scripts are external to the application, both the AI and developer and edit it. Thus Dynamicity – The ability to change without human intervention.
Akshay
Platform independence.
Since scripts are regular non-binary files it can be reused on other platforms
Right? ‘Cause you don’t need to port a text file because its encoded differently.
The only component that is platform specific is the interpreter.
Cedric
Now lets see how ISSL really works and how do we thing that this concept of ours is found to be effective.
Cedric
Very simple.
Knowledge and every bits of information is converted in the ISSL format and stored as files or ISSL documents.
Then as and when required, these documents are interpreted using an interpreter that executes the logic found within the files.
The interpreter is written using any standard programming language.
Akshay
Let’s visualize the concept Cedric just explained.
As you can see to the left of the screen we have representations of the ISSL documents or scripts
These scripts are interpreted using an interpreter.
The process information is sent back to the AI application.
Cedric
That’s very great we have seen and got the idea about how ISSL really works.
But how did we come up this is whole concept. Were inspired? Yes.
Very one of us are inspired to create something new right?
Steve Jobs was inspired. Bill Gates were inspired. So we too.
By someone called Dr. Richard Wallace, a scientist who developed a very simple scripting idea technology called AIML.
During the years 1995 – 2000.
Akshay
Explain what is AIML (see slide)
Put emphasis on the maturity of the AI
Mention that won’t the Loebner A.I competition three times. (Competition based on the Turing Test, Test that determines what A.I is able to sound more like a human).
Cedric
Explain the AIML snippet. (See slide)
Cedric
Earlier we said that there are a lot of other technologies that aims at developing power A.I applications and now we are saying that there exist another language that use the same scripting model
What makes ISSL so special and powerful compared to AIML?
Akshay
To understand the purpose of AIML let’s try to have a look at its limitations.
Firstly, AIML has been strictly created for the sole purpose of creating chat bots. Computers that talks and say annoying things like humans.
Hence, there is eventually no scope at all for self-learning and self-knowledge expansion.
No integration at all we other applications and systems.
As a developer you can’t use AIML and embed it into you app to make it smart.
Cedric
So AIML is differs with AIML?
(Explain slide)
To explain later:
Baby-Steps approach
Programming-like structure
Cedric – Demonstration of AIML Knowledge Base Maturity
Cedric
Explain the snippet using slide 24.
Explain all tags element and there purpose
Akshay
Explain pattern matching.
Contrasting with AIML, ISSL has a very interesting way to match patterns with user questions.
It’s going to match the two on a percentage basic.
Which means if 75% of the user’s input matches the one or more of the pattern the AI would guess that It’s probably the question we are asking it.
Cedric
Refer to slide 23.
Cedric
Like any programming language such as C#, Java or Python, the core component of the ISSL Language is the interpreter.
It’s the one that takes care of all the background or underlining activities that are commanded by the ISSL User/developer
What is the functions of the ISSL Interpreter?
Cedric
Eventually, it is responsible for interpreting and executing the logic/knowledge contain within the ISSL scripts.
It almost contains a library of functions are aims to:
Interact with the OS and user files.
These functions includes I/O functions such as copy & paste, more, rename and delete.
And other basic functions found in Digital Assistants today such as sending mail, putting up remainders etc.
Akshay
It’s not just that.
The interpreter is also responsible for the human-computer interaction.
It does this by using cognitive services.
For instance, when doing self-learning it has to look for information on web and process that using text-analytics for example.
As an added ability – The A.I will be able to determine emotions within your input be it text or speech.
Cedric
Yeah.. And I think that’s an interesting feature.
Imagine you are just taking to your A.I and it suddenly detects that you are sad.
It will be then capable of suggesting things such as listening to your favorite music or might even suggest you do your favorite activity
Akshay
Exactly and it will do all that using sentiments analysis so that I can detect these emotions within the user input.
Furthermore, the interpreter will be also responsible to talking back to you – Speech Synthesizer.
Akshay
Let us visualize what we just said about the interpreter being able to learn things by itself so that the user gets the information she requested.
User talks or input text into the computer
The interpreter processes that information
It looks up into its knowledge base to find whether it does contain insights about what the user requested
Assuming that it doesn’t know
It will look for that knowledge from other sources such as the internet.
When that knowledge is found, it is further processed using analytics then the appropriate response is given back to the user.
Knowledge that it acquired from other sources is not discarded.
It is converted into an ISSL compatible form and stored for future references.
Cedric
Earlier we’ve talk and claimed that ISSL entities will be able to acquire knowledge and learn by themselves.
That is a big claim isn’t it. But how are planning to that possible?
Well my team and I has been setting up a new development approach that features that idea that every artificial intelligent entity is to be considered as a baby.
That’s where the Baby-Step Model Approach came from.
Cedric
The Baby-Step Model Approach so far includes two phases.
To explain this approach clearly I am going to use the example of a new born baby.
As a baby we have to learn everything from the beginning right? We aren’t born with cultures, habits and behavior. So how you we acquire those state of mind?
It’s simply shaped by the environment we live in, the people our parents are and the cultures and habits that are inculcated and taunt in our society.
The knowledge of how react to emotions or interact with people around us is shaped by those variables and we barely thing about them or about how to implement them.
We called this brain programming. Because we human, we too are programmed I can to act in a certain way.
In the same way, A.I should be able to learn those basic values about how to talk and respond. For instance, a baby doesn’t know his name as soon as he comes out of the belly right.
Same thing applies for an A.I entity.
Akshay
Second part of the Baby-Step Approach is Meta-Cognition
By definition, meta-cognition is the awareness of your know thoughts therefore being aware of your own thoughts also means that you are aware of your limits and capabilities.
Such as a baby would ask questions of his parents when he doesn’t know something such as “Hey dad why is the sky blue”.
The same concept applies to our ISSL entities.
When they do know something they do not simply through junk answers at you are redirect you to other sources but the ask you the question or look for the answers themselves from other sources
Such as the internet.
Cedric
Let’s visualize what we just explained about the baby-step model.
This is a typical scenario of a user and a computer.
Just see how the robot is able to learn from user and save the knowledge.
Akshay
So far, we’ve seen how ISSL works and what makes that technology really special.
But will it be worth it if all we could do with ISSL stays within it’s home environment?
No. As developer’s me and you would want to make our app smarter by integrating this type of technology in our apps.
Akshay
Why is integration important?
We would you as a developer include ISSL based entities into your apps?
Do you know the pizza selling company Dominoes?
This company is using bot on its websites to take orders and then delivers it through robots. That’s a very brilliant idea but why?
Because as I want to automate how things works.
Especially now, during the era of IoT, we would want devices that powered by smart technologies.
How will be you be able to integrate ISSL into your apps?
Cedric
Mainly we are think about creating APIs and shared class library.
Then you can if implement them directly into your projects.
If you have a rather limited device in terms of processing power then you can use a cloud base API so that all of the processing is done in the clouds.
Akshay
To visualize
App with embedded ISSL interpreter does the processes on-premise.
Adv. No need for internet connection
More responsive
App using ISSL cloud API where all processes are done in the cloud
Internet dependent
Suitable for limited devices
Cedric
Now that we know how the technology will work and who to implement and let’s say thousands of people around the world are using ISSL entities.
But how can we make our A.I or system smarter?
What if the knowledge among A.I entities are shared?
Cedric
So to do that we are creating a kind of a hub where the A.I will be able to upload and sync their knowledge among themselves.
Because since the Baby-Step Model Approach is a very time consuming process an A.I can take a lot of time to mature up.
So counter that and speed up that process the came will the concept of knowledge sharing ability between A.Is
(Explain the CKS Hub by referring to slide)
Akshay
But what is people decides to feed their A.I with Junk data. All of us will be having dump ISSL entities how can we counter that?
Let’s take a look at the animation here.
This represents the users of ISSL entities and other ISSL based smart systems.
All these applications syncs will a central server.
Here on this server will need to implement some kind of filtering mechanism to remove all junk data coming from the users’ A.I system.
Lastly this data is sync across all Intelligent entities.
Cedric
OK what we have seen that with ISSL we can create very very smart applications but how can these applications help us be more productive?
Cedric
Firstly, since ISSL would enable us to create smarter system that can automate a lot of things, obviously it will help us to be more productive.
You’ll be able to achieve more in less time.
Be productive since your system will be proactive
More reasons for you to be lazy (btw)
Since ISSL entities will be better integrated to our system, to its environment
It will help them solve problem easier.
For instance, it will be able to provide technical support (e.g: sound problems/tech problems)
Other tasks related to OS itself will be automated
Explain (OS crash backup system)
Ultimately it will result in a stress free computing.
Akshay
Our ultimate goal with ISSL will be to create the dream A.I
What to we mean by that is that using technologies such as Text Analytics / Sentiment analytics we hope to bring that human touch to our machines.
So that they can response/react according to our needs.
So the A.I is going to learn our habits (or even our mood swings) lol
Cedric
And furthermore we want to create an A.I that adapts itself not only to it’s digital environment but the human it provides support (that’s me and you)
Part of the goal is to make the A.I develops a personality of its own based on humans likes and hates.