WO2013105128A1 - データ処理方法、データ処理システム、及びデータ処理装置 - Google Patents

データ処理方法、データ処理システム、及びデータ処理装置 Download PDF

Info

Publication number
WO2013105128A1
WO2013105128A1 PCT/JP2012/000100 JP2012000100W WO2013105128A1 WO 2013105128 A1 WO2013105128 A1 WO 2013105128A1 JP 2012000100 W JP2012000100 W JP 2012000100W WO 2013105128 A1 WO2013105128 A1 WO 2013105128A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature amount
feature
log
operation log
information
Prior art date
Application number
PCT/JP2012/000100
Other languages
English (en)
French (fr)
Inventor
友洋 中村
友隆 塩野谷
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2012/000100 priority Critical patent/WO2013105128A1/ja
Priority to JP2013553078A priority patent/JP5677592B2/ja
Publication of WO2013105128A1 publication Critical patent/WO2013105128A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Definitions

  • the present invention relates to a method for processing data, a data processing system for executing the method, and a data processing apparatus.
  • the present invention relates to a search method and search apparatus related to user operations performed on the user terminal, such as collecting operation logs of user operations on the user terminal and extracting specific operations from the operation logs.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2010-108469
  • Patent Document 2 the operation of a specific user terminal is compared with the operations of a plurality of other user terminals, and a specific operation is determined.
  • Patent Document 1 There is disclosed a method for realizing detection of an operation that may cause a problem without specifying a detection condition.
  • Patent Document 2 Japanese Patent Laid-Open No. 2010-160613
  • semantic information is given to each operation sequence, for example, warning information is given to an operation sequence that occurs when an email is erroneously transmitted, and a similar operation occurs.
  • a method for outputting a warning to an output device is disclosed.
  • Patent Document 3 performs an abnormality determination as an unauthorized access detection device for a system by analyzing means for calculating feature amount data indicating characteristics of abnormal data by analyzing access data.
  • a means for preparing a statistical model and detecting a problem is disclosed.
  • Patent Document 4 in order to detect an illegal web page, link information included in the web page is extracted, a linked web page is acquired, and the web page is acquired.
  • a method for calculating a feature amount of a page and determining whether or not there is an abnormality in a web page based on the feature amount is disclosed.
  • the operation of a specific user terminal is compared with the operation of another user terminal in order to grasp the user's situation.
  • a large amount of operation logs acquired by the user terminal are stored in the server.
  • the collection cost for collecting operation logs becomes high.
  • semantic information for an operation sequence such as giving warning information to an operation sequence that occurs at the time of an operation to be detected and issuing a warning for a similar operation.
  • An object of the present invention is to accurately identify a specific operation to be searched without collecting a large amount of operation logs in order to solve the above problems and detect a specific operation from user operations performed on a large number of user terminals. And to efficiently search for a search target operation.
  • a typical example of the invention disclosed in the present application is as follows. That is, an operation log that is a log related to an operation and a feature amount that is information indicating the feature of the operation log are generated at the terminal, and when the feature amount satisfies a predetermined condition, the operation log and the feature amount are analyzed from the terminal.
  • the information analysis device stores the feature amount and the operation log, and when the information analysis device receives a search request, the information analysis device searches for the operation log based on the feature amount.
  • At least one of the terminal and the information analysis device generates information indicating the distribution of at least part of the feature values stored in the information analysis device.
  • Collection of operation logs can be made selective, making it unnecessary to collect a large amount of operation logs. Furthermore, a specific operation to be searched can be accurately and efficiently realized.
  • FIG. 1 is a system configuration diagram showing an example of a hardware configuration and a software configuration of a system targeted by the present invention.
  • the hardware includes a user terminal device 101, an operation analysis device 141, an analysis terminal device 181 and a network 161 connecting these devices.
  • the hardware of each device may be realized by the same hardware, or may be configured by being distributed among a plurality of hardware.
  • each software is installed so that the program of the analysis terminal device 181 is added to the memory of the operation analysis device 141 and the operation analysis device 141 executes the function of the analysis terminal device 181. It may be executed by the same hardware or may be executed by a plurality of hardware.
  • the user terminal device 101, the operation analysis device 141, and the analysis terminal device 181 all include a processor (103, 143, 183), a memory (108, 148, 188), an input / output unit (102, 147, 187), a network interface ( 107, 142, 182) and connected to each other.
  • the user terminal device 101 and the operation analysis device 141 further include local disks (105, 145).
  • the input / output unit (102, 147, 187) includes a monitor, displays screens such as those shown in FIGS. 3A, 7A, 7B, 9, and 10 to be described later on the monitor, and uses an interface such as a mouse and a keyboard. You can perform operations on these screens. These images are displayed on a video device (such as a monitor) connected to the end of the input / output unit (102, 147, 187), and operations on these screens are performed using an interface such as a mouse and a keyboard. It is good.
  • the memory 108 of the user terminal device 101 stores an application execution platform program 111, an application program 112, and an operation log acquisition / transmission program 113. These programs are read into the processor 103 and executed.
  • the application execution platform program 111 controls the execution of programs such as the application program 112 and the operation log acquisition / transmission program 113, and has a function of controlling input / output between these programs and the outside such as a local disk, input / output unit, and network. Have.
  • the application program 112 is a target to be operated by the user of the user terminal device, and provides functions such as document creation, spreadsheet, and web page browsing.
  • the operation log acquisition / transmission program 113 acquires information indicating a user operation on the application program, generates an operation log, calculates the feature amount of the operation log, and stores and transmits the feature amount and the operation log. It has functions such as.
  • the input / output unit 102 is connected to a keyboard, a mouse, a monitor, and the like, and is used to instruct execution and stop of the program and to display the execution result of the program on the monitor.
  • the processor 103 reads a program from the memory 108 and executes processing.
  • the network interface 107 transmits / receives data such as operation logs and commands for controlling the operation of the device via the network 161 between the user terminal device 101 and an external device.
  • the local disk 105 has a log storage area 106, which stores operation logs and feature quantities.
  • the analysis program 151 is stored in the memory 148 of the operation analyzer 141. This program is read by the processor 143 and executed.
  • the analysis program 151 has a function of receiving and storing the operation log and the feature amount transmitted from the user terminal device 101, a function of analyzing the feature amount and visualizing the distribution of the feature amount, and the feature amount in the user terminal device 101. It has a function to specify the calculation method.
  • the input / output unit 147, the processor 143, the network interface 142, and the local disk 145 have the same functions as the input / output unit 102, the processor 103, the network interface 107, and the local disk 105, which are devices of the same name in the user terminal device 101, respectively.
  • the analysis interface program 191 is stored in the memory 188 of the analysis terminal device 181.
  • the analysis interface program 191 is read by the processor 183 and executed.
  • the analysis interface program 191 has a function for designating an operation to be searched, a function for displaying the analysis result of the feature amount analyzed by the operation analysis device 141, and an operation performed by the user from the operation log transmitted to the operation analysis device 141. Has a function to input the analysis results and evaluations for the reproduction results.
  • the input / output unit 187, the processor 183, and the network interface 182 have the same functions as the input / output unit 102, the processor 103, the network interface 107, and the local disk 105, which are devices of the same name in the user terminal device 101, respectively.
  • the state in which the program is executed on the processor is referred to as a module.
  • the application program when executed on the processor, it is referred to as an application module. That is, the state in which the application execution base program 111 is executed on the processor is the application execution base module 211, the state in which the application program 112 is executed on the processor is the application module 212, and the operation log acquisition / transmission program
  • the state in which 113 is executed on the processor is the operation log acquisition / transmission module 213, the state in which the analysis program 151 is executed on the processor is the analysis module 251, and the analysis interface program 191 is executed on the processor. This state is the analysis interface module 291.
  • the application module 212 when an operation on the user terminal device 101 is performed in a system in which the user terminal device 101, the operation analysis device 141, and the analysis terminal device 181 are connected via the network 161, the application module 212.
  • An event corresponding to the operation occurs above. For example, when a button on the application is pressed with a mouse, a click event occurs.
  • the operation log acquisition / transmission module 213 has an operation log recording function 214 and a feature amount calculation function 215.
  • the operation log recording function 214 stores an operation log in the log storage area 106 or is stored in the log storage area 106 in addition to an operation log generation that captures an event occurring on the application and generates an operation log. It also has a function to read out the operation log being sent and to send the operation log to the outside.
  • the feature amount calculation function 215 has a function of calculating feature amounts for the generated or read operation logs.
  • the feature amount includes everything that can be calculated from the operation log, such as the distance that the mouse cursor moves on the application and the number of times the mouse is clicked.
  • the feature amount calculation function 215 includes a condition determination function 216 that determines whether or not the feature amount calculated for the condition specified by the operation analysis device 141 or the analysis terminal device 181 satisfies the condition. .
  • the condition determination function 216 for example, the condition is given as “mouse clicks accumulated 10 times or more”, and if the number of mouse clicks exceeds 10 accumulated, it is determined that the condition is satisfied, and the feature amount calculation function 215 is Notify that the condition is met. Similar to the operation log recording function 214, the feature amount calculation function 215 stores the feature amount in the log storage area 106, reads out the feature amount stored in the log storage area 106, and transmits the feature amount to the outside. Have the ability to Further, a function of specifying an operation log corresponding to the feature amount, acquiring the corresponding operation log from the operation log recording function 214, and transmitting the operation log to the outside is also included.
  • the feature amount calculation function 215 also includes a history management function 217 that records the history of these operations.
  • the calculation of the feature value, the feature value, and the timing for saving / transmitting the operation log are not limited. For example, when a certain amount of operation is performed, the feature value is calculated and the operation log is saved. The feature amount is transmitted to the operation analysis apparatus 141 via the network 161, and when the condition determination function 216 determines that the condition is satisfied, the corresponding operation log is also transmitted to the operation analysis apparatus 141.
  • the operation analysis apparatus 141 includes a log transmission / reception function 252 and a log storage function 253 that receive feature quantities and operation logs transmitted from the user terminal apparatus 101 and store them in the log storage area 146 as functions of the analysis module 251. .
  • a log transmission / reception function 252 receives feature quantities and operation logs transmitted from the user terminal apparatus 101 and store them in the log storage area 146 as functions of the analysis module 251.
  • FIG. 2 only one user terminal device 101 is shown, but it is also possible to receive logs from multiple user terminal devices 101.
  • the log storage function 253 includes a function of reading feature quantities and operation logs from the log storage area 146.
  • the log transmission / reception function 252 includes a function of transmitting feature amounts, operation logs, and data generated therefrom to the user terminal device 101 and the analysis terminal device 181.
  • the analysis module 251 includes a feature amount analysis function 254.
  • the feature amount analysis function 254 includes a function of performing statistical processing of a plurality of feature amounts and visualizing the distribution of feature amounts in the form of a graph or the like. Furthermore, it is information indicating the degree of similarity and the degree of divergence, which is information indicating the degree of similarity between the specified feature amount of the operation log and the feature amount of the operation log stored in the log storage area 146. A function of calculating a divergence degree and acquiring an operation log corresponding to a specified feature amount from the log storage area 146 is also included.
  • the feature amount specifying function 255 has a function of changing the feature amount calculated by the user terminal device 101 or changing the condition determination condition based on the analysis result of the feature amount or an external input.
  • the operation analysis device 141 can provide a function of confirming the status of a plurality of feature amounts and operation logs, or extracting specific feature amounts and operation logs.
  • a search operation specifying function 292 for specifying an operation log to be extracted from the operation logs stored in the operation analysis device 141 and the user terminal device 101, and the operation analysis device 141.
  • a result display / reproduction function 293 that realizes a function of displaying a result analyzed by the feature amount analysis function 254 of the user or reproducing a user operation based on an operation log extracted by the operation analysis device 141.
  • an evaluation input function 294 for inputting an evaluation, such as whether or not the operation log is to be extracted with respect to the analysis result or the reproduced operation, and whether or not the feature quantity is effective for designating the operation to be extracted is included.
  • FIG. 3A schematically shows a state in which the user performs operations such as selection, check, and click on a plurality of objects on the application screen 301.
  • CCC1 is selected in the pull-down menu CCC304
  • DDD2 is selected in the radio button DDD305.
  • the operation log recording function 214 From the events generated by these operations, the operation log recording function 214 generates a sequence of operation logs as shown in the table of the operation log 310 in FIG. 3B.
  • the operation log 310 includes, for example, an application name or URL (Uniform Resource Identifiers) indicating the place where the operation is performed, time, an object name to be operated, an operation content, an operation result, and other remarks on the operator or the screen.
  • the coordinates of are included.
  • the operation feature quantity 320 shown in FIG. 3C includes everything that can be calculated from the operation log 310. For example, the number of operation occurrences, operation targets, time, coordinates, environment, content statistics, etc. is there.
  • FIG. 4A and 4B show details of the processing flow in the user terminal device 101.
  • the operation log acquisition / transmission module 213 generates an operation log from an event that has occurred on the application module 212 and calculates a feature amount.
  • the operation log generation is described with reference to FIG. 4A.
  • a description will be given of feature amount calculation and condition determination with reference to FIG. 4B.
  • the operation log generation described with reference to FIG. 4A is performed by the operation log recording function 214, and the operation log is generated from the application information 401 and the event information 404.
  • the application information 401 is included in the application program 112 shown in FIG. 1, and the event information 404 is stored or generated in the application execution platform program 111 shown in FIG.
  • the application information 401 includes information 402 regarding the object and information 403 regarding the application code.
  • the information 402 related to the object is information such as the name, location, and size of an object such as a button or a form displayed on the application screen.
  • the information 403 related to the application code is a script code included in the web page.
  • the event information 404 includes an operation event 405, an application property 406, and execution environment information 407.
  • the operation event 405 includes information such as the content of an operation such as a click operation, the result of the operation, and the location of the operation.
  • the application property 406 includes the operation status and state of the application, for example, cookie information of a web page.
  • the execution environment information 407 includes an operator name, information on the device being executed, and the like.
  • the operation log is generated based on the operation log generation rule 410 by using the operation log conversion function 411 included in the operation log recording function 214 to acquire the application information 401 and the event information 404.
  • the operation log generation rule 410 is included in the operation log acquisition / transmission program 113. Further, the operation log generation rule 410 may include a timing for generating an operation log, a method for storing the generated operation log, and the like in addition to a rule for generating an operation log character string from an event.
  • the generated operation log is stored / read with respect to the log storage area 106 by the operation log storage / transmission function 412 included in the operation log recording function 214.
  • the feature amount calculation function 215 reads the operation log from the log storage area 106 and performs the calculation based on the feature amount calculation rule 420 using the read operation log.
  • the feature amount calculation rule 420 is included in the operation log acquisition / transmission program 113 shown in FIG. The operation log may be acquired directly from the operation log conversion function 411 or the like without going through the log storage area 106.
  • the feature value calculation rule 420 may include a timing for calculating the feature value, a storage method for the calculated feature value, and the like.
  • the condition determination function 216 determines whether or not the calculated feature amount satisfies a condition specified by the operation analysis device 141 or the analysis terminal device 181.
  • condition determination rule 422 is included in the operation log acquisition / transmission program 113 shown in FIG. Further, the condition determination rule 422 includes a condition such as comparison with another feature quantity stored in the log storage area 106 in addition to a condition such as whether the specific feature quantity is larger than a certain value.
  • the history management function 217 manages histories such as operation logs and feature amount calculation results in addition to the condition determination results, and stores the history in the log storage area 106.
  • FIG. 5A and FIG. 5B show the details of the processing flow in the operation analyzer 141.
  • the analysis module 251 receives the feature amount and the operation log from the user terminal device 101 and stores them in the log storage area 146, or the search target operation designated from the analysis terminal device 181.
  • the feature amount stored in the log storage area 146 is compared, and the distribution of the feature amount is analyzed. An example of a detailed flow of these processes will be described below.
  • a plurality of feature amounts are collectively referred to as a feature amount vector 501.
  • the log transmission / reception function 252 the log storage function 253, and the feature amount analysis function 254 will be described with reference to FIG. 5A.
  • the feature quantity vector 501 and the operation log 502 are received by the log transmission / reception function 252 and stored in the log storage area 146 via the log storage function 253.
  • operation logs 2302, 2303, 2304, 2305, 2306, 2307) and feature quantities (2308, 2309, 2310) are stored for each operation 2301. Corresponding and saved.
  • a feature amount calculation method will be described later.
  • the feature amount analysis function 254 extracts the operation of the search target from the received feature amount, the feature amount stored in the log storage area 146, the feature amount of the operation designated as the search target, or the distribution of the feature amount. Analyzes such as.
  • the feature amount analysis result 514 may also be stored in the log storage area 146 via the log storage function 253.
  • the feature amount calculation rule 420 in the user terminal device 101 is obtained from the search result evaluation 521 received from the analysis terminal device 181 and the feature amount analysis result 514 and the feature amount stored in the log storage area 146. And a feature amount specification 522 for changing / specifying the condition determination rule 422 and the like. For example, if an evaluation is given that a particular feature value is not useful for specifying the operation to be searched, the calculation cost of the feature value can be reduced by making a change such as stopping the calculation of the corresponding feature value itself. In addition, the storage cost can be reduced.
  • FIG. 6 shows the details of the processing flow in the analysis terminal device 181.
  • an operation log desired to be extracted from the operation logs stored in the operation analysis device 141 or the user terminal device 101 is designated, or the feature amount analysis function 254 of the operation analysis device 141 is used.
  • the analyzed result is displayed on the monitor, or the user operation is reproduced on the monitor based on the operation log extracted by the operation analysis device 141, and whether the operation log is to be extracted with respect to the analysis result or the reproduced operation. It provides a function for inputting evaluations such as whether or not the feature quantity is effective for designating an operation to be extracted.
  • the result display / reproduction function 293 displays the distribution of feature values and reproduces specific operations from the feature vector 501, the operation log 502, the feature analysis result 514, etc., and performs the search specified by the search operation specification function 292.
  • the feature quantity of the target operation is displayed on the monitor according to the distribution of the feature quantity, and the relationship between the user operation status and the specified operation is visualized. Select the operation to be searched from the list.
  • the evaluation input function 294 provides a function of inputting an evaluation with respect to the display of the distribution of the feature amount and the reproduction of the operation and transmitting the search result evaluation 521 to the operation analysis device 141.
  • FIG. 7A is a diagram illustrating an example of display of the distribution of feature values on the analysis terminal device 181
  • FIG. 7B is a diagram illustrating an example of an image of reproduction of an operation.
  • These screens 701 and 750 are displayed on a monitor provided in the input / output unit 187 of the analysis terminal device 181.
  • the result display screen 701 in FIG. 7A includes a control unit 702 that controls the display contents and a graph unit 703 that displays the distribution of the feature amount.
  • the control unit 702 selects the feature amount to be displayed, and the corresponding log. Provides a function for selecting an item, reproducing the selected operation, and designating the selected operation as a search target.
  • the distribution of three feature values is displayed in a three-dimensional graph.
  • the space represented by this three-dimensional graph is referred to as a feature amount space.
  • a black circle ⁇ 721 is a feature quantity stored in the log storage area 146
  • a hollow circle ⁇ 722 is a feature quantity stored in the log storage area 146
  • an operation log is also saved. It is what.
  • a star ⁇ 723 indicates the distribution in the feature amount space of the operation designated as the operation to be searched. As can be seen from FIG. 7, a plurality of search target operations may be designated. From the feature amount space in FIG.
  • FIG. 7B shows an operation reproduction screen 750 in which a hollow circle ⁇ 722 is selected on the result display screen 701 with a mouse or the like, and an operation corresponding to the feature amount of the hollow circle ⁇ ⁇ 722 can be reproduced and confirmed.
  • the specified operation is searched to reproduce the operation, and the status of other operations is further displayed in the feature amount space, and searched as necessary.
  • the flow of a process for adding a target operation is shown.
  • the operation log recording function of the operation log acquisition / transmission module acquires event information from the application module (step 804).
  • the log recording function generates an operation log based on the operation log generation rule and stores it in the log storage area (step 805).
  • steps 803, 804, and 805 are collectively referred to as step 802.
  • it is determined whether or not feature quantity calculation is necessary is performed based on, for example, a feature amount calculation rule.
  • the feature quantity calculation function calculates and saves the feature quantity from the operation log based on the feature quantity calculation rule (step 808).
  • the condition determination function determines whether or not the operation log needs to be transmitted based on the condition determination rule, and the history management function stores it in the log storage area (step 809).
  • steps 807, 808, and 809 are collectively referred to as step 806. It is determined whether or not the calculated feature value needs to be transmitted (step 811), and the operation log storage / transmission function transmits the feature value to the operation analysis device as necessary (step 812). When the feature size is sufficiently small compared to the operation log, it is possible to send the feature amount to the operation analysis device at all times. It becomes possible to grasp the situation. Subsequently, it is determined whether or not the operation log needs to be transmitted (step 813). This determination is performed based on the determination result of step 809.
  • step 810 In order to adjust the transmission timing, such as transmitting a certain amount of data in consideration of communication efficiency, even if the determination result in step 809 is necessary, there is a method that does not transmit immediately.
  • the operation log is transmitted by the operation log storage / transmission function (step 814).
  • steps 811, 812, 813, and 814 are collectively referred to as step 810.
  • the user terminal device repeats these processing flows until the operation on the application is completed.
  • the feature amount and the operation log transmitted in the processing steps 812 and 814 of the user terminal device 101 are received by the log transmission / reception function and stored in the log storage area (step 823).
  • the feature amount analysis function compares the feature amount of the operation specified in the analysis terminal layer with the feature amount stored in the log storage area (step 824).
  • the comparison method will be described with reference to FIGS.
  • an operation designated as a search target and a comparison operation for extracting an operation with high similarity in the feature amount space are taken as an example. It is determined whether or not there is a similar operation (step 825).
  • Step 826 it is determined whether or not the operation log of the corresponding operation is in the log storage area of the operation analyzer. In this case, the corresponding operation log is transmitted to the analysis terminal device (step 827).
  • Steps 823, 824, 825, 826, and 827 are collectively referred to as Step 822.
  • the feature quantity vector is transmitted to the analysis terminal device (step 828). When the search process is continued, the above process is repeated.
  • the analysis terminal device 181 designates an operation to be searched by the search operation designation function and transmits it to the operation analysis device (step 843).
  • There are various methods for specifying an operation to be searched For example, a method for specifying a partial space of a feature amount space, a method for calculating and specifying a feature amount of a specific operation, and the like can be considered.
  • it waits for reception of an operation log from the operation analyzer (step 844).
  • the operation log is reproduced by the result display / reproduction function (step 845).
  • the operation determined to be similar to the operation to be searched can be actually reproduced and confirmed.
  • the operation log reception waiting in step 844 may be a method such as a timeout for stopping the reception waiting when the operation log is not received within a certain time.
  • steps 843, 844, and 845 are collectively referred to as step 842.
  • the system waits for reception of a feature vector from the operation analysis apparatus (step 847).
  • the feature space is displayed by a result display / reproduction function (step 848). For example, as shown in FIG. 7, even when an operation log is not received by displaying the feature amount space, that is, when a similar operation is not found, a nearby operation can be found in the feature amount space. If an operation to be searched is found by the above processing, the processing is terminated. If no operation is found, the above processing is repeated in order to re-designate the search target from the feature space information or the like (step 849). ).
  • FIG. 9 is an example of a method for determining a feature amount condition performed by the user operation terminal device 101 or the operation analysis device 141.
  • the movement distance of the mouse is selected as the feature amount 2
  • the movement amount of the mouse in the X direction is selected as the feature amount 3.
  • X, A, B, and C operation patterns (921, 922, 923, and 924) are mapped on the feature amount space, and are provided in the input / output units 102 and 147 of the user operation terminal device 101 and the operation analysis device 141. Or displayed on the connected monitor.
  • X be an operation designated as a search target
  • A, B, and C be user operations stored in the log storage area.
  • A is selected
  • C is selected as the deviating operation.
  • This determination can be realized by, for example, a method in which a spherical surface is drawn around X in the feature amount space, a point that first touches the spherical surface 911 is a similar operation, and a point that touches the spherical surface is the last operation that deviates. .
  • the range determined to be similar for feature amount 1 is expanded.
  • a constant value is a criterion for similarity determination. If this is schematically represented in the feature amount space, a range such as an ellipse 912 is used for similarity determination. In this case, B is selected as the similar operation.
  • FIG. 10A shows an example in which the determination method for the similar / divergence operation described in FIG. 9 is expressed as a condition determination rule.
  • A is selected as an operation similar to X described in FIG. That is, when the Euclidean distance in the feature amount space is small, it is determined that the similarity with the search target is high.
  • condition determination rule example (similarity 2) 1002 when X, X2, and X3 described in FIG. 9 are designated as search targets, B is selected as a similar operation. That is, when the Mahalanobis distance in the feature amount space is small, it is determined that the similarity with the search target group is high.
  • condition determination rule (divergence) 1003 the operation C is a rule selected as an operation that has deviated. That is, when the Euclidean distance in the feature amount space is large, it is determined that the degree of deviation from the search target is high.
  • FIG. 10B is an example in which similar / divergence operations can be determined by numerical calculation.
  • Table 1010 shows an example of rules that can be determined by numerical calculation.
  • a rule that can be determined by numerical calculation is shown as an example.
  • a case where the rule is expressed as a program such as logical calculation instead of numerical calculation is also included.
  • the simplest method of searching for a desired operation from user operations is to collect operation logs of all operations and reproduce and select all operations.
  • operation logs are selectively collected according to the feature amount of the operation, and operations similar to or different from the operation to be searched are extracted in the feature amount space to restrict the reproduction of the operation.
  • a point displayed with a black circle ⁇ in the feature amount space is a feature amount of an operation in which an operation log is transmitted to the operation analysis device.
  • the operation log is not stored. It is understood that it is included in the transmission area 1103, and it should be determined that this operation log needs to be transmitted to the operation analysis apparatus.
  • the operation log non-transmission area 1103 indicates an area where the distance from the operation already transmitted in the feature amount space is longer than a certain value.
  • the distance calculation method any of a plurality of calculation methods such as Euclidean distance and Mahalanobis distance may be used. This area is in the operation log non-transmission area 1103 when the operation log is generated and the distance between the operation log and the transmitted operation is calculated and found to be in an area farther than a certain value. That is to judge.
  • the operation log transmitted area may be generated and managed in advance, and it may be judged whether it is necessary or not. Every time the operation log is generated, it is searched whether the transmitted point is in the vicinity. You may decide whether it is necessary.
  • the operation analysis device After the operation log is generated in step 802 in the user terminal device and the feature amount is calculated (step 1208), it is determined whether the corresponding operation log needs to be transmitted to the operation analysis device. In this determination, it is determined whether or not not only the operation performed on the corresponding user terminal device but also the operation performed on other user terminal devices and the storage status of the operation log in the operation analysis device should be considered ( Step 1209) If necessary, the operation analysis device requests and receives the operation feature value (transmitted feature value) stored in the operation log from the operation analysis device (step 1210).
  • the history management function identifies an operation that has already been transmitted to the operation analyzer using the operation log, and reads the feature amount of the operation (sent feature amount) from the log storage area ( Step 1211). After the above processing, the feature quantity newly calculated in step 1208 is compared with the transmitted feature quantity. If there is a difference between the two, the history management function determines that the operation log is required to be sent and the history management function (Step 1212). Thereafter, in step 810, the operation log is transmitted to the operation analyzer.
  • the operation can be reproduced by requesting and receiving the corresponding operation log from the user terminal device To do.
  • the operation analysis device determines whether there is a similar operation in step 825. If it is determined that there is no corresponding operation log, the user terminal device is requested and received for the corresponding operation log (step 1331). In the user terminal device, the operation log is transmitted from the log storage area to the operation analysis device based on the request from the operation analysis device (step 1317).
  • FIG. 13 shows an example in which the user terminal device does not transmit the operation log to the operation analysis device at all other than the request from the operation analysis device.
  • Specified operation may be difficult in the method of specifying the search target operation by the feature value. Therefore, the operation to be searched is actually performed, and the user operation is searched without explicitly specifying the feature amount, thereby facilitating the specification of the operation to be searched.
  • FIG. 14 is a diagram illustrating an example of a system configuration diagram in a case where an operation to be searched is designated by actually performing an operation.
  • the analysis terminal device 1481 in addition to the analysis interface program 1491, has the same application execution platform program 1411, application program 1412, operation log acquisition as those stored on the memory 108 of the user terminal device 101.
  • a transmission program 1413 is stored on the memory 1488.
  • the analysis terminal device 1481 can execute an application in the same manner as the user terminal device 101, perform an operation on the application, generate an operation log, and calculate the feature amount of the operation log.
  • a local disk 1485 and a log storage area 1486 are included in the analysis terminal device 1481 for storing operation logs, feature amounts, and the like. These usage methods are the same as those of the user terminal device 101.
  • Log generation and feature quantity calculation methods, application programs 1412 and the like are deployed on a device other than the user terminal device 101 and the analysis terminal device 1481, and are used via the network 161 for operations. Also included are methods for generating logs and calculating features.
  • the state in which the program is executed on the processor is called a module. That is, the state in which the application execution base program 111 is executed on the processor is the application execution base module 211, the state in which the application program 112 is executed on the processor is the application module 212, and the operation log acquisition / transmission program
  • the state in which 113 is executed on the processor is the operation log acquisition / transmission module 213, the state in which the analysis program 151 is executed on the processor is the analysis module 251, and the analysis interface program 1491 is executed on the processor.
  • This state is the analysis interface module 291.
  • the application execution platform program 1411, the application program 1412, and the operation log acquisition / transmission program 1413 are executed on the processor, so that the application execution platform module 211, the application module 212, the operation log acquisition / A module similar to the transmission module 213 functions.
  • an operation event to be searched occurs on the application module (step 1552), the operation log recording function of the operation log acquisition / transmission module acquires event information from the application module (step 1553), The operation log recording function generates an operation log based on the operation log generation rule and stores it in the log storage area (step 1554).
  • steps 1552, 1553, and 1554 are collectively referred to as step 1551.
  • the search target operation specified in this way is transmitted from the analysis terminal device to the operation analysis device by the search operation specifying function (step 1543). In FIG. 15, the designation of the operation is performed only once. However, the step 1551 is repeatedly performed to designate a plurality of operations as the search target operations.
  • FIG. 16 is a diagram schematically illustrating a method for determining the utility value of a feature amount.
  • the frequency distribution is a distribution in which only the value of the feature quantity 1 is extracted from a plurality of feature quantities stored in the log storage area, and the number of the feature quantities 1 having the same value is counted.
  • the frequency distribution of the feature quantity 1 has two peaks.
  • the search target By specifying which of the two mountains the operation to be specified as is specified, an operation search can be performed more accurately and efficiently.
  • the condition of the feature amount 1 of the operation to be searched is indicated by the range of the mountain on the left side from one point of the star 1604, that is, the value indicated by the arrow 1605 or the arrow 1606.
  • the range is specified again.
  • the distribution 1621 of the feature quantity 2 is almost uniform, and there is a possibility that the utility value is low as the feature quantity for narrowing down the target operation.
  • the feature amount 3 takes almost two values, and the degree of separation between the two is high. Therefore, if it can be specified which of the two feature quantities 3 of the operation specified as the search target can be specified, the specification of the search target operation can be made efficient.
  • Such a feature amount may have a high utility value.
  • FIG. 17 shows a processing flow for adjusting the feature amount.
  • the analysis terminal device displays the distribution of the feature amount in the feature amount space, acquires the presence / absence of use of the feature amount and the determination condition by the evaluation input function, and transmits this to the operation analysis device.
  • the evaluation input function includes, for example, the presence / absence of the utility value of the feature amount input in the feature amount adjustment 1615 in FIG.
  • the feature amount comparison method executed by the feature amount analysis function of the operation analyzer is changed according to the presence / absence / use condition of the feature amount transmitted from the analysis terminal device (step 1732).
  • the amount designation function changes the feature amount calculation rule / condition determination rule and transmits it to the user terminal device (step 1733).
  • the feature amount calculation method and the condition determination method are changed in accordance with the feature amount calculation rule / condition determination rule received from the operation analysis device prior to the feature amount calculation and condition determination.
  • the feature usage method can be appropriately prepared, and the specification of the operation to be searched can be made more efficient.
  • the distribution of the feature quantity is received from the operation analysis apparatus in Step 846, and the operation log is reproduced by selecting the operation from the feature quantity space by the result display / reproduction function (Step 1851).
  • the operation log reproduced by the evaluation input function is recorded as corresponding or not applicable to the search target (step 1852), and this is repeated as necessary (step 1853).
  • the operation specified as the search target in this way is transmitted from the analysis terminal device to the operation analysis device by the search operation specifying function (step 1854).
  • an operation log is acquired in advance in the user terminal device by inserting a program for acquiring or transmitting an operation log on the user terminal device into the web page.
  • search for user operations can be realized without deploying a program for transmission. This eliminates the need to install a program for realizing a search for a user operation in the user terminal device.
  • FIG. 19 is a system configuration diagram illustrating an example of a hardware configuration and a software configuration of a system that realizes a search for a user operation with respect to an operation on a web browser.
  • the hardware has a configuration in which a web server device 1921 is connected by a network 1961 in addition to the user terminal device 1901, the operation analysis device 1941, and the analysis terminal device 1981.
  • the hardware of each device may be realized by the same hardware, or may be configured by being distributed among a plurality of hardware.
  • the web server device 1921 includes a processor 1923, a memory 1928, an input / output unit 1927, a network interface 1922, and a local disk 1925. However, some devices may lack some of these components.
  • a web browser program 1911 and a script execution program 1912 are stored in the memory 1908 of the user terminal device 1901. These programs are read into the processor 103 and executed.
  • the web browser program 1911 has a function of transmitting a web page request or receiving a web page and displaying the web page via the input / output unit 102.
  • the script execution program 1912 operates in cooperation with the web browser program 1911 and has a function of controlling the display and operation of the web page by executing the script code included in the web page.
  • the memory 1948 of the operation analyzer 1941 stores an analysis program 1951 and an insertion program 1956. These programs are read into the processor 143 and executed.
  • the analysis program 1951 has the same function as the analysis program 151 of FIG.
  • the insertion program 1956 has a function of inserting an operation recording program and a feature amount calculation program into the web page generated by the web server device 1921.
  • the operation recording program insertion code 1957 is a script code having a function of recording an event generated by an operation on the web browser or recording information related to the execution environment of the web browser as an operation log on the web page. Has the ability to insert.
  • the feature quantity calculation program insertion code 1958 has a function of inserting a script code having a function of calculating a feature quantity from an operation log and determining whether or not to send an operation log from the feature quantity to a web page. .
  • the analysis interface program 1991 is stored in the memory 1988 of the analysis terminal device 1981.
  • the analysis interface program 1991 is read by the processor 183 and executed.
  • the analysis interface program 1991 has the same function as the analysis interface program 191 in FIG.
  • the web server program 1931 is stored in the memory 1928 of the web server device 1921.
  • the web server program 1931 is read and executed by the processor 1923.
  • the web server program 1931 generates a web page based on the web application code 1932 and transmits the web page via the network 161.
  • the state in which the program is executed on the processor is called a module. That is, the state where the web browser program 1911 is executed on the processor is the web browser module 2011, the state where the script execution program 1912 is executed on the processor is the script execution module 2012, and the analysis program 1951 is on the processor.
  • the state in which the analysis program 2051 is executed is the analysis module 2051
  • the state in which the insertion program 1956 is executed on the processor is the insertion module 2056
  • the state in which the analysis interface program 1991 is executed on the processor is the analysis interface module 2091.
  • a state in which the web server program 1931 is executed on the processor is the web server module 2031.
  • the web server device 1921 When a web page request is transmitted from the web browser module 2011 of the user terminal device 1901 via the network 161, the web server device 1921 receives the request, and the web server module 2031 receives the web based on the web application module 2032.
  • a page is generated and transmitted as a response to the operation analyzer 1941 via the network 161.
  • the operation log recording program and the feature amount calculation program are inserted into the web page by the insertion module 2056, and transmitted as a response to the user terminal apparatus 1901 via the network 161.
  • the operation log recording program inserted by the operation analysis device 1941 is executed as the operation log recording function 2014 on the script execution module 2012, and the feature amount calculation program is also executed as the feature amount calculation function 2015. .
  • the operation log recording function 2014 and the feature amount calculation function 2015 provide a function equivalent to the function of the same name in FIG.
  • the web page request also passes through the operation analyzer 1941, but it does not have to go through as described above. Further, another configuration may be employed such that the insertion module 2056 is included in the web server module 2031.
  • the operation on the designated web browser is searched and reproduced, the status of other operations is displayed in the feature amount space, and the search is performed as necessary.
  • a flow of processing for adding a target operation is shown.
  • the web browser module on the user terminal device transmits a web page request to the web server device (step 2103).
  • the web server device When the web server module receives a web page request from the user terminal device, the web server device generates a web page response by the web application module and transmits it to the operation analysis device (step 2162).
  • the insertion module inserts the operation log recording program and the feature amount calculation program into the response of the web page received from the web server device and transmits it to the user terminal device (step 2122).
  • the web browser module receives a response from the operation analysis device (step 2104), and an event due to a user operation or the like occurs in the script execution module (step 2105).
  • the operation log recording function operating on the script execution module acquires event information from the script execution module (step 2106), generates an operation log based on the operation log generation rule, and stores it in the log storage area (step 2107).
  • an operation log can be generated without installing a program for recording an operation log in the user terminal device in advance for the operation on the web browser of the user terminal device. Accordingly, operation logs can be collected more easily from user terminal devices, and the number of user terminal devices that can be searched for operation logs can be increased.
  • the feature value calculation rule / condition determination rule to be inserted into the web page is changed with respect to the feature value calculation program insertion function (step 2231). Accordingly, the calculation of the feature amount of the operation on the web browser of the user terminal device, the transmission condition of the operation log, and the like can be changed independently of the user terminal device.

Abstract

 本発明の一例として、操作に関するログである操作ログと、操作ログの特徴を示す情報である特徴量を端末で生成し、特徴量が所定の条件を満たした場合に、操作ログと特徴量を端末から情報分析装置に送信し、情報分析装置において特徴量と操作ログとを記憶して、情報分析装置が検索要求を受信した場合に特徴量に基づいて操作ログに関する検索を行う。また、本発明の他の例として、端末と情報分析装置の少なくとも何れかが、情報分析装置に記憶されている特徴量の少なくとも一部の特徴量の分布を示す情報を生成する。これにより、操作ログの収集を選択的にして大量の操作ログの収集を不要とし、さらに検索対象となる特定操作を的確かつ効率的に実現できる。

Description

データ処理方法、データ処理システム、及びデータ処理装置
 本発明は、データを処理する方法、及びその方法を実行するデータ処理システム、データ処理装置に係る。特に、ユーザ端末上でのユーザ操作の操作ログを収集し、その操作ログから特定の操作を抽出する等の、ユーザ端末上でなされたユーザ操作に関する検索方法および検索装置に関する。
 近年、さまざまなサービスがネットワークを介して提供されるようになり、サービス提供者は、ネットワークの向こう側のユーザの状況を把握しにくくなっている。また、これらのサービスの中には、業務システムや金融サービスをはじめとして、その利用によって経済に大きな影響を与えるサービスも多く含まれる。
 そのため、業務やビジネスの状況を把握するためには、ネットワークを介して提供されるサービスのユーザの状況を把握する必要性が高まっている。例えば、業務システムなどでは、従業員の誤操作によって大きな損失や信用の失墜を招くことがあり、このようなオペレーショナルリスクを回避するために、利用状況を監視して、問題行動を把握したいというニーズがある。また、電子商取引のように、ネットワーク化によって従来よりも参入障壁が下がって、類似のサービスを誰でも提供できるようになると、ユーザの状況にあわせたサービスをいかに提供してサービスの優位化を図るかがビジネスで成功するために重要になってくる。これを実現するためには、多数のユーザの状況を瞬時に把握して、適切なサービスを提供することが必要になる。
 これに対して、特開2010-108469号公報(特許文献1)では、特定ユーザ端末の操作を、他の複数のユーザ端末の操作と比較して特異操作の判定を行うことで、特定操作の検出条件を指定しなくても問題となる可能性のある操作の検出を実現する方法が開示されている。
 また、特開2010-160613号公報(特許文献2)では、各操作シーケンスに意味情報を与え、例えば電子メールの誤送信時に発生する操作シーケンスに警告情報を与えて、類似操作が発生した際に出力装置に警告を出力する方法が開示されている。
 また、特開2005-250802号公報(特許文献3)では、システムへの不正アクセス検出装置として、アクセスデータの解析により異常データの特徴を示す特徴量データを算出する解析手段と、異常判定を行う統計モデルを用意して、問題の検出を行う手段が開示されている。
 さらに、特開2009-230663号公報(特許文献4)では、不正なウェブページの検出を行うために、ウェブページに含まれるリンク情報を抽出し、リンク先のウェブページを取得して、そのウェブページの特徴量を算出し、特徴量に基づいてウェブページの異常の有無を判定する方法が開示されている。
特開2010-108469号公報 特開2010-160613号公報 特開2005-250802号公報 特開2009-230663号公報
 上述のように、従来技術において、ユーザの状況を把握するために特定ユーザ端末の操作を他のユーザ端末の操作と比較していたが、この際にユーザ端末で取得した大量の操作ログをサーバ側に収集して解析する必要があり、操作ログを収集する為の収集コストが高くなるという問題があった。
 また、誤操作の検出のような特定の操作を検出しようとする際に、検出対象の操作時に発生する操作シーケンスに警告情報を与えて類似の操作に対して警告を出すといった操作シーケンスに対する意味情報の付加を利用した処理を行っていたが、意味情報を与える操作シーケンスを適切に指定することが困難であるという問題があった。
 さらに、特徴量に基づいて異常判定等を行う場合に、実際にどのような操作が行われて異常と判定されたかを知るために必要な操作の再現手段がなく、精度よい判定には特徴量の算出手段と、異常判定を行う統計モデルが正確に設定できることが前提条件となり、これらができないと精度よい判定は困難であるという問題があった。
 本発明の目的は、上記の課題を解決し、多数のユーザ端末上で行われるユーザ操作から特定の操作を検出すために、大量の操作ログの収集無しに、検索対象となる特定操作を的確に行い、効率的に検索対象操作の検索を実現することにある。
 本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、操作に関するログである操作ログと、操作ログの特徴を示す情報である特徴量を端末で生成し、特徴量が所定の条件を満たした場合に、操作ログと特徴量を端末から情報分析装置に送信し、情報分析装置において特徴量と操作ログとを記憶して、情報分析装置が検索要求を受信した場合に特徴量に基づいて操作ログに関する検索を行う。
 また、本願において開示される発明の代表的な他の一例を示せば以下の通りである。すなわち、端末と情報分析装置の少なくとも何れかが、情報分析装置に記憶されている特徴量の少なくとも一部の特徴量の分布を示す情報を生成する。
 操作ログの収集を選択的にして大量の操作ログの収集を不要することができる。さらに、検索対象となる特定操作を的確かつ効率的に実現できる。
本発明が対象とするアプリケーションを実行するシステム構成の例である。 本発明によるユーザ操作の記録、検索処理フローの例である。 本発明の第1の実施例におけるユーザ操作の例である。 本発明の第1の実施例における操作ログの例である。 本発明の第1の実施例における特徴量の例である。 本発明の第1の実施例におけるユーザ端末装置での処理フローの概要の一例である。 本発明の第1の実施例におけるユーザ端末装置での処理フローの概要の一例である。 本発明の第1の実施例における操作分析装置での処理フローの概要の一例である。 本発明の第1の実施例における操作分析装置での処理フローの概要の一例である。 本発明の第1の実施例における分析用端末装置での処理フローの概要の例である。 本発明の第1の実施例における特徴量の可視化の例である。 本発明の第1の実施例における操作ログの再現の例である。 本発明の第1の実施例におけるユーザ操作の検索の処理フローの例である。 本発明の第1の実施例における特徴量空間での操作間の関係を示す表示例である。 本発明の第1の実施例における条件判定ルールの例である。 本発明の第1の実施例における条件判定ルールと特徴量の対応関係を示すテーブルの例である。 本発明の第2の実施例における特徴量訓間での操作間の関係の例である。 本発明の第2の実施例におけるユーザ操作の検索の処理フローの例である。 本発明の第3の実施例におけるユーザ操作の検索の処理フローの例である。 本発明の第4の実施例におけるシステム構成の例である。 本発明の第4の実施例におけるユーザ操作の検索の処理フローの例である。 本発明の第5の実施例における特徴量の可視化と調整方法の例である。 本発明の第5の実施例におけるユーザ操作の検索の処理フローの例である。 本発明の第6の実施例におけるユーザ操作の検索の別の処理フローの例である。 本発明の第7の実施例におけるシステム構成の例である。 本発明の第7の実施例におけるユーザ操作の記録、検索処理フローの例である。 本発明の第7の実施例におけるユーザ操作の検索の処理フローの例である。 本発明の第7の実施例におけるユーザ操作の検索の別の処理フローの例である。 本発明の第1の実施例における操作ログと特徴量の保存方法の一例を示すテーブルである。
 以下、実施例について図面を用いて説明する。
 本発明によるユーザ操作の検索方法を図1から図10を使って説明する。図1は、本発明が対象とするシステムのハードウェア構成と、ソフトウェア構成の例を示すシステム構成図である。
 ハードウェアは、ユーザ端末装置101、操作分析装置141、分析用端末装置181と、これらの装置を接続するネットワーク161から構成される。なお、各装置のハードウェアは同一のハードウェアで実現されても、複数のハードウェアに分散されて構成されてもよい。また、例えば、操作分析装置141のメモリに分析用端末装置181の有するプログラムを追加して、操作分析装置141が分析用端末装置181の有する機能を兼ねて実行する等のように、各ソフトウェアが同一のハードウェアで実行されても、複数のハードウェアで実行されて構成されてもよい。
 ユーザ端末装置101、操作分析装置141、分析用端末装置181は、すべてプロセッサ(103、143、183)、メモリ(108、148、188)、入出力部(102、147、187)、ネットワークインタフェース(107、142、182)を備え、相互に接続されている。ユーザ端末装置101、操作分析装置141は、さらにローカルディスク(105、145)を備える。ただし、一部の装置ではこれらの構成要素の一部が欠けてもよい。入出力部(102、147、187)はモニタを備え、後述する図3A、図7A、図7B、図9、図10に示すような画面をモニタに表示し、マウス、キーボード等のインタフェースを用いてこれらの画面に対する操作を行うことができる。また、これらの画像は、入出力部(102、147、187)の先に接続される映像装置(モニタなど)に表示してマウス、キーボード等のインタフェースを用いてこれらの画面に対する操作を行う構成としてもよい。
 ユーザ端末装置101のメモリ108には、アプリケーション実行基盤プログラム111、アプリケーションプログラム112、操作ログ取得・送信プログラム113が格納されている。これらのプログラムは、プロセッサ103に読み込まれて実行される。アプリケーション実行基盤プログラム111は、アプリケーションプログラム112や操作ログ取得・送信プログラム113などのプログラムの実行を制御し、これらのプログラムとローカルディスクや入出力部、ネットワークなど外部との入出力を制御する機能を持つ。
 アプリケーションプログラム112は、ユーザ端末装置のユーザが操作を行う対象であり、例えば文書作成や表計算、ウェブページ閲覧などの機能を提供する。
 操作ログ取得・送信プログラム113は、アプリケーションプログラム上でのユーザ操作を示す情報を取得して操作ログを生成し、その操作ログの特徴量を計算したり、特徴量や操作ログを保存、送信したりするなどの機能を持つ。
 入出力部102には、キーボードやマウス、モニタなどが接続され、プログラムの実行や停止の指示を行ったり、プログラムの実行結果をモニタに表示したりするのに利用される。プロセッサ103は、メモリ108からプログラムを読み込んで処理を実行する。ネットワークインタフェース107は、ユーザ端末装置101と外部の装置との間で、ネットワーク161を介して操作ログなどのデータや装置の動作を制御するコマンドの送受信を行う。ローカルディスク105には、ログ保存領域106があり、操作ログや特徴量などが保存される。
 操作分析装置141のメモリ148には、分析プログラム151が格納されている。このプログラムは、プロセッサ143に読み込まれて実行される。
 分析プログラム151は、ユーザ端末装置101から送信された操作ログやその特徴量を受信して保存する機能、特徴量の分析を行い特徴量の分布などを可視化する機能、ユーザ端末装置101における特徴量の計算方法を指定する機能などを持つ。
 入出力部147、プロセッサ143、ネットワークインタフェース142、ローカルディスク145は、ユーザ端末装置101にある同名の装置である入出力部102、プロセッサ103、ネットワークインタフェース107、ローカルディスク105とそれぞれ同じ機能を持つ。
 分析用端末装置181のメモリ188には、分析インタフェースプログラム191が格納されている。分析インタフェースプログラム191は、プロセッサ183に読み込まれて実行される。
 分析インタフェースプログラム191は、検索対象とする操作を指定する機能、操作分析装置141で分析された特徴量の分析結果を表示する機能、操作分析装置141に送信された操作ログからユーザが行った操作を再現する機能、分析結果や再現結果に対する評価を入力する機能を持つ。
 入出力部187、プロセッサ183、ネットワークインタフェース182は、ユーザ端末装置101にある同名の装置である入出力部102、プロセッサ103、ネットワークインタフェース107、ローカルディスク105とそれぞれ同じ機能を持つ。
 本実施例における、ユーザ操作の検索処理フローを図2により説明する。図2以降の図においては、プログラムがプロセッサ上で実行されている状態をモジュールと呼び、例えば、アプリケーションプログラムがプロセッサ上で実行されている場合、アプリケーションモジュールと呼ぶ。つまり、アプリケーション実行基盤プログラム111がプロセッサ上で実行されている状態がアプリケーション実行基盤モジュール211であり、アプリケーションプログラム112がプロセッサ上で実行されている状態がアプリケーションモジュール212であり、操作ログ取得・送信プログラム113がプロセッサ上で実行されている状態が操作ログ取得・送信モジュール213であり、分析プログラム151がプロセッサ上で実行されている状態が分析モジュール251であり、分析インタフェースプログラム191がプロセッサ上で実行されている状態が分析インタフェースモジュール291である。
 図1で説明したように、ユーザ端末装置101、操作分析装置141、分析用端末装置181がネットワーク161で接続されたシステムで、ユーザ端末装置101上のアプリケーションで操作が行われると、アプリケーションモジュール212上で操作に応じたイベントが発生する。例えば、アプリケーション上のボタンをマウスで押下した場合には、クリックイベントが発生する。
 操作ログ取得・送信モジュール213は、操作ログ記録機能214と、特徴量計算機能215と、を持つ。操作ログ記録機能214には、プリケーション上で発生したイベントを捕らえて操作ログを生成する操作ログ生成の他に、ログ保存領域106に操作ログを保存したり、ログ保存領域106に保存されている操作ログを読み出したり、操作ログを外部に送信したりする機能も持つ。
 特徴量計算機能215は、生成もしくは読み出された操作ログに対して、特徴量を計算する機能を持つ。特徴量には、アプリケーション上でマウスカーソルが動いた距離や、マウスがクリックされた回数など、操作ログから計算できるあらゆるものを含む。
 さらに、特徴量計算機能215には、操作分析装置141や分析用端末装置181から指定された条件に対して計算された特徴量が条件を満たすか否かを判定する条件判定機能216が含まれる。
 条件判定機能216では、例えば条件として「マウスのクリックが累積10回以上」として与えられ、マウスのクリック回数が累積で10回を越えると条件を満たしたと判定し、特徴量計算機能215に対して条件成立を通知する。特徴量計算機能215は、操作ログ記録機能214と同様に、特徴量をログ保存領域106に保存したり、ログ保存領域106に保存されている特徴量を読み出したり、特徴量を外部に送信したりする機能を持つ。さらに、特徴量に該当する操作ログを特定して、操作ログ記録機能214から該当する操作ログを取得し、これを外部に送信する機能も含まれる。
 また、特徴量計算機能215には、これらの動作の履歴を記録する履歴管理機能217も含まれる。
 これらの機能により、ユーザ端末装置101上で行われた操作が、特定の条件を満たした場合に、該当する操作ログをログ保存領域106から読み出して外部に送信したりすることができ、特徴量に基づいた選択的な操作ログの外部への送信が実現できる。
 本実施例では、特徴量の計算や特徴量、操作ログの保存・送信のタイミングについては限定をしないが、例えば、一定量の操作が行われると特徴量の計算と操作ログの保存が行われ特徴量がネットワーク161を介して操作分析装置141に送信され、さらに条件判定機能216で条件を満たすと判定された場合には、該当する操作ログも操作分析装置141に送信される。
 操作分析装置141では、分析モジュール251の機能として、ユーザ端末装置101から送信されてきた特徴量や操作ログを受信してログ保存領域146に保存するログ送受信機能252やログ保存機能253が含まれる。図2では、ユーザ端末装置101は1台のみ記載されているが、複数代のユーザ端末装置101からのログの受信も可能である。
 ログ保存機能253には、ログ保存領域146から特徴量や操作ログを読み出す機能も含まれる。また、ログ送受信機能252には、特徴量や操作ログやそれらから生成されたデータをユーザ端末装置101や分析用端末装置181へ送信する機能も含まれる。
 さらに、分析モジュール251には、特徴量分析機能254が含まれる。特徴量分析機能254は、複数の特徴量の統計処理を行ったり、特徴量の分布をグラフなどの形で可視化したりする機能が含まれる。さらに、指定された操作ログの特徴量と、ログ保存領域146に保存されている操作ログの特徴量との間の類似の度合いを示す情報である類似度や、乖離の度合いを示す情報である乖離度を計算したり、指定された特徴量に該当する操作ログをログ保存領域146から取得したりする機能なども含まれる。特徴量指定機能255は、特徴量の分析結果や外部からの入力によって、ユーザ端末装置101で計算する特徴量を変更したり、条件判定の条件を変更したりする機能を持つ。
 これらの機能により、操作分析装置141では、複数の特徴量と操作ログの状況を確認したり、特定の特徴量や操作ログを抽出したりする機能を提供することができる。分析用端末装置181では、分析インタフェースモジュール291の機能として、操作分析装置141やユーザ端末装置101に保存されている操作ログから抽出したい操作ログを指定する検索操作指定機能292と、操作分析装置141の特徴量分析機能254で分析された結果を表示したり、操作分析装置141で抽出した操作ログを基にユーザ操作を再現したりする機能を実現する結果表示/再現機能293が含まれる。
 さらに、分析結果や再現された操作に対して、抽出したい操作ログか否か、抽出したい操作を指定するのに有効な特徴量であるかないかなど、評価を入力する評価入力機能294が含まれる。
 これらの機能により、分析用端末装置181では、ユーザ端末装置101でのユーザ操作の状況を確認しながら、抽出したい操作を、効率的に指定することができる。
 次にユーザ操作と操作ログ、特徴量について図3A、図3B、図3Cを用いて説明する。図3Aでは、アプリケーション画面301上でユーザが複数のオブジェクトに対して選択やチェック、クリックなどの操作を行った様子を模式的に示している。例えば、プルダウンメニューのCCC304ではCCC1を選択し、ラジオボタンDDD305ではDDD2を選択している。これらの操作によって発生したイベントから、操作ログ記録機能214では、図3Bの操作ログ310の表に示したような操作ログの列を生成する。
 操作ログ310には、例えば、操作を行った場所を示すアプリケーション名やURL(Uniform Resource Identifiers)、時刻、操作対象のオブジェクト名、操作の内容、操作の結果、その他備考として操作者や画面上での座標などが含まれる。
 図3Cに示す操作の特徴量320には、操作ログ310から計算できるあらゆるものが含まれるが、例を挙げれば、操作発生数、操作対象、時間、座標、環境、コンテンツなどの統計量などがある。
 続いて、図4~図6で、各装置の処理フローの詳細を説明する。
 図4A、図4Bに、ユーザ端末装置101での処理フローの詳細を示す。先に説明したように、操作ログ取得・送信モジュール213では、アプリケーションモジュール212上で発生したイベントから操作ログを生成、特徴量を計算するが、その中の、操作ログ生成について図4Aを用いて説明し、特徴量の計算、条件判定について図4Bを用いて説明する。
 図4Aを用いて説明する操作ログの生成は、操作ログ記録機能214で行われ、アプリケーション情報401とイベント情報404から操作ログが生成される。ここで、アプリケーション情報401は図1に示したアプリケーションプログラム112に含まれ、イベント情報404は図1に示したアプリケーション実行基盤プログラム111に格納もしくは生成される。
 アプリケーション情報401には、オブジェクトに関する情報402やアプリコードに関する情報403が含まれる。オブジェクトに関する情報402とは、アプリケーション画面上に表示されているボタンやフォームなどのオブジェクトの名前や場所、大きさなどの情報である。アプリコードに関する情報403とは、ウェブページに含まれるスクリプトコードなどである。
 イベント情報404には、操作イベント405、アプリプロパティ406、実行環境情報407が含まれる。操作イベント405には、クリック操作など操作の内容、操作の結果、操作の場所などの情報が含まれる。アプリプロパティ406には、アプリケーションの動作状況やステート、例えばウェブページのクッキー情報などが含まれる。実行環境情報407には、操作者名や実行されているデバイス情報などが含まれる。
 操作ログの生成は、操作ログ記録機能214に含まれる操作ログ変換機能411が、アプリケーション情報401とイベント情報404を取得し、これらの情報を用いて操作ログ生成ルール410に基づき行う。操作ログ生成ルール410は操作ログ取得・送信プログラム113に含まれる。また、操作ログ生成ルール410には、イベントから操作ログの文字列を生成するルールの他に、操作ログを生成するタイミングや、生成された操作ログの保存方法などが含まれても良い。生成された操作ログは、操作ログ記録機能214に含まれる操作ログ保存・送信機能412によって、ログ保存領域106との間で操作ログの保存・読み出しを行う。
 図4Bを用いて説明する特徴量の計算は、特徴量計算機能215が、ログ保存領域106から操作ログを読み出し、読み出した操作ログを用いて特徴量計算ルール420に基づいて計算を行う。ここで、特徴量計算ルール420は図1にて示した操作ログ取得・送信プログラム113に含まれる。なお、操作ログはログ保存領域106を経由せずに、操作ログ変換機能411などから直接取得しても良い。特徴量計算ルール420には、特徴量の計算方法のほかに、特徴量を計算するタイミングや、計算された特徴量の保存方法などが含まれても良い。続いて、条件判定ルール422に基づいて条件判定機能216で、計算された特徴量が、操作分析装置141や分析用端末装置181から指定された条件を満たすか否かの判定を行う。ここで、条件判定ルール422は図1にて示した操作ログ取得・送信プログラム113に含まれる。また、条件判定ルール422としては、特定の特徴量が一定値より大きいかなどの条件の他に、ログ保存領域106に保存されている他の特徴量との比較などの条件も含まれる。履歴管理機能217は、条件判定結果の他に、操作ログや特徴量の計算結果などの履歴を管理し、履歴をログ保存領域106に保存する。
 図5A、図5Bに操作分析装置141での処理フローの詳細を示す。先に説明したように、分析モジュール251では、ユーザ端末装置101から特徴量と操作ログを受信してそれらをログ保存領域146に保存したり、分析用端末装置181から指定された検索対象の操作の特徴量とログ保存領域146に保存されている特徴量との比較や、特徴量の分布などの分析をしたりする。これらの処理の詳細フローの例を以下に説明する。図5A、図5Bでは、複数の特徴量をまとめて特徴量ベクトル501と呼ぶ。
 まず、図5Aを用いて、ログ送受信機能252、ログ保存機能253、特徴量分析機能254が行う処理について説明する。分析モジュール251では、特徴量ベクトル501と操作ログ502をログ送受信機能252で受信し、これを、ログ保存機能253を介してログ保存領域146に保存する。ログ保存領域146には、例えば図23のテーブル2300に示すように、各操作2301について、操作ログ(2302、2303、2304、2305、2306、2307)と特徴量(2308、2309、2310)とが対応付けられて保存される。特徴量の算出方法については後述する。特徴量分析機能254は、受信した特徴量やログ保存領域146に保存されている特徴量、検索対象として指定された操作の特徴量などから、検索対象の操作を抽出したり、特徴量の分布などの分析をしたりする。特徴量の分析結果514もログ保存機能253を介してログ保存領域146に保存しても良い。
 次に、図5Bを用いて、特徴量指定機能255が行う処理について説明する。特徴量指定機能255では、分析用端末装置181から受信した検索結果評価521とログ保存領域146に保存されている特徴量分析結果514や特徴量から、ユーザ端末装置101での特徴量計算ルール420や条件判定ルール422などの変更・指定を行う特徴量指定522を生成する。例えば、特定の特徴量が検索対象の操作を指定するのに役に立たないとの評価が与えられた場合、該当する特徴量の計算そのものを停止するなどの変更を加えることで、特徴量の計算コストや、保存コストの低減を図ることができる。
 図6に分析用端末装置181での処理フローの詳細を示す。先に説明したように、分析インタフェースモジュール291では、操作分析装置141やユーザ端末装置101に保存されている操作ログから抽出したい操作ログを指定したり、操作分析装置141の特徴量分析機能254で分析された結果をモニタに表示したり、操作分析装置141で抽出した操作ログを基にユーザ操作をモニタに再現したりし、分析結果や再現された操作に対して、抽出したい操作ログか否か、抽出したい操作を指定するのに有効な特徴量であるかないかなど、評価を入力する機能を提供する。
 結果表示/再現機能293では、特徴量ベクトル501、操作ログ502、特徴量分析結果514などから、特徴量の分布の表示や特定操作の再現などを行い、検索操作指定機能292で指定された検索対象の操作の特徴量を特徴量の分布にあわせてモニタに表示し、ユーザ操作の状況と、指定した操作の関係を可視化することで、検索対象とする操作の指定を修正したり、ユーザ操作の中から検索対象となる操作を選択したりする。また、特徴量の分布の表示や、操作の再現に対して、評価を入力し、操作分析装置141に検索結果評価521を送信する機能を評価入力機能294で提供する。
 図7Aは、分析用端末装置181での特徴量の分布の表示の一例を示す図であり、図7Bは操作の再現のイメージの例を示した図である。これらの画面701、750は分析用端末装置181の入出力部187が備えるモニタに表示される。図7Aの結果表示画面701には、表示内容を制御する制御部702と、特徴量の分布を表示するグラフ部703が含まれ、制御702で表示する特徴量の選択を行ったり、該当するログを選択したり、選択した操作の再現を行ったり、選択した操作を検索対象として指定する機能を提供する。
 グラフ部703では、例えば3つの特徴量の分布を3次元グラフで表示する。以下では、この3次元グラフで表現される空間を特徴量空間と呼ぶ。グラフ上で黒丸●721は、ログ保存領域146に保存されている特徴量であり、中抜き丸◎722は、ログ保存領域146に保存されている特徴量の中で、さらに操作ログも保存されているものである。星★723は、検索対象の操作として指定した操作の特徴量空間での分布を示している。図7から分かるように、検索対象の操作は複数指定しても良い。図7の特徴量空間から、例えば操作の分布が、703中の点線で囲まれたいくつかのクラスタ724に分かれることや、検索対象の操作と合致する操作はないが、特徴量空間では近傍に位置する操作のクラスタ724があること、どのクラスタ724にも属さない操作があることなどが読み取れる。図7Bは、操作再現画面750で、結果表示画面701で中抜き丸◎722をマウスなどによって選択して、中抜き丸◎722の特徴量に対応する操作を再現して確認することができる。
 以上の説明から図8に本実施例の全体処理フローの例として、指定した操作を検索して操作を再現し、さらに特徴量空間で他の操作の状況を表示して、必要に応じて検索対象の操作を追加する処理のフローを示す。
 ユーザ端末装置101では、アプリケーションモジュール212上でユーザ操作などによりイベントが発生すると(ステップ803)、操作ログ取得・送信モジュールの操作ログ記録機能がアプリケーションモジュールからイベント情報を取得し(ステップ804)、操作ログ記録機能が操作ログ生成ルールに基づき操作ログを生成しログ保存領域に保存する(ステップ805)。以降では、ステップ803、804、805をまとめてステップ802と呼ぶ。次に、特徴量計算の要否を判定する(ステップ807)。この判定は例えば特徴量計算ルールに基づいて行う。特徴量の計算は、特徴量計算機能が特徴量計算ルールに基づき操作ログから特徴量を計算して保存する(ステップ808)。続いて、条件判定機能が条件判定ルールに基づき操作ログの送信要否を判定し、履歴管理機能がログ保存領域に保存する(ステップ809)。以降では、ステップ807、808、809をまとめてステップ806と呼ぶ。計算された特徴量の送信要否を判定し(ステップ811)、必要に応じて操作ログ保存・送信機能が特徴量を操作分析装置に送信する(ステップ812)。操作ログに比較して特徴量のサイズが十分に小さい場合には、常時特徴量を操作分析装置に送信することで、大量の操作ログを送信せずに、操作分析装置でユーザ操作の全体の状況を把握することが可能になる。続いて、操作ログの送信要否を判定する(ステップ813)。この判定は、ステップ809の判定結果に基づいて行う。
 ただし、通信効率などを考慮して、ある程度の量をまとめて送信するなど送信タイミングを調整するために、ステップ809の判定結果が要であっても、直後に送信しない方法もある。操作ログの送信は、操作ログ保存・送信機能が行う(ステップ814)。以降では、ステップ811、812、813、814をまとめてステップ810と呼ぶ。ユーザ端末装置では、これらの処理フローをアプリケーション上での操作が終了するまで繰り返す。
 操作分析装置141では、ユーザ端末装置101の処理ステップ812、814で送信された特徴量や操作ログを、ログ送受信機能で受信しログ保存領域に保存する(ステップ823)。続いて、特徴量分析機能が分析用端末層で指定された操作の特徴量とログ保存領域に保存されている特徴量を比較する(ステップ824)。比較の方法については、図9、図10で説明をする。ここでは、比較の例として検索対象として指定した操作と、特徴量空間で類似度の高い操作を抽出するための比較操作を例とする。類似操作の有無の判定を行い(ステップ825)、類似操作がある場合には該当操作の操作ログが操作分析装置のログ保存領域にあるか否かを判定し(ステップ826)、操作ログがある場合には、該当する操作ログを分析用端末装置に送信する(ステップ827)。以降では、ステップ823、824、825、826、827をまとめてステップ822と呼ぶ。次に、特徴量ベクトルを分析用端末装置に送信する(ステップ828)。検索処理を継続する場合には、以上の処理を繰り返す。
 分析用端末装置181では、検索操作指定機能で検索対象とする操作を指定して操作分析装置に送信する(ステップ843)。検索対象とする操作の指定方法はさまざまあるが、例えば、特徴量空間の部分空間を指定する方法や、特定の操作の特徴量を計算して指定する方法などが考えられる。続いて操作分析装置から操作ログの受信を待ち(ステップ844)、操作ログを受信したら結果表示/再現機能によって操作ログを再現する(ステップ845)。これによって、検索対象とした操作に類似と判定された操作を実際に再現して確認することができる。
 ステップ844における操作ログの受信待ちは、例えば一定時間内に操作ログを受信しなかった場合に受信待ちを中止するタイムアウトなどの方法が考えられる。以降では、ステップ843、844、845をまとめてステップ842と呼ぶ。続いて、操作分析装置から特徴量ベクトルの受信待ちを行い(ステップ847)、受信したら結果表示/再現機能によって特徴量空間を表示する(ステップ848)。例えば図7に示したように特徴量空間の表示により、操作ログが受信されなかった場合、つまり類似操作が発見されなかった場合にも、特徴量空間で近傍の操作を見つけることができる。以上の処理によって検索対象の操作が見つかった場合には処理を終了し、見つからなかった場合には特徴量空間の情報などから、検索対象の再指定を行うために以上の処理を繰り返す(ステップ849)。
 以上の処理フローにより、ユーザ操作端末から大量の操作ログを収集せずに、検索対象の操作を効率的に抽出することができる。
 図9は、ユーザ操作端末装置101や操作分析装置141で行われる特徴量の条件判定の方法の例である。図9の例は、特徴量1として操作による選択や入力の結果の状態、特徴量2としてマウスの移動距離、特徴量3としてマウスのX方向(左右方向)の移動量を選択した場合に、X、A、B、Cの操作パターン(921,922,923,924)を特徴量空間上にマップした画像であり、ユーザ操作端末装置101や操作分析装置141の入出力部102、147が備え、又は接続するモニタに表示される。ここで、Xを検索対象として指定した操作とし、A、B、Cがログ保存領域に保存されているユーザ操作とする。この場合、特徴量空間でXに類似の操作を選択するとしたらAが選択され、乖離している操作としてはCが選択される。これは、例えば特徴量空間上でXの周りに球面を描き、最初に球面911に接した点を類似の操作とし、最後に球面に接した点を乖離した操作とする方法で判定が実現できる。
 さらに、検索対象として、X2、X3を追加して、特徴量空間において、X、X2、X3の3つに類似の操作を検索した場合、特徴量1については類似と判定される範囲が広がり、一方特徴量2については、一定の値が類似判定の基準となる。これを模式的に特徴量空間上に表現すると、楕円912のような範囲が類似判定に利用される。この場合、類似操作としてはBが選択される。このように、特徴量空間上に操作の特徴量をマップすることにより、検索対象とする操作との類似・乖離した操作の抽出が効率化できる。
 図10Aは、図9で説明した類似・乖離した操作の判定方法を条件判定ルールとして表現した場合の例である。例えば、条件判定ルールの例(類似1)1001では、図9で説明したXと類似した操作としてAが選択されるルールである。つまり、特徴量空間でのユークリッド距離が小さい場合に、検索対象と類似度が高いと判定する。
 また、条件判定ルールの例(類似2)1002では、図9で説明したX、X2、X3を検索対象として指定した場合に、類似した操作としてBが選択されるルールである。つまり、特徴量空間でのマハラノビス距離が小さい場合に、検索対象群との類似度が高いと判定する。
 条件判定ルールの例(乖離)1003では、操作Cが乖離した操作として選択されるルールである。つまり、特徴量空間でのユークリッド距離が大きい場合に、検索対象との乖離度が高いと判定する。
 図10Bは、類似・乖離した操作を数値計算で決定できる例である。表1010は、数値計算によって判定できるルールを例として示している。ここでは、数値計算によって判定できるルールを例として示したが、特徴量や判定方法によっては、数値計算ではなく論理計算などプログラムとしてルールが表現される場合も含まれる。
 別の実施例を、図11、図12を用いて説明する。ここでは実施例1との差分についてのみ示し、実施例1で説明した部分については省略する。
 ユーザ操作の中から所望の操作を検索する最も単純な方法はすべての操作の操作ログを収集して、すべての操作を再現して選択する方法であるが、ユーザ操作が多数になると現実的ではなくなる。そこで、実施例1で示したように、操作の特徴量によって選択的に操作ログを収集し、特徴量空間で検索対象の操作と類似・乖離した操作を抽出して操作の再現を限定的に行うことで、ユーザ操作が多数になった場合にも、効率的にユーザ操作の検索を実現した。
 しかし、検索対象の操作を的確に指定することができないケースもある。例えば、多数のユーザが行っている代表的な操作を検索したい場合、実施例1の方法では、代表的な操作を想定して、試行錯誤を繰り返す必要がある。
 そこで、このような場合には、特徴量空間上でユーザ操作の分布を確認し、多数のユーザ操作が集まっている操作のクラスタを抽出して、そのクラスタに含まれる操作を再現して確認することで、効率的にユーザ操作の検索が実現できる。
 これを実現するには、操作ログが操作分析装置に保存されている操作が特徴量空間において均一に分布するように、操作ログをうまく選択して収集しておく必要がある。例えば、図11において、特徴量空間で黒丸●で表示されている点は、操作ログが操作分析装置に送信されている操作の特徴量である。この特徴量の分布状態において、黒四角■のP1の特徴量1102をもつ操作ログがユーザ端末装置で生成された場合に、当該操作ログについて送信済みの操作との距離を計算すると、操作ログ未送信領域1103に含まれることが分かり、この操作ログについては、操作分析装置に送信要と判定すべきである。ここで、操作ログ未送信領域1103とは、特徴量空間上で送信済みの操作からの距離が一定値より遠い領域を示す。距離の計算方法は、ユークリッド距離、マハラノビス距離など複数の計算方法のいずれを用いてもよい。この領域は、操作ログが生成されたときに、その操作ログと送信済みの操作からの距離を計算して一定値より遠い領域にあることが分かった場合に、操作ログ未送信領域1103にいるということを判定するものである。
 逆に黒四角■のP2の特徴量1104の場合、特徴量空間で近傍に操作ログを送信済みの点があるため、操作ログの送信は不要と判定すべきである。この際に、操作ログ送信済みの領域を予め生成・管理してそれとの対比で要否判断をしてもよいし、操作ログ生成の都度、送信済みの点が近傍にあるかないかを検索して要否判断をしてもよい。
 以上の処理フローを図12に示す。
 ユーザ端末装置においてステップ802で操作ログが生成され、特徴量計算をした後(ステップ1208)、該当する操作ログの操作分析装置への送信要否を判定する。この判定において、該当するユーザ端末装置で行われた操作だけでなく、他のユーザ端末装置で行われた操作とその操作ログの操作分析装置での保存状況を考慮すべきか否かを判定し(ステップ1209)、必要な場合には、操作分析装置が操作ログを保存している操作の特徴量(送信済み特徴量)を操作分析装置に要求して受信する(ステップ1210)。ステップ1209で不要と判定した場合には、履歴管理機能により、操作ログを操作分析装置に送信済みの操作を特定して、その操作の特徴量(送信済み特徴量)をログ保存領域から読み出す(ステップ1211)。以上の処理の後に、ステップ1208で新たに計算した特徴量と送信済み特徴量を比較して、両者に乖離がある場合には、操作ログを送信要と判定して履歴管理機能がログ保存領域に保存する(ステップ1212)。その後、ステップ810にて操作分析装置に操作ログが送信される。
 以上の処理により、検索対象の操作を的確に指定することができないケースにおいても、特徴量空間上で操作ログが送信済みで操作の再現が可能な操作を均一に分布させることができ、選択的な操作ログの送信により操作ログの収集コストを低減しつつ、効率的なユーザ操作の検索が実現できる。
 別の実施例を、図13を用いて説明する。ここでは実施例1、実施例2との差分についてのみ示し、実施例1、実施例2で説明した部分については省略する。
 ユーザ操作の収集コストを低減するために、ユーザ操作の収集を選択的に行う場合、検索対象とする操作に類似・乖離した操作を特徴量空間上で抽出しても、その操作の操作ログが操作分析装置に保存されておらず、操作の再現ができないために検索結果が適切かどうかの確認がとれない可能性がある。
 そこで、操作分析装置で検索対象の操作と類似している操作として抽出された操作の操作ログがない場合に、該当する操作ログをユーザ端末装置に要求して受信することで操作の再現を実現する。
 以上の処理フローを図13に示す。
 操作分析装置は、ステップ825で類似操作ありと判定した場合に、該当操作ログの有無を判定する(ステップ1326)。該当操作のログがないと判定された場合には、該当操作ログをユーザ端末装置に要求し受信する(ステップ1331)。ユーザ端末装置では、操作分析装置からの要求に基づきログ保存領域から該当操作ログを操作分析装置に送信する(ステップ1317)。
 操作分析装置とユーザ端末装置間での該当操作の指定方法はさまざま考えられるが、例えば特徴量で指定する方法がある。
 図13の処理フローでは、ユーザ端末装置では、操作分析装置からの要求以外では、操作ログを操作分析装置に全く送信しない例を示している。このような処理フローによって、ユーザ端末装置から操作分析装置への操作ログの送信量を最小化することができ、操作ログの収集コストが低減できる。
 別の実施例を、図14、図15を用いて説明する。ここでは実施例1、実施例2、実施例3との差分についてのみ示し、実施例1、実施例2、実施例3で説明した部分については省略する。
 特徴量によって検索対象とする操作を指定する方法では、指定が難しい可能性がある。そこで、検索対象とする操作を実際に行い、特徴量を明示的に指定せずにユーザ操作の検索を行うことで検索対象の操作の指定を容易化する。
 図14は、検索対象の操作を、実際に操作を行うことで指定する場合のシステム構成図の例を示した図である。
 図14で、分析用端末装置1481には、分析インタフェースプログラム1491に加えて、ユーザ端末装置101のメモリ108上に格納されているものと同じ、アプリケーション実行基盤プログラム1411、アプリケーションプログラム1412、操作ログ取得・送信プログラム1413がメモリ1488上に格納されている。これにより、分析用端末装置1481でも、ユーザ端末装置101と同様にアプリケーションを実行し、その上で操作をして操作ログを生成し、その操作ログの特徴量を計算することが可能になる。なお、操作ログや特徴量などを保存するためにローカルディスク1485とログ保存領域1486が分析用端末装置1481に含まれる。これらの利用方法は、ユーザ端末装置101と同じである。図14では、アプリケーションプログラム1412などが分析用端末装置1481に配備されている状態を例として示したが、ネットワーク161を介してユーザ端末装置101上のアプリケーションを分析用端末装置1481から利用して操作ログの生成や特徴量の計算をする方法や、ユーザ端末装置101や分析用端末装置1481とは別の装置上にアプリケーションプログラム1412などが配備され、それを、ネットワーク161を介して利用し、操作ログの生成や特徴量の計算を行う方法も含まれる。
 以上の処理フローを図15に示す。図15においては、プログラムがプロセッサ上で実行されている状態をモジュールと呼ぶ。つまり、アプリケーション実行基盤プログラム111がプロセッサ上で実行されている状態がアプリケーション実行基盤モジュール211であり、アプリケーションプログラム112がプロセッサ上で実行されている状態がアプリケーションモジュール212であり、操作ログ取得・送信プログラム113がプロセッサ上で実行されている状態が操作ログ取得・送信モジュール213であり、分析プログラム151がプロセッサ上で実行されている状態が分析モジュール251であり、分析インタフェースプログラム1491がプロセッサ上で実行されている状態が分析インタフェースモジュール291である。さらに、アプリケーション実行基盤プログラム1411、アプリケーションプログラム1412、操作ログ取得・送信プログラム1413がプロセッサ上で実行されることにより、分析用端末装置1481においてもアプリケーション実行基盤モジュール211、アプリケーションモジュール212、操作ログ取得・送信モジュール213と同様のモジュールが機能する。
 分析用端末装置では、アプリケーションモジュール上で検索対象とする操作のイベントが発生し(ステップ1552)、操作ログ取得・送信モジュールの操作ログ記録機能がアプリケーションモジュールからイベント情報を取得し(ステップ1553)、操作ログ記録機能が操作ログ生成ルールに基づき操作ログを生成しログ保存領域に保存する(ステップ1554)。以下では、ステップ1552、1553、1554をまとめてステップ1551と呼ぶ。このようにして指定した検索対象の操作を検索操作指定機能で分析用端末装置から操作分析装置に対して送信する(ステップ1543)。図15では、操作の指定は1回のみしか行っていないが、ステップ1551を繰り返し行って、複数の操作を検索対象の操作として指定することも含まれる。
 以上の処理により、特徴量によって検索対象とする操作の指定が難しい場合にも、検索対象とする操作を実際に行い、特徴量を明示的に指定せずにユーザ操作の検索を行うことで検索対象の操作の指定を容易化することができる。
 別の実施例を、図16、図17を用いて説明する。ここでは実施例1、実施例2、実施例3、実施例4との差分についてのみ示し、実施例1、実施例2、実施例3、実施例4で説明した部分については省略する。
 特徴量空間上で検索対象とする操作の指定を行ったり、ユーザ操作の状況を把握したりする場合に、特徴量によっては利用価値の低いもの、高いものがある。どの特徴量をどのように利用するかを適切にしていできる手段を用意することによって、検索対象の操作の指定を効率化することができる。
 図16は、特徴量の利用価値を判定する方法を模式的に示した図である。結果表示画面1601において、グラフ部1603には、特徴量1のみを選択して、その度数分布が表示されている。度数分布は、ログ保存領域に保存されている複数の特徴量から特徴量1の値のみを抽出して、特徴量1が同じ値を持っているものの数をカウントした分布である。ここでは、特徴量1の度数分布は2つの山を持ち、例えば、実施例4で示した方法によって検索対象として指定した操作の特徴量が星★1604で示される値であった場合、検索対象として指定すべき操作が2つの山のどちらに属するかを指定すれば、操作の検索をより的確、効率的に行うことができる。この例では、特徴量調整1615によって、検索対象とする操作の特徴量1の条件を、星★1604の1点から、左側の山の範囲、つまり矢印1605で示される値、もしくは矢印1606で示される範囲と指定し直している。
 例えば、特徴量2の度数分布1621の場合には、ほぼ均一な分布をしており、対象となる操作を絞り込む特徴量としては利用価値が低い可能性がある。このような場合には、特徴量調整1615によりこの特徴量の計算を止める、条件判定で利用しないなどの方法をとることが考えられる。
 一方、特徴量3の度数分布1622の場合には、特徴量3はほぼ2通りの値しかとらず、両者の分離度が高い。よって、検索対象として指定する操作の特徴量3が2通りのどちらであるかを指定できれば、検索対象の操作の指定を効率化することができる。このような特徴量は利用価値が高い可能性がある。
 このような特徴量の調整を行う処理フローを図17に示す。
 分析用端末装置では、ステップ846にて特徴量空間上での特徴量の分布を表示し、評価入力機能で、特徴量の利用の有無や判定条件を取得してこれを操作分析装置に送信する(ステップ1751)。評価入力機能は、例えば、図16の特徴量調整1615で入力する特徴量の利用価値の有無などが挙げられる。操作分析装置では、分析用端末装置から送信された特徴量の利用有無・判定条件に応じて、操作分析装置の特徴量分析機能で実行する特徴量比較方法を変更したり(ステップ1732)、特徴量指定機能が特徴量計算ルール・条件判定ルールを変更してユーザ端末装置に送信したりする(ステップ1733)。ユーザ端末装置では、特徴量の計算や条件判定に先立って、操作分析装置から受信した特徴量計算ルール・条件判定ルールに従い、特徴量の計算方法や条件判定方法を変更する。
 以上の処理により、特徴量の利用方法を適切に調製することができ、検索対象の操作の指定を効率化することができる。
 別の実施例を、図18を用いて説明する。ここでは実施例1、実施例2、実施例3、実施例4、実施例5との差分についてのみ示し、実施例1、実施例2、実施例3、実施例4、実施例5で説明した部分については省略する。
 検索対象とする操作の指定が困難な場合がある。例えばアプリケーションそのものの使い方が分からないものの、操作に迷っているユーザを抽出したい場合が挙げられる。このような場合、操作の迷いを的確に特徴量空間上で指定できれば該当する操作を検索できるが、的確に該当する特徴量空間を指定することは困難である。そこで、初期値としては仮設により検索対象とする操作の特徴量空間を指定し、その近傍の操作を再現しつつ本来検索対象として指定したい操作を選択していくことで、問題を解決する。
 以上の処理フローを図18に示す。
 分析用端末装置では、ステップ846で操作分析装置から特徴量の分布を受信し、結果表示/再現機能によって特徴量空間上から操作を選択して操作ログを再現する(ステップ1851)。評価入力機能で再現した操作ログを検索対象に該当もしくは非該当として記録し(ステップ1852)、これを必要に応じて繰り返す(ステップ1853)。このようにして検索対象として指定した操作を、検索操作指定機能で分析用端末装置から操作分析装置に対して送信する(ステップ1854)。
 以上の処理により、検索対象とする操作の指定が難しい場合にも、検索対象とする操作をユーザ操作から選択して絞り込むことで、検索対象の操作の指定を容易化することができる。
 別の実施例を、図19~図22を用いて説明する。ここでは実施例1、実施例2、実施例3、実施例4、実施例5、実施例6との差分についてのみ示し、実施例1、実施例2、実施例3、実施例4、実施例5、実施例6で説明した部分については省略する。
 検索対象の操作が、ウェブブラウザ上での操作の場合には、ウェブページにユーザ端末装置上での操作ログ取得や送信を実現するプログラムを挿入することで、ユーザ端末装置に予め操作ログの取得や送信を行うプログラムを配備しなくてもユーザ操作の検索が実現できる。これにより、ユーザ端末装置にはユーザ操作の検索を実現するためのプログラムをインストールする必要がなくなる。
 図19は、ウェブブラウザ上での操作に対してユーザ操作の検索を実現するシステムのハードウェア構成と、ソフトウェア構成の例を示すシステム構成図である。ハードウェアは、ユーザ端末装置1901、操作分析装置1941、分析用端末装置1981に加えて、ウェブサーバ装置1921がネットワーク1961で接続される構成である。なお、各装置のハードウェアは同一のハードウェアで実現されても、複数のハードウェアに分散されて構成されてもよい。
 ウェブサーバ装置1921は、プロセッサ1923、メモリ1928、入出力部1927、ネットワークインタフェース1922、ローカルディスク1925をもつ。ただし、一部の装置ではこれらの構成要素の一部が欠けてもよい。
 ユーザ端末装置1901のメモリ1908には、ウェブブラウザプログラム1911、スクリプト実行プログラム1912が格納されている。これらのプログラムは、プロセッサ103に読み込まれて実行される。
 ウェブブラウザプログラム1911は、ウェブページのリクエストを送信したり、ウェブページを受信して入出力部102を介してウェブページを表示したりする機能を持つ。
 スクリプト実行プログラム1912は、ウェブブラウザプログラム1911と連携して動作し、ウェブページに含まれるスクリプトコードを実行して、ウェブページの表示や動作を制御する機能を持つ。
 操作分析装置1941のメモリ1948には、分析プログラム1951と挿入プログラム1956が格納されている。これらのプログラムは、プロセッサ143に読み込まれて実行される。
 分析プログラム1951は図1の分析プログラム151と同等の機能を持つ。
 挿入プログラム1956は、ウェブサーバ装置1921で生成されたウェブページに対して、操作記録プログラムと特徴量計算プログラムを挿入する機能を持つ。操作記録プログラム挿入コード1957は、ウェブブラウザ上での操作に伴い発生するイベントを記録したり、ウェブブラウザの実行環境に関する情報などを操作ログとして記録したりする機能をもったスクリプトコードをウェブページに挿入する機能を持つ。特徴量計算プログラム挿入コード1958は、操作ログから特徴量を計算したり、特徴量から操作ログの送信要否を条件判定したりする機能などをもったスクリプトコードをウェブページに挿入する機能を持つ。
 分析用端末装置1981のメモリ1988には、分析インタフェースプログラム1991が格納されている。分析インタフェースプログラム1991は、プロセッサ183に読み込まれて実行される。
 分析インタフェースプログラム1991は、図1の分析インタフェースプログラム191と同等の機能を持つ。
 ウェブサーバ装置1921のメモリ1928には、ウェブサーバプログラム1931が格納されている。ウェブサーバプログラム1931は、プロセッサ1923に読み込まれて実行される。
 ウェブサーバプログラム1931は、ウェブアプリコード1932に基づいて、ウェブページを生成し、ネットワーク161を介してウェブページを送信する。
 本実施例における、ユーザ操作の検索処理フローを図20により説明する。図20以降の図においては、プログラムがプロセッサ上で実行されている状態をモジュールと呼ぶ。つまり、ウェブブラウザプログラム1911がプロセッサ上で実行されている状態がウェブブラウザモジュール2011であり、スクリプト実行プログラム1912がプロセッサ上で実行されている状態がスクリプト実行モジュール2012であり、分析プログラム1951がプロセッサ上で実行されている状態が分析モジュール2051であり、挿入プログラム1956がプロセッサ上で実行されている状態が挿入モジュール2056であり、分析インタフェースプログラム1991がプロセッサ上で実行されている状態が分析インタフェースモジュール2091であり、ウェブサーバプログラム1931がプロセッサ上で実行されている状態がウェブサーバモジュール2031である。
 ユーザ端末装置1901のウェブブラウザモジュール2011からウェブページのリクエストがネットワーク161を経由して送信されると、ウェブサーバ装置1921がリクエストを受信して、ウェブサーバモジュール2031がウェブアプリモジュール2032に基づいてウェブページを生成し、レスポンスとしてネットワーク161を介して操作分析装置1941に送信される。操作分析装置1941では、挿入モジュール2056で、ウェブページに操作ログ記録プログラムと特徴量計算プログラムが挿入され、ユーザ端末装置1901に対してネットワーク161を介してレスポンスとして送信する。ユーザ端末装置1901では、操作分析装置1941で挿入された操作ログ記録プログラムがスクリプト実行モジュール2012上で操作ログ記録機能2014として実行され、同様に特徴量計算プログラムが特徴量計算機能2015として実行される。操作ログ記録機能2014と特徴量計算機能2015は、図2の同名の機能と同等の機能を提供する。
 なお、図20では、ウェブページのリクエストも操作分析装置1941を経由しているが、上記の通り経由しなくても良い。また、挿入モジュール2056がウェブサーバモジュール2031に含まれるなど別の構成でも良い。
 図21に本実施例の全体処理フローの例として、指定したウェブブラウザ上の操作を検索して操作を再現し、さらに特徴量空間で他の操作の状況を表示して、必要に応じて検索対象の操作を追加する処理のフローを示す。
 ユーザ端末装置上のウェブブラウザモジュールがウェブページのリクエストをウェブサーバ装置に送信する(ステップ2103)。ウェブサーバ装置は、ウェブサーバモジュールがユーザ端末装置からウェブページのリクエストを受けると、ウェブアプリモジュールでウェブページのレスポンスを生成して操作分析装置に送信する(ステップ2162)。操作分析装置では、ウェブサーバ装置から受信したウェブページのレスポンスに対して、挿入モジュールが操作ログ記録プログラムと特徴量計算プログラムを挿入してユーザ端末装置に送信する(ステップ2122)。ユーザ端末装置では、ウェブブラウザモジュールが操作分析装置からレスポンスを受信し(ステップ2104)、スクリプト実行モジュールでユーザ操作などによるイベントが発生する(ステップ2105)。スクリプト実行モジュール上で動作している操作ログ記録機能がスクリプト実行モジュールからイベント情報を取得し(ステップ2106)、操作ログ生成ルールに基づき操作ログを生成しログ保存領域に保存する(ステップ2107)。
 以上の処理により、ユーザ端末装置のウェブブラウザ上での操作を、ユーザ端末装置に操作ログを記録するプログラムを事前にインストールせずに操作ログを生成することができる。これによって、ユーザ端末装置からより容易に操作ログを収集することができるようになり、操作ログの検索対象にできるユーザ端末装置を増やすことができる。
 さらに、図22に示すように、操作分析装置の特徴量指定機能において、特徴量計算プログラム挿入機能に対して、ウェブページに挿入する特徴量計算ルール・条件判定ルールを変更する(ステップ2231)ことにより、ユーザ端末装置のウェブブラウザ上の操作の特徴量の計算や、操作ログの送信条件などを、ユーザ端末装置と独立して変更することができる。
