The technology of the disclosure relates to an estimating method, an estimating device, and an estimating program.
When selecting a facility at which to be accepted in accordance with a user, there are cases in which searching for a facility that can accept the user is difficult. For example, a case is conceivable in which there is a request for emergency transportation from a patient, and a hospital to transport the patient to is searched for.
The number of ambulance calls is on the rise as of recent (see NPL 1). It is known that as one problem at the time of transporting a patent to a hospital by ambulance in response to a request for emergency transportation, identifying hospitals that are capable of accepting the patient is time consuming. In particular, when a transportation request is made to a hospital but is rejected thereby, and a hospital to transport the patient to has to be selected again, the time required for transportation may become markedly long.
In the flow of emergency transportation, generally, the patient is first carried into an ambulance, and thereafter a hospital to transport the patient to is searched for. Specifically, the ambulance crew members themselves search for a destination to transport the patient to, and accordingly may contact one hospital after another, or directly head to a hospital, in some cases. At this time, there are cases in which a hospital to transport the patient to is not found due to various factors such as physicians on duty, the state of examination and treatment being performed, and so forth, resulting in the patient being endlessly sent from one place to another (see NPL 2, for example).
Several measures to solve such a phenomenon can be conceived. For example, conceivable measures include making a list of candidates for transportation destination hospitals, with symptoms of the user, outpatient history, and so forth, as a reference, and sending an email or the like to contact a plurality of hospitals at the same time to query whether capable of accepting or not.
However, simply making a list of hospitals necessitates contacting a plurality of hospitals regarding whether capable of accepting or not, consuming time until the transportation destination hospital is finalized. Also, in a case of contacting a plurality of hospitals at the same time to query whether capable of accepting or not, there are cases in which the ambulance and the hospitals need to be connected by network, and actions need to be actively undertaken at the hospital side, leaving unresolved issues.
The technology of the disclosure has been made with the foregoing in view, and it is an object thereof to provide an estimating method, an estimating device, and an estimating program that can predict, with good precision, a hospital of which the possibility of accepting a user is high.
A first aspect of the present disclosure is an estimating method of estimating a prospect of a hospital accepting a user at a first time. The estimating method causes a computer to execute processing including estimating the prospect of accepting the user at the first time, by correlating a reason of the hospital rejecting acceptance of a user at a second time further in the past from the first time, and an amount of time from the second time to the first time.
According to the technology of the disclosure, a hospital of which the possibility of accepting a user is high can be predicted with good precision.
An example of an embodiment of technology according to the disclosure will be described below with reference to the Figures. Note that in the Figures, components and portions that are the same or equivalent are denoted by the same reference signs. Also, the dimensions and proportions in the Figures may be exaggerated for the sake of description, and differ from proportions in reality.
First, matters that were observed with regard to the technology according to the disclosure will be described. In the conventional technology described above, searching for a hospital is performed until a hospital that is capable of accepting is found. In other words, in a case in which acceptance is rejected, the processing ends once. However, it is assumed that depending on the reason for rejecting acceptance, there will be cases in which the reason is resolved by passage of time, and acceptance becomes possible. That is to say, a point was observed in that, by taking into consideration the reason for rejection, and the amount of time elapsed since the reply of the reason for rejection is received, precision of an estimation value of whether capable of accepting or not at the current point in time, and an estimation value of whether capable of accepting or not at a predetermined time, can be raised.
The configuration of the present embodiment will be described below. Note that an example of emergency transportation of a patient to a hospital, which is a facility, will be described below as an example. In a case of emergency transportation of a patient to a hospital, an ambulance crew member or an operator at a service center or the like, who is a user, selects a hospital for transportation to, and issues a transportation request (i.e., an acceptance request) to that hospital. However, this is not limited to cases of making requests to acceptance to a medical facility such as a hospital. For example, requests for acceptance of disaster victims to a shelter or the like in a disaster, requests for acceptance of materials to a facility that is a transportation destination of materials, and so forth, can be expected. Thus, the present disclosure provides technology enabling prediction of facilities of which the possibility of accepting requests from users is high, to support selection of facilities at which to be accepted.
As illustrated in
As illustrated in
The CPU 11 is a central processing unit, and executes various types of programs, controls the parts, and so forth. That is to say, the CPU 11 reads out programs from the ROM 12 or the storage 14, and executes programs with the RAM 13 as a work region. The CPU 11 performs control of the above described configurations, and various types of computation processing, following programs stored in the ROM 12 or the storage 14. In the present embodiment, a selection support program is stored in the ROM 12 or the storage 14.
The ROM 12 stores various types of programs and various types of data. The RAM 13 temporarily stores programs and data as a work region. The storage 14 is configured of a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive) or the like, and stores various types of programs including operating systems, and various types of data.
The input unit 15 includes a point device such as a mouse or the like, and a keyboard, and is used to perform various types of input.
The display unit 16 is, for example, a liquid crystal display, and displays various types of information. The display unit 16 may employ a touch panel system, and function as the input unit 15. Note that the input unit 15 and the display unit 16 correspond to the input/output unit 110.
The communication interface 17 is an interface for communicating with other equipment, such as terminal and so forth, and a standard such as, for example, Ethernet (a registered trademark), FDDI, Wi-Fi (a registered trademark), and so forth, is used.
The functional configurations of the selection supporting device 100 will be described next. The functional configurations are realized by the CPU 11 reading out the selection supporting program stored in the ROM 12 or the storage 14, loading to the RAM 13, and executing. Note that the selection supporting program is an example of an estimating program according to the present disclosure.
The computing unit 120 of the selection supporting device 100 includes a history data acquiring unit 121, a training information adding unit 122, a learning unit 123, a prediction data acquiring unit 124, an information-for-prediction adding unit 125, a score calculating unit 126, and an output control unit 127, as illustrated in
The history data acquiring unit 121 acquires history data relating to past acceptance requests from an input device, an external database, or the like, omitted from illustration, via the input/output unit 110, and stores in the history data storing unit 131. Acquisition of history data by the history data acquiring unit 121 is performed each time history data is accepted.
The history data storing unit 131 stores history data D1.
The training information adding unit 122 reads out the history data D1 stored in the history data storing unit 131, generates prediction model generation data D2 used for generating a prediction model on the basis of this history data D1, and outputs to the learning unit 123.
The learning unit 123 executes processing of performing statistical analysis using vectors and correct labels obtained from the prediction model generation data D2, learns coefficient vectors as prediction models, and stores in the prediction model storing unit 132. The learning technique of prediction models will be described later. Note that settings may be made in advance so that the processing of the learning unit 123 is executed periodically (e.g., semimonthly, monthly, etc.).
The prediction model storing unit 132 stores a prediction model. The prediction model is used to predict, on the basis of attribute information relating to a newly-occurring acceptance request, the possibility of the candidate facilities accepting the acceptance request.
The prediction data acquiring unit 124 acquires prediction data D3 via the input/output unit 110, and outputs to the information-for-prediction adding unit 125.
The information-for-prediction adding unit 125 generates score calculation data D4 on the basis of the acquired prediction data D3 and the history data D1 stored in the history data storing unit 131, and outputs to the score calculating unit 126.
The score calculating unit 126 calculates a score value for each hospital, on the basis of the score calculation data D4 output from the information-for-prediction adding unit 125 and the prediction model stored in the prediction model storing unit 132. The score value is a value representing the possibility of being accepted when an acceptance request is made to a particular facility. The calculation technique of the score value will be described later. Note that the score calculating unit 126 is an example of an estimating unit according to the present disclosure.
The output control unit 127 performs processing of creating output data on the basis of the score value calculated at the score calculating unit 126, and outputting via the input/output unit 110. The output processing will be described later.
Next, operations of the selection supporting device 100 will be described. The operations of the selection supporting device 100 are an example of the estimation method according to the present disclosure.
The selection supporting processing that is the operations of the selection supporting device 100 is divided into learning processing and prediction processing, and accordingly each processing will be described below.
First, the learning processing of the selection supporting device 100 will be described. In the present embodiment, the selection supporting device 100 learns a prediction model by the learning processing shown in
In step S100, the CPU 11 operates as the training information adding unit 122 and reads out the history data D1 stored in the history data storing unit 131.
In step S102, the CPU 11 operates as the training information adding unit 122 generates the prediction model generation data D2 used to generate the prediction model on the basis of the history data D1, and outputs to the learning unit 123.
Generation of the prediction model generation data D2 will be described. The training information adding unit 122 performs processing of calculating elapsed time for each row in the history data D1. In order to calculate the elapsed time, first, history data further in the past from the date and time of the object row is referenced, and rows in which acceptance rejection occurred at a date and time before the date and time of the object row are searched for from history data of the same hospital ID and the same hospital department. Next, for each row obtained from the search, the reason for the acceptance rejection thereof, and the calculation results of elapsed time from the date and time of the object row to the date and time of the rows obtained as the results of the search, are added to the object row. Now, the date and time before is a most recent date and time, for example. As an example, a case of adding the acceptance rejection and elapsed time to the sixth row of D1 shown in
In step S104, the CPU 11 operates as the learning unit 123 and learns the coefficient matrix as a prediction model, by executing processing of statistical analysis using feature vectors and correct labels obtained from the prediction model generation data D2. Note that feature vectors will be written simply as vectors hereinafter.
Learning of the prediction model will be described. In the present embodiment, the learning unit 123 takes the acceptance results column (capable/not capable) in the prediction model generation data D2 as objective variables, and executes statistical analysis with all other information as explanatory variables (vectors). The acceptance results column is the correct label representing whether the hospitals are capable of accepting or not. Thus, coefficient matrices W and V for calculating score values that represent the likelihood of being accepted by hospitals, i.e., the level of the possibility of the acceptance request being accepted, are calculated as a prediction model. For example, in a case in which the acceptance results column shows capable, labeling of 1 is performed, and in a case of not capable, labeling of 0 is performed, and this is used as objective variables to perform statistical analysis.
For the statistical analysis executed by the learning unit 123, a technique such as, for example, logistic regression analysis, ranking learning, random forest, or the like, may be selected in accordance with the object. Here, a function f (p, h, Δt, r; W, V) is designed to output a great scalar value is as to a vector in a case where the acceptance request is “acceptable”. Note that here, p, h, Δt, and r are all included in the prediction model generation data D2 as vectors or variables. W and V represent coefficient matrices of which parameters that correspond to vectors are elements.
An example of a case of using logistic regression will be described below. First, the following Expression (1) is an expression to find a primary score value.
[Math. 1]
s
ij
=p
i
T
Wh
j+exp(−Δtij)ri,jTVhj (1)
Here, pi is a D×1-dimensional vector representing attribute information of the i'th patient (or patient acceptance request) occurring, and hj is a vector representing, by one-hot encoding, a j count of hospitals that are acceptance candidates. ri,j is a vector representing, by one-hot encoding, the reason for the acceptance rejection at the j′th hospital that has occurred at the most recent time, with the date and time of the acceptance request of the i′th patient occurring as a reference. Δti,j is a variable representing the elapsed time therebetween. The prediction model generation data D2 is not one-hot encoded, and accordingly encoding is performed as appropriate in cases of substituting into the above Expression (1). W and V are matrices of parameters that are to be found.
Now, the attribute information of the patient is made up of the 24 types of the part of day of issuing acceptance requests (every hour), the seven types of day of the week, and 50 types of cases, and with the number of hospitals that are acceptance candidates being 30, and reasons for acceptance rejection being five types, the details of the above Expression is as shown in Expression (2) below.
Vector pi is a vector in which the part of day at which the i′th patient occurred, the day of the week of the occurrence, and patient case, are each one-hot encoded and combined.
From the above expression, the probability of acceptance at each hospital regarding a patient with a particular case, occurring at a particular day of the week and a particular part of day, is found. The coefficient matrices W and V are found following the correct labels, so that the probability of acceptance is high when the correct label is capable of accepting: 1, and the probability of acceptance is low when the correct label is not capable of accepting: 0. Accordingly, the coefficient matrices W and V are learned as parameters such that take into consideration the reason for the most recent acceptance rejection, and the amount of time elapsed since the most recent occurrence of the reason of rejection, for each hospital.
In step S106, the CPU 11 operates as the learning unit 123 and stores the prediction model learned as the coefficient matrices W and V in the prediction model storing unit 132.
According to the above learning processing, parameters of the first matrix W and the second matrix V are learned as the prediction model according to the present disclosure, on the basis of a function that outputs values indicating the possibility of acceptance of a user for each hospital, and correct labels. The parameters for the first matrix W and the second matrix V are learned so that in the function, a value in which the possibility of acceptance is high is output, when the user is accepted. As described above, this function includes vector (pi) representing predetermined attribute information relating to acceptance, and the first matrix (W) of which parameters corresponding to vectors representing the attribute information are elements. This function also includes the elapsed time (Δti,j) from the second time to the first time, vectors (ri,j) representing reasons why hospitals rejected acceptance, and the second matrix (V) of which parameters corresponding to vectors representing reasons of rejection as elements.
This so far has been description of operations of the learning processing of the selection supporting device 100.
Next, operations of the prediction processing of the selection supporting device 100 will be described. In the present embodiment, the selection supporting device 100 performs prediction by the prediction processing shown in
In step S200, the CPU 11 operates as the prediction data acquiring unit 124 and acquires the prediction data D3 via the input/output unit 110, and outputs to the information-for-prediction adding unit 125.
The prediction data D3 includes attribute information relating to emergency transportation newly requested from a patient, as an acceptance request that has newly occurred. More specifically, attribute information includes, in addition to environmental information such as the date and time, the day of the week, and so forth, hospital department in accordance with symptoms of the planned transportee (patient), and patient information such as symptoms. An example of the prediction data D3 is as illustrated in
In step S202, the CPU 11 operates as the information-for-prediction adding unit 125 and generates the score calculation data D4 on the basis of the acquired prediction data D3 and the history data D1 stored in the history data storing unit 131, and outputs to the score calculating unit 126.
The process of generating the score calculation data D4 will be described. First, the date and time in the prediction data D3 is converted into part of day information as in
In step S204, the CPU 11 operates as the score calculating unit 126, and calculates a score value for each hospital, on the basis of the score calculation data D4 output from the information-for-prediction adding unit 125 and the prediction model stored in the prediction model storing unit 132. The score value for each hospital is an example of a value indicating the possibility of acceptance for each hospital according to the present disclosure.
An example of calculating a score value will be described. First, the score calculating unit 126 acquires the coefficient matrices W and V as the prediction model stored in the prediction model storing unit 132. The attribute information, the hospital ID, and the acceptance rejection reason, in each row in the score calculation data D4, is vectorized here in accordance with the format in
In step S206, the CPU 11 operates as the output control unit 127 and performs processing of creating output data on the basis of the calculate score values, and outputting via the input/output unit 110.
Output data will be described. For example, the output control unit 127 can create a priority list, in which a plurality of hospitals that are candidates for transporting have been prioritized by being sorted in descending order of the calculated acceptance probabilities, as output data. The calculated acceptance probabilities may be used as output data without change here, or may be used as output data in which those other than the highest ranking in the sorting are deleted. Moreover, in a case where the distance from the location where the patient occurred to each hospital is known in advance, the hospitals to be displayed may be narrowed down by providing a threshold value for the distance, or alternatively, the distance and the acceptance probability may be displayed as a set.
According to the above prediction processing, the estimation method according to the present disclosure is executed as an estimation method for estimating the prospect of a hospital accepting a user at the first time. Thus, the prospect of the user being accepted at the first time is estimated by correlating the reason of the hospital rejecting acceptance of the user at the second time, and the time from the second time to the first time. Note that acceptance of the user is acceptance of some sort of action taken by the user with regard to a facility, and indicates accepting of an acceptance request issued from the user to a hospital, or the like, for example.
Also, in a case of issuing a transportation request to one of the hospitals in the above, and the results are found, the ambulance crew member or operator, who is a user, immediately transmits the results to the selection supporting device 100. The history data in the history data storing unit 131 is immediately updated by the history data acquiring unit 121 in light of the results. Thus, the history data of the history data storing unit 131 is constantly maintained in a newest state, and prediction precision of a location at which to be accepted can be raised by using the newest information of acceptance rejection at each hospital.
As described above, according to the selection supporting device 100 of the present embodiment, hospitals with a high possibility of accepting a user can be predicted with good precision.
Although an example has been described in the above embodiment regarding a case of predicting the prospect of an acceptance request of a user being accepted at a facility that is a hospital, this example is not limiting. For example, application may also be made to a case of replacing the facilities with Web advertisements, setting individual features as some sort of attributes of the Web advertisement side, and finding the probability of a user having a certain attribute clicking on each Web advertisement. In this case, the Web advertisements are an example of a predetermined object.
Note that various types of processors other than a CPU may execute the learning processing or prediction processing that the CPU executes by reading in software (programs) and executing in the above embodiments. Examples of processors in this case include dedicated electric circuits and so forth that are processors having a circuit configuration designed for dedicated execution of particular processing, such as PLDs (Programmable Logic Device) of which the circuit configuration can be changed after manufacturing, like FPGAs (Field-Programmable Gate Array) and so forth, and ASICs (Application Specific Integrated Circuit) and so forth. This learning processing or prediction processing may also be executed by one of these various types of processors, or may be executed by a combination of two or more processors of the same type or different types (e.g., a plurality of FPGAs, a combination of a CPU and an FPGA, and so forth). More specifically, the hardware configuration of these various types of processors are electric circuits where circuit elements such as semiconductor elements and so forth are combined.
Also, while description is made in the above embodiments regarding an arrangement in which a selection supporting program is stored (installed) in the storage 14 in advance, this is not limiting. The program may be provided in a form stored in a non-transitory storage medium, such as a CD-ROM (Compact Disk Read Only Memory), DVD-ROM (Digital Versatile Disk Read Only Memory), USB (Universal Serial Bus) memory, and so forth. A form may also be made in which the program is downloaded from an external device via a network.
In relation to the above embodiment, the following appendices are further disclosed.
An estimating device, including:
a memory, and
at least one processor connected to the memory,
wherein the processor
is an estimating device that estimates a prospect of a hospital accepting a user at a first time, and
is configured to estimate the prospect of acceptance of the user at the first time, by correlating a reason of the hospital rejecting acceptance of a user at a second time further in the past from the first time, and an amount of time from the second time to the first time.
A non-transitory storage medium storing an estimating program
that is an estimating program that estimates a prospect of a hospital accepting a user at a first time, and
that causes a computer to execute
estimating of the prospect of accepting the user at the first time, by correlating a reason of the hospital rejecting acceptance of a user at a second time further in the past from the first time, and an amount of time from the second time to the first time.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2019/043955 | 11/8/2019 | WO |