U.S. patent application number 12/000044 was filed with the patent office on 2008-04-24 for database system in which logical principles for a data retrieval process can evolve based upon learning.
This patent application is currently assigned to Yuji IKEDA. Invention is credited to Masahiro Hayakawa, Yuji Ikeda, Kosuke Sasai, Naoaki Suganuma.
Application Number | 20080098016 12/000044 |
Document ID | / |
Family ID | 32767564 |
Filed Date | 2008-04-24 |
United States Patent
Application |
20080098016 |
Kind Code |
A1 |
Sasai; Kosuke ; et
al. |
April 24, 2008 |
Database system in which logical principles for a data retrieval
process can evolve based upon learning
Abstract
The present invention provides a database system capable of
dealing with dynamic changes in an event that vary continuously
with time. A database system outputs a retrieval output from data
in response to a user's retrieval request on the basis of a
retrieval logic. The retrieval logic is allowed to evolve on the
basis of a logical model. This logical model establishes a general
relationship which leads results from conditions relating to a
group of events that are dealt by a data group. Moreover, a
database system optimizes a data structure on the basis of the
logical model. The logical model can be transferred in a separated
manner from the specific data contents of the data group.
Therefore, the logical model can be exported to another database
system of the same kind, and also imported from another data base
system of the same kind.
Inventors: |
Sasai; Kosuke; (Kobe-Shi,
JP) ; Hayakawa; Masahiro; (Amagasaki-Shi, JP)
; Ikeda; Yuji; (Kobe-Shi, JP) ; Suganuma;
Naoaki; (Kakogawa-Shi, JP) |
Correspondence
Address: |
MCDERMOTT WILL & EMERY LLP
600 13TH STREET, N.W.
WASHINGTON
DC
20005-3096
US
|
Assignee: |
IKEDA; Yuji
Hyogo
JP
SUGANUMA; Naoaki
Hyogo
JP
MINOLTA CO., LTD.
Osaka
JP
|
Family ID: |
32767564 |
Appl. No.: |
12/000044 |
Filed: |
December 7, 2007 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10446941 |
May 29, 2003 |
|
|
|
12000044 |
Dec 7, 2007 |
|
|
|
Current U.S.
Class: |
1/1 ; 707/999.1;
707/E17.005; 707/E17.044 |
Current CPC
Class: |
G06F 16/21 20190101 |
Class at
Publication: |
707/100 ;
707/E17.044 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Foreign Application Data
Date |
Code |
Application Number |
Jan 31, 2003 |
JP |
2003-023053 |
Claims
1. A database system comprising: a data store for storing a data
group; a logical model holding unit for holding a logical model
which represents logical principles in a data retrieval process in
an independent manner from respective data contents of said data
group; a retrieval logic applying unit which creates a retrieval
logic corresponding to a retrieval request on the basis of said
logical model, and obtains a retrieval output corresponding to said
retrieval request by retrieving said data group in accordance with
said retrieval logic; a logic analyzing unit which analyzes a
logical path connecting conditions to corresponding results in a
group of events relating to said data group; and a logical model
updating unit which updates said logical model so as to be evolved,
each time a new combination between new conditions and
corresponding new results is given, on the basis of an analysis of
a logical path of the new combination carried out by said logical
analyzing unit.
2-18. (canceled)
Description
[0001] This application is based on application No. 2003-023053
filed in Japan, the contents of which are hereby incorporated by
reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to a database system capable
of dealing with dynamic changes in an event.
[0004] 2. Description of the Background Art
[0005] In recent years, along with the developments of computer
systems and computer networks, databases that store and manage a
great amount of computerized data has been widely used. In these
databases, a relational database (RDB), in which data describing
events is represented by two-dimensional tables and the relation
between the tables is defined, has been mainly used. In the RDB, in
most cases, the data structure is standardized in order to provide
efficient database operations.
[0006] However, in the case of the RDB having the standardized data
structure, it becomes difficult to locally operate data, and the
resulting disadvantage is that it is not possible to flexibly deal
with changes in an event. For this reason, various techniques have
been developed to flexibly deal with changes in an event.
[0007] With respect to the techniques for flexibly dealing with
changes in an event, mainly two techniques have been proposed: a
technique of flexibly changing the data structure in response to
changes in an event; and a technique of flexibly changing an
accessing method to the database in response to changes in an
event.
[0008] With respect to the technique of flexibly changing the data
structure in response to changes in an event, a technique of an
object oriented database (OODB) in which data and an algorithm are
integrally prepared so that local data operations can be carried
out has been proposed (Japanese Patent Application Laid-Open No.
2001-331315). Moreover, another technique which uses an
architectural database having an architectural data structure has
been proposed (Japanese Patent Application Laid-Open No. 11-296544
(1999)). The technique disclosed in Japanese Patent Application
Laid-Open No. 11-296544 (1999) features in that the history of
changes in a data structure is stored, and that, even when there is
a change in the data structure, the structure prior to the change
is accessible.
[0009] Moreover, with respect to the technique of flexibly changing
an accessing method to the database in response to changes in an
event, a technique which utilizes a user profile in which the
history of a user's database operations is written for an assisting
purpose so as to improve the database accessing efficiency has been
proposed (Japanese Patent Application Laid-Open Nos. 11-53394
(1999) and 2002-230021).
[0010] In accordance with the techniques of Japanese Patent
Application Laid-Open Nos. 2001-331315 and 11-296544 (1999),
although it is possible to flexibly deal with changes in a
singly-occurring event, it is not possible to deal with dynamic
changes in an event that is continuously varied with time.
[0011] Moreover, in accordance with the techniques of Japanese
Patent Application Laid-Open Nos. 11-53394 (1999) and 2002-230021,
it is also possible to deal with changes in an event. However,
these techniques are based on the assumption that the data of a
database to be accessed has a specific data structure. Further,
these techniques do not function sufficiently unless this data
structure properly reflects the corresponding event. For this
reason, even in the case when these techniques become effective
immediately after the start of the application of the database, the
database accessing operation becomes inefficient when the data
structure fails to maintain an optimal state due to changes in an
event. In other words, these techniques fail to effectively deal
with dynamic changes in an event that is continuously varied with
time.
SUMMARY OF THE INVENTION
[0012] The present invention has been made to solve the
above-mentioned problems, and its object is to provide a database
system capable of dealing with dynamic changes in an event which is
continuously varied with time.
[0013] The present invention is directed to a database system.
[0014] In accordance with one aspect of the present invention, a
database system includes: a data store for storing a data group; a
logical model holding unit for holding a logical model which
represents logical principles in a data retrieval process in an
independent manner from respective data contents of the data group;
a retrieval logic applying unit which creates a retrieval logic
corresponding to a retrieval request on the basis of the logical
model, and obtains a retrieval output corresponding to the
retrieval request by retrieving the data group in accordance with
the retrieval logic; a logic analyzing unit which analyzes a
logical path connecting conditions to corresponding results in a
group of events relating to the data group; and a logical model
updating unit which updates the logical model so as to be evolved,
each time a new combination between new conditions and
corresponding new results is given, on the basis of an analysis of
a logical path of the new combination carried out by the logical
analyzing unit.
[0015] In accordance with the database system, the logical model is
constructed in a manner so as not to depend on specific contents of
a data group, and the results of an analysis by a logical path
connecting known conditions of a group of events relating to
information of the data group to the corresponding known results
are reflected to the logical model so that it becomes possible to
deal with dynamic events that are continuously evolved with
time.
[0016] The present invention is also directed to a data retrieval
method in a database system.
[0017] In another aspect of the present invention, a data retrieval
method for a database system, includes the steps of: (a) storing a
data group; (b) holding a logical model which represents logical
principles in a data retrieval process in an independent manner
from data contents of the data group; (c) creating a retrieval
logic corresponding to a retrieval request on the basis of the
logical model, and outputting the results of retrieval
corresponding to the retrieval request by retrieving the data group
in accordance with the retrieval logic; (d) analyzing a logical
path which connects conditions to corresponding results in a group
of events relating to the data group; and (e) updating the logical
model so as to be evolved, each time a new combination between new
conditions and corresponding results is given, on the basis of an
analysis of a logical path of the combination.
[0018] In accordance with the data retrieval method in a database
system, the logical model is constructed in a manner so as not to
depend on specific contents of a data group, and the results of an
analysis by a logical path connecting known conditions of a group
of events relating to information of the data group to the
corresponding known results are reflected to the logical model so
that it becomes possible to deal with dynamic events that are
continuously evolved with time.
[0019] These and other objects, features, aspects and advantages of
the present invention will become more apparent from the following
detailed description of the present invention when taken in
conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0020] FIG. 1 shows a conceptual block diagram that indicates the
basic concept of a database system in accordance with the present
invention;
[0021] FIG. 2 shows a block diagram that describes a hardware
configuration of the database system in accordance with an
embodiment of the present invention;
[0022] FIG. 3 shows a block diagram that describes a relationship
between sub-systems of the database system;
[0023] FIG. 4 shows a block diagram that describes a detailed
configuration of a translator;
[0024] FIG. 5 shows a block diagram that describes a detailed
configuration of a restructure engine;
[0025] FIG. 6 shows an architectural diagram that indicates an
architectural structure of a data structure model;
[0026] FIG. 7 shows an architectural diagram that indicates an
architectural structure of a data structure model;
[0027] FIG. 8 shows a graph that indicates an architectural
structure of a query structure model;
[0028] FIG. 9 shows a graph that indicates an architectural
structure of a query structure model;
[0029] FIG. 10 shows a schematic view that indicates an article
prior to conversion to an XML document;
[0030] FIG. 11 shows a schematic view that indicates an article
prior to conversion to an XML document;
[0031] FIG. 12 shows an architectural diagram that indicates an
architectural structure of an XML document;
[0032] FIG. 13 shows a schematic view that indicates a login
screen;
[0033] FIG. 14 shows a schematic view that indicates a retrieving
screen;
[0034] FIG. 15 shows a schematic view that indicates a retrieving
result display screen;
[0035] FIG. 16 shows a schematic view that indicates a detailed
display screen;
[0036] FIG. 17 shows a block diagram that describes functions of an
execute composition unit;
[0037] FIG. 18 shows a schematic view that describes a neural
network;
[0038] FIG. 19 shows a schematic view that describes a neuron;
[0039] FIG. 20 shows a drawing that describes a process in which a
combined weight in the neuron is changed;
[0040] FIG. 21 shows a flowchart that describes a structure
alteration process;
[0041] FIG. 22 shows an architectural diagram that indicates an
architectural structure of a data structure;
[0042] FIG. 23 shows a drawing that indicates a primary keyword
vector and an output signal vector in an article;
[0043] FIG. 24 shows a schematic view that indicates a retrieval
result display screen;
[0044] FIG. 25 shows an architectural diagram that indicates an
architectural structure of an XML document;
[0045] FIG. 26 shows an architectural diagram that indicates an
architectural structure of teaching data;
[0046] FIG. 27 shows an architectural diagram that indicates an
architectural structure of educational achievement data;
[0047] FIG. 28 shows an architectural diagram that indicates an
architectural structure of student characteristic data;
[0048] FIG. 29 shows a schematic view that indicates a
teaching-material inquiry screen;
[0049] FIG. 30 shows a schematic view that indicates a
teaching-material display screen;
[0050] FIG. 31 shows a schematic view that indicates an educational
achievement registering screen;
[0051] FIG. 32 shows an architectural diagram that indicates an
architectural structure of teaching-material data;
[0052] FIG. 33 shows a flowchart that describes a method for
analyzing influences of achievements at the time of entrance and
teaching material given to educational achievements;
[0053] FIG. 34 shows a schematic view that describes a neural
network;
[0054] FIG. 35 shows a schematic view that describes a hardware
configuration of a database system in accordance with a third
example;
[0055] FIG. 36 shows an outside view that describes a portable
information terminal in detail;
[0056] FIG. 37 shows a schematic view that indicates a regular
maintenance instruction screen;
[0057] FIG. 38 shows a schematic view that indicates an error
repair informing screen;
[0058] FIG. 39 shows an architectural diagram that indicates an
architectural structure of a service manual;
[0059] FIG. 40 shows an architectural diagram that indicates an
architectural structure of regular maintenance data;
[0060] FIG. 41 shows an architectural diagram that indicates an
architectural structure of failure repair data;
[0061] FIG. 42 shows a schematic view that indicates an
advertisement screen;
[0062] FIG. 43 shows an architectural diagram that indicates an
architectural structure of commodity data; and
[0063] FIG. 44 shows an architectural diagram that indicates an
architectural structure of commodity data.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Basic Concept
[0064] Referring to a conceptual block diagram of FIG. 1, the
following description will discuss the basis concept of a database
system 1 in accordance with the present invention.
[0065] This database system 1 is arranged so that, upon receipt of
a user's retrieval request 3, a retrieval output 4 is selected from
a data group 5 by applying a retrieval logic 2 to the retrieval
request 3. The retrieval logic 2 is specified depending on the
specific contents of the retrieval request 3; and a logical model
(basic principle forming a logical pattern) 6, which serves as an
upper-level indicator upon specifying this retrieval logic 2, is
held in the database system 1.
[0066] This logical model 6 gives a general relationship that
directs results 8 from conditions 7 relating to a group of events
that form corresponding information stored in the data group 5.
Both of the logical model 6 and the retrieval logic 2 are similar
to each other in that they are "logics"; however, in terms of
mathematical analogy, the logical model 6 corresponds to "a general
solution" which connects the retrieval request 3 and the retrieval
results 4, while the retrieval logic 2 corresponds to "a specific
solution" or "a numeric solution" that is used for giving the
retrieval results 4 when the data group 5 and the retrieval request
3 are practically specified. In other words, the logical model 6
gives a global rule which has a wider range of applications since
it represents a "functional" relationship or "mapping" as a model,
while the retrieval logic 2 gives a local, temporary rule that is
used for obtaining the retrieval results 4 from the retrieval
request 3 at a specific point of time by practically representing
the logical model 6 in accordance with the corresponding
situations.
[0067] The database system 1 of the present invention analyzes
logical paths connecting conditions and results in a group of
events that are objects of information in a group of data, and
updates the logical model 6 on the basis of the results of
analysis. A retrieval logic 2, which is applied upon receipt of a
new retrieval request 3 thereafter, has new logical contents that
are specified on the basis of the updated logical model 6. Here, in
the case when the logical model 6 is a model that regulates the
rule of the retrieval of the database itself, the contents of the
retrieval request 3 typically form "conditions", and the data
finally selected by the user from the retrieval outputs 4 form
"results".
[0068] In this manner, the database system 1 of the present
invention is characterized in that the logical model 6 is allowed
to continuously evolve with time and the retrieval logic 2 is also
allowed to continuously evolve accordingly.
[0069] Moreover, the logical model 6 is arranged as a model that
does not depend on specific data contents accumulated in the data
group 5. In terms of mathematical analogy in the same manner as
described above, this model is described as follows.
[0070] Supposing that the relationship between a retrieval request
x and a retrieval output y is represented by y=f(x), even when the
numeric relationship such as f(1)=5 and f(3)=10 is determined
specifically, the relationship is used for only the corresponding
data group, and fails to provide specific values of the input and
output with respect to another data group. In other words, such a
specific retrieval logic is dependent on the specific contents of
the data group, and is not applicable separately from the data
group. In contrast, if this is held as "a functional form" of
y=f(x) or a model of rules used for directing this form, the model
can also be applied to another data group so as to identify a
specific retrieval logic. The logical model 6 is provided as such a
model, and its "evolution" corresponds to continuous changes of
parameters contained in, for example, the function f(x), which are
made by analyzing the relationship between the conditions of a
retrieval process and the results thereof.
[0071] In particular, the logical model 6 is not a simple
"inorganic" set of routes that connect the conditions and the
results, but is allowed to reflect "a tendency" of a group of
events; thus, it becomes applicable to another group of data or
another user in which such "a tendency" is commonly expected. In
other words, the relationship between the conditions of a retrieval
process and the results thereof is analyzed as "meaning", and this
is reflected to the logical model 6 so that the logical model 6 is
allowed to form an organic existence that has an independently
evolving property.
[0072] Moreover, this database system 1 optimizes a data structure
9 on the basis of the logical model 6. In other words, the data
structure 9 is not a fixed structure, but is allowed to evolve
dynamically as one function of the logical model 6. Thus, in the
database system 1, the retrieval process is efficiently executed by
the retrieval logic 2.
[0073] In this manner, the logical model that is widely applicable
is held independently from the specific contents of the data group
5, that is, held in a manner so as to be separable from the data
group 5 variably; thus, it is possible to increase the
extensibility of the logical model 6, and consequently to carry out
such a process that the logical model 6 can be transplanted to
another database system.
[0074] The group of events that form an application subject of the
logical model 6 may be a group of events relating to retrieving
operations of the database system 1, or a group of events other
than these, for example, natural phenomena, human phenomena, social
phenomena or the like occurring outside the system. Various
application examples will be described later. In the case of a
group of events other than those relating to the database system 1
itself (typically, a group of events relating to its retrieving
operations), experience information that forms a basis of the
logical relationship between the conditions 7 and the results 8 in
the group of events occurs outside the database system 1. For
example, in an educational teaching material database system which
will be described later as a specific example, the relationship
between the cause and the results, for example, the relationship
between the use of a specific teaching material for a specific
student and the effects of learning, is an event occurring outside
the database system 1. For this reason, such information with
respect to the cause-effect relationship occurring outside the
system may be manually inputted to the database system 1 so that
the conditions 7 and the results 8 are specified, and the results
of analyses with respect to the correspondence relationship can be
reflected to the logical model 6 (that is, retrieval logic 2 to be
used thereafter). In other words, the evolution of the logical
model 6 is allowed to take place not only by events occurring
inside the database system 1, but also by events occurring outside
the system (growth of the logical model 6). Moreover, in the case
when natural phenomena or the like are used as a group of events, a
detection means, such as a sensor, may be used so as to input
external information by using an on-line system.
[0075] The above description has described the general basic
concept of the database system 1, and the following description
will discuss embodiments corresponding to the database system 1 of
the present invention by reference to specific examples, and
specific application examples thereof.
Hardware Configuration
[0076] Referring to a block diagram of FIG. 2, the following
description will discuss a hardware configuration of the database
system in accordance with the present embodiment.
[0077] The database system 1 is a client-server-type database
system that is formed on a network. The database system 1 is
provided with a database server 10, a client 20 and a router 30.
These database server 10, client 20 and router 30 are connected to
each other by the network 40 so as to communicate with each other.
The network 40 may be either a cable LAN (Local Area Network) or a
radio LAN, or the cable LAN and the radio LAN may be used in a
mixed manner. Moreover, one portion or the entire portion of the
network 40 may be constructed by using public telephone lines.
[0078] The database server 10 is a computer provided with a storage
medium for storing data. A database managing system (DBMS) and
middle ware are installed in the database server 10. Thus, the
database server 10 is allowed to function as a main body unit in
the database system 1. The database server 10 is allowed to respond
to instructions from the client 20 given through the network
40.
[0079] The client 20 is a computer that is provided with a display
device 21 such as a CRT display and an input device 22 such as a
keyboard. A database-use application is installed in the client 20.
Thus, the client 20 is allowed to transmit an instruction to the
database server 10 through the network 40. Moreover, a response
(retrieval output, etc.) to the transmitted instruction from the
database server 10 can be displayed on the display device 21. With
these devices, the client 20 is allowed to function as an
input-output terminal (user interface) of the database system
1.
[0080] A router 30 connects the network 40 to the internet 50 that
is an external network. The router 30 allows the database system 1
to acquire data from an external data source.
[0081] In the above-mentioned database system 1, a simple case in
which the database server 10, client 20 and router 30, each being
single, are placed has been described; however, the database system
of the present invention is not intended to be limited by this
arrangement. In other words, a plurality of database servers,
clients and routers may be installed. Moreover, one portion or the
entire portions of these may be formed as an integral part.
Furthermore, computers having different platforms may be used as
the database servers and the clients in a mixed manner.
Functions
[0082] Referring to a block diagram (FIG. 3) that describes the
relationship between subsystems, the following description will
discuss functions of the database system 1 for each of the
subsystems.
User Interface 110
[0083] The database system 1 is provided with a user interface 110
that forms a means for allowing the user to operate the database
system 1. The user interface 110 can output a user's retrieval
request to an execute composition unit 120. Moreover, the user
interface 110 can output additional data inputted by the user to a
data storage 130. Moreover, a response from the database system 1
to the user retrieval request can be displayed.
Execute Composition Unit 120
[0084] An execute composition unit 120, which converts a retrieval
request to a query, is installed in the database system 1, and the
execute composition unit 120 corresponds to an essential portion of
"retrieval logic 2" of FIG. 1. The execute composition unit 120
converts the retrieval request outputted from the user interface
110 to a query. This query has a query structure that is specified
by a query structure model 121. Moreover, the query thus converted
is outputted to a query engine mining unit 150. Moreover, the
execute composition unit 120 acquires data extracted by the query
engine mining unit 150, and outputs the resulting data to the user
interface 110. At this time, the execute composition unit 120 is
allowed to reflect a knowledge-structure-discovery model 161 (KSD;
Knowledge, Structure, Discovery) stored in a realization store 160,
which will be described later, to the data to be outputted. In
other words, the KSD model can be reflected to the retrieval logic.
More specifically, the data required by the user can be estimated
through the KSD model 161 so that it becomes possible to
preferentially output the resulting data to the user interface 110
or to output a method for a retrieval request that allows an
appropriate extraction of the data to the user interface 110.
Moreover, the execute composition 120 can maintain the contents of
inputs and outputs to and from the user interface 110 during a
sequence of database operations by the user, and output them to the
realization store 160.
Data Store 130
[0085] The database system 1 includes a data store 130 in which a
data group 132 is stored. The data group 132 is stored in the data
store 130 with being kept in conformity with a data structure
specified by a data structure model 131. Here, the data structure
model 131 can be updated by a restructure engine 170, which will be
described later.
Translator 140
[0086] The database system 1 is provided with a translator 140
which acquires data from an external data source. The translator
140 analyzes data obtained from the external data source 180, and
converts the data to data that is in conformity with the data
structure model 131. The data thus converted is outputted to the
data store 130, and added to the data group 132.
[0087] As shown in a block diagram of FIG. 4, components 141 to 144
are installed in the translator 140 for each of the kinds of data
sources and data formats. More specifically, a database component
141, a WWW (World Wide Web) component 142, a file component 143 and
an image/motion picture component 144, which respectively
correspond to an external database 181 of the external data source
180, a WWW 182, a file 183 and images/motion pictures 184, are
installed. By adding components corresponding to a new data source
and data format, the translator 140 is allowed to convert the data
of new data source and data format.
[0088] Moreover, non-computerized data 185 such as a printed matter
is converted to digital computerized data by using a digitizing
means such as a scanner and an OCR, and then processed by the
translator 140.
Query Engine Mining Unit 150
[0089] The database system 1 is provided with a query engine mining
unit 150 which extracts data matched to a query from the data group
132. The query engine mining unit 150 carries out a pattern
matching process between a query inputted from the execute
composition unit 120 and the data group 132 stored in the data
store 130, and extracts data having matched pattern with query.
Moreover, by carrying out a full text retrieval using the terminal
element of the query inputted from the execute composition unit 120
as a key word, it extracts data containing the key word.
Furthermore, the query engine mining unit 150 outputs the extracted
data to the execute composition unit 120.
Realization Store 160
[0090] The database system 1 is provided with a realization store
160. A KSD model 161, which is a logical model that directs the
results from conditions relating to unknown events in the group of
events that are dealt by the database system 1, is stored in the
realization store 160. The realization store 160 holds "logical
model 6" of FIG. 1, and also corresponds to elements that allows it
to evolve. The KSD model 161 can be updated on demand by a KSD
model creating unit 162 which analyzes logical paths between
conditions relating to known events and the results, and specifies
the characteristics of logical paths as a logical model. In other
words, the KSD model creating unit 162 analyzes the correlation
between the conditions and the results, and specifies the
cause-effect relationship on the basis of the known events in the
specific group of events. Moreover, on the basis of the results of
the specifying processes, the KSD model creating unit 162 can
update the KSD model 161. Thus, upon receipt of conditions relating
to an unknown event, the realization store 160 makes it possible to
estimate the results by utilizing the specified cause-effect
relationship.
[0091] The above-mentioned conditions and results may be related to
database operations by the user, or may be data other than this.
With respect to the events relating to the database operations by
the user, for example, a keyword, used by the user upon retrieval
request, forms a condition, and information selected by the user
from the retrieval output from the database systems form the
results. With respect to the events other than the database
operations by the user, for example, in a school educational
teaching material database, a teaching material outputted from the
database system 1 in response to a user's retrieval request forms a
condition, and the educational achievements by the use of the
teaching material form the results. These educational achievements
are inputted to the database system 1 through a predetermined
sequence of processes.
[0092] Moreover, the realization store 160 is not a computer that
simply calculates the correlation between the conditions obtained
up to a specific point of time, but a dynamic learning device that
evolves in accordance with a lapse of time (accumulation of
database use history). Therefore, the device is arranged so that,
in the case when the same condition and results are repeated, it
does not simply specify the same logical model repeatedly, but
comes to have an improved result-predicting capability, as the
number of repetitions increases. In other words, it is designed so
that, by continuously carrying out learning processes, it is
allowed to have better understanding of meaning between the
condition and the results. In other words, it is designed so as to
carry out additional learning. Thus, in the case when the logical
path from a condition to the results is varied as time elapses, the
realization store 160 is allowed to gradually change the logical
model (that is, step by step or continuously) in response to a
change in the logical path, so as to continuously maintain and
improve the result-predicting capability. From this point of view
the realization store 160 is not a computer for simply calculating
the correlation, but an intelligent artificial intelligence capable
of making dynamic determinations.
[0093] Here, the degree of contribution of the above-mentioned
additional learning to the result-predicting capability can be
designed in various manners in accordance with database systems. In
other words, with respect to a database system in which learning
obtained in recent past is more important than learning obtained in
farther past (for example, a database system designed for observing
seasonal fashions and popular commodities in retail business), the
realization store 160 is arranged so that old learning is
"forgotten" little by little with a greater degree of contribution
of the additional learning being set. Moreover, with respect to a
database system in which both of the farther past and the recent
past are important in the same degree (for example, database system
designed for document retrieve in a mature technical field), the
realization store 160 is arranged so that the degree of
contribution of the additional learning is set to be comparatively
smaller, while the contribution of results of old learning to the
result-predicting capability is maintained for a long period of
time.
[0094] Next, the following description will discuss "logical paths"
and "logical models" in the realization store 160 in more detail.
First, suppose that conditions (for example, "keyword" in a
retrieving process) are represented by condition A(i) (i=1, 2, . .
. , n), and that the results corresponding to condition A(i) are
represented by result B(i). In this case, respective corresponding
relationships between condition A(i).fwdarw.B(i) correspond to
"logical paths". Further, a general relationship (mapping) f:
condition group A.fwdarw.result group B, which contains a plurality
of logical paths, i=1, 2, . . . , 3, forms a "logical model", and
the following equations hold: Condition group A={A(1),A(2), . . .
,A(n)}, Result group B={B(1),B(2), . . . ,B(n)}. In the case when
condition A(i) and result B(i) are given as numeric values, the
mapping f forms a mathematical function. Since the mapping f has a
general relationship, it can be used for estimating result B(j)
with respect to a new condition A(j). In an actual database system,
the mapping f includes not only a case in which a completely
correct result is given, but also an approximation relationship in
which an approximately correct result is given; however, as the
number of samples n increases, the precision or the degree of
approximation of the mapping f is improved. In other words, as the
frequency of use of the database system 1 increases, the
realization store 160 is allowed to predict the result more
correctly. From this point of view, the realization store 160 can
be called as "evolving database" which carries out "learning"
autonomously.
[0095] Further, the mapping f is changeable with time. In other
words, in the case when, after a lapse of time, to the
above-mentioned n-number of conditions A(i) and results B(i),
k-number of new conditions: A'={A(n+1),A(n+2), . . . , A(n+k)}
and
[0096] k-number of new results: B'={B(n+1),B(n+2), . . . , B(n+k)}
are added, the mapping f is evolved so as to reflect the following
relationships:
[0097] a set formed by combining a plurality of condition groups,
that is, A+A'; and
[0098] a set formed by combining a plurality of result groups, that
is, B+B'.
[0099] For this reason, when mapping f': A'.fwdarw.B' is different
from the mapping f, the mapping f is revised by taking the mapping
f' into consideration. This process corresponds to the
above-mentioned additional learning. Of course, when the mapping f'
is the same as the mapping f, the mapping f is not revised.
[0100] Moreover, the mapping f is generated in a separated manner
from the data group 132. For this reason, the mapping f is not a
person-related matter that is applicable to only a specific user or
group of users (hereinafter, simply referred to as the user), and
can be usable in an extended manner. More specifically, with
respect to mapping f obtained with respect to a specific user, it
is applicable to other users. Furthermore, a plurality of pieces of
mapping f.sub.1 and f.sub.2 may be combined to form new mapping,
for example, linearly combined mapping:
c.sub.1f.sub.1+c.sub.2f.sub.2 (where c.sub.1 and c.sub.2 are
constants) may be formed and utilized.
[0101] Here, with respect to the above-mentioned learning, a neural
network and a rule base are preferably used. In examples which will
be described later, referring to simple examples, descriptions will
be given of methods for applying a neural network and a rule base
to the database system.
Restructure Engine 170
[0102] The database system 1 is provided with a restructure engine
170 which optimizes the data structure. As shown in a block diagram
of FIG. 5, this restructure engine 170 has a structure-change
determining unit 171 and a refactoring unit 172. This
structure-change determining unit 171 compares the KSD model 161
with the data structure model 131 so as to determine whether or not
the data structure model 131 properly reflects the KSD model 161.
Moreover, in the case when the data structure model 131 does not
reflect the KSD model 161, the structure-change determining unit
171 outputs a structure-change instruction signal to the
refactoring unit 172. In response to this structure-change
instruction signal, the refactoring unit 172 changes the data
structure model 131 so as to reflect the KSD model 161. Moreover,
the translator 140 is updated so as to be suitable for the data
structure model 131 that has been changed.
[0103] Referring to a specific example, the following description
will discuss the change in the data structure model 131. This
description exemplifies a case in which the data structure model
131 has a data structure of a hierarchical data structure. In the
case when a plurality of data elements C(i) (i=1, 2, 3), which are
predicted to be outputted by the KSD model 161 at a high frequency,
are described on separated nodes in a scattered manner as shown in
a hierarchical drawing in FIG. 6, the data retrieval efficiency
becomes low. For this reason, in such a case, a structure-change
instruction signal indicating that the data structure model 131
does not reflect the KSD model 161 is outputted to the refactoring
unit 172 by the structure-change determining unit 171. Upon receipt
of the structure-change instruction signal, the refactoring unit
172 changes the data structure model 131 so that, as shown in the
hierarchical drawing of FIG. 7, the data elements C(i) (i=1, 2, 3)
are concentrated on adjacent nodes. This is a data structure
operation used for making a data structure model 131 that has not
been optimized with respect to the KSD model 161 closer to the
optimized state. With this operation, it becomes possible to
improve the data retrieval efficiency, and consequently to
effectively exert the retrieval supporting function of the KSD
model 161.
[0104] The above-mentioned example of the data structure change is
a simplified example, and the method for changing the data
structure is not intended to be limited by this method. For
example, another data structure change may be proposed in which
appropriate data is written by adding a new node, or in which a
portion in the data that has not been structured is newly
structured. Some of these specific examples will be described in
Examples later; however, the data structure changing method is not
intended to be limited by these Examples, and includes any method
for changing the defined data structure in any format.
Data Structure
[0105] As described above, the data group 132 stored in the data
store 130 and a query obtained by converting a retrieval request
are provided with a specific data structure. The following
description will exemplify a hierarchical data structure as an
example of the data structure; however, the data structure of the
present invention is not intended to be limited by this structure.
For example, a data structure of a relational type or a network
type may be used.
[0106] The query structure model 121 and the data structure model
131 of the present embodiment have a hierarchical data structure.
The hierarchical structure is represented by a graph having each of
elements on which data is written. With respect to the expression,
XML (eXtended Markup Language) is used, and RDF (Resource
Description Framework) is adopted as the expression format. Here,
the expression means of the data structure is not intended to be
limited by this method, and various expression formats capable of
specifying the data structure may be utilized.
[0107] FIG. 8 shows a hierarchical structure of the query
structural model 121 in its graph. The query structure model 121
shown in FIG. 8 exemplifies a retrieval query for a scientific
article database. In this case, the query structure model 121 is
provided with reserved attributes "query-id", "query" and "keyword"
in root element "root". A unique natural number for identifying
each query is written in "query-id". This natural number is formed
upon creating a query, and is not changed. The contents of a
retrieval process inputted by the user are written in "query". The
keyword inputted by the user is written in "keyword". In this
example, since two keywords exist, two "keyword" nodes are formed.
Here, attributes other than the above-mentioned reserved attributes
may be added on demand. Although FIG. 8 has exemplified a case of
retrieval query in a scientific article database, the contents of
the attribute may be changed in various ways in accordance with the
purpose of the database.
[0108] Next, FIG. 9 shows a hierarchical structure of the data
structure model 131 in its graph. The data structure model shown in
FIG. 9 is a data example of a scientific article database. In this
case, the data structure model 131 is provided with reserved
attributes "data-id" and "data" in root element "root". A unique
natural number for identifying each data is written in "data-id".
This natural number is formed upon registration in the data store
130, and is not changed. A pointer to original data is written in
"data" as URL (Uniform Resource Locator). A field of each
scientific article is written in "field" that is a desired
attribute other than reserved attributes. Here, other attributes
may be added on demand. Although FIG. 9 has exemplified a case of
data structure in a scientific article database, the contents of
the attribute may be changed in various ways in accordance with the
purpose of the database, in the same manner as the query structure
model 121.
Others
[0109] In the above-mentioned embodiment, a general description has
been given of the database system in accordance with the present
invention, and the following description will exemplify a specific
database system. Here, all the structures described in the
above-mentioned database system are not necessarily included in
each of the examples. Moreover, some examples have partially
modified structures. However, these are only matters of design
variation that are modified in accordance with specific features of
the respective database systems.
EXAMPLES OF THE INVENTION
First Example
Database System for Use in Scientific Article Retrieve
[0110] A database system 1 in accordance with a first example is a
database system for use in scientific article retrieve in the
medical field (hereinafter, referred to simply as "article").
1.1Data Structure
Forming Article to XML Document;
[0111] An article to be retrieved is converted to an XML document
by the translator 140, and stored in the data store 130. Schematic
views of FIGS. 10 and 11 respectively show examples of an article
before and after the conversion to the XML document.
[0112] As shown in FIGS. 10 and 11, bibliographic items, such as
"title", "author" and "keyword", of an article 200 are written in
an XML document 201 as elements having the respective bibliographic
items as the element names thereof. For example, "Taro Yamada",
which corresponds to "author" of the article 200, is written in the
element of "author" in the XML document 201. Moreover, the contents
of the main body portion of the article 200 are written in the XML
document 201 as elements having respective section names as element
names. For example, the contents of the section "Preface" of the
article 200 are written in an element "Preface" in the XML document
201.
Data Structure Model
[0113] The structure of the XML document 201, that is, the
relationship between the elements of the XML document 201 is
represented by RDF. In the initial state of the first example, the
structure of the XML document 201 is a hierarchical data structure
210 as shown in a hierarchical drawing in FIG. 12. More
specifically, session segments 211 (FIG. 12 shows only one segment;
however, in fact, a plurality of segments exist), which are derived
from a root segment, and indicate fields of articles 200, are
installed, and title segments 212, which are derived from each
session segment, are installed, and an author segment 213, a
preface segment 214, a keyword segment 215, a text segment 216 and
a conclusion segment 217, which are derived from each title
segment, are installed. Of course, such a hierarchical structure is
only one example, and another hierarchical type may be adopted.
Moreover, one portion of elements may be in a non-structured state.
For example, "text" may be further layered to segments such as
"theory", "calculation", "experiment method" and "experiment
results"; however, these may be written in "text" segment in a
semi-structured state without being layered.
[0114] The above-mentioned structure is stored in the data store
130 as a data structure model 131. As will be described later, the
data structure model 131 thus stored is continuously updated as the
database system 1 is evolved. In other words, in the same manner as
the data main body unit 132, the data structure model 131 forms an
object (processing subject) of the database system 1. From this
point of view, the present database system 1 is different from a
conventional database system which is controlled by the data
structure model and therefore has difficulty in achieving
continuous evolution. With these features, the present database
system 1 makes it possible to easily process semi-structured data
having a data structure that has not been completely structured,
and also to dynamically evolve the data structure model 131 in
accordance with user's application conditions.
1.2 Database Operation
User Interface
[0115] Information input-output between the database system 1 and
the user is carried out by using an user interface 110. Various
types of well-known GUIs (Graphical User Interface) can be adopted
as the user interface 110. The user's database operations are
carried out by using a database-use application installed in a
client 20. Referring to examples of display screens in GUI, the
following description will discuss the database operations.
Authentication
[0116] Since the database system 1 of the first example holds a KSD
model 161 for each of the users, it is necessary to identify the
user. Therefore, an authentication procedure is carried out before
the start of the use. More specifically, as shown in FIG. 13, prior
to the use of the database system 1, after having given
corresponding inputs in a user ID column 231 and a password column
232 on a login screen 230, the user presses an OK button 233. When
the inputted user ID and password are coincident with the user ID
and password that have been preliminarily registered, the login
process is completed, and the user is allowed to use the database
system 1. The user can terminate the database operation by pressing
a end button 234 (in the following examples of screen displays
also, the end button has the same function).
Retrieval
[0117] In the database system 1 of the first example, it is
possible to execute an article retrieving operation by inputting a
natural sentence that the user uses every day. As shown in FIG. 14,
the retrieving operation is carried out by inputting a natural
sentence to be used for retrieval in a retrieval input column 241
of a retrieval screen 240 and pressing a retrieval button 242. For
example, in an attempt to examine clinical examples for the stomach
cancer, the user inputs "articles in which clinical examples for
the stomach cancer are described" into the retrieval input column
241.
Display of Retrieval Results
[0118] FIG. 15 shows a retrieval-result display screen 250 of the
database system 1 of the first example. The retrieval results
include the corresponding number of cases 251 that indicate the
number of outputted articles, NO 252 that indicates the order of
outputs, session names 253 of the outputted articles, titles 254
thereof, and a score 255 that is a parameter that indicates the
degree of relationship with the retrieval input that is estimated
by the database system 1. Here, the score 255 takes a numeric value
within a range from 0% to 100%; thus, the greater the numeric
value, the stronger the relationship with the retrieval input.
Here, the output order of the articles is represented by the
descending order of the score 255.
[0119] Here, an underline 254a is put below the title 254 of each
displayed article, thereby indicating that a link to the detailed
information is provided. The user clicks a mouse button with the
mouse pointer being matched with the underline 254a so that he or
she is allowed to view a detailed display screen 260 that will be
discussed next. Moreover, by pressing a return button 256, the user
is allowed to make the retrieval screen 240 again displayed.
Detailed Display
[0120] FIG. 16 shows the above-mentioned detailed display screen
260. The detailed display screen 260 displays the article selected
in the retrieval-result display screen 250 in detail. More
specifically, in addition to title 261, preface 262, text 263 and
conclusion 264 are displayed. By pressing a download button 265,
the user is allowed to download the corresponding article in a
predetermined file format, and to view, print and carry out other
operations. Moreover, by pressing a return button 266, the user is
allowed to make the retrieval-result display screen 250 again
displayed, and to select another detailed article.
1.3 Query
Optimization of Retrieval Processes
[0121] The retrieval sentence inputted by the user is analyzed by
the execute composition unit 120, and converted to such a query as
to provide optimal retrieving processes in the query engine mining
unit 150. FIG. 17 is a block diagram that describes functions of
the execute composition unit 120 in accordance with the first
example. By exemplifying a case in which a natural sentence 271,
"articles in which clinical examples for the stomach cancer are
described", is inputted for a retrieving operation, the following
description will discuss the execute composition unit 120 in detail
by reference to FIG. 17.
[0122] First, the natural sentence 271, "articles in which clinical
examples for the stomach cancer are described" inputted from the
user interface 280, is decomposed into clauses by a form-element
analyzing unit 274. That is, it is decomposed into 7 clauses 272,
"articles", "in which clinical examples", "for", "the stomach
cancer" "are" and "described". The retrieval input, decomposed into
the clauses 272, is outputted to a query generation unit 276.
Referring to a medical-field dictionary 275 including technical
terms used in the medical field, the query generation unit 276
extracts only the technical terms from the inputted clauses. In
this case, two technical terms 273, that is, "stomach cancer" and
"clinical examples", are extracted. Moreover, referring to the
query structure model 121, the query generation unit 276 converts
the extracted technical terms 273 to a format that is in conformity
with the query structure model 121, and outputs the resulting data
to the query engine mining unit 150.
[0123] Here, the execute composition unit 120 may be provided with
a function that eliminate the polysemy of the retrieval inputs so
that even upon receipt of synonyms, such as "stomach cancer
(written in Japanese Hiragana)" and "stomach cancer (written in
Japanese Katakana)", the same retrieval output is obtained.
Retrieval Process and Retrieval Result Output
[0124] By using the query inputted from the execute composition
unit 120, the query engine mining unit 150 extracts articles
containing the queries "stomach cancer" and "clinical examples"
from the data store 130 through full text retrieval processes. The
articles thus extracted are outputted to the execute composition
unit 120. The outputted articles are displayed on the
aforementioned retrieval-result display screen 250. Here, the score
255 of the retrieval-result display screen 250 is given by an
extended function of the database system 1 of the first example,
and the detailed description thereof will be given in Section for
describing extension functions.
1.4 Construction of KSD Model
[0125] Various modes are proposed in forming the KSD model 161, and
referring to the following example, a description will be given in
this section. In this mode, it is supposed that the relationship
between a keyword of a query generated from the user's retrieval
input (hereinafter, referred to simply as "user keyword") and a
keyword that the author has given to the article downloaded by the
user (hereinafter, referred to simply as "primary keyword") is
learned by a neural network, and accumulated as a KSD model 161. In
this case, "the user keyword" which is obtained by a sequence of
database operations by the user and "the primary keyword" are
outputted from the execute composition unit 120 to the realization
store 160, and utilized for the formation of the KSD model 161.
[0126] In the present example, the user keyword and the primary
keyword respectively correspond to the condition A and the result B
described in the embodiment of the invention. In this case, in
principle, all the technical terms described in the medical field
dictionary 275 can be the condition A, and all the primary keywords
given to all the articles stored in the data store 130 can be the
result B. For convenience of description, referring to a simple
neural network in which only three terms of "stomach cancer",
"clinical examples" and "broken bone" are included in the medical
field dictionary 275 with only three words of "anti-cancer drug",
"metastasis" and "cast" being included as the primary keywords, the
following description will describe the case.
[0127] FIG. 18 shows a schematic view of a neural network 300 of
the first example. The neural network 300 is a perceptron
constituted by an input layer I, an intermediate layer M and an
output layer O, each of which has three neurons. Here, the
respective words, "stomach cancer", "clinical examples" and "broken
bone" are made in association with inputs X1, X2 and X3
respectively. Each of the inputs X1, X2 and X3 is allowed to have a
value "0" or "1" so that the word included in the user keyword is
represented by "1", while the word that is not included therein is
represented by "0". In other words, in the case when "stomach
cancer" and "clinical examples" are included in a user keyword, the
input is represented by (X1, X2, X3)=(1, 1, 0). In the same manner,
the respective words, "anti-cancer drug", "metastasis" and "cast"
are made in association with outputs Y1, Y2 and Y3. Each of the
output Y1, Y2 and Y3 is allowed to have a value "0" or "1" so that
the word included in the primary keyword is represented by "1",
while the word that is not included therein is represented by "0".
In other words, in the case when "anti-cancer agent" and
"metastasis" are included in the primary keyword, the input is
represented by (Y1, Y2, Y3)=(1, 1, 0).
[0128] The inputs (X1, X2, X3) are respectively inputted to neurons
I1, I2, I3 of the input layer. Moreover, the respective outputs of
the neurons I1, I2, I3 are all inputted to the neurons M1, M2, M3
of the intermediate layer. Successively, the respective outputs of
the neurons M1, M2, M3 are all inputted to neurons O1, O2, O3 of
the output layer. The outputs of the neurons O1, O2, O3
respectively form the outputs Y1, Y2, Y3.
[0129] Here, the neuron will be described below. As shown in FIG.
19, in general, a neuron 310 can determine an output y in response
to inputs x.sub.1, x.sub.2, . . . , x.sub.N (in this example, N=3).
With respect to the inputs x.sub.1, x.sub.2, . . . , x.sub.N,
combined weights w.sub.1, w.sub.2, . . . , w.sub.N that are weights
of the respective inputs are determined. When inputs are given to
the neuron 310, the output y is determined by a net value u
(equation 1) and a combination function F (equation 2) which are
calculated from the inputs x.sub.1, x.sub.2, . . . , x.sub.N, and
the combined weights w.sub.1, w.sub.2, . . . , w.sub.N. u = i = 1 N
.times. w i .times. x i Equation .times. .times. 1 F .function. ( u
) = { 0 .times. ( u .ltoreq. .theta. ) 1 .times. ( u > .theta. )
Equation .times. .times. 2 ##EQU1##
[0130] Here, .theta. in equation 2 is a threshold value of the
combination function F. That is, this equation indicates that when
the net value u exceeds the threshold value .theta., the output
changes from "0" to "1". Here, the above-mentioned combination
weights w.sub.1, w.sub.2, . . . , w.sub.N are changed by learning
processes of the neural network 300. Moreover, the above-mentioned
combination function F is only one example, and can be changed in
various ways depending on features of the database system.
[0131] Next, learning processes of the neural network 300 will be
described. The neural network 300 carries out learning processes by
using a primary keyword that the realization store 160 obtained
from the execute composition unit 120 as a teaching signal with
respect to the corresponding user keyword. In other words, in the
neural network 300, processes for changing the combination weight
of the neuron are carried out so as to make the output signal
vector v.sub.o=(Y1, Y2, Y3)=(1, 0, 1) of the neural network 300
with respect to the input signal vector v=(X1, X2, X3)=(1, 1, 0)
closer to the primary keyword vector v.sub.key=(Y1', Y2', Y3')=(1,
1, 0) (FIG. 20 shows these relationships as a list). The learning
processes are carried out on the basis of, for example, the
standard delta rule. More specifically, when the combination weight
prior to learning from neuron M.sub.j to neuron O.sub.i is
represented by V.sub.ij, V.sub.ij' determined by equation 3 is
adopted as a new combination weight from neuron M.sub.j to neuron
O.sub.i; thus, the learning processes are carried out on the neural
network 300. V'.sub.ij=V.sub.ij+.epsilon.(Y'.sub.i-Y.sub.i)a.sub.j
Equation 3
[0132] Here, .epsilon. is a positive real number, and forms a
parameter indicating the degree of contribution in the latest
learning, and a.sub.j is an output from the neuron M.sub.j.
[0133] As clearly shown by equation 3, in the case when the
teaching signal and the output signal are equal to each other, no
change occurs in the combination weight, with the result that no
learning process is carried out. In response to an output, when the
output signal of the neuron is "0" with the teaching signal being
set to "1", the combination weight is increased so as to make the
output of the neuron greater. In contrast, in response to an
output, when the output signal of the neuron is "1" with the
teaching signal being set to "0", the combination weight is
degreased so as to make the output of the neuron smaller. With
these arrangements, the combination weight is changed so as to make
the output signal to a specific input signal closer to the teaching
signal.
[0134] Here, in the above-mentioned learning process, there is no
change in the combination weight of the intermediate layer M;
however, in an actual database system, the combination weight of
the intermediate layer M may be changed on the basis of a
high-degree learning rule such as back propagation.
[0135] By repeating these learning processes (that is, as the user
repeats the retrieval inputs and downloads), it becomes possible to
further improve the degree of approximation of mapping in the
realization store 160 from conditions (user keyword) to the result
(primary keyword). As the degree of approximation is improved, the
realization store 160 makes it possible to more accurately estimate
the primary keyword contained in the article that is required for
the user, in the case when the user gives a new retrieval input so
as to carry out database operations. This improvement in the
estimating capability is advantageous in providing various useful
functions such as the alteration in the database structure and the
extension functions of the database structure, which will be
described in the next section and thereafter.
[0136] Moreover, even when the tendency of the user's retrieval
input and articles to be downloaded changes as time elapses (for
example, as the user becomes a college student.fwdarw.graduate
student.fwdarw.professor, he or she often comes to retrieve
articles relating to serious diseases, starting from articles
relating to commonplace sicknesses), the KSD model 161 is allowed
to change in response to such changes; thus, it becomes possible to
properly maintain the usefulness of the database system 1 for the
user.
1.5 Evolution of Data Structure Model
[0137] In the first example, referring to an example in which the
data structure model 131 changes every time the KSD model 161
carries out an additional learning process. In other words, in this
example, as the data-estimating capability of the KSD model 161
improves, the data structure model 131 changes in parallel with
each other.
Structure Change Determination
[0138] When user keywords and a primary keyword have been
determined in a sequence of database operations by the user, the
structure change determining unit 171 determines whether or not the
primary keyword is reflected to the user keywords. More
specifically, in the case when all the user keywords are included
in the primary keyword, it is determined that the primary keyword
is reflected to the user keywords, while, in the case when there is
a user keyword that is not included in the primary keyword, it is
determined that the primary keyword is not reflected to the user
keywords.
Structure Change Process
[0139] When the structure change determining unit 171 has
determined that the primary keyword is not reflected to the user
keywords, a structure change instruction signal is outputted from
the structure change determining unit 171 to the refactoring unit
172. Upon receipt of the structure change instruction signal, the
refactoring unit 172 executes a structure changing process
(reconstruction of data structure). Referring to a flowchart in
FIG. 21, the structure changing process will be described.
[0140] First, at step S201, the data structure model 131 at the
current time is confirmed so that a branching process is carried
out. In other words, the refactoring unit 172 confirms whether or
not a primary keyword segment 322 and a user keyword segment 323
(see data structure 320 shown in the hierarchical drawing in FIG.
22) exist in a lower layer of a keyword segment 215 of the
corresponding article. In the case when these segments exist, the
sequence proceeds to step S203. When these segments do not exist,
the sequence proceeds to step S202.
[0141] At step S202, a primary keyword segment 322 and a user
keyword segment 323 are newly formed in the lower layer of the
keyword segment 321. Further, keywords described in the keyword
segment 215 of the data structure 210 are copied, and written in
the primary keyword segment 322. Upon completion of these
processes, the sequence proceeds to step S203.
[0142] At step S203, the keyword among the user keywords, which is
not included in the primary keyword is added to the user keyword
segment 323, thereby completing the structure change process at
this time.
[0143] Through the above-mentioned structure changing process, the
user keywords other than keywords that have been given to the
article by the author are added thereto.
[0144] Since the retrieval process is carried out through the full
text retrieve, the additional user keyword is a technical term that
has been contained in any portion of the article. In other words,
by using a technical term contained in the article although the
author of the article has not preliminarily expected, the
corresponding article can be extracted by the user.
[0145] In the database system 1 of the first example, the user
keywords, added in this manner, are dealt in the database
operations thereafter as a keyword equivalent to the primary
keyword. In other words, in the database operation thereafter, the
primary keyword, which forms a teaching signal of the neural
network 300, is dealt in a manner so as to also include "stomach
cancer" and "anti-cancer agent". Thus, the learning process is
carried out in such a manner that the keywords used by the user
(more specifically, technical terms contained in a natural sentence
included in the user's retrieval input) are added as keywords that
represent the features of the article and that the output of the
neural network 300 is also made to have a stronger tendency to
output such keywords. Here, since such a structure-changing process
is executed each time a new retrieval process is carried out, as
the database system 1 is utilized more frequently, the user is
allowed to carry out retrieval processes for required articles more
easily. This easiness has an accumulating property, and it is
difficult for a conventional database system to achieve this
property.
[0146] By using the above-mentioned structure-changing process, the
data structure 210 is allowed to have a structure that corresponds
to the logical models 6 to be accumulated in the KSD model 161.
Thus, it becomes possible to further accelerate the database
evolution by the realization store 160. Consequently, the
application of such a structure-changing process makes it possible
to improve the access efficiency to the data group 132 in the
database system 1, and consequently to firmly assist the database
operations by the user.
1.6 Extension Functions
[0147] The database system 1 of the present example makes it
possible to provide various extension functions other than the
retrieval function to the user by utilizing the KSD model 161. This
section describes specific examples of such extension
functions.
Display Sequence of Retrieval Results
[0148] As described in the retrieval-result display screen 250
(FIG. 15), scores 255 are added to the retrieval results, and the
outputted articles are displayed in a descending order of the
scores 255. Each of these scores 255 is given as an amount that has
a positive correlation to a cosine cos .phi. (see FIG. 23) of an
angle .phi. that is made by the primary keyword vector v.sub.key of
the corresponding article and the output signal vector v.sub.0. In
other words, the execute composition unit 120 is arranged so that
as the value .phi. becomes smaller, the calculated score 255
becomes higher. Since the output signal vector v.sub.o is a keyword
contained in the necessary article estimated by the realization
store 160, the article actually containing the corresponding
keyword as the primary keyword is allowed to have a higher score
255, and displayed on an upper level in the retrieval results.
[0149] Moreover, since, as the retrieval input is repeated more
frequently, the estimating capability of the realization store 160
is further improved, the output score 255 is changed to a more
appropriate value. Thus, the user is allowed to retrieve necessary
articles more efficiently.
Guidance to Non-Skilled User
[0150] The database system 1 of the first example can provide
guidance to a non-skillful user by utilizing the KSD model 161. The
following description will discuss an example in which guidance for
better retrieval processes is given to a non-skillful user who
gives abstract retrieval inputs that are almost useless for the
query engine mining unit 150 to focus the article.
[0151] For example, suppose that a non-skillful user makes a
retrieval input, "medicine", that is, an abstract retrieval input.
In this case, as shown in a retrieval-result display screen 330 of
FIG. 24, a number of retrieval results are outputted; however, the
scores of the outputted articles are extremely low, with the result
that no useful information is obtained. This is because the
technical term "medicine" is used in a number of articles, and
because there are only few primary keywords that are strongly
combined on the neural network 300, that is, this word is weakly
combined with many primary keywords. In such a case, primary
keywords, which correspond to the neuron of the output layer O that
provides a comparatively greater net value u when the input
"medicine" is inputted, is outputted on the retrieval-result
display screen 330 as a recommended keyword 331. FIG. 24 shows an
example in which "composite antibacterial agent" and "side effect"
are displayed as recommended keyword 331. In other words, even in
the case when "medicine", that is, an abstract keyword, is
inputted, since learning processes indicating that a group of users
that use this database also require articles relating to "composite
antibacterial agent" and "side effect" have been carried out on the
neural network 300 through analyses of a number of retrieval
processes previously carried out, the recommended keywords 331 that
are specified by the results of the learning processes are given to
the user. These recommended keywords 331 are provided with
underlines 332 that indicate detailed links; thus, by carrying out
the operation of GUI in the same method as described with respect
to the title 254, automatic retrieving processes are carried out by
clicking these keywords.
Export and Import of KSD Models
[0152] Since the above-mentioned KSD model 161 is separated from
the data group 132 stored in the data store 130, it is exportable
to another database system (hereinafter, referred to as
"homogeneous database") having the same structure as this database
system 1. For example, the KSD model 161 in the database system 1
for use in scientific article retrieval in the medical field may be
exported to a database system for use in scientific article
retrieval in the medicine manufacturing field so as to be used as a
KSD model therein. The exporting process is carried out by, for
example, writing combined weights in a file having a predetermined
format so as to be copied in a different database system.
[0153] Since these database systems have mutually similar
functional structures, the reversed operations for importing the
KSD model of the database system for use in retrieval of scientific
articles in the medicine manufacturing field to the database system
for use in retrieval of scientific articles in the medical field
can be carried out by the same method.
[0154] With this arrangement, even in the case when a new database
system is created, it is not necessary for the KSD model to carry
out learning processes from the initial stage; therefore, it is
possible to use a KSD model that has been subjected to learning
processes to a high degree immediately after the start of the use
of a new database system. Moreover, even in the case when the
number of the users is small with the result that it is difficult
to make learning processes of the KSD model properly progress, the
user's retrieving operations can be firmly supported by importing
the KSD model that has been subjected to learning processes to a
high degree.
[0155] In other words, the KSD model 161 of FIG. 3 corresponding to
the logical model 6 of FIG. 1 is constricted in a manner so as to
be separated from the contents of the data store 130 and evolved so
that the KSD model 161 (logical model 6) can be compatibly used
among a plurality of database systems with importing and exporting
processes of the logical model 6 being available among the
databases. In other words, the logical model 6 (KSD model 161) is
allowed to have a self-completing property that is independent from
the contents of data accumulation inherent to the respective
databases; therefore, it is possible to carry out transferring
processes among a plurality of databases.
Combination of KSD Models
[0156] Moreover, in the first example, the KSD model 161 is
installed for each user; however, KSD models of a plurality of
users may be combined to create a new KSD model.
[0157] In other words, in the case when a plurality of users and a
plurality of databases exist, the following four types of logical
models may be applied thereto:
(1) A logical model (hereinafter, referred to as "database
versatile logical model") that can be commonly used in a plurality
of databases, although it is inherently used by each user;
(2) A logical model (hereinafter, referred to as "user versatile
logical model") that can be commonly used by a plurality of users,
although it is inherent to each database;
(3) A logical model (hereinafter, referred to as "entirely
versatile logical model") that is commonly used in any combination
between any user and any database; and
(4) A logical model (hereinafter, referred to as "inherent logical
model") that is different from each other for each combination
between users and databases).
[0158] The above-mentioned logical model 6, which is transferred
between the database for use in retrieval of scientific articles in
the respective medical and medicine manufacturing fields,
corresponds to "the database versatile logical model" of the
above-mentioned four types. This model has a mode that is formed on
the basis of the principle that, since the logical model of each of
individual users is a "person-related" model to which the user's
characteristics and capabilities (in the case of a user group,
characteristics of the group) are reflected, the corresponding
logical model is applicable to other same types of data with
respect to the user.
[0159] In contrast, "the user versatile logical model" of the
above-mentioned four types makes it possible to construct a high
level logical model that is commonly used by respective users, by
combining logical models of the respective users with respect to
the same database. For example, by combining KSD models 161 of
users U and V (for example, both are surgeons of cardiovascular
system) who have a similar article-retrieving tendency, it is
possible to achieve such an evolution.
[0160] In this case, suppose that the combination weights of the
users U and V are W.sub.U, W.sub.V, respectively. Moreover, suppose
that the frequencies of use of the databases of the users U and V
are respectively represented by P.sub.U,
P.sub.V(P.sub.U+P.sub.V=1). The sum of weights
(P.sub.UW.sub.U+P.sub.VW.sub.V) of the combination weights W.sub.U
and W.sub.V with the frequencies P.sub.U, P.sub.V being used as
weights is calculated as a new combined weight, and the KSD model
161 (logical model 6) containing the new combined weight is used as
a common logical model for the users U and V. Thus, it is possible
to use a KSD model 161 that has been subjected to higher-level
progressed learning processes than the KSD model 161 that has been
individually evolved with respect to each of the users, thereby
making it possible to improve the retrieval efficiency for each
user.
1.7 Modification
[0161] In the above-mentioned first example, a logical model
located between the user keyword and the primary keyword is
specified by a neural network and held therein, and utilized for a
data structure change; however, in addition to these, various modes
may be proposed with respect to the KSD model 161. For example, the
number of user keywords contained is accumulated and stored with
respect to each of sections, and a section having a great number of
accumulated and stored keywords may be structured. For example, as
shown in a hierarchical drawing in FIG. 25, it is proposed that, in
a sub-section of the text that has not been structured, those of
"experimental methods", "experimental results" and "experimental
devices", which have a great number of accumulated and stored user
keywords may be newly structured. In the case when such structure
changes are carried out, the translator 140 is also updated
simultaneously so that a newly added article is preliminarily made
to be in conformity with such a data structure model 131.
Second Example
School Education Teaching Material Database System
[0162] The database system 1 of the second example is constructed
as a database system which manages school education teaching
materials (hereinafter, referred to simply as "teaching material").
This database system 1, in particular, determines an optimized
teaching material for each student on the basis of inputted
educational achievements so that it is used for assisting the
selection of a teaching material to be used when a teacher teaches
the student. The following description will discuss the database
system 1; however, with respect to those points that are the same
as those of the first example, the detailed description thereof
will not be repeated.
2.1 Data Structure
[0163] In the data store 130 of the database system 1 of the second
example, teaching material data, educational achievement data,
student characteristics data and a data structure model 131 thereof
are stored.
Teaching Material Data
[0164] Teaching material data is also written as XML documents in
the same manner as the article 200 in the first example. The XML
documents include the contents of a teaching material to be used
for instruction that are classified on the basis of subjects, units
and teaching methods. FIG. 26 shows a hierarchical drawing of a
data structure 400 of the document contents. In other words, basic
teaching material segment 402 that is derived from a teaching
material segment 401 and represents a general-use teaching material
is installed, subject segments 403 to 405 derived from the basic
teaching material segment 402 are installed, unit segments 406 to
408 derived from each of the subject segments are installed, and
teaching material segments 409 to 411, such as a lecture-centered
type, a balance type and a practice-centered type, that are derived
from each of the unit segments are installed. The teaching material
segments 409 to 411 include specific contents of the teaching
materials, cautions upon teaching by the use of the teaching
material and samples of examinations. In other words, a plurality
of teaching materials to which teachers make reference are written.
Here, those teaching materials of the lecture-centered type and the
practice-centered type are teaching materials in which the ratios
of lectures and practices are respectively increased in comparison
with the standard. In contrast, the balance type refers to a
teaching material in which the ratio of lectures and practices is
standardized.
Educational Achievement Data
[0165] With respect to the education achievement data, the teaching
materials that are used and the resulting educational achievements
are written as XML documents in a classified manner for each of
students, subjects and units. FIG. 27 shows a hierarchical drawing
of a data structure 420 of the corresponding XML document. As shown
in FIG. 27, students segments 422 to 423 are derived from an
educational achievement segment 421, and installed, subject
segments 424 to 426 are derived from each of the student segments,
and installed, and unit segments 427 to 429 are derived from each
of the subject segments, and installed. Each of the unit segments
427 to 429 has a teaching material that is used and the resulting
educational achievements (A, B, C) written therein. The educational
achievements are pieces of information indicating, for example, the
degree of understanding of each student, such as the results of
tests, and have ranks of three stages, A to C, in accordance with
predetermined classifying criteria.
Student Characteristics Data
[0166] Student characteristics data is written as XML documents for
each of students with respect to the achievement at the time of
entrance, characteristics and desired course of the student. FIG.
28 shows a hierarchical drawing of a data structure 430 of the
corresponding XML document. As shown in FIG. 28, students segments
432 to 433 are derived from a student characteristics segment 431,
and installed, and characteristics segments such as an achievement
upon-entrance segment 444, a characteristics segment 445 and a
desired course segment 446, are derived from each student segment,
and installed. The achievement at the time of entrance,
characteristics and desired course are respectively written in the
achievement upon-entrance segment 444, characteristics segment 445
and desired course segment 446 on the basis of predetermined
classification criteria.
[0167] In the same manner as the first example, the above-mentioned
data structure model 131 of the teaching material data is
continuously updated in accordance with the evolution of the
database system 1. In other words, as will be described later, the
KSD model 161, obtained by repeatedly carrying out teaching
material selection (conditions).fwdarw.educational achievement
(results) confirming processes, is utilized so that the structure
thereof is changed so as to properly provide a teaching material
that is optimized in accordance with individuality of each student.
Therefore, the data structure 400 shown in FIG. 26 is in the
initial state, and changed as operational past results of the
database system 1 are accumulated.
2.2 Database Operation
User Interface
[0168] In the same manner as the first example, the database system
1 of the second example uses a GUI. The user is allowed to view
teaching materials stored in the data store 130 by inputting
predetermined items through a teaching-material inquiry screen 450,
and can register educational achievements by the use of the
teaching material through an educational achievements screen 470.
Referring to screen display examples of the GUI, the following
description will discuss methods for making inquiries about
teaching materials and for registering educational
achievements.
Inquiries about Teaching Materials
[0169] FIG. 29 shows a screen display example of the GUI used for
inquiries about teaching materials. The teaching-material inquiry
screen 450 includes entry spaces, such as a student name space 451,
a subject space 452 and a unit space 453. The user (mainly assumed
as a teacher) inputs predetermined items in these entry spaces, and
presses an inquiry button 454 so that he or she can view a teaching
material that is optimized for the student whose name was inputted
with respect to the inputted subject and unit, through the GUI.
Moreover, he or she can terminate the database operation by
pressing an end button 455 (in the following screen display
examples also, the end button 455 has the same function).
Teaching-Material Display Screen
[0170] Next, FIG. 30 shows a teaching-material display screen 460
displayed by the GUI. FIG. 30 exemplifies a case in which an
optimized "lecture-centered type" teaching material is displayed.
Of course, for the student to which a "practice-centered type"
material is suitably applied, an "practice-centered type" material
is displayed. Moreover, in the case when optimal teaching materials
are not estimated because of the initial state of the database
application, all the "lecture-centered type", "balance type" and
"practice-centered type" teaching materials are displayed. In this
case, the user properly makes a selection from the teaching
materials thus displayed, and uses this for instructing the
student.
[0171] In addition to the student name, subject and unit, the
teaching-material display screen 460 also displays the specific
contents of the teaching material, cautions upon instruction by
using the teaching material and samples of examinations are
displayed.
Educational Achievements Registration
[0172] FIG. 31 shows an educational-achievements registering screen
470 to be used for registering the educational achievements
obtained by the application of the teaching material. The
educational-achievements registering screen 470 includes entry
spaces such as a student name space 471, a teaching material space
472, a degree-of-understanding space 473, a subject space 474 and a
unit space 475. The user is allowed to add new data to the
educational achievement data stored in the data sore 130, by
pressing a register button 476 after having inputted predetermined
items into these entry spaces. Here, the addition of the new data
can also be carried out by using the translator 140 on the basis of
another electronic data containing the same contents as the
inputted items.
2.3 Query
Teaching-Material Inquiry and Output
[0173] Upon receipt of a teaching-material inquiry from the user,
the execute composition unit 120 converts the inquiry to a query,
and outputs the resulting signal to the query engine mining unit
150. Successively, the query engine mining unit 150 confirms
whether or not a student segment corresponding to the inputted
student name exists in the same hierarchy as the basic teaching
material segment (see data structure 480 in FIG. 32; additionally,
the structure change from the data structure 400 to the data
structure 480 will be described later). In the case when the
corresponding student segment exists, the query engine mining unit
150 extracts a teaching material corresponding to the inputted
subject and unit that is located on a lower layer of the segment,
and outputs the resulting signal to the execute composition unit
120. In the case when no corresponding segment exists, the query
engine mining unit 150 extracts a teaching material corresponding
to the inputted subject and unit that is located on a lower layer
of a basic teaching-material segment, and outputs the resulting
signal to the execute composition unit 120.
[0174] The execute composition unit 120 converts the inputted
teaching material to a format suitable for viewing processes, such
as an HTML (Hyper Text Markup Language) format, and outputs the
resulting signal to the user interface 110. The results of this
output correspond to the teaching-material display screen 460 shown
in FIG. 30.
2.4 Construction of KSD Model
Dispersion Analysis
[0175] In the KSD model 161 in the second example, the relationship
between characteristics of a student and an effective teaching
material is accumulated. With respect to the characteristics of the
student, all the items written in the student characteristics data
accumulated in the data store 130 may be considered; however, only
the case in which the student's achievements at the time of
entrance are taken into consideration will be described.
[0176] First, the KSD model creating unit 162 analyzes the
achievements at the time of entrance of all the students and
influences given by the applied teaching material to the
educational achievements for each of the units. Thus, a teaching
material (results) which can maximize the educational achievements
for each level of the achievements at the time of entrance is
calculated for each of the units. This process corresponds to an
analyzing process of logical paths A(i).fwdarw.B(i) described in
the embodiment of the present invention. In the analyzing process
in the second example, sometimes the results show that no
difference in the educational achievements is obtained by the
teaching material; however, in such a case, supposing that no
information has been obtained, processes such as accumulating
processes of the succeeding KSD model 161 are not carried out.
[0177] The analyses in the second example are carried out by using
a dispersion analysis with the educational achievements being used
as an objective variable and the achievements at the time of
entrance and the teaching material being used as a description
variable. Referring to a flowchart in FIG. 33, the sequence of
these processes will be described.
[0178] First, at step S1, it is confirmed whether or not the number
of data is sufficient. In other words, the number of the current
accumulated data is compared with a predetermined threshold value
so that a branching process is carried out depending on whether or
not data required for the dispersion analyzing processes has been
prepared. In the case when the number of the current accumulated
data is smaller than the threshold value to make the number of data
insufficient, the processes are completed. In other words, the KSD
model 161 is not updated. In the case when the number of data is
sufficient, the sequence proceeds to the next step S2. Here, the
sentence, "the number of data is sufficient", refers to the fact
that data can be arranged in a binary layout having repetitions;
however, this standard can be altered depending on various
statistical processing methods.
[0179] At step S2, a dispersion analysis is carried out with the
educational achievements being used as an objective variable while
the applied teaching material being used as a description variable
that has been binary arranged. Here, the achievements at the time
of entrance are read from the student characteristics data stored
in the data store 130, and the applied teaching material is read
from educational achievement data stored in the data store 130. In
other words, the two different data systems are combined so that
the analyzing process is carried out.
[0180] As a result of the dispersion analyses, in the case when it
is determined that there is a correlation between the achievements
at the time of entrance and the applied teaching material (the
optimal teaching-material selection criteria is different depending
on the achievements at the time of entrance), the sequence proceeds
to step S3. In contrast, as a result of the dispersion analyses, in
the case when it is determined that there is no correlation between
the achievements at the time of entrance and the applied teaching
material (the optimal teaching-material selection criteria is not
influenced by the achievements at the time of entrance), the
sequence proceeds to step S4.
[0181] At step S3, the relationship between the applied teaching
material and the educational achievements is analyzed for the
respective achievements at the time of entrance. In other words,
the educational achievement data is classified into architectural
layers for the respective achievements at the time of entrance, and
dispersion-analyzed. This dispersion analysis is a one-way layout
dispersion analysis in which the applied teaching material is used
as a description variable with the achievements at the time of
entrance being used as an objective variable. When it is determined
in this dispersion analysis that there is any significant
difference, the sequence proceeds to step S5. When it is determined
that there is no significant difference, the process is
terminated.
[0182] At step S4, the dispersion analysis is again carried out
with interaction terms being pooled (interaction terms are included
in error terms). When it is determined in this dispersion analysis
that there is any significant difference, the sequence proceeds to
step S5. When it is determined that there is no significant
difference, the process is terminated.
[0183] At step S5, the optimal teaching material is accumulated in
the KSD model 161 for each of the achievements at the time of
entrance, and the process is completed (the accumulation method
will be described later). Of course, in the case when there is no
correlation between the achievements at the time of entrance and
the optimal teaching material selection criteria, the same teaching
method is registered with respect to all the students.
[0184] In accordance with the above-mentioned processes, if there
is any statistically significant teaching material in its
effectiveness, the teaching material can be accumulated in the KSD
model 161, and if there is no effective teaching method, the KSD
model 161 is not particularly changed.
KSD Model
[0185] The KSD model creating unit 162 stores knowledge obtained
through the above-mentioned dispersion analyses in the KSD model
161. The knowledge is obtained by using a neural network in the
same manner as the first example.
[0186] FIG. 34 shows a schematic view of the neural network used in
the second example. Since the neural network in the second example
is similar to that of the first example, only the points different
from the first example will be described, and the detailed
descriptions of the other points will not be repeated.
[0187] In the same manner as the first example, the neural network
of the second example is a perceptron constituted by three layers,
that is, an input layer I, an intermediate layer M and an output
layer O. In the second example, the respective words, "achievements
at the time of entrance A", "achievements at the time of entrance
B" and "achievements at the time of entrance C" are made in
association with inputs X1, X2 and X3 respectively. In the same
manner, the respective words, "lecture-centered type", "balance
type" and "practice-centered type" are made in association with
outputs Y1, Y2 and Y3. Each of the inputs X1, X2 and X3 is allowed
to have a value "0" or "1" so that inputs corresponding to
"achievements at the time of entrance A", "achievements at the time
of entrance B" and "achievements at the time of entrance C" are
respectively indicated by (X1,X2,X3)=(1,0,0),(0,1,0),(0,0,1). Each
of the outputs Y1, Y2 and Y3 is allowed to have a value "0" or "1"
so that inputs corresponding to "lecture-centered type", "balance
type" and "practice-centered type" are respectively indicated by
(Y1,Y2,Y3)=(1,0,0),(0,1,0),(0,0,1). Different from the first
example, two or more of X1 to X3 are not allowed to take a value of
1 simultaneously. For example, inputs, such as (X1, X2, X3)=(1, 1,
0), never exist. In contrast, with respect to the output elements
Y1 to Y3, two or more of these are allowed to have a value of "1"
simultaneously. The case in which two of more of these have a value
of "1" simultaneously indicates that the neural network predicts
there are a plurality of effective teaching methods.
[0188] A teaching signal of the neural network of the second
example represents the results obtained from the above-mentioned
dispersion analysis. In other words, the effective teaching
material is analyzed for each of the achievements at the time of
entrance that has been analyzed for each unit, and this process
corresponds to analyses from conditions A(i) to the results B(i) by
using the index i described in the embodiment as a unit. The neural
network of the second example has a function for specifying a
general mapping f: A.fwdarw.B on the basis of the results of
analysis from conditions A(i) to the results B(i). Here, with
respect to the learning method, the same method as described in the
first example can be applied.
[0189] As the neural network repeats the learning processes (that
is, as the teaching material selection.fwdarw.educational
achievements inputs are repeated), it is possible to improve the
degree of approximation of the mapping from the conditions
(achievements at the time of entrance) to the results (optimal
teaching material) in the realization store 160. In other words,
when achievements at the time of entrance of a student are found,
it is possible to estimate an optimal teaching material more
accurately. Moreover, even in the case when the relationship
between the achievements at the time of entrance and the optimal
teaching material is changed little by little (for example, in the
case when the contents to be taught become abstract little by
little, with the result that, with respect to both of the students
having low achievements at the time of entrance and high
achievements at the time of entrance, no educational achievements
are obtained without using the practice-centered teaching method),
since the KSD model 161 can carry out an estimating process
appropriately, the effectiveness of the database system 1 is
maintained. In other words, the database system 1, arranged as the
second example, can properly deal with dynamic changes in
educational environments. From this point of view, the database
system 1 arranged as the second embodiment is different from a
conventional search engine which can reduce time-consuming
retrieval tasks by simply replacing a teaching material by
electronic data and a conventional statistical processing device
which analyzes the past learning achievements.
[0190] One of the points in which the construction of the KSD model
of the second example is different from the first example is that,
upon specifying a logical model, a plurality of different data
systems, such as teaching material data, educational achievement
data and student characteristics data, are referred to. By the
reference to a plurality of pieces of data, that is, so-called
multi-dimensional reference, the database system 1 is allowed to
specify a higher-degree logical model, that is, a creation of the
KSD model 161.
2.5 Evolution of Data Structure Model
[0191] In the second example, the KSD model 161 thus created is
used for updating the data structure model 131 of teaching material
data. The following description will discuss a method for updating
the data structure model 131.
[0192] First, the structure-change determining unit 171 acquires an
effective teaching material for each of the achievements at the
time of entrance from the KSD model 161 every predetermined time
interval. In other words, the output that is obtained when inputs
(X1, X2, X3) are given to the neural network is acquired.
Simultaneously, the achievements at the time of entrance of each
student, described in the student characteristics data, are
acquired. On the basis of these data, an effective teaching method
is determined for each of the students.
[0193] Next, referring to the data structure model 131 of the
teaching data, the structure-change determining unit 171 confirms
whether or not the student segment in which the optimal teaching
material is written exists in the same hierarchy as the basic
teaching material segment. If not, student segments 481 and 482
bearing the student name are added to the same hierarchy as the
basic teaching material segment. Moreover, a structure in which the
teaching material portion on the lower layer of the basic teaching
material segment is optimized for the student is added to the lower
layer of the student segment. In contrast, if it exists, on the
basis of the contents of the latest KSD model 161, the data
structure model 131 is updated (see FIG. 26 and FIG. 32). Thus, a
teaching material optimized for each student is written in the
teaching material data while being updated on demand.
[0194] These student segments 481 and 482 for each individual
student are used when the user makes an inquiry about a teaching
material through database operations as described earlier. In other
words, in the case when the teaching material for the student
relating to the inquiry is written, the contents thereof are
displayed. In contrast, if no written data exists, the basic
teaching material is displayed.
[0195] Such a structure change allows the user to acquire the
teaching material optimized for the student at a higher speed in
comparison with the case in which the KSD model 161 is referred to
individually for each of the students. Moreover, even the teaching
material, once determined, can be continuously updated to more
appropriate contents in accordance with changes in educational
environments. Moreover, in the initial state in which learning
processes of the KSD model 161 have not progressed so much, in most
cases, a plurality of teaching materials, as they are, may be
outputted; however, even in such a case, skilled teachers repeat
the teaching-material selection, instruction and
educational-achievements registering processes so that educational
know-how of the skilled teachers can be transferred to the KSD
model 161. Thus, it becomes possible to allow even a
non-experienced teacher to select appropriate teaching
materials.
[0196] In the above description of the second example, only the
achievements at the time of entrance of students are taken into
consideration; however, student's characteristics and desired
courses may be taken into consideration so as to provide more
appropriate structuring processes.
2.6 Extension Functions
[0197] The database system in accordance with the second example
makes it possible to provide extension functions other than the
retrieval function to the user by utilizing the KSD model 161. This
section will describe specific examples of such extension
functions.
Export, Import and Combination of KDS Models
[0198] In the KSD model 161 of the second example,
teaching-material data, educational achievement data and student
characteristics data are stored in a separated manner. Therefore,
the KSD model 161 is applied not only to a specific school, but
also to other schools in its educational practices. For this
reason, in the same method as the first example, logical models 6
(KSD model 161) may be exported or imported to and from database
systems (the same kind of database systems) of other schools.
Moreover, the KSD models 161 can be combined between a plurality of
schools. Thus, even in a small-size school in a local area, it is
possible to carry out an optimal teaching-material selection.
Third Example
Service Manual Database System for Copying Machine
[0199] The database system 1 in accordance with the third example
forms a database system for managing a working manual (hereinafter,
referred to simply as "service manual") for a service person who
carries out regular maintenance services of a copying machine
placed at a customer. The database system 1 of the third example
gives instructions for a regular maintenance service method of the
copying machine to the service person. Moreover, the service person
records the contents of jobs actually executed at the customer
side.
[0200] The following description will discuss the database system
1; however, with respect to those points that are the same as those
of the first and second examples, the detailed description thereof
will not be repeated.
3.1 Portable Information Terminal
Hardware
[0201] FIG. 35 shows a schematic view that indicates a hardware
construction of a database system 1 designed as a third
example.
[0202] The service person receives regular maintenance instructions
for each of copying machines through a portable information
terminal 601. The regular maintenance instructions are transmitted
from a database server 602 that communicates with the portable
information terminal 601. In the database system 1 in accordance
with the third example, the communications between the portable
information terminal 601 and the database server 602 are carried
out through public telephone lines.
[0203] Next, referring to an outside view in FIG. 36, the following
description will discuss the portable information terminal 601 in
detail. The portable information terminal 601 is provided with a
liquid crystal monitor 610 on which the regular maintenance
instructions are displayed. The liquid crystal monitor 610 is
prepared as a touch panel. For this reason, a stylus 611 detachably
attached to the portable information terminal 601 main body is used
for contacting the liquid crystal monitor 610 so that input
operations to the portable information terminal 601 are available
through GUI displayed on the liquid crystal monitor 610. Moreover,
the portable information terminal 601 is provided with a group of
operation switches 612. The service person is allowed to carry out
power-supply ON/OFF operations or the like through the group of
operation switches 612. In these operation means, a well-known
operation system which has been used in various portable
information terminals can be adopted.
[0204] Moreover, the portable information terminal 601 has an
antenna 613 and a built-in RF (Radio Frequency) circuit, not shown,
and radio communications are carried out through public telephone
lines between the portable information terminal 601 and the
database server 602.
Regular Maintenance Instruction Screen
[0205] FIG. 37 shows a regular maintenance instruction screen 800
displayed on the liquid crystal monitor 610 of the portable
information terminal 601. The regular maintenance instruction
screen 800 displays maintenance working information 801 including
the type of machine, maintenance day, service person, and the like.
Moreover, the regular maintenance instruction screen 800 displays
specific maintenance job instructions 802. FIG. 37 shows a display
including maintenance job instructions 802 with respect to a
cleaner unit such as a cleaner blade exchange, a mortprain exchange
and a toner tray cleaning operation. Radio buttons 803 to 805,
which are used for recording whether or not the corresponding job
has been actually executed, are displayed in the vicinity of each
of the maintenance job instructions 802. When the service person
has actually executed any of these maintenance jobs, he or she
presses the vicinity of each of the corresponding radio buttons 803
to 805 of the liquid crystal monitor 610. Thus, the service person
can give a check mark indicating the actual execution of the
corresponding maintenance job in the radio button.
[0206] Referring to the maintenance job instructions 802 thus
displayed, the service person executes maintenance jobs for the
copying machine. Moreover, in the case when a job other than
maintenance job instructions 802 is executed, the contents of the
corresponding job are inputted to an additional job space 806. More
specifically, for example, in the case when a part exchange is
carried out earlier than a predetermined exchange period, the
contents of the job are inputted. Furthermore, an operation hour
space 807 is also placed on the regular maintenance instruction
screen 800. The service person reads the value of a counter
indicating the operation hours, which is attached to the copying
machine, and inputs the resulting value to the operation hour space
807.
[0207] Upon completion of the above-mentioned inputting operations,
the service person presses a completion button 808 to transmit
information relating regular maintenance jobs to the database
server 602.
Failure Repair Informing Screen
[0208] FIG. 38 shows a failure repair informing screen 810
displayed on the liquid crystal monitor 610 of the portable
information terminal 601. The failure repair informing screen 810
is used for informing the results of a failure repairing operation
that is carried out in response to a failure in the copying
machine, in a manner separated from the above-mentioned regular
maintenance jobs.
[0209] The failure repair informing screen 810 displays failure
repair information 811 such as the type of a machine, date of
repair and service person. Moreover, the failure repair display
screen 810 is also provided with a failure place entry space 812
and an operation time space 813. Upon completion of the failure
repair, the service person inputs the failure place and operation
time to the respective failure place entry space 812 and the
operation time space 813, and presses a completion button 814.
Thus, the failure repair report is transmitted to the database
server 602.
3.2 Data Structure
[0210] Service manual data, regular maintenance data and failure
repair data are stored in the data store 130. A service manual is
inputted to the database server 602 by a supervisor of the service
person. Moreover, the contents of jobs in the service manual to be
executed by the regular maintenance are transmitted to the portable
information terminal 601 carried by the service person every
regular maintenance, and displayed on the regular maintenance
instruction screen 800.
[0211] As described above, the regular maintenance data and failure
repair data are collected in the database server 602 through the
portable information terminal 601 that belongs to each service
person.
[0212] These pieces of data are maintained while being made in
conformity with the data structure model 131 stored in the data
store 130. The following description will discuss the data
structure model 131.
Service Manual Data
[0213] Service manual data is written as XML documents. The XML
documents include maintenance portions such as a paper-feed unit, a
developing unit and a cleaner unit, and the contents of the regular
maintenance jobs such as an exchange of a cleaner blade, an
exchange of mortprain and a toner tray exchange, for each of the
types of machines. The contents of the description have a data
structure 820 shown in a hierarchical drawing in FIG. 39. In other
words, the following segments are prepared: machine-type segments
822 and 823 derived from a service manual segment 821, maintenance
portion segments 824 to 826 derived from each of the machine-type
segments, and regular maintenance job segments 827 to 829 derived
from each of the maintenance portion segments. The regular
maintenance job segments 827 to 829 include a specific sequence of
the regular maintenance jobs and execution intervals, written
therein. On the basis of the contents written in the service manual
data, the database system 1 transmits to the portable information
terminal 601 the contents of the regular maintenance jobs to be
executed for each of copying machines. The contents form the
above-mentioned regular maintenance instruction screen 800.
Regular Maintenance Data
[0214] Regular maintenance data is written as XML documents. The
XML documents include the contents of regular maintenance jobs such
as operation time of a copying machine at the time of regular
maintenance, and exchange operations, such as a cleaner blade
exchange, a mortprain exchange and a toner tray exchange, that have
been executed, for each of copying machines. The contents of the
description have a data structure 830 shown in a hierarchical
drawing in FIG. 40. In other words, the following segments are
prepared: copying machine segments 832 and 833 derived from a
regular maintenance segment 831, operation time segments 834 to 836
derived from each of the copying machine segments, and maintenance
job segments 837 to 839 derived from each of the operation time
segments.
Failure Repair Data
[0215] Failure repair data is written as XML documents. The XML
documents include the operation time of a copying machine in which
a failure occurred, and a failure-related part such as a cleaner
blade, for each of copying machines. The contents of the
description have a data structure 840 shown in a hierarchical
drawing in FIG. 41. In other words, the following segments are
prepared: copying machine segments 842 and 843 derived from a
failure repair segment 841, operation time segments 844 to 846
derived from each of the copying machine segments, and
failure-related part segment 847 derived from each of the operation
time segments.
3.3 Construction of KSD Model
[0216] The relationship between the contents of regular maintenance
jobs by service persons and each failure is accumulated in the KSD
model 161 in the third example. The following description will
discuss specific contents thereof. The relationship is accumulated
by using a neural network as shown in the first and second
examples. In the same manner as the second example, a statistical
process may be combined therewith for an assisting purpose.
Event 1: Estimation of Failure Time
[0217] Since the service person has inputted operation time of the
copying machine through the regular maintenance instruction screen
800, the KSD model creating unit 162 is capable of obtaining the
intervals of operation time at which the part has been actually
exchanged. Moreover, since the service person has inputted the
operation time at which the part had a failure through the failure
repair informing screen 810, the KSD model creating unit 162 can
specify the time to failure of the part having the failure.
[0218] The KSD model creating unit 162 estimates "B10 life" (the
operation time in which 10% of all the parts have a failure) on the
basis of the time to failure of many failure-related parts, and
accumulates the results in the KSD model 161. This estimation
process is carried out by using a method such as accumulated hazard
analyzing method in which aborting data is taken into
consideration. When the operation time after the previous part
exchange of each copying machine has reached B10 life, the database
system 1 displays a part exchange instruction to the corresponding
part on the regular maintenance instruction screen 800.
[0219] By using a neural network for data accumulation in the KSD
model 161 (part name is used as an input, while time to failure is
used as an output), it is possible to carry out part exchanges in
an appropriate operation time interval even when the B10 life is
prolonged little by little because of the improvement of production
quality. Thus, it is possible to prevent an increase in maintenance
costs due to unnecessarily frequent part exchanges and an increase
in the number of initial failures. Moreover, it is also possible to
prevent an increase in failures caused by too long part exchanging
intervals. In other words, even in the case when the time to
failure in the field is not properly estimated at the time of
forming a service manual (for example, in the case when, upon
developing a product, an acceleration coefficient estimated by
acceleration tests is not appropriate), or even in the case when
the time to failure is prolonged because of improvements in
quality, the database system 1 makes it possible to instruct an
appropriate part exchanging interval by flexibly adapting to
changes in the situation.
Event 2: Horizontal Development in Know-How of Excellent Service
Persons
[0220] In the same manner as event 1, the KSD model creating unit
162 can acquire the mean time to failure of a copying machine and
the contents of an additional job for each of service persons in
charge. By registering this data in the neural network, the KSD
model 161 makes it possible to estimate additional jobs which can
shorten the time to failure. When such additional jobs are also
displayed on the regular maintenance instruction screen 800, it is
possible to shorten the mean time to failure.
[0221] Moreover, even when the improvements in service person's
skill and changes in the members take place little by little, the
KSD model can properly deal with these so that the database system
1 is allowed to give appropriate maintenance instructions in a
manner so as to correspond to dynamic changes in the
environment.
3.4 Alteration of Data Structure
[0222] In the above-mentioned event 1, when an optimal part
exchanging interval is determined, the part exchanging interval
written in the service manual data is updated by using this time.
Moreover, an additional job segment found in event 2 is added to
the service manual. These alterations in the data structure allow
the database system 1 to have an improved accessing efficiency to
the group of data 132, and consequently to output appropriate data
at high speeds.
3.5 Extension Functions
[0223] The database system of example 3 also makes it possible to
provide various extension functions other than the retrieval
function to the user by utilizing the KSD model 161. In other
words, in the same manner as the first and second examples, the
accumulated KSD model 161 can be applied to another type of
machines and another group of service persons. Thus, even when a
sufficient data accumulation is not available in the KSD model 161,
it is possible to execute appropriate maintenance processes.
Fourth Example
Popular Commodity Managing Database System in Department Stores
[0224] A database system 1 in accordance with a fourth example is a
database system for managing popular commodities in departments. In
particular, the database system 1 of the fourth example makes it
possible to analyze purchasing trends of customers, and to provide
commodity advertisements suitable for the purchasing trends of
customers.
[0225] The following description will discuss the database system
1; however, with respect to those points that are the same as those
of the first to third examples, the detailed description thereof
will not be repeated.
4.1 Portable Information Terminal
Hardware
[0226] The database system 1 of the fourth example has the same
hardware configuration as the third example. When customers entered
a department store, a portable information terminal 601 for
receiving advertisements from the department store is given to each
of them. The advertisements from the department store are
transmitted from a database server 602 that can communicate with
the portable information terminal 601. However, different from
example 3, communications between the portable information terminal
601 and the database server 602 are carried out not by public
telephone lines, but by radio LAN. Moreover, in the database system
1 relating to the fourth example, a camera is attached to the
portable information terminal 601 so that the portable information
terminal 601 is allowed to acquire an image of the customer to
which the portable information terminal 601 is given. The image
thus acquired is transmitted to the database server 602, and the
operator, who operates the database server 602, specifies
characteristics such as sex, age level and costume. The information
thus specified is stored in the data store 130. Moreover, since the
portable information terminal 601 has a built-in RFID (Radio
Frequency Identification) tag used for confirming the customer's
purchasing attitudes. Each register in the store has a detection
device for the RFID tag so that information relating to a commodity
purchased by the customer who carries the portable information
terminal 601 is transmitted to the database server 602 together
with an ID specified by the RFID tag.
Advertisement Screen
[0227] FIG. 42 shows an advertisement screen 900 displayed on the
liquid crystal monitor 610 of the portable information terminal
601. The advertisement screen 900 provides advertisements that are
optimized for each of the customers thereon. In other words, the
advertisement screen 900 of FIG. 42 displays recommended
commodities and the selling spaces for each of the customers.
Referring to these advertisements, the customer makes some
purchases.
4.2 Data Structure Model
[0228] Commodity data bearing information relating to commodities
displayed in sales spaces of the department store is stored in the
data store 130. The commodity data is maintained with being kept in
conformity with a data structure model 131 stored in the data store
130. The following description will discuss this data structure
model 131.
Commodity Data Structure
[0229] Commodity data is written as XML documents. The XML
documents include commodity characteristics such as the kinds of
commodities like one-piece dresses and skirts, hues and shapes in a
classified manner for each of the commodity sales spaces. The
contents of the description have a data structure 910 shown in a
hierarchical drawing in FIG. 43. In other words, the following
segments are prepared: sales space segments 912 and 913 derived
from a commodity data segment 911, commodity segments 914 and 915
derived from each of the sales space segments, and commodity
characteristic segments 916 and 917 derived from each of the
commodity segments. Information relating to commodities is
specifically described in the commodity characteristic segments 916
and 917. The database server 602 transmits information properly
selected from the commodity data to the portable information
terminal 601 as advertisements. The contents form the
above-mentioned advertisement screen 900.
4.3 Construction of KSD Model
[0230] The relationship between attributes of a customer and
purchasing of commodities is accumulated in a KSD model 161 in the
fourth example. The following description will exemplify specific
contents thereof. In the same manner as the first to third
examples, the relationship is accumulated by using a neural
network. In other words, the neural network, which uses attributes
of a customer as an input and a purchased commodity as an output,
with an actual purchasing action being used as a teaching signal,
is utilized.
[0231] For example, suppose that a female customer wearing a
warm-colored costume in the thirties came, and purchased a red
sweater. In this case, in the neural network, with respect to
inputs corresponding to attributes of the customer (female,
thirties, warm-colored costume), a purchasing action (red sweater)
is given as a teaching signal so as to carry out a learning
process. Therefore, when customers having the same attributes
repeat the same purchasing action, the KSD model 161 is provided
with knowledge that female customers wearing a warm-colored costume
in the thirties will purchase a red sweater. Of course, when a
number of female customers purchased a red sweater irrespective of
costumes and ages, the model is provided with knowledge that female
customers will purchase a red sweater. Thus, in the case when a
female customer wearing a warm-colored costume in the thirties
newly comes to the store, it is possible to give an advertisement
for red sweaters and the sales space thereof to the above-mentioned
advertisement screen 900. Moreover, even when the attributes of the
customer and the purchasing action change depending on the current
fashion, the database system 1 makes it possible to provide an
appropriate advertisement in response to the fashion.
4.4 Change in Database Structure
[0232] By changing the commodity data structure 910 on the basis of
the above-mentioned KSD model 161, the database system 1 makes it
possible to display advertisements at high speeds. For example, as
shown in FIG. 44, a customer attribute segment 921 is added to each
of the sales spaces so that commodities having a higher possibility
of purchase by the customers may be written on its lower-layer
segment 922.
4.5 Extension Functions
[0233] The database system 1 of the fourth example also makes it
possible to provide various extension functions other than the
retrieval function to the user by utilizing the KSD model 161. In
other words, in the same manner as the first to third examples, the
accumulated KSD model 161 can be applied to another store. Thus,
even when a sufficient data accumulation is not available in the
KSD model 161 in a certain store, it is possible to execute
appropriate maintenance processes.
[0234] While the invention has been shown and described in detail,
the foregoing description is in all aspects illustrative and not
restrictive. It is therefore understood that numerous modifications
and variations can be devised without departing from the scope of
the invention.
* * * * *