That's a big question that I'm not going to suggest I can answer. But I do have some comments about it.
To provide some of my perspective (or bias) I'm going to talk briefly on about Artificial Intelligence in my background.
My research background is in Artificial Intelligence with a graduate degree from University of Illinois, Champagne-Urbana. It's a bit dated now seeing as I graduated in 1988 - wow 20 years already. After a few years working in research and development in artificial intelligence I've been in the commercial world since.
I haven't noticed a lot of change although it is now hard to find people talking about or working on artificial intelligence. It doesn't seem to be the main goal any longer - although there are aspects of it that are behind the scenes but in specialized and limited ways. I think this is partly because when one talks about artificial intelligence one thinks of trying to mimic the human which is still a big task and not immediately relevant to most companies due to the importance of their bottom line.
In my background I've seen two basic types of artificial intelligence: the computational and the symbolic. The computational can be exemplified with neural nets and fuzzy logic. Trying to define knowledge in some sort of implicit manner that is very difficult to introspect upon. The symbolic type can best be exemplified by expert systems. There have been some successes in expert systems but many have found them difficult to maintain as they grow.
Without suggesting that either type of AI is better my interest is in symbolic programming and the symbolic approach to AI and to knowledge. It seems to me that in many cases people reason symbolically - it's a more abstract level of the brain I suppose.
When one goes out on the weekend to run a bunch of errands one typically goes through a planning process to determine what order to do the errands in. There are obviously different goals involved for different people - but those goals are, in a sense, a constraint on the planning process.
When a salesperson asks a customer some questions to help select a product the salesperson is providing expert advice. Similarly when a doctor asks questions about symptoms the doctor is trying to reason toward a diagnosis.
These are the sorts of reasoning I am interested in (as opposed to other AI topics such as vision, pattern recognition, robots, and so forth). These types of reasoning, or AI, are nicely modeled using symbolic programming.
So how does all this relate to knowledge? In my opinion this symbolic AI is all about knowledge or reasoning. Computational AI seems to me like a different aspect that isn't as closely related to knowledge.
Knowledge is what I know and the ability to reason with what I know (without trying to get philosophical). And what I am interested in is the latter part - the reasoning aspect of knowledge. If what I know is my data then reasoning is the type of knowledge that processes the data in various ways.
By that definition the reasoning form of knowledge includes most any computer program. There is no problem with that (compilers were once considered AI). Some have said that the more we understand some particular AI program the less it is considered AI. In that sense AI is always pushing the boundary of reasoning in a computer program.
Data is all about us. The web is full of data. A textbook is data. There is good data and bad data. And this is the fundamental problem. Too much data and no ability to process it. If you want to find out why your fish has white spots on it you have to search the web and weed through all the data trying to assimilate the good data and how it makes sense. Or you can read a book on fish diseases. Or you go to the fish store and ask the people and they ask you questions to help diagnose the problem.
I will suggest that data, by itself is fairly useless. Data is useful when reasoned upon. Knowledge on the web is Wikipedia or Google's Knol. Or about.com. We go to google search in an attempt to find the knowledge we need.
And this is where it starts to get interesting. Google is all about information, data. But they want to know what it means and this is hard. Data can mean multiple things, it's all about how it's being used during some reasoning. Google wants to provide accurate search results with the information they have analyzed and collected. It is unclear, in the current guise, whether this is possible since there isn't necessarily enough context (or situation) provided in a search box for Google to provide the right results, no matter how hard they've analyzed data and information. Because they don't know which reasoning on the data you are intereseted in. This is an interesting and potentially difficult problem. But one that Google is working on.
Knowledge isn't just data. I can look out the window and see a blade of grass, a tree, a deck that is falling apart and the road. Knowledge is data interrelated and reasoned about in a large variety of ways.
Back to Wikipedia and Knol. These articles are knowledge as they have already analyzed a large amount of data and made sense of it with essentially one form of reasoning. There are likely to be other articles that use a different set of data, even intersecting with the first set, that make sense of the data for a different analysis.
What is a textbook but a large amount of data organized in a particular manner for the purpose of understanding the subject matter (data) so that you can reason on that sort of data on your own in other contexts or situations.
Knowledge is data that has been organized, and in that sense some reasoning has taken place to organize it. Reasoning is essential to knowledge.
And this is the current state of affairs on the web. A very large amount of pre-organized data (or not). I need to solve a problem and now I need to find the right set of organized data to help me do so. Or multiple similar sets so that I can find the solution myself by further reasoning on the data. This is the very difficult part of using the web. The organized data is not necessarily designed for my situation and I have to do a lot of work to apply it to my situation. This, in harder cases, requires a lot of learning. And when the problems for which I need an answer become really hard I typically do not have the time and will need to consult an expert.
Expert knowledge is the ability to process data on some subject matter in various ways to understand what it means. There has been a lot of learning by that expert in order to be able to do this. Salt water aquariums are interesting in this regard. There are few experts and the books available are incomplete - not much is really known on how salt water aquariums work. The aficionado typically must learn by experience. Or if inclined and has the ability to do so, work in a fish store to gain experience faster. Whereas picking a product from a store tends to be straightforward with some salesperson help.
I will now submit that knowledge is data! Knowledge is the ability to reason on data and this knowledge can be encoded, stored, and executed. Doing so makes it data that can then be used in various ways (I won't pretend to know what all these various ways are). Now we are talking about expert systems, case base reasoning systems, decision tree systems, and the like (even spreadsheets, anything that processes data).
This is what is now needed on the web. In addition to nicely analyzed data in places such as Wikipedia and Knol we need the ability to encode our knowledge that we have and make that available. The online merchant that has 50 DMT sharpening stones needs an advisor box on the web page that asks me questions about my situation and needs and suggests 2 or 3 sharpening stones that are most likely to be what I want. This is just what a salesperson would do. These specific applications for knowledge are myriad. How to put a window in. When and how to plant a tree. What are these white spots on my fish. Picking a new dog for your home.
Obvious areas are medical diagnosis systems. These can be large and complex. I am not clear whether they must be - but there are a lot of specific web sites working on that problem. Another area we have seen is in large scale international security trading.
Knowledge is the ability to analyze data in various situations in order to reach conclusions. This knowledge may be codified and available on the web just as other data is available.
This is what the Jnana Logic Server is all about.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment