Assistant system, assistant method, assistant program

The assistant system addresses the challenge of biased user preference analysis by using an updated preference model based on user evaluations to select and provide personalized content, resulting in more accurate preference analysis and enhanced user satisfaction.

JP7665669B2Active Publication Date: 2025-04-21WOVEN BY TOYOTA INC
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2023050420
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-03-27
Publication Date
2025-04-21
Estimated Expiration
2043-03-27

AI Technical Summary

Technical Problem

Existing technologies for analyzing user preferences for services provided using content are limited by biased evaluations due to user operational tendencies, and fail to accurately link content characteristics with user preferences.

Method used

An assistant system that includes storage devices for content data and a preference model, with processors configured to select notification content, obtain user evaluations, update the preference model, and extract highly matched content data to provide personalized services.

Benefits of technology

This approach allows for accurate analysis of user preferences by minimizing the influence of user operational biases and effectively linking content characteristics with user preferences, thereby enhancing user satisfaction with personalized services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007665669000001
    Figure 0007665669000001
  • Figure 0007665669000002
    Figure 0007665669000002
  • Figure 0007665669000003
    Figure 0007665669000003
Patent Text Reader

Abstract

To provide an assistant system that can analyze more accurately a user's taste regarding the assistant system providing services using contents in response to a request of a user.SOLUTION: An assistant system according to the present disclosure comprises: one of more storage devices that store a plurality of pieces of content data and a taste model representing a taste of a user about a specific service: and one or more processors in which each of the plurality of pieces of content data is associated with taste information on the specific service. The one or more processors are configured to execute processing including: selecting notice content data from the plurality of pieces of content data; acquiring an evaluation of the user relative to the notice content data; and updating a taste model on the basis of the evaluation of the user relative to the notice content data and the taste information associated with the notice content data.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a technology relating to an assistant function that provides a specific service to a user in response to a request from the user. [Background technology]

[0002] In recent years, techniques have been devised for analyzing user preferences and providing functions according to the user preferences.

[0003] For example, Patent Document 1 discloses a content recommendation system including a memory unit that accumulates and stores preference discrimination information that associates information related to content evaluations with user identification information, a memory unit that stores content feature information that associates data representing content features with the content identification information, a processing unit that creates preference information for each user based on the preference discrimination information and the content feature information, and a processing unit that transmits a list of recommended contents extracted by evaluating the similarity of features with the preference information based on the content feature information.

[0004] Other documents that show the technical level of this technical field include the following Patent Documents 2 and 3. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2011-253462 A [Patent Document 2] JP 2010-237916 A [Patent Document 3] JP 2015-201719 A [Patent Document 4] JP 2019-215679 A Summary of the Invention [Problem to be solved by the invention]

[0006] The inventors of the present disclosure are considering an assistant function that provides a service using content. In order to improve user satisfaction with such an assistant function, it is required to more accurately analyze the user's preferences for the service.

[0007] Patent Document 1 discloses obtaining an evaluation of content selected by a user's input operation. However, the content selected in this way is influenced by the tendency of the user's input operation. Therefore, by continuing to obtain evaluations of content selected in a biased manner, there is a risk that user preferences for a wide range of content cannot be analyzed. Furthermore, according to the technology disclosed in Patent Document 1, user preferences for content features are managed. However, when considering the provision of a service using content, it is assumed that the features of the content are not related to the user's preferences for the service to be provided.

[0008] One objective of the present disclosure has been made in consideration of the above-mentioned problems, and aims to provide technology that can more accurately analyze user preferences with regard to an assistant function that provides services using content in response to user requests. [Means for solving the problem]

[0009] A first aspect of the present disclosure relates to an assistant system that provides a specific service in response to a user request.

[0010] The assistant system according to a first aspect includes one or more storage devices and one or more processors. The one or more storage devices store a plurality of content data used for a specific service and a preference model representing a user's preference regarding the specific service. Each of the plurality of content data is associated with preference information representing a preference regarding the specific service. The one or more processors are configured to execute a first process including selecting notification content data from the plurality of content data, acquiring a user's evaluation of the notification content data, and updating the preference model based on the user's evaluation of the notification content data and the preference information associated with the notification content data, and a second process including extracting one or more extracted content data that is highly consistent with the user's preference from the plurality of content data based on the preference model, and providing the user with a specific service using the one or more extracted content data.

[0011] A second aspect of the present disclosure relates to an assistant method for providing a specific service in response to a user request by a process executed by a computer, wherein the computer includes one or more storage devices for storing a plurality of content data used for the specific service and a preference model representing a user's preference for the specific service, and each of the plurality of content data is associated with preference information representing the preference for the specific service.

[0012] An assistant method relating to a second aspect includes executing, by a computer, a first process including selecting notification content data from a plurality of content data in response to a user request, obtaining the user's evaluation of the notification content data, and updating a preference model based on the user's evaluation of the notification content data and preference information linked to the notification content data, and a second process including extracting one or more extracted content data from the plurality of content data that have a high degree of match with the user's preferences based on the preference model, and providing a specific service to the user using the one or more extracted content data.

[0013] A third aspect of the present disclosure relates to an assistant program for causing a computer to execute a process for providing a specific service in response to a user request, wherein the computer includes one or more storage devices for storing a plurality of content data used in the specific service and a preference model representing a user's preference regarding the specific service, and each of the plurality of content data is associated with preference information representing the preference regarding the specific service.

[0014] The assistant program relating to the third aspect is configured to cause a computer to execute a first process including selecting notification content data from a plurality of content data in response to a user request, obtaining the user's evaluation of the notification content data, and updating a preference model based on the user's evaluation of the notification content data and preference information linked to the notification content data, and a second process including extracting one or more extracted content data from the plurality of content data that have a high degree of match with the user's preferences based on the preference model, and providing a specific service to the user using the one or more extracted content data. Effect of the Invention

[0015] According to the present disclosure, a preference model is learned based on a user's evaluation of notification content data and preference information linked to the notification content data. Here, the notification content data is content data selected from a plurality of content data. This makes it possible to obtain the user's evaluation of various content data without being influenced by the user's operation tendency. As a result, the user's preferences can be accurately analyzed.

[0016] In addition, the preference information associated with the content data is provided to represent a preference for a specific service, and thus, by acquiring a user's evaluation of the notification content data, the user's preference for a specific service can be learned. [Brief description of the drawings]

[0017] [Figure 1] A diagram showing an example of the configuration of an assistant system according to this embodiment. [Diagram 2] FIG. 4 is a diagram showing an example of content data. [Diagram 3] FIG. 11 is a diagram showing an example of preference information associated with content data. [Figure 4] FIG. 11 is a diagram illustrating an example of a configuration of a first process. [Diagram 5] FIG. 11 is a diagram illustrating an example of an operation of a user terminal according to a first process. [Figure 6] FIG. 11 is a diagram illustrating an example of a process executed by a processing unit in a first process. [Figure 7] FIG. 11 is a diagram illustrating an example of a process executed by a processing unit in a process of selecting notification content data. [Figure 8] FIG. 11 is a diagram illustrating an example of a configuration of a second process. [Figure 9] FIG. 11 is a diagram illustrating an example of an operation of a user terminal according to a second process. [Figure 10] FIG. 11 is a diagram illustrating an example of a process executed by a processing unit in a second process. [Figure 11] FIG. 11 is a diagram showing an example of a process executed by a processing unit in a process of extracting extracted content data. [Figure 12] FIG. 11 is a diagram illustrating an example of a configuration of a third process. [Figure 13] FIG. 11 is a diagram illustrating an example of the operation of a user terminal according to a third process. [Figure 14] FIG. 11 is a diagram illustrating an example of a process executed by a processing unit in a third process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0018] Hereinafter, an embodiment will be described with reference to the drawings.

[0019] 1. Assistant System The assistant system according to this embodiment provides a service (hereinafter simply referred to as a "scheduling service") that proposes to a user a schedule including one or more destinations in response to a user request.

[0020] 1 is a diagram showing an example of the configuration of an assistant system 10 according to the present embodiment. The functions of the assistant system 10 are realized by processing executed by a processing unit 100. The assistant system 10 is configured to be usable by a user terminal 200 operated by a user 1.

[0021] For example, the processing unit 100 is realized by a server connected to the Internet, and the user terminal 200 uses the assistant system 10 by communicating with the server via the Internet. Alternatively, the processing unit 100 may be realized as a part of the user terminal 200. The user terminal 200 is a device equipped with an HMI function for the user 1, such as a smartphone, a tablet computer, or a personal computer. Typically, the user terminal 200 is configured to be able to use the assistant system 10 on a predetermined application. However, the user terminal 200 may be a dedicated terminal for using the assistant system 10.

[0022] User 1 operates user terminal 200 to send a request to assistant system 10. Processing unit 100 receives the request from user terminal 200 and executes processing according to the request. Then, processing unit 100 transmits the processing result to user terminal 200, and user terminal 200 notifies user 1 of the processing result. For example, user terminal 200 has a display and displays the processing result on the display. In this way, user 1 uses the functions of assistant system 10.

[0023] The assistant system 10 includes a content database D100 stored in a predetermined storage device. The processing unit 100 is configured to be able to access the content database D100. For example, the content database D100 is stored in a storage device of a database server, and the processing unit 100 accesses the database server via the Internet.

[0024] The content database D100 manages a plurality of content data D110. In this embodiment, each of the plurality of content data D110 is data on a specific spot that is a candidate for a destination. The specific spot may include various types of spots such as tourist spots, scenic spots, restaurants, shops, etc.

[0025] 2A is a block diagram showing an example of content data D110. The content data D110 includes location information D111, attribute information D112, and commentary information D113.

[0026] The location information D111 is information indicating the location of a specific spot on a map. For example, the location information D111 specifies the location of a specific spot on a map by latitude and longitude. The attribute information D112 is information indicating the attribute of a specific spot. FIG. 2B shows an example of the attribute information D112 of each content data D110. In FIG. 2B, the "name", "category", "area", "cost", and "required time" of each content data D110 are shown as the attribute information D112. The attributes managed by the attribute information D112 may be suitably determined according to the environment to which the present embodiment is applied. The commentary information D113 is information explaining a specific spot. FIG. 2C shows an example of the commentary information D113. In FIG. 2C, image data D10 showing a specific spot and article data D20 about the specific spot are shown as the commentary information D113. The image data D10 and the article data D20 may be managed in a suitable data format.

[0027] In this embodiment, the content database D100 is further configured to manage each of the multiple content data D110 in association with preference information that indicates preferences regarding the scheduling service. The preference information can be configured, for example, with multiple labels that indicate preferences regarding the scheduling service.

[0028] 3A and 3B are conceptual diagrams showing an example of linking each of the multiple content data D110 with the preference information D120. FIG. 3A shows an example of managing the linking between each of the multiple content data D110 and the preference information D120 in a table. In this example, a link between each of the multiple content data D110 and each of the multiple content data D110 can be given for each predetermined label. FIG. 3B shows an example of managing the linking of the preference information D120 for each content data D110. In this example, a label can be given for each content data D110. In this case, the label linked to each content data D110 may be unique.

[0029] Referring again to Fig. 1, the processing unit 100 according to this embodiment includes one or more processors 110 (hereinafter simply referred to as "processors 110"), one or more storage devices 120 (hereinafter simply referred to as "storage devices 120"), and a communication interface 130.

[0030] The processor 110 executes various processes. The processor 110 can be configured, for example, as a central processing unit (CPU) including an arithmetic unit, a register, and the like. The storage device 120 is connected to the processor 110 and stores various information required for the processor 110 to execute the processes. The storage device 120 can be configured, for example, as a recording medium such as a read only memory (ROM), a random access memory (RAM), a hard disk drive (HDD), or a solid state drive (SSD). The communication interface 130 is provided to connect to the processor 110 and the storage device 120 and to communicate with devices outside the processing unit 100 to transmit and receive information. The communication interface 130 is, for example, a device that connects to the Internet and communicates. The processing unit 100 communicates with the user terminal 200 and accesses the content database D100 via the communication interface 130.

[0031] The storage device 120 stores a computer program 121 and a user database 122 .

[0032] The computer program 121 is stored in a computer-readable recording medium. The computer program 121 is composed of a plurality of instructions for causing the processor 110 to execute processes. The processor 110 operates in accordance with the plurality of instructions, thereby realizing the execution of various processes by the processor 110.

[0033] The user database 122 manages information about each user who uses the assistant system 10 for each user. For example, the user database 122 is configured to manage information about each user in association with identification information given to each user. In this case, the processor 110 can acquire information about the target user 1 by referring to the user database 122 using the identification information of the target user 1.

[0034] In this embodiment, the information of each user managed by the user database 122 includes a preference model 123 that represents each user's preference regarding at least a scheduling service. The preference model 123 is configured to be characterized by preference information D120 linked to a plurality of content data D110.

[0035] For example, when the preference information D120 is composed of a plurality of labels representing preferences as shown in Fig. 3, the preference model 123 can be configured to represent the degree of preference for each label. In this case, the degree of preference for each label is quantified, for example, in the range of -100 to +100, with the degree of "dislike" being a negative value and the degree of "like" being a positive value. Alternatively, when each label is further represented by a feature vector in a predetermined space, the preference model can be configured to represent a distribution of the degree of preference in which the degree of preference corresponds to each position in the space.

[0036] 2. Processing In the assistant system 10 according to the present embodiment, several functions available to the user 1 are realized by processing executed by the processing unit 100. Hereinafter, the processing executed by the processing unit 100 will be described for each function realized by the assistant system 10.

[0037] 1-1. First process One of the processes executed by the processing unit 100 is a process (hereinafter referred to as a "first process") that realizes a function of learning preferences of the user 1 regarding services (scheduling services) provided by the assistant system 10. In the first process, the processing unit 100 learns the preferences of the user 1 by updating a preference model of the user 1.

[0038] 4 is a diagram showing an example of the configuration of the first process. The first process is composed of a content data selection processing unit P100, a user evaluation acquisition processing unit P110, and a preference model update processing unit P120. These are realized by a processor 110 that operates according to some instructions of a computer program 121, for example.

[0039] The content data selection processing unit P100 accesses the content database D100 and selects content data (hereinafter referred to as "notification content data") to be notified to the user 1 from a plurality of content data D110. The selected notification content data is transmitted to the user evaluation acquisition processing unit P110 and the preference model update processing unit P120 together with the associated preference information D120.

[0040] The user evaluation acquisition processing unit P110 notifies the user 1 of the notification content data selected by the content data selection processing unit P100, and acquires the user 1's evaluation of the notification content data. For example, the user evaluation acquisition processing unit P110 transmits the notification content data to the user terminal 200, and causes the user terminal 200 to display information of the notification content data. The information displayed in this case is, for example, information that integrates the position information D111, attribute information D112, and commentary information D113 of the notification content data.

[0041] Furthermore, the user 1's evaluation of the notification content data is, for example, an evaluation of whether the notification content data is positive or negative. However, the user 1's evaluation may include other patterns. For example, the user 1's evaluation may include "neither positive nor negative," "save as favorite," "check later," etc.

[0042] The user 1 inputs an evaluation of the notification content data by operating the user terminal 200. The user evaluation acquisition processing unit P110 communicates with the user terminal 200 to receive the input evaluation of the user 1.

[0043] Fig. 5 is a conceptual diagram showing an example of the operation of the user terminal 200 by the user evaluation acquisition processing unit P110. Fig. 5 shows an example in which the user terminal 200 displays information 201 of the notification content data on a display, and an example in which the user terminal 200 receives an evaluation of the notification content data as to whether it is positive (GOOD) or negative (BAD). The user 1 can understand the contents of the notified notification content data by checking the display.

[0044] The format for accepting the evaluation of the user 1 may be suitably determined according to the environment to which the present embodiment is applied. However, it is desirable that the format for accepting the evaluation of the user 1 is a simple and easy format. For example, a format may be exemplified in which a flick input is accepted, and a left flick input corresponds to a positive evaluation, a right flick input corresponds to a negative evaluation, and an up flick input corresponds to other evaluations (for example, "save as favorite"). Another example may be a format in which a plurality of buttons, each corresponding to each evaluation, are displayed on the display, and the pressing of the button is accepted. By applying such a simple and easy format, the user 1 can input an evaluation of the notification content data without stress, and the learning of the preference model 123 can be advanced.

[0045] Referring again to Fig. 4, the preference model update processing unit P120 updates the preference model 123 of the user 1 based on the evaluation of the user 1 acquired by the user evaluation acquisition processing unit P110 and the preference information D120 linked to the notification content data.

[0046] For example, assume that preference information D120 is associated with each of a plurality of content data D110 as shown in (A) of Fig. 3, and that content data #2 is the notification content data. Also assume that user 1 has input a positive evaluation for the notification content data. In this case, the preference model update processing unit P120 determines that user 1 has given a positive evaluation for the labels "natural" and "photogenic" associated with content data #2, and updates the preference model 123 of user 1.

[0047] More specifically, for example, when the preference model 123 is configured to represent the degree of preference for each label, the preference model update processing unit P120 increases the degree of "like" of the user 1 for the labels "natural" and "photogenic". Also, for example, when the preference model 123 is configured to represent the distribution of the degree of preference, the preference model update processing unit P120 increases the degree of "like" at the positions of the feature vectors of "natural" and "photogenic". Alternatively, the update of the preference model may be configured to be generated by a machine learning model that inputs the feature vectors of each label.

[0048] The first process is configured as described above. Fig. 6 is a flowchart showing an example of the process executed by the processing unit 100 in the first process. The flowchart shown in Fig. 6 starts when a request to execute the first process is received from the user 1.

[0049] In step S100, the processing unit 100 accesses the content database D100 and selects the notification content data. Next, in step S110, the processing unit 100 notifies the user 1 of the notification content data.

[0050] Next, in step S120, the processing section 100 acquires the user 1's evaluation of the notification content data.

[0051] Next, in step S130, the processing unit 100 updates the preference model 123 of the user 1 based on the acquired evaluation of the user 1 and the preference information D120 linked to the notification content data. After step S130, the first process ends.

[0052] The processing unit 100 may be configured to repeatedly execute the first process in response to a request from the user 1. In this case, the user 1 inputs an evaluation for the notification content data notified successively from the assistant system 10. Then, the processing unit 100 updates the preference model 123 of the user 1 every time the processing unit 100 receives the evaluation of the user 1 from the user terminal 200. By repeatedly executing the first process in this manner, learning of the preferences of the user 1 progresses.

[0053] As described above, according to the first process, the preferences of the user 1 are learned based on the user 1's evaluation of the notification content data and the preference information D120 linked to the notification content data. Here, the notification content data is selected by the processing unit 100 from a plurality of content data D110. This makes it possible to obtain the user 1's evaluation of various content data D110 without being influenced by the user 1's tendency to operate. In turn, by repeatedly executing the first process, the preferences of the user 1 can be accurately analyzed.

[0054] According to the first process, the user 1's evaluation of the notification content data is regarded as an evaluation of the preference information D120 linked to the notification content data, and the preference of the user 1 can be learned. Since the preference information D120 represents preferences regarding services provided by the assistant system 10, the preference of the user 1 regarding services provided by the assistant system 10 can be accurately learned.

[0055] In this embodiment, in order to more accurately analyze the preferences of the user 1, the content data selection processing unit P100 can adopt the following configuration.

[0056] The content data selection processing unit P100 may be configured to perform normal selection for randomly selecting notification content data from a plurality of content data D110, or exceptional selection for selecting notification content data from among the plurality of content data D110 that has a low degree of matching with the taste of the user 1. Furthermore, the content data selection processing unit P100 may be configured to perform exceptional selection more frequently as the degree of bias in the taste of the user 1 becomes greater.

[0057] The bias degree of the preference can be obtained from the preference model 123. For example, when the preference model 123 represents the degree of preference for each label, the bias degree of the preference is the bias of the degree of preference between the labels. Also, for example, when the preference model 123 represents the distribution of the degree of preference, the bias degree of the preference is the degree of variance of the distribution.

[0058] The degree of match can be an index of a label having a degree of preference equal to or greater than a predetermined value. In this case, content data D110 having a low degree of match is, for example, content data D110 that is not associated with a label having a degree of preference equal to or greater than a predetermined value.

[0059] By performing the exception selection, it is possible to select the content data D110 in a field in which the preferences of the user 1 have not been analyzed as the notification content data. By learning the preferences of the user 1 based on the evaluation of the notification content data selected in this way, it is possible to prevent the preferences of the user 1 from being learned in a biased manner. As a result, it is possible to more accurately analyze the preferences of the user 1.

[0060] In addition, by making the exception selection more frequently the greater the degree of bias in user 1's preferences, it is possible to prevent an exception selection from being made when learning of user 1's preferences has not progressed sufficiently, thereby preventing a decrease in the efficiency of learning user 1's preferences.

[0061] FIG. 7 is a flowchart showing an example of the process executed by the processing unit 100 in the process of selecting notification content data (step S100 in FIG. 6) when the content data selection processing unit P100 has the above-mentioned configuration.

[0062] In step S101, the processing unit 100 acquires the degree of bias of the preferences of the user 1 based on the preference model 123 of the user 1.

[0063] Next, in step S102, the processing unit 100 determines whether or not to perform exceptional selection. Here, the processing unit 100 may be configured to determine whether or not to perform exceptional selection with a probability according to the degree of bias acquired in step S101. In particular, the probability of performing exceptional selection may be set to be higher as the degree of bias increases. This allows the frequency of performing exceptional selection to be increased as the degree of bias in preferences increases.

[0064] When it is determined that an exceptional selection is not to be made (step S102; No), the processing unit 100 makes a normal selection (step S103). On the other hand, when it is determined that an exceptional selection is to be made (step S102; Yes), the processing unit 100 makes an exceptional selection (step S104).

[0065] 2-2. Second process Another type of processing executed by processing unit 100 is processing for realizing a function of providing a scheduling service to user 1 (hereinafter referred to as a "second processing").

[0066] The schedule proposed by the scheduling service is, for example, a travel schedule that follows one or more destinations between a departure location and an arrival location. However, the proposed schedule can adopt various formats depending on the environment in which the present embodiment is applied and the content of the request of the user 1. For example, the proposed schedule may be a sightseeing schedule that visits one or more destinations in a specific area, a meal or shopping schedule that includes restaurants and shops that can be visited near the current location as destinations, and the like.

[0067] The request of the user 1 regarding the scheduling service is, for example, information specifying a departure location, departure date and time, arrival location, arrival date and time, area, budget, required time, etc. Furthermore, for example, the request of the user 1 may be a more abstract request (for example, a request by voice input or text input) such as "I want to go on a trip to **", "I want to hang out nearby", "I want to go eat something delicious", "I want to go out to kill time", etc. In this case, the processing unit 100 may be configured to specifically recognize the request of the user 1 by natural language processing, etc.

[0068] 8 is a diagram showing an example of the configuration of the second process. The second process is composed of a content data extraction processing unit P200 and a service provision processing unit P210. These are realized by the processor 110 that operates according to some instructions of the computer program 121, for example.

[0069] The content data extraction processing unit P200 acquires the preference model 123 of the user 1, and extracts one or more pieces of content data (hereinafter referred to as "extracted content data") that have a high degree of coincidence with the preferences of the user 1 from the plurality of content data D110 based on the acquired preference model 123. It is desirable that the preference model 123 of the user 1 acquired here has been learned to a certain extent by executing the first process.

[0070] For example, the content data extraction processing unit P200 extracts content data D110 associated with many labels having a degree of preference equal to or greater than a predetermined value.

[0071] The service provision processing unit P210 provides a scheduling service using the extracted content data extracted by the content data extraction processing unit P200. More specifically, the service provision processing unit P210 selects a destination from the spots corresponding to the extracted content data, generates a schedule, and notifies the user 1 of the generated schedule. For example, the service provision processing unit P210 transmits the generated schedule to the user terminal 200, and causes the user terminal 200 to display information on the generated schedule.

[0072] Here, the destination is selected so as to satisfy the request of user 1. For example, if the schedule to be generated is a schedule that follows one or more destinations from a departure location to an arrival location, and the request of user 1 specifies the departure location, departure date and time, arrival location, and arrival date and time, the service provision processing unit P210 selects, as a destination, a spot that can be passed through between the departure location and the arrival location and that satisfies the departure date and time and arrival date and time, among the spots corresponding to the extracted content data.

[0073] Since the extracted content data is content data D110 that has a high degree of agreement with the preferences of user 1 represented by the preference model, the schedule generated in this manner is expected to match the preferences of user 1.

[0074] Fig. 9 is a conceptual diagram showing an example of the operation of the user terminal 200 by executing the second process. Fig. 9 shows an example in which the user terminal 200 accepts a request from the user 1 and an example in which the user terminal 200 notifies the user 1 of the generated schedule. In particular, Fig. 9 shows an example in which a schedule is proposed that follows one or more destinations from a departure place to an arrival place.