101、1901 ユーザ端末装置102、147、187、1487、1927 入出力部103、143、183、1483、1923 プロセッサ105、145、185、1485、1925 ローカルディスク106、146、1486 ログ保存領域107、142、182、1482、1922 ネットワークインタフェース108、148、188、1488、1928 メモリ111 アプリケーション実行基盤プログラム112 アプリケーションプログラム113 操作ログ取得・送信プログラム141、1941 操作分析装置151、1951 分析プログラム152、1952 ログ送受信コード153、1953 ログ保存コード154、1954 特徴量分析コード155、1955 特徴量指定コード181、1481、1981 分析用端末装置191、1491、1991 分析インタフェースプログラム192、1492、1992 検索操作指定コード193、1493、1993 結果表示/再現コード194、1494、1994 評価入力コード161 ネットワーク211 アプリケーション実行基盤モジュール212 アプリケーションモジュール213 操作ログ取得・送信モジュール214、2014 操作ログ記録機能215、2015 特徴量計算機能216、2016 条件判定機能217、2017 履歴管理機能251、2051 分析モジュール252、2052 ログ送受信機能253、2053 ログ保存機能254、2054 特徴量分析機能255、2055 特徴量指定機能291、1491、2091 分析インタフェースモジュール292、1492、2092 検索操作指定機能293、1493、2093 結果表示/再現機能294、1494、2094 評価入力機能301 アプリケーション画面701、1601 結果表示画面750 操作再現画面1911 ウェブブラウザプログラム1912 スクリプト実行プログラム1921 ウェブサーバ装置1931 ウェブサーバプログラム1932 ウェブアプリコード1956 挿入プログラム1957 操作記録プログラム挿入コード1958 特徴量計算プログラム挿入コード2011 ウェブブラウザモジュール2012 スクリプト実行モジュール2031 ウェブサーバモジュール2032 ウェブアプリモジュール2056 挿入モジュール2057 操作ログ記録プログラム挿入機能2058 特徴量計算プログラム挿入機能

