We can help you on your digital transformation journey
We can provide to you guidance on how to design a functional framework for your cognitive engine and a step-by-step approach to ease the specification and design phase of your software product.
After over 20 years doing IT for Fortune 500 companies, we have acquired a lot of experience on delivery methodologies. And we just thought that this was the good way forward. We already had success with this and we should reuse and adapt these to what we do.
It was a good idea and it is still, if and only if we talk about delivery. You have to specify and design first, do the functional work and then the technical, build, test and deploy.
But here it is all about getting to the architecture of a cognitive engine which is executing either cognitive or psychological tasks. All these tasks are linked together and are using data. We just thought that the correct way to have this peace of work done is to follow the same way that information is following when we humans are processing something: perception is first, then encoding, acquisition & learning or when something is already known, recognition. The result is stored in memory for further processing… And we just went on like this. At the end, we where wrong! This is not working.
Now, let us explain which is the right approach.
Providing you with a framework to build cognitive engines
Linking together all mental activities and cognitive processes that humans have, we created a functional architecture which we enhanced by adding core psychological features such as needs, judgment, satisfaction, motivation and attitudes, making sure that information is processed by machines in a natural way.
A cognitive engine should be able to solve problems, make decisions and reason even if data are missing, even if, within a specific context, the current situation is not perfect or not well defined, it should be able to understand what is going on, it should be able to take care of your needs, your motivations and satisfy you by adapting itself to the context and to what really matters to you.
What we mean when we say “processing information in a natural way” is that the software should process data like we as humans would process information.
The cerebral cortex has several different “zones” which are involved in different cognitive and behavioral functions such as memory, cognition or thoughts. Those functions communicate together so the brain can process stimuli received by sensory receptors, extract information about the structure of the environment and process information with a set of rules, being able when necessary, to adapt response patterns. All these functions are supported by neurons.
At Beamak, we think that to create a cognitive software, that the information should be processed in a human way (natural way). The cognitive software architecture should be as close as possible to how the biological neuron is processing chemical information.
It took us one year of research in Neurosciences to collect all the information that are needed to create this functional software framework. We named it the SmartNeuron. All our cognitive engines are using this specific framework.
The information should also be stored in a specific way to enable cognition. Like for all other software, the storage is done in a structured way, like it is when data are stored in a database. Here, the so called database is a little bit special since it needs to be structured like humans are structuring information inside their brains. Let us explain this.
The world is perceived by our senses. Relevant information (stimuli) is acquired and classified into a structure made of objects classes. This process is called categorization.
This structure is made of symbolic classes. You have 3 types of classes: the object, his prototype and his abstraction (example: Woodpecker, Bird, Animal). Each class contains information stored in properties such as functional properties and descriptive properties, enriched with their related semantic fields. For a given class, his hyponym is a child class which does inherit of all the properties of the parent class. For a given class, a superordinate is a parent class which holds all the common properties. Once stored (in the long-term memory) in categories, knowledge can be represented, can be used when reasoning, making decisions and solving problems.
We have called this categorized structure the VirtualBrain, a data file containing all the information, all the properties and all the needed relations between these objects classes defining your business context.
We have a dedicated workbench to create VirtualBrains. From your given business context, you can build a specific VirtualBrain for your use case which will then be used by our cognitive engines.
A pragmatic methodology to specify and design your solutions
Cognitive computing software engines can be built the way you want. This is really your choice. But to enable cognition, there is one thing that should be done with great care and this is the structure of your database. We have a methodology to do this in 4 steps.
Step 1 (cognition) is to get information about the context and the objects that are involved, what kind of cognitive processes are implicated at this level to draft a first version of the VirtualBrain structure.
Step 2 (psychology) is about measuring satisfaction, understand what reasoning has to be done to take decisions to change the attitude of the engine and define tasks to be executed. At this step, we know all the data we need to have the cognitive engine working.
Step 3 (mental activities) is about defining how to collect the required data and how these will be processed by the machine to be acquired, in case the data is new, or recognized, or forgotten. Once this is done, the learning process can be specified so that all the needed data are collected by the cognitive engine. The VirtualBrain structure can be updated and considered as final.
Step 4 (understanding) is defining how knowledge should be represented and how collected data are impacting this representation (cognitive level) in order to understand (psychological level, thinking) what is happening and adapt the actions of the cognitive engines.
And propose a training on key cognitive processes
To help you, we prepared a dedicated one day training, introducing main cognitive processes and how to implement these inside a software product. Following topics are covered: cognitive computing, data categorization / long term memory, human reasoning, fuzzy logic, decision making and problem solving.
Our “Human Cognition applied to Artificial Intelligence” book will be handed out to each attendees. All you need to remember about cognition and how to put these processes inside your cognitive engine are well explained and illustrated. This training is available in English and French.
If you are interested, please send us an e-mail. We would be happy to help you !
Our key domains of expertise
We provide our customers with expertise in cognitive sciences : psychology, ergonomics, linguistic, neurosciences and artificial intelligence.
Psychology / Mental Processes: Association, Judgment, Attitudes, Communication, Interaction, Needs, Sentiments, Emotions, Motivation, Satisfaction, Perception, Memory, Recognition, Acquisition, Classification, Learning, Categorization, Semantic Networks.
Cognition: Representation, Understanding, Reasoning, Decision Making, Problem Solving.
Design of AI Solutions: Ethics, Ergonomics, Psychophysiology, Neurobiology, Nervous system, Endocrine system, Physiology, Sensorial Treatment, Experimentation, Observation, Collect Verbal answers, Investigation, Questionnaire (Open-ended, Closed-ended), Interview, Test, Psychophysical Methods, Conception of AI algorithms and engines (Technical Part).
Supporting Businesses: Context assessment, maturity model for AI, support to define business cases, business process rationalization and modernization, cognitive roadmap and training on human cognition.