[0075] In the example of accepting a request from user 1, the user terminal 200 accepts the departure location, departure date and time, arrival location, and arrival date and time as a request. In this example, user 1 makes a request by inputting the departure location, departure date and time, arrival location, and arrival date and time, and pressing the "Create" button.

[0076] In an example of notifying user 1 of a schedule, an example is shown in which user terminal 200 displays schedule information on a display. In this example, a schedule is generated for following three destinations. User 1 can understand the contents of the generated schedule by checking the display. In particular, user terminal 200 displays spot information 202 for each of the three destinations. The spot information 202 is, for example, information such as the name of the spot, a description of the spot, and the required time. The spot information 202 can be generated from attribute information D112 and commentary information D113 of content data D110. User 1 can understand the contents of the destinations by checking the spot information 202.

[0077] The second process is configured as described above. Fig. 10 is a flowchart showing an example of the process executed by the processing unit 100 in the second process. The flowchart shown in Fig. 10 starts when a request to execute the second process is received from the user 1.

[0078] In step S200, the processing unit 100 refers to the user database 122 to acquire the preference model 123 of the user 1.

[0079] Next, in step S210, the processing section 100 extracts content data that highly matches the preferences of the user 1 from the plurality of content data D110 based on the preference model 123 acquired in step S200.

[0080] Next, in step S220, the processing unit 100 selects destinations that satisfy the request of the user 1 from the spots corresponding to the extracted content data, and generates a schedule.

[0081] Next, in step S230, the processing unit 100 notifies the schedule generated in step S220 to the user 1. After step S230, the second process ends.

[0082] In this embodiment, the service provision processing unit P210 may be further configured to accept changes to each destination included in the schedule. The operation to change each destination may be performed in a suitable format. For example, when the user terminal 200 displays a schedule as shown in FIG. 9, the user 1 changes the destination by flicking the spot information 202 of the destination to be changed.

[0083] When the user 1 performs an operation to change the destination, the service provision processing unit P210 selects another destination from the extracted content data, and notifies the user 1 of a schedule in which the destination for which the change has been accepted has been replaced with the new destination.

[0084] The service provision processing unit P210 may also be configured to provide a navigation service based on the notified schedule when the user 1 approves the notified schedule. For example, the service provision processing unit P210 provides a function of navigating a route to a destination included in the schedule via the user terminal 200. Note that a suitable known technology may be applied as the navigation method.

[0085] In the second process, it is assumed that the user 1 to whom the service is provided is a user group including multiple users. For example, a travel schedule that includes one or multiple destinations is proposed to a user group including multiple companions.

[0086] Therefore, when the user 1 is a user group including multiple users, the content data extraction processing unit P200 may be configured to calculate a preference model of the user group. The content data extraction processing unit P200 may be configured to extract, as extracted content data, content data that has a high degree of agreement with the preferences of the user group from the multiple content data D110.

[0087] The preference model of the user group can be calculated based on the priority of each user included in the user group and each user's preference model 123. For example, the preference model of the user group can be calculated by a weighted average of the preference models of each user, with the priority of each user being used as the weight.

[0088] The priority of each user may be configured to be set by each user. For example, each user inputs the priority by operating the user terminal 200. At this time, the request of each user may be included in the request of user 1. Then, the processing unit 100 acquires the priority of each user from the user terminal 200.

[0089] By configuring the content data extraction processing unit P200 in this way, it is possible to provide services that accurately reflect the preferences of a user group.

[0090] FIG. 11 is a flowchart showing an example of the process executed by the processing unit 100 in the process of extracting extracted content data (step S210 in FIG. 10) when the content data extraction processing unit P200 has the above-mentioned configuration.

[0091] In step S211, the processing unit 100 obtains the priority of each user included in the user group.

[0092] Next, in step S212, the processing unit 100 calculates a preference model of the user group based on the priority of each user acquired in step S211 and the preference model 123 of each user acquired in step S200 of FIG.

[0093] Next, in step S213, the processing section 100 extracts, as extracted content data, content data that has a high degree of coincidence with the preferences of the user group from among the plurality of content data D110, based on the preference model of the user group calculated in step S212.

[0094] In the second process, the processing unit 100 may be configured to further execute a process of receiving an evaluation of the user 1 for the provided scheduling service. The processing unit 100 may be configured to update the preference model 123 of the user 1 based on the evaluation of the user 1 for the scheduling service and the preference information D120 linked to the extracted content data.

[0095] For example, the processing unit 100 obtains the evaluation (e.g., positive or negative evaluation) of the user 1 regarding the notified schedule. At this time, the processing unit 100 updates the preference model 123 of the user 1 based on the preference information D120 linked to the content data D110 corresponding to the spots included in the notified schedule.

[0096] By updating the preference model of user 1 in this manner, it is possible to reflect user 1's evaluation of the results of the provided scheduling service in the preference model, which in turn makes it possible to more accurately analyze user 1's preferences.