Claims (15)

  1.  互いに接続可能な、ユーザ端末と、情報分析装置と、分析指示端末と、を有し、
     前記ユーザ端末は、
     前記ユーザ端末でユーザが行った操作に関するログである操作ログを生成し、
     前記操作ログの特徴を示す情報である特徴量を生成し、
     前記特徴量が所定の条件を満たした場合に、前記操作ログと、前記特徴量と、を前記情報分析装置に送信し、
     前記情報分析装置は、
     前記ユーザ端末から受信した、前記特徴量と、前記操作ログと、を対応付けて記憶し、
     前記分析指示端末から前記操作ログに関する検索要求を受信した場合に、前記特徴量に基づいて前記操作ログを検索する、ことを特徴とする情報処理システム。
  2.  請求項1に記載の情報処理システムであって、
     前記ユーザ端末は、
     前記情報分析装置または前記分析指示端末から指定された特徴量である基準特徴量と、前記操作ログに基づいて生成された特徴量と、の間の類似度と乖離度の少なくとも何れか一方に基づいて、前記操作ログと、前記特徴量と、を前記情報分析装置に送信するか否かの判定を行う、ことを特徴とする情報処理システム。
  3.  請求項2に記載の情報処理システムであって、
     前記ユーザ端末は、
     前記基準特徴量として、前記情報分析装置から指定される特徴量、又は前記分析指示端末から指定される特徴量、を用いる、ことを特徴とする情報処理システム。
  4.  請求項1に記載の情報処理システムであって、
     前記分析指示端末は、
     前記検索要求において検索対象とする操作のログである対象操作ログを前記検索対象の操作の実行結果に基づいて生成し、前記対象操作ログの特徴量である対象特徴量を生成し、
     前記ユーザ端末は、
     前記対象特徴量に基づいて前記所定の条件を決定する、ことを特徴とする情報処理システム。
  5.  請求項1に記載の情報処理システムであって、
     前記分析指示端末は、
     前記検索要求において検索対象とする操作のログである対象操作ログを前記検索対象の操作の実行結果に基づいて生成し、前記対象操作ログの特徴量である対象特徴量を生成し、
     前記情報分析装置は、
     前記対象特徴量に基づいて前記検索を行う、ことを特徴とする情報処理システム。
  6.  請求項1に記載の情報処理システムであって、
     前記ユーザ端末は、前記情報分析装置に記憶された特徴量の少なくとも一部を取得し、前記取得した特徴量の分布を示す情報を生成する、ことを特徴とする情報処理システム。
  7.  請求項6に記載の情報処理システムであって、
     前記ユーザ端末は、前記特徴量の分布を示す情報に基づいて前記所定の条件を決定する、ことを特徴とする情報処理システム。
  8.  請求項1に記載の情報処理システムであって、
     前記情報分析装置は、前記記憶された特徴量の少なくとも一部の特徴量の分布を示す情報を生成する、ことを特徴とする情報処理システム。
  9.  ユーザが行った操作に関するログである操作ログを生成するログ生成部と、
     前記操作ログの特徴を示す情報である特徴量を生成する特徴量生成部と、
     前記操作ログの検索処理を行う装置である情報分析装置に対するデータ送信の制御を行う送信制御部と、を備え、
     前記送信制御部は、
     前記特徴量が所定の条件を満たした場合に、前記操作ログと、前記特徴量と、を前記情報分析装置に送信する、
     ことを特徴とする端末装置。
  10.  請求項9に記載の端末装置であって、
     前記送信制御部は、
     前記情報分析装置から指定された特徴量である基準特徴量と、前記操作ログに基づいて生成された特徴量と、の間の類似度と乖離度の少なくとも何れか一方に基づいて、前記操作ログと、前記特徴量と、を前記情報分析装置に送信するか否かの判定を行う、ことを特徴とする端末装置。
  11.  請求項9に記載の端末装置であって、
     前記情報分析装置に記憶されている特徴量の少なくとも一部を取得し、前記取得した特徴量の分布を示す情報を生成する分布情報生成部、を更に備えることを特徴とする端末装置。
  12.  請求項11に記載の端末装置であって、
     前記送信制御部は、
     前記特徴量の分布を示す情報に基づいて前記所定の条件を決定する、ことを特徴とする端末装置。
  13.  ユーザが行った操作に関するログである操作ログと、前記操作ログの特徴を示す情報である特徴量と、を生成するユーザ端末から、前記特徴量と、前記操作ログと、を受信する受信部と、
     前記ユーザ端末から受信した、前記特徴量と、前記操作ログと、を対応付けて記憶する記憶部と、
     外部装置から前記操作ログに関する検索要求を受信した場合に、前記特徴量に基づいて前記操作ログを検索する検索部と、を備え、
     前記受信部は、
     前記特徴量が所定の条件を満たした場合に、前記操作ログと、前記特徴量と、を前記ユーザ端末から受信する、
     ことを特徴とする情報分析装置。
  14.  請求項13に記載の情報分析装置であって、
     前記検索要求において検索対象とする操作のログである対象操作ログを前記検索対象の操作の実行結果に基づいて生成し、前記対象操作ログの特徴量である対象特徴量を生成し、前記対象特徴量に基づいて前記所定の条件を前記ユーザ端末に指定する、特徴量指定部を更に備える、ことを特徴とする情報分析装置。
  15.  請求項13に記載の情報分析装置であって、
     前記情報分析装置に記憶されている特徴量の少なくとも一部の特徴量の分布を示す情報を生成する分布情報生成部、を更に備えることを特徴とする情報分析装置。
