Re: Designing an expert system
- From: "Ralph" <nt_consulting64@xxxxxxxxx>
- Date: Mon, 10 Oct 2005 03:36:05 -0500
"Ivan Debono" <ivanmdeb@xxxxxxxxxxx> wrote in message
news:%23wvXoXWzFHA.3256@xxxxxxxxxxxxxxxxxxxxxxx
>
> "Ralph" <nt_consulting64@xxxxxxxxx> schrieb im Newsbeitrag
> news:58adnZTIRONJstTeRVn-jg@xxxxxxxxxxxxxxx
> >
> > "Ivan Debono" <ivanmdeb@xxxxxxxxxxx> wrote in message
> > news:eoilgwLzFHA.2008@xxxxxxxxxxxxxxxxxxxxxxx
> > >
> > > "Ivan Debono" <ivanmdeb@xxxxxxxxxxx> schrieb im Newsbeitrag
> > > news:OQmj5qLzFHA.2960@xxxxxxxxxxxxxxxxxxxxxxx
> > > > >
> > > > > I can see that from your replies to the others. It wasn't obvious
to
> > me
> > > as
> > > > > to how far you had gotten in your design, from you OP. Apologize
if
> I
> > > was
> > > > > too pedantic.
> > > > >
> > > > > -ralph
> > > > >
> > > > >
> > > >
> > > > No problem.
> > > >
> > > > I also included to features after posting.
> > > >
> > > > 1. A Soundex function. Compares the soundex codes and assigns a
rating
> > > > 2. A rating system by breaking down the sentence into words and
> > comparing
> > > > those.
> > > >
> > > > I sort by rating in desc order will give the highest rating. 98% of
> the
> > > time
> > > > it's really accurate but if fails miserably in the remaining 2%.
> > > >
> > > > You guys would do something similar or an alternative rating system?
> > > >
> > > > Ivan
> > > >
> > > >
> > >
> > > Would it make sense to implement regular expressions and what would
the
> > > search string look like?
> > >
> > > Ivan
> > >
> >
> > Regular expressions definitely makes pattern-matching searches easier,
but
> > it carries a lot of overhead. Though it simplifies the 'code' - you
write
> a
> > pattern and submit something to be 'parsed' - there is a very complex
> engine
> > running underneath. The advantage is you didn't have to write the
engine.
> So
> > they are useful in that regard. I would definitely use them in the
> > beginning. Saves a lot of writing, but it is only an implementation
tool.
> >
> > Note RE only works with 'patterns', ie, you have to have a discernable
> > pattern before they do you any good. Obviously a recipe that contained a
> > bulleted list of ingredients at the top or other defined structure would
> > lend itself to defining a pattern, but what about some plain text that
add
> s
> > ingredients as it rattles on? OSFA will not apply.
> >
> > Your task can be broken down into Input massage -> Knowledgebase -><-
> > Forward Chaining -><- Inference Engine -><-- Backward Chaining ->
Output.
> > You will likey use a ton of different tools as you work your way through
> the
> > process. There is a lot of useful information on the net and several
books
> > on the subject. It can get complicated.
> >
> > Don't leave out the chaining. Automate the 'learning' whenever
possible -
> > else you will find yourself merely creating a linear procedural process
> with
> > a ton of conditionals. <g>
> >
> > But take heart that what you are doing is creating in a sense an
'expert'
> > system. No two solutions are ever the same - depends on what 'expertise'
> is
> > needed in the output. Also by the time you are done, you will likely be
> > eligible for a good job at Google.
> >
> > My only exposure to AI/Expert systems is in training and backward
chaining
> > (Neural Nets). The knowledgebase and Inference engines were rather well
> > defined before I got there. (Thank ghod! <g>) When you get there give me
a
> > call. <smile>
> >
> > Enjoy. I can't think of a more fascinating project. I know I thoughly
> > enjoyed every one that I have been involved in and missed it when I
left.
> >
> > -ralph
> >
> >
> >
>
> Did you develop the systems in vb?
>
> Ivan
>
Yes, the training and presentation parts anyway. But never the engines,
always used the assistance of some libraries. STATISTICA Neural Networks and
other tools (http://www.statsoft.com) was my favorite. (I rewrote the VB
Interface and typelib for them, so got a free copy, but that was a few years
ago. They have newer stuff now, so you can trust it. <g>) But you can find a
number of other tools for free on the web. My philosophy is let the bright
kids at MIT and Google write the stuff, I just want to use it.
You won't find free 'complete' suites or IDEs, just a lot of bits and
pieces. But you will find you can assemble a rather well working collage.
With a little practice you can become a great thief. <g> Also, appreciate
that elegance in the beginning is wasted effort. If ever there is a case of
"code to understand" an expert system is it.
VB6 is great tool as your 'glue' to hold everything together, due to its
rapid prototyping/development abilities. You will probably want to learn C
or Java for most of stuff you will find on the web. Many come in other
languages, but I found that C made it a lot easier to port to a component I
could use with VB. Even if you don't use the C itself, you can generally get
the gist enough to convert to VB. I played with prolog and Lisp, ideal for
some things - but the trouble is they are so odd - what do you do with d**n
thing when you are done? Too much impedance mismatch with the 'real' world.
But that is just me - your mileage may vary.
Anyway I digress. You are still in the knowledgebase portion of the project.
Scour the net for lexicon, parsing algorithms, etc. If you run into trouble
post your question here. There are quite a few bright people around here who
can do that stuff in their sleep - plus, when the smoke clears Rick will
come in and supply a one-line solution. <g>
Good luck,
-ralph
.
- References:
- Re: Designing an expert system
- From: Ivan Debono
- Re: Designing an expert system
- From: Ivan Debono
- Re: Designing an expert system
- From: Ralph
- Re: Designing an expert system
- Prev by Date: Re: I must be blind -- what's wrong with this sub?
- Next by Date: Re: I must be blind -- what's wrong with this sub?
- Previous by thread: Re: Designing an expert system
- Next by thread: Re: Insert ActiveX into HTML
- Index(es):
Relevant Pages
|