[0097] 2-3.Third Processing Another process executed by the processing unit 100 is a process for realizing a function of notifying the user 1 of the mastery level of the preference model 123 (hereinafter, referred to as a "third process").

[0098] 12 is a diagram showing an example of the configuration of the third process. The third process is composed of a skill level evaluation processing unit P300 and a skill level notification processing unit P310. These are realized by the processor 110 that operates according to some instructions of the computer program 121, for example.

[0099] The skill level evaluation processing unit P300 refers to the user database 122 to acquire the preference model 123 of the user 1, and evaluates the skill level of the acquired preference model 123.

[0100] The mastery level is given, for example, to represent the degree to which the preference model 123 can accurately analyze the preferences of the user 1, as a numerical value from 0 to 100%. In this case, the closer the mastery level is to 100%, the more accurately the preference model 123 analyzes the preferences of the user 1.

[0101] The skill level can be evaluated using various information as an index. One of the indices is the number of times the preference model 123 is updated by executing the first process. In this case, it is considered that the more times the preference model 123 is updated by executing the first process, the higher the skill level. Another of the indices is the elapsed time from the time when the preference model 123 was last updated by executing the first process. In this case, it is considered that the longer the elapsed time, the lower the skill level. Another of the indices is whether the update of the preference model 123 by executing the first process is habitually performed (for example, the first process is always performed during the morning commute on weekdays). In this case, it is considered that the more habitual the update of the preference model 123 is, the higher the skill level is. Another of the indices is to use the confidence of the preference model 123 as an index when the preference model 123 is generated by a machine learning model. In this case, it is considered that the higher the confidence of the preference model 123 is, the higher the skill level is.

[0102] The mastery level may be evaluated by combining these indices. The mastery level may also be evaluated from multiple perspectives. For example, the mastery level may be evaluated for each type of destination (sightseeing, dining, shopping, etc.). Information serving as these indices may be managed for each user in the user database 122.

[0103] The skill level notification processing unit P310 notifies the user 1 of the skill level evaluated in the skill level evaluation processing unit P300. For example, the skill level notification processing unit P310 transmits the evaluated skill level to the user terminal 200 and causes the user terminal 200 to display information about the skill level.

[0104] Fig. 13 is a conceptual diagram showing an example of notification by the mastery level notification processing unit P310. Fig. 13 shows an example in which the user terminal 200 displays numerical information 203 and graph information 204 of the mastery level. Here, the graph information 204 visually displays an evaluation of the mastery level from multiple perspectives. According to the graph information 204, it can be seen that the mastery levels for "lunch" and "entertainment" are high, but the mastery level for "shopping" is low.

[0105] The third process is configured as described above. Fig. 14 is a flowchart showing an example of the process executed by the processing unit 100 in the third process. The flowchart shown in Fig. 14 starts when a request to execute the third process is received from the user 1.

[0106] In step S300, the processing unit 100 refers to the user database 122 to acquire the preference model 123 of the user 1.

[0107] Next, in step S310, the processing unit 100 evaluates the mastery level of the preference model 123 acquired in step S300.

[0108] Next, in step S320, the processing unit 100 notifies the skill level evaluated in step S310 to the user 1. After step S320, the third process ends.

[0109] By notifying the user 1 of the proficiency level by executing the third process, the user 1 can confirm to what extent the assistant system 10 has analyzed his / her preferences. Furthermore, the user 1 can be prompted to learn the preference model 123 by executing the first process according to the proficiency level. For example, when the user 1 confirms that the proficiency level is low, it is assumed that the user 1 will try to improve the proficiency level by executing the first process. This makes it possible to further advance the learning of the preferences of the user 1. As a result, the preferences of the user 1 can be more accurately analyzed.

[0110] As described above, various functions of the assistant system 10 are realized by the processing executed by the processing unit 100. The assistant method according to the present embodiment is realized by the processing executed by the processing unit 100 in this way. Furthermore, the assistant program according to the present embodiment is realized by configuring the computer program 121 that causes the processing unit 100 to execute the processing in this way.

[0111] 3. Other embodiments The assistant system 10 according to this embodiment can be similarly applied to an assistant system that provides other services that can be realized by the above-described configuration and processing.

[0112] For example, another service is a service that proposes a daily meal menu. In this case, each of the multiple content data D110 managed by the content database D100 is, for example, data on dishes that are candidates for the menu. Also, the preference information D120 is composed of labels that indicate, for example, the type of dish (fish dish, meat dish, etc.) and the flavor tendency (sweet, spicy, etc.).

[0113] It is also possible to apply the present invention to an assistant system that provides various services, such as a service that suggests training menus and a service that suggests lifestyles. [Explanation of symbols]

[0114] 1 User 10 Assistant System 100 Processing section 110 Processor 120 Storage device 121 Computer Programs 123 Preference Model 200 User terminals D100 Content Database D110 Content Data D120 Preference Information

Claims