PCT/JP2012/000100 2012-01-11 2012-01-11 データ処理方法、データ処理システム、及びデータ処理装置 WO2013105128A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2012/000100 WO2013105128A1 (ja) 2012-01-11 2012-01-11 データ処理方法、データ処理システム、及びデータ処理装置
JP2013553078A JP5677592B2 (ja) 2012-01-11 2012-01-11 データ処理方法、データ処理システム、及びデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/000100 WO2013105128A1 (ja) 2012-01-11 2012-01-11 データ処理方法、データ処理システム、及びデータ処理装置

Publications (1)

Publication Number Publication Date
WO2013105128A1 true WO2013105128A1 (ja) 2013-07-18

Family

ID=48781111

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/000100 WO2013105128A1 (ja) 2012-01-11 2012-01-11 データ処理方法、データ処理システム、及びデータ処理装置

Country Status (2)

Country Link
JP (1) JP5677592B2 (ja)
WO (1) WO2013105128A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015162096A (ja) * 2014-02-27 2015-09-07 三菱電機ビルテクノサービス株式会社 ツール分析支援装置及びプログラム
JP2017511525A (ja) * 2014-02-18 2017-04-20 イーベイ インク.Ebay Inc. 通信セッションの状態の保存
WO2019049243A1 (ja) * 2017-09-06 2019-03-14 日本電気株式会社 端末装置、端末装置による動作情報の報告制御方法、及び、端末装置による動作情報の報告制御プログラムが格納された記録媒体
US10606905B2 (en) 2013-12-20 2020-03-31 Ebay Inc. Systems and methods for saving and presenting a state of a communication session
WO2020066783A1 (ja) * 2018-09-26 2020-04-02 株式会社ラック 端末装置、ファイル分析装置、ファイル分析システム、ファイル分析方法およびプログラム
US10748508B2 (en) 2012-02-28 2020-08-18 Ebay Inc. Location based display of pixel history
WO2023276154A1 (ja) * 2021-07-02 2023-01-05 日本電気株式会社 ログ生成装置、異常検出システム、ログ生成方法及び非一時的なコンピュータ可読媒体

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250833A (ja) * 1999-02-26 2000-09-14 Hitachi Information Systems Ltd 複数サーバ運用管理における稼働情報取得方法およびそのプログラムを記録した記録媒体
JP2010039878A (ja) * 2008-08-07 2010-02-18 Hitachi Ltd ログ管理システムおよびログ表示システム
JP2010146434A (ja) * 2008-12-22 2010-07-01 Canon It Solutions Inc ログ管理システム、ログ管理装置、携帯端末、ログ管理方法およびプログラム
JP2010211257A (ja) * 2009-03-06 2010-09-24 Sky Co Ltd 操作監視システム及び操作監視プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250833A (ja) * 1999-02-26 2000-09-14 Hitachi Information Systems Ltd 複数サーバ運用管理における稼働情報取得方法およびそのプログラムを記録した記録媒体
JP2010039878A (ja) * 2008-08-07 2010-02-18 Hitachi Ltd ログ管理システムおよびログ表示システム
JP2010146434A (ja) * 2008-12-22 2010-07-01 Canon It Solutions Inc ログ管理システム、ログ管理装置、携帯端末、ログ管理方法およびプログラム
JP2010211257A (ja) * 2009-03-06 2010-09-24 Sky Co Ltd 操作監視システム及び操作監視プログラム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11030978B2 (en) 2012-02-28 2021-06-08 Ebay Inc. Location-based display of pixel history
US11610563B2 (en) 2012-02-28 2023-03-21 Ebay Inc. Location-based display of pixel history
US10748508B2 (en) 2012-02-28 2020-08-18 Ebay Inc. Location based display of pixel history
US10606905B2 (en) 2013-12-20 2020-03-31 Ebay Inc. Systems and methods for saving and presenting a state of a communication session
US11455348B2 (en) 2013-12-20 2022-09-27 Ebay Inc. Systems and methods for saving and presenting a state of a communication session
JP2017511525A (ja) * 2014-02-18 2017-04-20 イーベイ インク.Ebay Inc. 通信セッションの状態の保存
US9912756B2 (en) 2014-02-18 2018-03-06 Ebay Inc. Systems and methods for automatically saving a state of a communication session
US10601929B2 (en) 2014-02-18 2020-03-24 Ebay Inc. Systems and methods for presenting a state of a communication session
US10771567B2 (en) 2014-02-18 2020-09-08 Ebay Inc. Systems and methods for automatically saving a state of a communication session
JP2015162096A (ja) * 2014-02-27 2015-09-07 三菱電機ビルテクノサービス株式会社 ツール分析支援装置及びプログラム
WO2019049243A1 (ja) * 2017-09-06 2019-03-14 日本電気株式会社 端末装置、端末装置による動作情報の報告制御方法、及び、端末装置による動作情報の報告制御プログラムが格納された記録媒体
US11514163B2 (en) 2017-09-06 2022-11-29 Nec Corporation Terminal device, method for control of report of operation information performed by terminal device, and recording medium storing therein program for control of report of operation information performed by terminal device
JP2020052669A (ja) * 2018-09-26 2020-04-02 株式会社ラック 端末装置、ファイル分析装置、ファイル分析システム、ファイル分析方法およびプログラム
WO2020066783A1 (ja) * 2018-09-26 2020-04-02 株式会社ラック 端末装置、ファイル分析装置、ファイル分析システム、ファイル分析方法およびプログラム
WO2023276154A1 (ja) * 2021-07-02 2023-01-05 日本電気株式会社 ログ生成装置、異常検出システム、ログ生成方法及び非一時的なコンピュータ可読媒体

