How to select appropriate problems
Type of errors
Role and responsibilities of knowledge engineer
Knowledge Engineering is the branch of Artificial Intelligence (AI) that is dedicated
to studying, designing, and developing systems that emulate the judgment and
behavior of a human expert in a certain field.
These expert systems – as they referred to – are focused on the digitizing and
automation of knowledge to resolve issues.
Expert systems are used in various fields including:
Healthcare
Customer service
Financial services
Manufacturing
Legal and Accounting
To break it down, the main aim behind knowledge engineering is to cut down the
effort and time required to solve complex and large scale problems that would take
far too long to resolve manually. It is the process of creating systems to act and take
decisions regarding data in the same way a human expert in that specific field
would.
The role of a knowledge engineer, therefore, is to develop these specialized expert
systems by gathering the information needed and integrating it into a systematic
format before deploying it for the end-users.
Knowledge engineers are also known as semantic engineers.
Knowledge engineers are specialists who deal with expert systems that help
to achieve higher levels of productivity and accuracy while being cost-efficient. The
systems they develop might replace human beings and be at least so effective as
humans are.
Typical examples of knowledge-based applications are:
Diagnostics in technology and medicine
Advice on legal and structural problems
Configuration of technical systems
Knowledge transfer in the form of manuals or for training purposes
Knowledge Engineer – Responsibilities and Tasks
The responsibilities of a knowledge engineer are divided into 4 main steps. These
include assessment, elicitation, structure, and validation.
The first step – assessment – starts off by first analyzing the problem at hand.
Here, the engineer decides what knowledge is needed and from where.
This is followed by the second step, wherein, the knowledge is elicited. The
knowledge engineer employs a number of techniques to elicit the required
knowledge. Once the knowledge has been gathered, it is then structured into an
expert system, a database, a knowledge base, or a knowledge asset.
The structure and format are created and then integrated with the
knowledge elicited.
Finally, the knowledge engineer is responsible for the verification of the final asset
and validation of the final knowledge system.
Responsibilities of a Knowledge Engineer:
Develop, maintain and continually improve knowledge base content, taxonomy, and
organization
Interpretation of data by comparing target and actual values
Work on processes for managing, creation, and use of knowledge
Classification of events
Configuration of complex systems taking different conditions into account
Recognize the causes of errors and reduce work errors
Support business initiatives and goals and map knowledge impacts and
implement change/solutions
Eliminate critical conditions by taking action
Planning a series of actions to achieve a specific goal
dialog-oriented, subject-specific advice to people
Predict events based on specific events
Work with Subject Matter experts & Data scientists
Skills required to become a knowledge engineer:
Strong programming language knowledge – i.e. Python, Java, etc.
Knowledge of Database development tools and relational database concepts
Basic knowledge of application delivery including release management
Experience with standards-based knowledge engineering tools – ie. SQL, RDF,
SPARQL, OWL, SHACL
Knowledge of Information structure and Business intelligence (BI)
Understanding of semantic standards and experience developing semantic models
Foster a strong knowledge-sharing community within support
Knowledge of Natural language processing (NLP) and the system development cycle
Experience programming Clojure or ClojureScript or another Lisp
Experience using RDBMS – i.e. Postgres
Task algorithmization and Business process modeling
Aptitude for understanding and explaining technical information
Excellent attention to detail and natural curiosity about technology
Ability to multitask under tight deadlines
Life cycle
Expert System Development Life Cycle:
Problem Identification Phase:
Identifying the problem and opportunity where the organization can obtain benefits
from expert system, and establishing the Expert system general goals.
Feasibility Study Phase:
Assessing the feasibility of the expert system development in terms of its technical
operational and economical feasibility.
Project Planning Phase:
Planning for the expert system project, including development team members,
working environment, project schedule, and budget.
Knowledge Acquisition Phase:
Extracting domain knowledge from domain experts and determining the system’s
requirements.
Knowledge Representation Phase:
Representing key concepts from domain and inter relationships between these
concepts using formal representation methods.
Knowledge Implementation Phase:
Coding the formalized knowledge in to a working prototype.
Verification and Validation:
Verifying and validating working prototype against the system requirements, and
revising it necessary according to domain expert’s feedback.
Installation and Training:
Installing the final prototype in an operating environment, training the users and
developing documentation and user manual.
Operation/ Evolution / Maintenance:
Running the system in an operating environment, evaluating its performance and
benefits and maintaining system.
Knowledge acquisition
the knowledge acquisition process through a knowledge engineer can
be divided into four phases:
1.
Planning: The goal is to understand the problem domain, identify
domain experts, analyze various knowledge acquisition
techniques, and design proper procedures.
2.
Knowledge extraction: The goal is to extract knowledge from
experts by applying various knowledge acquisition techniques.
3.
Knowledge analysis: The outputs from the knowledge extraction
phase, such as concepts and heuristics, are analyzed and
represented in formal forms, including heuristic rules, frames,
objects and relations, semantic networks, classification
schemes, neural networks, and fuzzy logic sets. These
representations are used in implementing a prototype expert
system.
4.
Knowledge verification: The prototype expert system containing
the formal representation of the heuristics and concepts is verified
by the experts. If the knowledge base is incomplete or insufficient
to solve the problem, alternative knowledge acquisition techniques
may be applied, and additional knowledge acquisition process may
be conducted.