1. An assistant system for providing a specific service in response to a user request, one or more storage devices for storing a plurality of content data and a preference model representing the user's preferences regarding the particular service; one or more processors; Equipped with each of the plurality of content data is linked to preference information related to the specific service; The one or more processors: selecting notification content data from the plurality of content data; Obtaining an evaluation of the notification content data by the user; The preference model is updated based on the user's evaluation of the notification content data and the preference information linked to the notification content data. A first process including: extracting one or more pieces of extracted content data that have a high degree of coincidence with the user's preferences from among the plurality of content data based on the preference model; The specific service is provided using the plurality of extracted content data. and a second operation including: Selecting the notification content data includes: acquiring a bias degree of the user's preferences based on the preference model; performing a normal selection of randomly selecting the notification content data from the plurality of content data, or an exceptional selection of selecting the notification content data from among the plurality of content data, the notification content data being less consistent with the user's preferences; Including, The frequency of the exception selection is higher as the degree of bias is larger. The assistant system is characterized by:

2. The assistant system according to claim 1, The one or more processors: - evaluating the mastery level of said preference model; notifying the user of the proficiency level; is configured to further The assistant system is characterized by:

3. The assistant system according to claim 1, The one or more processors: a process of receiving an evaluation by the user of the specific service provided by the execution of the second process; updating the preference model based on the user's evaluation of the specific service and the preference information associated with the one or more extracted content data; is configured to further The assistant system is characterized by:

4. The assistant system according to claim 1, In the second process, when the user belongs to a user group including a plurality of users, extracting the one or more pieces of extracted content data includes: obtaining a priority of each user included in the user group; calculating a preference model of the user group based on the priority of each of the users and the preference model of each of the users; extracting the one or more extracted content data having a high degree of coincidence with a preference model of the user group from the plurality of content data; Includes The assistant system is characterized by:

5. The assistant system according to any one of claims 1 to 4, the specific service is to propose to the user a schedule including one or more destinations in response to a request from the user; each of the plurality of content data is data on a specific spot that is a candidate for the one or more destinations; In the second process, providing the specific service using the one or more extracted content data includes selecting the one or more destinations from one or more spots corresponding to the one or more extracted content data. The assistant system is characterized by:

6. 1. An assistant method for providing a specific service in response to a user request by a process executed by a computer, comprising: the computer includes one or more storage devices for storing a plurality of content data and a preference model representing the user's preferences regarding the particular service; each of the plurality of content data is linked to preference information related to the specific service; The assistant method includes: selecting notification content data from the plurality of content data; Obtaining an evaluation of the notification content data by the user; The preference model is updated based on the user's evaluation of the notification content data and the preference information linked to the notification content data. A first process including: extracting one or more pieces of extracted content data that have a high degree of coincidence with the user's preferences from among the plurality of content data based on the preference model; The specific service is provided using the plurality of extracted content data. and a second process including: Selecting the notification content data includes: acquiring a bias degree of the user's preferences based on the preference model; performing a normal selection of randomly selecting the notification content data from the plurality of content data, or an exceptional selection of selecting the notification content data from among the plurality of content data, the notification content data being less consistent with the user's preferences; Including, The frequency of the exception selection is higher as the degree of bias is larger.

13. An assistant method comprising:

7. 7. An assistant method according to claim 6, comprising: the specific service is to propose to the user a schedule including one or more destinations in response to a request from the user; each of the plurality of content data is data on a specific spot that is a candidate for the one or more destinations; In the second process, providing the specific service using the one or more extracted content data includes selecting the one or more destinations from one or more spots corresponding to the one or more extracted content data.

13. An assistant method comprising:

8. An assistant program for causing a computer to execute a process for providing a specific service in response to a user request, the computer includes one or more storage devices for storing a plurality of content data and a preference model representing the user's preferences regarding the particular service; each of the plurality of content data is linked to preference information related to the specific service; The assistant program is selecting notification content data from the plurality of content data; Obtaining an evaluation of the notification content data by the user; The preference model is updated based on the user's evaluation of the notification content data and the preference information linked to the notification content data. A first process including: extracting one or more pieces of extracted content data that have a high degree of coincidence with the user's preferences from among the plurality of content data based on the preference model; The specific service is provided using the plurality of extracted content data. and a second process including: Selecting the notification content data includes: acquiring a bias degree of the user's preferences based on the preference model; performing a normal selection of randomly selecting the notification content data from the plurality of content data, or an exceptional selection of selecting the notification content data from among the plurality of content data, the notification content data being less consistent with the user's preferences; Including, The frequency of the exception selection is higher as the degree of bias is larger. An assistant program characterized by:

9. 9. The assistant program according to claim 8, the specific service is to propose to the user a schedule including one or more destinations in response to a request from the user; each of the plurality of content data is data on a specific spot that is a candidate for the one or more destinations; In the second process, providing the specific service using the one or more extracted content data includes selecting the one or more destinations from one or more spots corresponding to the one or more extracted content data. An assistant program characterized by:

Citation Information

Patent Citations

  • Information processor and information processing method, recording medium, and program

    JP2007202181A

  • Content retrieval device, method, and program

    JP2010237916A

  • Contents recommendation system, contents recommendation device and contents recommendation method

    JP2011253462A

  • Information processing device, information processing method and program

    JP2015201719A

  • Information processing apparatus, information processing method and program

    JP2019095832A