Also Published As

Publication number Publication date
JP5677592B2 (ja) 2015-02-25
JPWO2013105128A1 (ja) 2015-05-11

Similar Documents

Publication Publication Date Title
JP5677592B2 (ja) データ処理方法、データ処理システム、及びデータ処理装置
US11947556B1 (en) Computerized monitoring of a metric through execution of a search query, determining a root cause of the behavior, and providing a notification thereof
US11620300B2 (en) Real-time measurement and system monitoring based on generated dependency graph models of system components
US11430196B2 (en) Precise manipulation of virtual object position in an extended reality environment
US11232125B1 (en) Conversion of cloud computing platform data for ingestion by data intake and query system
US20200026634A1 (en) Timeline displays of event data with start and end times
US20210027458A1 (en) Geofence-based object identification in an extended reality environment
US11410403B1 (en) Precise scaling of virtual objects in an extended reality environment
US10984013B1 (en) Tokenized event collector
JP5468837B2 (ja) 異常検出方法、装置、及びプログラム
US11829381B2 (en) Data source metric visualizations
US11843528B2 (en) Lower-tier application deployment for higher-tier system
US11921693B1 (en) HTTP events with custom fields
US11276240B1 (en) Precise plane detection and placement of virtual objects in an augmented reality environment
US8930447B2 (en) Method, apparatus, and program for usability analysis of web applications
US20100058118A1 (en) Storage medium recording information reacquisition procedure generation program and information reacquisition procedure generation apparatus
US11824729B2 (en) Generating a three-dimensional cityscape including a cluster of nodes
WO2020106501A1 (en) Veto-based model for measuring product health
WO2021072742A1 (en) Assessing an impact of an upgrade to computer software
US11676345B1 (en) Automated adaptive workflows in an extended reality environment
US10848371B2 (en) User interface for an application performance management system
US11048760B1 (en) Techniques for placing content in and applying layers in an extended reality environment
US7653742B1 (en) Defining and detecting network application business activities
US11482002B1 (en) Codeless anchor detection for detectable features in an environment
US20150326677A1 (en) Screen information collecting computer, screen information collecting method, and computer-readable storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12865439

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013553078

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12865439

Country of ref document: EP

Kind code of ref document: A1