WO2016031363A1 - 情報処理装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
WO2016031363A1
WO2016031363A1 PCT/JP2015/067657 JP2015067657W WO2016031363A1 WO 2016031363 A1 WO2016031363 A1 WO 2016031363A1 JP 2015067657 W JP2015067657 W JP 2015067657W WO 2016031363 A1 WO2016031363 A1 WO 2016031363A1
Authority
WO
WIPO (PCT)
Prior art keywords
fluctuation
score
item
coefficient
information processing
Prior art date
Application number
PCT/JP2015/067657
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 ソニー株式会社
Publication of WO2016031363A1 publication Critical patent/WO2016031363A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • the present disclosure relates to an information processing apparatus, an information processing method, and a program.
  • Patent Document 1 describes a technique for controlling a combination of recommendation algorithms so that a highly accurate recommendation result suitable for the situation can be obtained.
  • the recommendation algorithm used in the above-described technology can recommend an item that the user is truly interested in with sufficiently high accuracy.
  • a new and improved information processing apparatus, information processing method, and the like which allow the item extracted based on the score to have appropriate diversity by causing fluctuation in the score of the item, And suggest programs.
  • a score acquisition unit that acquires an item score
  • a fluctuation addition unit that adds fluctuation to the score
  • a situation information acquisition unit that acquires situation information indicating a situation of a user of the item
  • the fluctuation An information processing apparatus includes a fluctuation control unit that controls whether or not to add or the degree of fluctuation based on the situation information.
  • obtaining a score of an item adding a fluctuation to the score, obtaining situation information indicating a situation of a user of the item, and a processor adding the fluctuation And an information processing method including controlling the degree of fluctuation based on the situation information.
  • a function for acquiring the score of an item a function for adding fluctuation to the score, a function for acquiring status information indicating the status of the user of the item, and whether to add the fluctuation Or a program for causing a computer to realize a function of controlling the degree of fluctuation based on the situation information.
  • the item extracted based on the score can have appropriate diversity by giving fluctuation to the score of the item.
  • FIG. 3 is a diagram illustrating an example of scores and coefficients according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram illustrating an example of scores and coefficients according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram illustrating an example of scores and coefficients according to an embodiment of the present disclosure.
  • 6 is a diagram illustrating a first example of an output according to an embodiment of the present disclosure.
  • FIG. It is a figure which shows the other example to which the output method as shown in FIG. 6 is applied.
  • 6 is a diagram illustrating a second example of an output according to an embodiment of the present disclosure.
  • FIG. FIG. 3 is a block diagram illustrating a hardware configuration example of an information processing apparatus according to an embodiment of the present disclosure.
  • FIG. 1 is a diagram illustrating a configuration example of a system according to an embodiment of the present disclosure.
  • the system 10 includes a client 11 and a server 12. Both the client 11 and the server 12 can be realized by, for example, a hardware configuration of an information processing apparatus described later.
  • the server 12 may be realized by cooperation of a plurality of information processing apparatuses connected via a network.
  • the client 11 may include a terminal device such as a mobile device, a wearable device, a television, or a personal computer.
  • the client 11 is used for outputting or selecting an item, for example. Items may include, for example, games, movies, music, books, news, and / or social content.
  • the item is output, for example, as an image or sound in the client 11 (content distributed by downloading or streaming).
  • the content selectively provided by the server 12 may be automatically output from the client 11.
  • an item list (not necessarily in a table format) may be provided from the server 12 to the client 11, and an item selected by the user from the list may be output from the client 11.
  • the item may be delivered to the user according to the order issued from the client 11 (for example, a substantial item such as a recording medium).
  • the server 12 can include one or more server devices connected to the client 11 via a network.
  • the server 12 provides an item or an item list to the client 11.
  • the user uses the client 11 to output or select items, and in this case, which items are selectively provided from the available items, or which items are arranged in any arrangement. Whether to include in the list is determined by the server 12. More specifically, for example, the server 12 determines the provided item, the configuration of the item list, and the like based on the score given to the item.
  • the score of an item is given by a recommendation algorithm such as CBF based on similarity of item metadata or CF based on similarity of item preference for each user.
  • the server 12 provides items to the client 11 in descending order of scores given by the recommendation algorithm, or provides the client 11 with a list in which items having scores or scores higher than the threshold are arranged. To do.
  • a recommendation algorithm such as CBF or CF does not necessarily recommend an item that the user is truly interested in with sufficiently high accuracy.
  • CBF an item having metadata similar to an item that the user has indicated in the past is recommended, and therefore, an item familiar to the user and lacking in freshness tends to be recommended.
  • CF although it is possible to recommend an item that is not similar to an item that the user has shown preference in the past, the preference of the item varies from user to user and not many users have exactly the same preference. There are many cases where the recommended item is out of the user's preference.
  • the server 12 determines the configuration of the provided item or list using the score given by the recommendation algorithm as it is, the provided item or list does not attract the user's interest. There is a possibility of diminishing the willingness to use the item itself. Therefore, in the present embodiment, the server 12 executes a process of giving the item extracted based on the score appropriate diversity by giving the item score a fluctuation. Hereinafter, such a process will be described in detail.
  • FIG. 2 is a block diagram illustrating a functional configuration example of a server according to an embodiment of the present disclosure.
  • the server 12 includes a receiving unit 121, a feedback acquisition unit 122, a situation information acquisition unit 123, a score acquisition unit 124, a fluctuation adding unit 125, a fluctuation control unit 126, an item selection unit / A list editor 127 and a transmitter 128 are included. Any of these functional configurations can be realized by a processor such as a CPU provided in the information processing apparatus that implements the server 12.
  • the server 12 may include an item DB (database) 131, a user DB 132, and / or a coefficient DB 133. These DBs can be realized by a memory or a storage device included in an information processing apparatus that implements the server 12.
  • each functional configuration will be further described.
  • the receiving unit 121 handles various types of information received by a communication device included in the information processing device that implements the server 12.
  • the received information includes, for example, an item or item list request sent by the client 11.
  • the received information may also include user feedback on items provided from the server 12 to the client 11.
  • the feedback is provided to the feedback acquisition unit 122.
  • the received information may include status information indicating the status of the user of the client 11, that is, the user of the item.
  • the situation information is provided to the situation information acquisition unit 123. Even when only the list is provided from the server 12 to the client 11, there is no change in that the user of the client 11 is the user of the item.
  • the received information may include a list of available items provided by an external server, an item score, and the like. In this case, a list of items, a score, and the like are provided to the score acquisition unit 124.
  • the feedback acquisition unit 122 acquires user feedback on items provided from the server 12 to the client 11.
  • the feedback is, for example, explicit feedback (positive / negative) input using an evaluation button or the like presented together with the item, playback of music or video items (positive), and cancellation of playback ( It may include implied feedback that appears in the purchase of items such as (negative), repeat (positive), skip (negative), game (positive), play (positive), sale (negative), etc.
  • the meaning of each feedback (positive / negative, etc.) may be determined according to the user's situation such as who, when, where, in what state (emotion, pulse, brain wave, etc.) and who. .
  • the server 12 does not necessarily include the feedback acquisition unit 122 when the feedback from the user is not required in the processing of the fluctuation adding unit 125 described later.
  • the status information acquisition unit 123 acquires status information indicating the status of the user of the client 11, that is, the item user.
  • the situation information can indicate a user's time margin.
  • the user's time allowance may be estimated from, for example, a time zone or a user's behavior pattern. More specifically, it may be estimated that the time margin is small in the morning, before going to work or during commuting. Also, it may be estimated that there is a large time margin at night, after dinner or before going to sleep. For such estimation, for example, a behavior recognition technique using a sensor provided in the client 11 may be used.
  • the status information may indicate the number of items that can be referred to simultaneously in the item list provided from the server 12 to the client 11.
  • the simultaneous referable number may vary depending on the specifications of the browser (that is, the client 11) that the user is using to refer to the item list. Therefore, in this case, the status information can include information indicating the specifications of the browser.
  • the status information acquisition unit 123 may acquire information on the number of items that can be referred to simultaneously from the item selection / list editing unit 127. In the present embodiment, such situation information acquired by the situation information acquisition unit 123 is used by a fluctuation control unit 126 described later to control fluctuation given to the item score.
  • the score acquisition unit 124 acquires the scores of items that can be used in the server 12.
  • the score of an item since the score of an item is compared by the process of a back
  • Available items may include, for example, items being distributed / sold (such as games, movies, music, or books), new items (such as news feeds or social media feeds), and the like.
  • the item score is given by a recommendation algorithm such as CBF or CF.
  • a recommendation algorithm such as CBF or CF.
  • a score can be given to an item not only by the above recommendation algorithms but by various algorithms that can be used.
  • the score acquisition unit 124 may calculate the score of the item itself, or may acquire the score of the item provided by an external server.
  • the score acquisition unit 124 calculates the item score using, for example, the item metadata stored in the item DB 131 or the data indicating the preference of the item by the user stored in the user DB 132.
  • the item metadata is provided to the receiving unit 121 from an external server operated by the item provider, for example, and stored in the item DB 131.
  • Data indicating the preference of the item by the user is generated based on the user's feedback on the item acquired by the feedback acquisition unit 122, for example, and stored in the user DB 132.
  • the server 12 does not necessarily include the item DB 131 and the user DB 132.
  • the server 12 may include an item DB 131 and / or a user DB 132, and data extracted from these DBs may be transmitted to an external server to request calculation of the item score.
  • item metadata may be stored in the item DB 131, and only items for which the score is to be calculated, that is, identification information of items that can be used by the server 12 at the time of calculating the score are stored. Also good.
  • the fluctuation adding unit 125 adds fluctuation to the score acquired by the score acquisition unit 124.
  • adding a fluctuation to a score means adding an operation based on a factor different from the original score to a score calculated or acquired based on a recommendation algorithm or the like. Adding fluctuations to the score does not necessarily mean randomizing the score. For example, when the difference between the original scores of two items is large, there is a high possibility that the magnitude relationship of the scores will not be reversed even if fluctuation is added to the score. However, for example, when the difference between the original scores of the two items is small, if the fluctuation is added to the score, the magnitude relationship of the scores may be reversed.
  • such a function of the fluctuation adding unit 125 is implemented by multiplying the score by a coefficient calculated independently of the original score. That is, in this embodiment, the fluctuation is expressed by a coefficient that is multiplied by the score.
  • the fluctuation adding unit 125 includes a coefficient calculating unit 1251 for calculating a coefficient.
  • the coefficient calculation unit 1251 calculates a coefficient for each class in which an item is classified based on its metadata. The coefficient may be calculated for each user and stored in the coefficient DB 133.
  • Item metadata includes, for example, bibliographic items such as genre, price range, publication date, author, and publisher, document topics extracted using the latent topic model, and music and video data. May be included.
  • the item metadata may be abstract data specified based on the result of machine learning or the like. Based on such metadata, items can be classified into classes. Items may be alternatively classified into one of the classes, or may be classified into a plurality of classes by assigning a score to each class. Note that the generation of item metadata and the classification of items based on the metadata are already known techniques, and thus detailed description of the method is omitted here. In the present embodiment, items can be classified into classes based not only on the above metadata but also on various types of available metadata.
  • the coefficient calculation unit 1251 calculates a coefficient based on user feedback on items classified into each class. As described above, the feedback of the user for the item is acquired by the feedback acquisition unit 122. In the present embodiment, the coefficient calculation unit 1251 calculates the coefficient of each class by counting and analyzing the feedback for the item for each class. The calculated coefficient may represent the value of each class for the user. More specifically, for example, a higher coefficient can be calculated in a class that includes an item for which positive feedback has been acquired and is estimated to have a high value for the user. In addition, a lower coefficient can be calculated for a class that includes an item for which negative feedback has been acquired and is estimated not to have a high value for the user.
  • the fluctuation adding unit 125 adds the fluctuation to the score by multiplying the score calculated by the coefficient calculating unit 1251 by the score acquired by the score acquiring unit 124 as described above.
  • the coefficient is multiplied according to the class into which each item given a score is classified. The relationship between such a score and a coefficient is shown in FIG. As shown in the figure, the score of an item classified into a class for which a high coefficient is calculated is corrected upward relative to the score of another item by multiplying by the coefficient. In addition, the score of an item classified into a class for which a low coefficient is calculated is corrected downward relative to the score of another item by multiplying the coefficient.
  • the classes into which items are classified may include a plurality of types, and in this case, the coefficient calculated for each type of class is multiplied by the item score in a duplicated manner.
  • An example of such a case is shown in FIG.
  • a weight for each type may be set. An example of such a case is shown in FIG.
  • item classification as described above and value estimation based on feedback on items are elements that can also be included in an algorithm for calculating a score.
  • the algorithm for calculating the score is not the same as the algorithm for calculating the coefficient, the coefficient multiplied by the score can act as fluctuation.
  • the item in the algorithm for calculating the score, the item may be classified, the class value may be estimated based on feedback on the item, and the item value may be calculated based on the class value.
  • the coefficient can act as a fluctuation. For example, if a genre, author, and topic class is used to calculate the score, and only a genre class is used to calculate the coefficient, the score is multiplied by the coefficient to produce the author and topic. As a result, the influence of the class value on the score becomes smaller, and the magnitude relationship of the score may change. Therefore, in this case, it can be said that fluctuation is added to the score by multiplying by the coefficient.
  • the feedback aggregated to calculate the class value If the range is different from the feedback range aggregated for calculating the coefficient, the coefficient can act as a fluctuation. For example, when calculating the score, the entire feedback obtained so far is aggregated, and when calculating only the feedback acquired in the most recent month for calculating the coefficient, the score is multiplied by the coefficient. As a result, the influence of the feedback acquired in the past than the previous month on the score is reduced, and as a result, the magnitude relationship of the scores may change. Therefore, in this case, it can be said that fluctuation is added to the score by multiplying by the coefficient.
  • the algorithm for calculating the score is often much more complex than the example above. Therefore, if the coefficient calculation unit 1251 multiplies the coefficient calculated independently of the score, fluctuation can be added to the score (the algorithm for calculating the coefficient independent of the score calculates the score). Is unlikely to be the same algorithm).
  • the coefficient calculation unit 1251 does not necessarily have to calculate the coefficient based on user feedback on the item as in the above example. For example, the coefficient calculation unit 1251 may calculate the coefficient at random.
  • the coefficient that reflects the user's preference in some form is calculated, for example, the item extracted as a result of the fluctuation added to the score may attract the user's interest. Becomes higher.
  • the fluctuation control unit 126 determines whether or not the fluctuation adding unit 125 adds fluctuation to the score, or the degree of fluctuation added to the score by the fluctuation adding unit 125 based on the situation information acquired by the situation information acquisition unit 123. Control. That is, the fluctuation control unit 126 can control whether or not to enable the fluctuation adding unit 125 according to the user's situation indicated by the situation information. Further, the fluctuation control unit 126 may control the degree of fluctuation added according to the user's situation when the fluctuation adding unit 125 is effective. As described above, in this embodiment, the fluctuation adding unit 125 adds fluctuation to the score of an item, so that, for example, an item extracted based on the score can have appropriate diversity.
  • the recommendation algorithm for calculating the score is optimized so that the item extracted based on the score is most likely to match the user's preference. Therefore, it is not always appropriate to add fluctuation to the score. For example, when the number of items extracted based on the score is limited to a small number, the fluctuation is not added or added. In some cases, it is better to use the calculated score almost as it is by reducing the fluctuation. Therefore, in the present embodiment, the fluctuation control unit 126 controls the operation of the fluctuation adding unit 125, thereby enabling provision of an appropriate score according to the user's situation. A specific example of such control will be described later.
  • the item selection / list editing unit 127 executes processing according to the score acquired by the score acquisition unit 124 or the score to which fluctuation is added by the fluctuation addition unit 125.
  • the item selection / list editing unit 127 selects items in the order according to the score (hereinafter including a case where fluctuation is added), or edits the item list according to the score. Which process is executed differs depending on whether the server 12 provides the client 11 with an item itself or an item list.
  • the item selection / list editing unit 127 may provide a function of either item selection or list editing, or may provide both functions. Item selection is executed, for example, when an image or sound of an item is automatically output by the client 11 (without selection by the user).
  • the item selection / list editing unit 127 Determines the order in which items are output for each type.
  • List editing is executed, for example, when an item list is provided to the client 11 and the user selects an item on the client 11.
  • the list does not necessarily have to be in a tabular format, and can be expressed by various arrangements on the screen or by reading out speech.
  • the arrangement order of the items in the list and / or the display size of each item in the list can be determined according to the score. A more specific example of the item list will be described later.
  • the transmission unit 128 handles various types of information transmitted by a communication device included in the information processing apparatus that implements the server 12.
  • the transmitted information includes, for example, an item or item list provided to the client 11.
  • an item or item list may be selected or edited by the item selection / list editing unit 127.
  • the item or item list handled by the transmission unit 128 and transmitted from the communication device is output in the client 11. Therefore, it can be said that the transmission unit 128 is an output control unit that outputs an item or an item list.
  • the transmission unit 128 is information that can be used in the server 12 such as feedback acquired by the feedback acquisition unit 122 and is necessary for calculating the score. May be transferred to an external server.
  • the fluctuation control unit 126 controls whether or not the fluctuation adding unit 125 adds fluctuation to the score, or the degree of fluctuation added to the score by the fluctuation adding unit 125.
  • Such factors for fluctuation control include the situation information acquired by the situation information acquisition unit 123.
  • the relationship between the status information and the presence / absence or degree of fluctuation will be further described.
  • the situation information acquired by the situation information acquisition unit 123 can indicate a user's time margin.
  • the situation information acquisition unit 123 sets the time information of the user.
  • Information indicating a margin can be acquired.
  • the user's time allowance may be expressed by an estimate of the remaining time, an expected time when the user moves to the next action (for example, leaving the house, getting off the train, etc.).
  • the status information acquisition part 123 may acquire the information used as the source of user's action recognition.
  • user behavior recognition is performed in the situation information acquisition unit 123 or the fluctuation control unit 126, and the user's time margin is estimated.
  • the processing of the fluctuation control unit 126 when information indicating the user's time margin is acquired by any of the above-described methods will be further described below.
  • the fluctuation control unit 126 controls the fluctuation adding unit 125 so that the fluctuation is increased when the time margin of the user is large and the fluctuation is decreased when the time margin is small.
  • the fluctuation control unit 126 may enable the fluctuation adding unit 125 when the user's time margin is large, and may invalidate the fluctuation adding unit 125 when the time margin is small. In this case, when the time margin of the user is small, fluctuation is not added to the score.
  • the fluctuation control unit 126 when the fluctuation control unit 126 has a large time margin for the user, items are extracted using a score including fluctuations, and a variety of items or item lists are provided to the user.
  • a score including fluctuations
  • items or item lists are provided to the user.
  • an item extracted based on a score calculated by a recommendation algorithm or the like is highly likely to match the user's preference, but even an item that matches the preference lacks freshness, etc.
  • the user may not be interested for a reason. Therefore, it is meaningful to add fluctuation to the score and make the extracted items more diverse.
  • the possibility that the extracted items may not fit the user's preference by adding fluctuations to the score. Is slightly higher.
  • the user can skip the output item and output the next item, or select another item displayed at the bottom of the list. It is. Therefore, it is considered that the inconvenience felt by the user is not so great as long as there is enough time, but rather the utility due to the extraction of items with a fresh taste is greater.
  • the item when the user's time margin is small, the item may be lacking in diversity by extracting items using a score that does not include fluctuation or has small fluctuation, but the user's preference
  • the user is provided with an item or item list that is likely to conform to.
  • the possibility that the extracted item does not match the user's preference is slightly increased.
  • operations such as skipping an output item and outputting the next item, or selecting another item displayed at the bottom of the list are possible. It is possible.
  • the fluctuation control unit 126 invalidates the fluctuation adding unit 125 or the fluctuation added by the fluctuation adding unit 125 is small. The control which becomes is executed.
  • the situation information acquired by the situation information acquisition unit 123 can indicate the number of items that can be referred to simultaneously in the item list output by the client 11.
  • the number that can be referred to simultaneously may vary depending on the specifications of the browser (that is, client 11) that the user is using to refer to the list.
  • the simultaneous referable number may be the number of items that are simultaneously included in the list displayed on the screen by the client 11. In this case, the simultaneous referable number varies depending on the screen size and screen layout of the client 11.
  • the number of simultaneous references may be determined to be 1.
  • the number of items read out within a predetermined time may be determined as the simultaneous referenceable number.
  • an item is automatically output by the client 11 (music, video, etc.), it is handled in the same manner as when an item list having a simultaneous reference count of 1 (or a small number) is provided. Also good.
  • variation control part 126 when the information which shows the simultaneous reference possible number of the item in the output item list is acquired is further demonstrated below.
  • the fluctuation control unit 126 increases the fluctuation when the number of items that can be referred to simultaneously in the item list is large, and decreases the fluctuation when the number of items that can be referred simultaneously is small.
  • the fluctuation control unit 126 may enable the fluctuation adding unit 125 when the number of items that can be referred to simultaneously in the item list is large, and may invalidate the fluctuation adding unit 125 when the number of simultaneous references is small. In this case, when the number of items that can be referred to simultaneously in the item list is small, no fluctuation is added to the score.
  • the item list having diversity is extracted to the user by extracting items using a score including fluctuation.
  • a score including fluctuation Similar to the first example above, it is meaningful to add fluctuation to the score and make the extracted items more diverse.
  • the item to be extracted becomes a user. There is a slight possibility that it will not fit the taste of
  • the fluctuation control unit 126 extracts items using a score that does not include fluctuation or has a small fluctuation, thereby increasing diversity.
  • the user is provided with a list of items that may be missing but likely to fit the user's preferences.
  • the possibility that the extracted item does not match the user's preference is slightly increased. If the number of items that can be referenced simultaneously in the item list is small, all items that can be referenced will be extracted as a result of fluctuation (that is, different from the item extracted according to the original score), and other items An operation to update the item list is required to select an item.
  • the fluctuation control unit 126 invalidates the fluctuation adding unit 125 or the fluctuation added by the fluctuation adding unit 125 is small. The control which becomes is executed.
  • the fluctuation adding unit 125 adds fluctuations to the score, for example, by multiplying the score acquired by the score acquisition unit 124 by the coefficient calculated by the coefficient calculation unit 1251.
  • the fluctuation control unit 126 enables / disables the fluctuation adding unit 125 and controls the degree of fluctuation added by the fluctuation adding unit 125.
  • specific processing when the fluctuation control unit 126 enables / disables the fluctuation adding unit 125 will be easily understood, there may be many variations on the processing for controlling the degree of fluctuation. In the following, some examples of such control will be further described.
  • the fluctuation control unit 126 changes the probability that the fluctuation is added to the score by the fluctuation adding unit 125 according to the situation information acquired by the situation information acquisition unit 123. For example, when fluctuation is added to the score with probability P, fluctuation is not added to the score with probability (1-P). For example, when fluctuation is added by multiplying scores given to a plurality of items by a coefficient, whether or not each item is multiplied by a coefficient is determined based on the probability P. In this case, the greater the probability P, the higher the probability that fluctuation is added by multiplying the score by a coefficient. When the fluctuation is maximized, the probability P may be set to 1. In this case, fluctuations are added to the scores of all items. Further, when the fluctuation is minimized, the probability P may be set to zero. In this case, no fluctuation is added to the score of any item (or all coefficients are treated as 1).
  • the fluctuation control unit 126 controls the degree of fluctuation by correcting the coefficient calculated by the coefficient calculation unit 1251 in the fluctuation adding unit 125 with the parameter T.
  • the coefficient calculation unit 1251 calculates a coefficient for each class of items, it is assumed that the coefficient F j is calculated for the class C j .
  • the coefficient G i of the i-th class corrected using the parameter T can be calculated by the following Equation 1.
  • the fluctuation control unit 126 controls the degree of fluctuation by temporarily correcting the coefficient calculated by the coefficient calculation unit 1251 in the fluctuation adding unit 125 according to the number of updates.
  • the coefficient calculation unit 1251 sequentially updates the coefficient for each class based on the feedback acquired by the feedback acquisition unit 122.
  • the corrected coefficient G i of the i-th class is the number n i of updates of the coefficient F j.
  • a is an arbitrary constant.
  • the coefficient F i calculated and updated by the coefficient calculation unit 1251 is upwardly corrected to become the coefficient G i as the number of updates decreases. Therefore, when the fluctuation adding unit 125 adds fluctuations to the score using such a coefficient G i , the coefficient is updated for a class that has a low score update count because less feedback has been collected yet. G i is upwardly corrected, so the score multiplied by the coefficient is also upwardly corrected. As a result, if feedback is newly provided from the user for the item of the class, the coefficient calculation unit 1251 can update the coefficient based on the feedback and improve the reliability of the coefficient.
  • FIG. 6 is a diagram illustrating a first example of an output according to an embodiment of the present disclosure.
  • news content is output as audio in the client 11a (having an audio output function).
  • the user utters an evaluation of the output news content to the client 11a.
  • the client 11a acquires this utterance as a feedback FB.
  • the coefficient calculation unit 1251 included in the fluctuation adding unit 125 calculates a coefficient based on the feedback FB, and stores the calculated coefficient in the coefficient DB 133.
  • the coefficients are calculated for the content genre, for example, classes such as politics, art, technology, and health.
  • news content NC is provided from an external content providing server. Each news content NC is given a score SC calculated by a recommendation algorithm.
  • the server 12 adds the fluctuation to the score SC by multiplying the score SC provided from the external server by the coefficient calculated by the coefficient calculation unit 1251 to obtain the score SC ′.
  • the item selection unit / list editing unit 127 determines the order in which the news content NC is output according to the score SC '. As a result, the order in which the news contents NC are output is changed compared to the order according to the original score SC.
  • the news content NC is transmitted from the transmission unit 128 to the client 11a in the determined order, and is output as audio by the client 11a.
  • the user can give feedback FB to the news content NC output by the client 11a as described above by utterance.
  • the coefficient calculation unit 1251 updates the coefficient based on the newly provided feedback FB.
  • the fluctuation adding unit 125 recalculates the score SC ′ using the updated coefficient, and the item selection unit / list editing unit 127 re-determines the order in which the news content NC is output based on the recalculated score SC ′. In this way, in the illustrated example, the output order of items is optimized in real time using the user feedback FB.
  • FIG. 7 is a diagram showing another example to which the output method as shown in FIG. 6 is applied.
  • the news content NC is output as audio, but even when the item (content) is output as an image, the content may be output sequentially in the order determined by the item selection unit / list editing unit 127. It is possible.
  • a single news content NC is displayed on the client 11b which is a wristwatch-type wearable terminal.
  • the news content NC is output by the client 11b in the order determined by the item selection unit / list editing unit 127 in the server 12 according to the score SC '.
  • the feedback from the user may be input by the side button 111, for example.
  • the news content NC may be displayed as an image, for example, or may be scrolled by text.
  • FIG. 8 is a diagram illustrating a second example of output according to an embodiment of the present disclosure.
  • an item list IL including a summary of news content is output as an image in the client 11c (having a display having a certain size).
  • the user can feed back the evaluation of the presented item list to the client 11c by a button operation, a touch panel operation, or voice input.
  • the arrangement of items in the item list IL is determined by the same processing as the item selection unit / list editing unit 127 determines the output order of the news content NC in the first example. That is, the arrangement of items in the item list IL is determined based on the score SC ′ obtained by multiplying the score SC provided from the external server by the coefficient calculated by the coefficient calculation unit 1251. More specifically, in the item list IL, each item is arranged in a more prominent position and / or with a larger size as the score SC ′ is higher.
  • a reload button RL may be displayed on the screen of the client 11c.
  • the user can recalculate the score SC ′ in the server 12 and update the arrangement of items in the item list IL by pressing the reload button RL by button operation or touch panel operation.
  • the arrangement of items in the item list IL may be updated when new feedback is acquired.
  • FIG. 9 is a block diagram illustrating a hardware configuration example of the information processing apparatus according to the embodiment of the present disclosure.
  • the illustrated information processing apparatus 900 can realize, for example, the server in the above-described embodiment.
  • the information processing apparatus 900 includes a CPU (Central Processing unit) 901, a ROM (Read Only Memory) 903, and a RAM (Random Access Memory) 905.
  • the information processing apparatus 900 may include a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 923, and a communication device 925.
  • the information processing apparatus 900 may include a processing circuit such as a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate Array) instead of or in addition to the CPU 901.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • the CPU 901 functions as an arithmetic processing device and a control device, and controls all or a part of the operation in the information processing device 900 according to various programs recorded in the ROM 903, the RAM 905, the storage device 919, or the removable recording medium 927.
  • the ROM 903 stores programs and calculation parameters used by the CPU 901.
  • the RAM 905 primarily stores programs used in the execution of the CPU 901, parameters that change as appropriate during the execution, and the like.
  • the CPU 901, the ROM 903, and the RAM 905 are connected to each other by a host bus 907 configured by an internal bus such as a CPU bus. Further, the host bus 907 is connected to an external bus 911 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 909.
  • PCI Peripheral Component Interconnect / Interface
  • the input device 915 is a device operated by the user, such as a mouse, a keyboard, a touch panel, a button, a switch, and a lever.
  • the input device 915 may be, for example, a remote control device that uses infrared rays or other radio waves, or may be an external connection device 929 such as a mobile phone that supports the operation of the information processing device 900.
  • the input device 915 includes an input control circuit that generates an input signal based on information input by the user and outputs the input signal to the CPU 901. The user operates the input device 915 to input various data and instruct processing operations to the information processing device 900.
  • the output device 917 is configured by a device capable of notifying the acquired information to the user using a sense such as vision, hearing, or touch.
  • the output device 917 can be, for example, a display device such as an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display, an audio output device such as a speaker or headphones, or a vibrator.
  • the output device 917 outputs the result obtained by the processing of the information processing device 900 as video such as text or image, sound such as sound or sound, or vibration.
  • the storage device 919 is a data storage device configured as an example of a storage unit of the information processing device 900.
  • the storage device 919 includes, for example, a magnetic storage device such as an HDD (Hard Disk Drive), a semiconductor storage device, an optical storage device, or a magneto-optical storage device.
  • the storage device 919 stores, for example, programs executed by the CPU 901 and various data, and various data acquired from the outside.
  • the drive 921 is a reader / writer for a removable recording medium 927 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and is built in or externally attached to the information processing apparatus 900.
  • the drive 921 reads information recorded on the attached removable recording medium 927 and outputs the information to the RAM 905.
  • the drive 921 writes a record in the attached removable recording medium 927.
  • the connection port 923 is a port for connecting a device to the information processing apparatus 900.
  • the connection port 923 can be, for example, a USB (Universal Serial Bus) port, an IEEE 1394 port, a SCSI (Small Computer System Interface) port, or the like.
  • the connection port 923 may be an RS-232C port, an optical audio terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) port, or the like.
  • the communication device 925 is a communication interface configured with, for example, a communication device for connecting to the communication network 931.
  • the communication device 925 can be, for example, a communication card for LAN (Local Area Network), Bluetooth (registered trademark), Wi-Fi, or WUSB (Wireless USB).
  • the communication device 925 may be a router for optical communication, a router for ADSL (Asymmetric Digital Subscriber Line), or a modem for various communication.
  • the communication device 925 transmits and receives signals and the like using a predetermined protocol such as TCP / IP with the Internet and other communication devices, for example.
  • the communication network 931 connected to the communication device 925 is a network connected by wire or wireless, and may include, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, or the like.
  • Each component described above may be configured using a general-purpose member, or may be configured by hardware specialized for the function of each component. Such a configuration can be appropriately changed according to the technical level at the time of implementation.
  • an information processing apparatus for example, an information processing apparatus, a system, an information processing method executed by the information processing apparatus or system, a program for causing the information processing apparatus to function, and a program are recorded. It may include tangible media that is not temporary.
  • a score acquisition unit that acquires the score of an item;
  • a fluctuation adding unit for adding fluctuation to the score;
  • a status information acquisition unit that acquires status information indicating the status of the user of the item;
  • An information processing apparatus comprising: a fluctuation control unit that controls whether or not to add the fluctuation, or the degree of the fluctuation based on the situation information.
  • the fluctuation is expressed by a coefficient multiplied by the score, The information processing apparatus according to (1), wherein the coefficient is calculated independently of the score.
  • the information processing apparatus according to (2) wherein the coefficient is calculated for each class in which the item is classified based on the metadata.
  • the information processing apparatus changes a probability that the fluctuation is added according to the status information.
  • the status information indicates a time margin of the user, The fluctuation control unit increases the fluctuation when the time margin is large, and reduces or does not add the fluctuation when the time margin is small.
  • the information processing apparatus according to any one of claims.
  • a list editing unit that edits the list of items according to the score or the score to which the fluctuation is added; An output control unit for outputting the list;
  • the status information indicates the number of items that can be referred to simultaneously in the list, The fluctuation control unit increases the fluctuation when the simultaneous referenceable number is large, and reduces or does not add the fluctuation when the simultaneous referenceable number is small.
  • the information processing apparatus according to any one of claims.
  • (11) The information processing apparatus according to (10), wherein the simultaneous referable number is determined according to a specification of a browser used by the user to refer to the list.
  • (12) The information processing apparatus according to (11), wherein the simultaneous referenceable number is determined according to a screen size and a screen layout of the browser.
  • (13) a list editing unit for editing the list of items according to the score or the score to which the fluctuation is added; An output control unit for outputting the list;
  • the information processing apparatus according to any one of (1) to (12), wherein the list editing unit determines a display size of an item in the list according to the score or the score to which the fluctuation is added.
  • an item selection unit that selects the items in the order according to the score or the score to which the fluctuation is added;
  • the information processing apparatus according to any one of (1) to (9), further including: an output control unit that outputs the selected item.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Databases & Information Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

 アイテムのスコアに揺らぎをもたせることによって、スコアに基づいて抽出されるアイテムに適度の多様性をもたせることを課題とし、アイテムのスコアを取得するスコア取得部と、上記スコアに揺らぎを付加する揺らぎ付加部と、上記アイテムのユーザの状況を示す状況情報を取得する状況情報取得部と、上記揺らぎを付加するか否か、または上記揺らぎの程度を上記状況情報に基づいて制御する揺らぎ制御部とを備える情報処理装置が提供される。

Description

情報処理装置、情報処理方法、およびプログラム
 本開示は、情報処理装置、情報処理方法、およびプログラムに関する。
 近年、さまざまなアイテムがオンラインで流通している。それに伴って、ユーザにアイテムを推薦するための技術も多く開発されている。こうした技術としては、内容ベースフィルタリング(CBF:Contents Based Filtering)や協調フィルタリング(CF:collaborative filtering)などの推薦アルゴリズムを利用したものが知られている。例えば、特許文献1には、状況に適合した高精度の推薦結果を得られるように、推薦アルゴリズムの組み合わせ方を制御する技術が記載されている。
特開2012-190061号公報
 しかしながら、上記のような技術で利用されている推薦アルゴリズムが、ユーザが真に興味をもちうるアイテムを十分に高い精度で推薦できているかというと、必ずしもそうではない。ユーザがアイテムに興味をもつためには、例えば、アイテムがユーザの嗜好に合っているだけではなく、推薦されるアイテムが適度の多様性をもつことによって新鮮味が与えられることも重要である。推薦されるアイテムに適度の多様性をもたせることは、例えば上述したような推薦アルゴリズムではまだ実現されていない。
 そこで、本開示では、アイテムのスコアに揺らぎをもたせることによって、スコアに基づいて抽出されるアイテムに適度の多様性をもたせることを可能にする、新規かつ改良された情報処理装置、情報処理方法、およびプログラムを提案する。
 本開示によれば、アイテムのスコアを取得するスコア取得部と、上記スコアに揺らぎを付加する揺らぎ付加部と、上記アイテムのユーザの状況を示す状況情報を取得する状況情報取得部と、上記揺らぎを付加するか否か、または上記揺らぎの程度を上記状況情報に基づいて制御する揺らぎ制御部とを備える情報処理装置が提供される。
 また、本開示によれば、アイテムのスコアを取得することと、上記スコアに揺らぎを付加することと、上記アイテムのユーザの状況を示す状況情報を取得することと、プロセッサが、上記揺らぎを付加するか否か、または上記揺らぎの程度を上記状況情報に基づいて制御することとを含む情報処理方法が提供される。
 また、本開示によれば、アイテムのスコアを取得する機能と、上記スコアに揺らぎを付加する機能と、上記アイテムのユーザの状況を示す状況情報を取得する機能と、上記揺らぎを付加するか否か、または上記揺らぎの程度を上記状況情報に基づいて制御する機能とをコンピュータに実現させるためのプログラムが提供される。
 以上説明したように本開示によれば、アイテムのスコアに揺らぎをもたせることによって、スコアに基づいて抽出されるアイテムに適度の多様性をもたせることができる。
 なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の一実施形態に係るシステムの構成例を示す図である。 本開示の一実施形態に係るサーバの機能構成例を示すブロック図である。 本開示の一実施形態に係るスコアおよび係数の例を示す図である。 本開示の一実施形態に係るスコアおよび係数の例を示す図である。 本開示の一実施形態に係るスコアおよび係数の例を示す図である。 本開示の一実施形態における出力の第1の例を示す図である。 図6に示されるような出力方法が適用される他の例を示す図である。 本開示の一実施形態における出力の第2の例を示す図である。 本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 なお、説明は以下の順序で行うものとする。
 1.システム構成
 2.サーバの機能構成
 3.揺らぎ制御の例
  3-1.制御因子の例
  3-2.揺らぎの程度を制御する例
 4.出力の例
 5.ハードウェア構成
 6.補足
 (1.システム構成)
 図1は、本開示の一実施形態に係るシステムの構成例を示す図である。図1を参照すると、システム10は、クライアント11と、サーバ12とを含む。クライアント11およびサーバ12は、いずれも、例えば後述する情報処理装置のハードウェア構成によって実現されうる。なお、サーバ12は、ネットワークによって接続された複数の情報処理装置が協働することによって実現されてもよい。
 クライアント11は、具体的には、モバイル装置、ウェアラブル装置、テレビ、またはパーソナルコンピュータなどの端末装置を含みうる。クライアント11は、例えば、アイテムの出力または選択のために利用される。アイテムは、例えば、ゲーム、映画、音楽、書籍、ニュース、および/またはソーシャルコンテンツなどを含みうる。アイテムは、例えば、クライアント11において画像や音声として出力される(ダウンロードまたはストリーミングによって配信されるコンテンツ)。この場合、サーバ12によって選択的に提供されたコンテンツが、自動的にクライアント11から出力されてもよい。あるいは、サーバ12からクライアント11にアイテムリスト(必ずしも表形式でなくてよい)が提供され、リストの中からユーザが選択したアイテムがクライアント11から出力されてもよい。この場合、アイテムは、クライアント11から発行されるオーダーに応じてユーザの元に配送されてもよい(例えば記録媒体などの実体的なアイテム)。
 サーバ12は、ネットワークを介してクライアント11に接続された1または複数のサーバ装置を含みうる。本実施形態において、サーバ12は、クライアント11にアイテムまたはアイテムリストを提供する。上記の通り、ユーザはアイテムの出力または選択のためにクライアント11を利用するが、その際、利用可能なアイテムの中からどのアイテムを選択的に提供するか、またはどのアイテムをどのような配列でリストに含めるかは、サーバ12によって決定される。より具体的には、例えば、サーバ12は、アイテムに与えられたスコアに基づいて、提供されるアイテムやアイテムリストの構成などを決定する。アイテムのスコアは、例えば、アイテムのメタデータの類似性に基づくCBFや、ユーザごとのアイテムの嗜好の類似性に基づくCFなどの推薦アルゴリズムによって与えられる。サーバ12は、例えば、推薦アルゴリズムによって与えられたスコアが高いものから順にアイテムをクライアント11に提供したり、スコアまたはスコアの順位が閾値よりも高いアイテムが配列されたリストをクライアント11に提供したりする。
 ここで、上述の通り、CBFやCFのような推薦アルゴリズムは、必ずしもユーザが真に興味をもちうるアイテムを十分に高い精度で推薦できるとは限らない。例えば、CBFでは、ユーザが過去に嗜好を示したアイテムに類似したメタデータを有するアイテムが推薦されるため、ユーザが見慣れた、新鮮味に欠けるアイテムが推薦される傾向がある。また、CFでは、ユーザが過去に嗜好を示したアイテムとは類似しないアイテムを推薦することが可能であるものの、アイテムの嗜好はユーザごとに様々であり全く同じ嗜好を有するユーザは多くないため、推薦されたアイテムがユーザの嗜好から外れている場合も多々ある。従って、サーバ12が、このような推薦アルゴリズムによって与えられたスコアをそのまま利用して、提供されるアイテムやリストの構成などを決定すると、提供されるアイテムやリストがユーザの興味を惹かず、ひいてはアイテムの利用意欲自体を減退させてしまう可能性がある。それゆえ、本実施形態では、サーバ12において、アイテムのスコアに揺らぎをもたせることによって、スコアに基づいて抽出されるアイテムに適度の多様性をもたせる処理が実行される。以下では、このような処理について特に詳細に説明する。
 (2.サーバの機能構成)
 図2は、本開示の一実施形態に係るサーバの機能構成例を示すブロック図である。図2を参照すると、サーバ12は、受信部121と、フィードバック取得部122と、状況情報取得部123と、スコア取得部124と、揺らぎ付加部125と、揺らぎ制御部126と、アイテム選択部/リスト編集部127と、送信部128とを含む。これらの機能構成は、いずれも、サーバ12を実現する情報処理装置が備えるCPUなどのプロセッサによって実現されうる。さらに、サーバ12は、アイテムDB(データベース)131、ユーザDB132、および/または係数DB133を含んでもよい。これらのDBは、サーバ12を実現する情報処理装置が備えるメモリまたはストレージ装置によって実現されうる。以下、それぞれの機能構成について、さらに説明する。
 受信部121は、サーバ12を実現する情報処理装置が備える通信装置によって受信された各種の情報を扱う。受信される情報は、例えば、クライアント11によって送信される、アイテムまたはアイテムリストの要求を含む。また、受信される情報は、サーバ12からクライアント11に提供されたアイテムなどに対するユーザのフィードバックを含んでもよい。フィードバックは、フィードバック取得部122に提供される。さらに、受信される情報は、クライアント11のユーザ、つまりアイテムのユーザの状況を示す状況情報を含みうる。状況情報は、状況情報取得部123に提供される。なお、サーバ12からクライアント11にリストだけが提供されるような場合も、クライアント11のユーザがアイテムのユーザである点には変わりがない。場合によっては、受信される情報は、外部のサーバによって提供された利用可能なアイテムのリストや、アイテムのスコアなどを含んでもよい。この場合、アイテムのリストやスコアなどは、スコア取得部124に提供される。
 フィードバック取得部122は、サーバ12からクライアント11に提供されたアイテムなどに対するユーザのフィードバックを取得する。本実施形態において、フィードバックは、例えば、アイテムとともに提示される評価ボタンなどを用いて入力される明示的なフィードバック(ポジティブ/ネガティブ)や、音楽や映像のアイテムの再生(ポジティブ)、再生の中止(ネガティブ)、リピート(ポジティブ)、スキップ(ネガティブ)、ゲームなどのアイテムの購入(ポジティブ)、プレイ(ポジティブ)、売却(ネガティブ)などに現れる黙示的なフィードバックを含みうる。なお、それぞれのフィードバックの意味(ポジティブ/ネガティブなど)は、誰が、いつ、どこで、どういう状態で(感情、脈拍、脳波など)、誰と、といったようなユーザの状況に応じて決定されてもよい。なお、後述する揺らぎ付加部125の処理でユーザからのフィードバックが必要とされない場合、サーバ12は必ずしもフィードバック取得部122を含まなくてもよい。
 状況情報取得部123は、クライアント11のユーザ、つまりアイテムのユーザの状況を示す状況情報を取得する。本実施形態において、状況情報は、ユーザの時間的な余裕を示しうる。ユーザの時間的な余裕は、例えば時間帯やユーザの行動パターンなどから推定されてもよい。より具体的には、朝、出勤前や通勤中には、時間的余裕が小さいことが推定されてもよい。また、夜、夕食後や寝る前には、時間的余裕が大きいことが推定されてもよい。このような推定のために、例えばクライアント11が備えるセンサなどを用いた行動認識の技術が利用されてもよい。あるいは、状況情報は、サーバ12からクライアント11に提供されるアイテムリストにおけるアイテムの同時参照可能数を示してもよい。同時参照可能数は、ユーザがアイテムリストを参照するために使用しているブラウザ(つまりクライアント11)の仕様によって異なりうる。それゆえ、この場合、状況情報は、ブラウザの仕様を示す情報を含みうる。なお、状況情報取得部123は、アイテムリストの同時参照可能数に関する情報を、アイテム選択/リスト編集部127から取得してもよい。本実施形態において、状況情報取得部123によって取得されるこのような状況情報は、後述する揺らぎ制御部126によって、アイテムのスコアに与えられる揺らぎを制御するために利用される。
 スコア取得部124は、サーバ12において利用可能なアイテムのスコアを取得する。本実施形態では、後段の処理でアイテムのスコアが比較されるため、複数のアイテムのスコアが取得されるものとする。利用可能なアイテムは、例えば、配信中/販売中のアイテム(ゲーム、映画、音楽、または書籍など)や新着のアイテム(ニュースフィードやソーシャルメディアのフィードなど)などを含みうる。上記の通り、アイテムのスコアは、例えばCBFやCFなどの推薦アルゴリズムによって与えられる。なお、推薦アルゴリズム、またはその他のアルゴリズムによってアイテムにスコアを与えることは、既に知られた技術であるため、ここではその方法についての詳細な説明は省略する。本実施形態では、上記のような推薦アルゴリズムに限らず、利用可能な各種のアルゴリズムによってアイテムにスコアを与えることができる。
 ここで、本実施形態において、スコア取得部124は、自らアイテムのスコアを算出してもよいし、外部のサーバによって提供されるアイテムのスコアを取得してもよい。自らスコアを算出する場合、スコア取得部124は、例えばアイテムDB131に格納されたアイテムのメタデータや、ユーザDB132に格納されたユーザによるアイテムの嗜好を示すデータなどを利用してアイテムのスコアを算出する。アイテムのメタデータは、例えばアイテム提供者によって運用される外部のサーバから受信部121に提供され、アイテムDB131に蓄積される。ユーザによるアイテムの嗜好を示すデータは、例えばフィードバック取得部122によって取得されたアイテムに対するユーザのフィードバックに基づいて生成され、ユーザDB132に蓄積される。外部のサーバによって提供されるスコアが取得される場合、上記のようなデータの蓄積やスコアの算出の処理は、外部のサーバにおいて実行される。従って、この場合、サーバ12は必ずしもアイテムDB131やユーザDB132を含まなくてもよい。あるいは、サーバ12はアイテムDB131および/またはユーザDB132を含み、これらのDBから抽出したデータを外部のサーバに送信してアイテムのスコアの算出を依頼してもよい。この場合、アイテムDB131には、アイテムのメタデータが格納されてもよいし、スコア算出の対象になるアイテム、つまりスコアを算出する時点においてサーバ12が利用可能なアイテムの識別情報だけが格納されてもよい。
 揺らぎ付加部125は、スコア取得部124が取得したスコアに揺らぎを付加する。ここで、本明細書において、スコアに揺らぎを付加することは、推薦アルゴリズムなどに基づいて算出または取得されたスコアに対して、元のスコアとは異なる因子に基づく操作を加えることを意味する。スコアに揺らぎを付加することは、必ずしも、スコアをランダム化させることを意味しない。例えば、2つのアイテムの元のスコアの差が大きい場合、スコアに揺らぎが付加されても、スコアの大小関係は逆転しない可能性が高い。しかし、例えば、2つのアイテムの元のスコアの差が小さい場合、スコアに揺らぎが付加されると、スコアの大小関係が逆転する可能性がある。従って、例えば推薦アルゴリズムによってアイテムにスコアが与えられる場合、揺らぎが付加されたスコアにおいても、推薦アルゴリズムにおいて推定されたユーザの嗜好と全く異なるアイテムに高いスコアが与えられるわけではない。スコアに揺らぎを付加することによって、本来のアルゴリズムによって与えられたスコアによって示されるアイテムの価値をベースにしつつ、スコアに基づいて抽出されるアイテムに適度の多様性をもたせることを可能にする。
 本実施形態では、このような揺らぎ付加部125の機能が、元のスコアとは独立して算出された係数をスコアに乗じることによって実装されている。つまり、本実施形態では、揺らぎが、スコアに乗じられる係数によって表現されている。揺らぎ付加部125は、係数を算出するための係数算出部1251を含む。係数算出部1251は、例えば、アイテムがそのメタデータに基づいて分類されるクラスごとに係数を算出する。係数は各ユーザについて算出され、係数DB133に格納されてもよい。アイテムのメタデータは、例えば、ジャンル、価格帯、発行時期、著者、出版社などの書誌的事項や、潜在トピックモデルを用いて抽出されるドキュメントのトピック、音楽や映像の雰囲気などを示すデータを含みうる。また、アイテムのメタデータは、機械学習の結果などに基づいて特定される抽象的なデータであってもよい。このようなメタデータに基づいて、アイテムをクラスに分類することができる。アイテムは、いずれかのクラスに択一的に分類されてもよいし、それぞれのクラスにスコアを配分することによって複数のクラスに重複的に分類されてもよい。なお、アイテムのメタデータの生成や、メタデータに基づくアイテムの分類は、既に知られた技術であるため、ここではその方法についての詳細な説明は省略する。本実施形態では、上記のようなメタデータに限らず、利用可能な各種のメタデータに基づいてアイテムをクラスに分類することができる。
 続いて、係数算出部1251によるアイテムのクラスごとの係数の算出の例について、さらに説明する。例えば、係数算出部1251は、それぞれのクラスに分類されるアイテムに対するユーザのフィードバックに基づいて係数を算出する。上記の通り、アイテムに対するユーザのフィードバックは、フィードバック取得部122によって取得される。本実施形態において、係数算出部1251は、アイテムに対するフィードバックをクラスごとに集計および解析することによって、それぞれのクラスの係数を算出する。算出される係数は、ユーザにとってのそれぞれのクラスの価値を表現するものでありうる。より具体的には、例えば、ポジティブなフィードバックが取得されているアイテムを含み、ユーザにとっての価値が高いと推定されるクラスでは、より高い係数が算出されうる。また、ネガティブなフィードバックが取得されているアイテムを含み、ユーザにとっての価値が高くないと推定されるクラスでは、より低い係数が算出されうる。
 本実施形態において、揺らぎ付加部125は、上記のようにして係数算出部1251によって算出された係数を、スコア取得部124が取得したスコアに乗じることによって、スコアに揺らぎを付加する。この場合、係数は、スコアが与えられているそれぞれのアイテムが分類されるクラスに応じて乗じられる。このようなスコアと係数との関係を、図3に示す。図示されているように、高い係数が算出されているクラスに分類されるアイテムのスコアは、係数が乗じられることによって他のアイテムのスコアよりも相対的に上方修正される。また、低い係数が算出されているクラスに分類されるアイテムのスコアは、係数が乗じられることによって他のアイテムのスコアよりも相対的に下方修正される。なお、アイテムが分類されるクラスは複数の種類にわたっていてもよく、その場合はそれぞれの種類のクラスについて算出された係数が、重複的にアイテムのスコアに乗じられる。そのような場合の例を、図4に示す。さらに、複数のクラスの種類について係数が算出される場合、種類ごとの重みが設定されてもよい。そのような場合の例を、図5に示す。
 なお、上述したようなアイテムのクラス分類や、アイテムに対するフィードバックに基づく価値の推定は、スコアを算出するためのアルゴリズムの中にも含まれうる要素である。しかしながら、スコアを算出するためのアルゴリズムが、上記の係数を算出するためのアルゴリズムと同一でない限り、スコアに乗じられる係数は揺らぎとして作用しうる。
 例えば、スコアを算出するためのアルゴリズムでは、アイテムがクラス分類され、アイテムに対するフィードバックに基づいてクラスの価値が推定され、クラスの価値に基づいてアイテムの価値が算出されるかもしれない。しかし、そのような場合でも、スコアの算出と係数の算出とでクラスの構成が異なっていれば、係数は揺らぎとして作用しうる。例えば、スコアの算出のためにはジャンル、著者、およびトピックに関するクラスが使用され、係数の算出のためにはジャンルに関するクラスのみが使用される場合、スコアに係数が乗じられることによって、著者およびトピックに関するクラスの価値がスコアに及ぼす影響が小さくなる結果、スコアの大小関係が変化する可能性がある。従って、この場合、係数を乗じることによってスコアに揺らぎが付加されているといえる。
 また、例えば、スコアの算出のために使用されるクラスの構成と係数の算出のために使用されるクラスの構成とが同じであっても、クラスの価値の算出のために集計されるフィードバックの範囲と、係数の算出のために集計されるフィードバックの範囲とが異なっていれば、係数は揺らぎとして作用しうる。例えば、スコアの算出のためにはこれまで取得されたフィードバックの全体が集計され、係数の算出のためには直近の1ヶ月に取得されたフィードバックだけが集計される場合、スコアに係数が乗じられることによって、1ヶ月前よりも過去に取得されたフィードバックがスコアに及ぼす影響が小さくなる結果、スコアの大小関係が変化する可能性がある。従って、この場合、係数を乗じることによってスコアに揺らぎが付加されているといえる。
 実際には、スコアを算出するためのアルゴリズムは、上記のような例よりもずっと複雑であることが多い。従って、係数算出部1251がスコアとは独立して算出した係数を乗じれば、スコアに揺らぎを付加することができる(スコアと独立して係数を算出するためのアルゴリズムが、スコアを算出するためのアルゴリズムと同一になることはまずない)。ここで、係数算出部1251は、必ずしも、上記の例のように、アイテムに対するユーザのフィードバックに基づいて係数を算出しなくてもよい。例えば、係数算出部1251は、全くランダムに係数を算出してもよい。しかしながら、上記の例のように、ユーザの嗜好を何らかの形で反映した係数が算出される方が、例えば、スコアに揺らぎが付加された結果として抽出されたアイテムが、ユーザの興味を惹く可能性が高くなる。
 揺らぎ制御部126は、揺らぎ付加部125がスコアに揺らぎを付加するか否か、または揺らぎ付加部125によってスコアに付加される揺らぎの程度を、状況情報取得部123が取得する状況情報に基づいて制御する。つまり、揺らぎ制御部126は、状況情報によって示されるユーザの状況に応じて、揺らぎ付加部125を有効にするか否かを制御しうる。また、揺らぎ制御部126は、揺らぎ付加部125が有効である場合に、ユーザの状況に応じて、付加される揺らぎの程度を制御してもよい。上述のように、本実施形態では、揺らぎ付加部125がアイテムのスコアに揺らぎを付加することによって、例えばスコアに基づいて抽出されるアイテムに適度の多様性をもたせることができる。しかしながら、完全ではないとはいえ、スコアを算出するための推薦アルゴリズムは、スコアに基づいて抽出されるアイテムがユーザの嗜好に適合可能性が最も高くなるように最適化されている。従って、スコアに揺らぎを付加することが常に適切であるとは限らず、例えばスコアに基づいて抽出されるアイテムが少ない数に限られるような場合には、揺らぎを付加せずに、または付加される揺らぎを小さくして、算出されたスコアをほぼそのまま用いた方がよい場合もありうる。そこで、本実施形態では、揺らぎ制御部126が、揺らぎ付加部125の動作を制御することによって、ユーザの状況に応じた適切なスコアの提供を可能にする。なお、そのような制御の具体的な例については後述する。
 アイテム選択/リスト編集部127は、スコア取得部124が取得したスコア、または揺らぎ付加部125によって揺らぎが付加されたスコアに従って処理を実行する。アイテム選択/リスト編集部127は、スコア(以下、揺らぎが付加されている場合を含む)に従った順序でアイテムを選択するか、スコアに従ってアイテムリストを編集する。いずれの処理が実行されるかは、サーバ12がクライアント11にアイテム自体を提供するか、アイテムリストを提供するかによって異なる。アイテム選択/リスト編集部127は、アイテム選択またはリスト編集のいずれかの機能を提供してもよいし、両方の機能を提供してもよい。アイテム選択は、例えば、クライアント11で(ユーザによる選択を経ずに)自動的にアイテムの画像や音声が出力される場合に実行される。なお、例えば音声コンテンツと音声を伴わない画像コンテンツ(ウェブページなどを含む)とが出力される場合のように、複数の種類のアイテムが並行して出力される場合、アイテム選択/リスト編集部127は、それぞれの種類についてアイテムを出力する順序を決定する。リスト編集は、例えば、クライアント11にアイテムリストが提供され、クライアント11においてユーザがアイテムを選択する場合に実行される。なお、上記の通りリストは必ずしも表形式でなくてもよく、さまざまな画面上の配置、または音声の読み上げなどによって表現されうる。スコアに従ったアイテムリストの編集では、リストにおける各アイテムの配置の順序、および/またはリストにおける各アイテムの表示サイズなどが、スコアに応じて決定されうる。なお、アイテムリストのより具体的な例については後述する。
 送信部128は、サーバ12を実現する情報処理装置が備える通信装置によって送信される各種の情報を扱う。送信される情報は、例えば、クライアント11に提供されるアイテムまたはアイテムリストを含む。上記の通り、アイテムまたはアイテムリストは、アイテム選択/リスト編集部127によって選択または編集されたものでありうる。また、送信部128によって扱われて通信装置から送信されたアイテムまたはアイテムリストは、クライアント11において出力される。従って、送信部128は、アイテムまたはアイテムリストを出力させる出力制御部であるともいえる。外部のサーバによってアイテムのスコアが提供されるような場合、送信部128は、フィードバック取得部122によって取得されたフィードバックなど、サーバ12において利用可能な情報であってスコアの算出のために必要な情報を、外部のサーバに転送してもよい。
 (3.揺らぎ制御の例)
 (3-1.制御因子の例)
 本実施形態では、サーバ12において、揺らぎ制御部126が、揺らぎ付加部125がスコアに揺らぎを付加するか否か、または揺らぎ付加部125によってスコアに付加される揺らぎの程度を制御する。このような揺らぎ制御の因子は、状況情報取得部123が取得する状況情報を含む。以下、状況情報と揺らぎの有無または程度との関係のいくつかの例について、さらに説明する。
 (第1の例:ユーザの時間的な余裕)
 上記の通り、本実施形態では、状況情報取得部123によって取得される状況情報が、ユーザの時間的な余裕を示しうる。例えば、クライアント11においてユーザの操作入力によって時間的な余裕が指定されたり、クライアント11または外部のサーバでユーザの行動認識が実行されるような場合、状況情報取得部123は、ユーザの時間的な余裕を示す情報を取得しうる。このような情報では、例えば、ユーザの時間的な余裕が、残り時間の目安や、ユーザが次の行動に移る(例えば家を出る、電車を降りるなど)見込み時刻などによって表現されてもよい。あるいは、状況情報取得部123は、ユーザの行動認識のソースになる情報を取得してもよい。この場合、状況情報取得部123または揺らぎ制御部126においてユーザの行動認識が実施され、ユーザの時間的な余裕が推定される。例えば上記のいずれかの方法によって、ユーザの時間的な余裕を示す情報が取得される場合の揺らぎ制御部126の処理について、以下でさらに説明する。
 この場合、例えば、揺らぎ制御部126は、ユーザの時間的な余裕が大きい場合には揺らぎを大きくし、時間的な余裕が小さい場合には揺らぎを小さくするように、揺らぎ付加部125を制御する。あるいは、揺らぎ制御部126は、ユーザの時間的な余裕が大きい場合には揺らぎ付加部125を有効化し、時間的な余裕が小さい場合には揺らぎ付加部125を無効化してもよい。この場合、ユーザの時間的な余裕が小さい場合にはスコアに揺らぎが付加されない。
 本例では、揺らぎ制御部126が、ユーザの時間的な余裕が大きい場合には、揺らぎを含んだスコアを用いてアイテムを抽出することによって、多様性をもったアイテムまたはアイテムリストがユーザに提供されるようにする。既に説明したように、例えば推薦アルゴリズムなどによって算出されたスコアに基づいて抽出されるアイテムはユーザの嗜好に適合する可能性が高いが、嗜好に適合するアイテムであっても、新鮮味に欠けるなどの理由でユーザの興味を惹かない場合がある。それゆえ、スコアに揺らぎを付加し、抽出されるアイテムに多様性をもたせることには意義があるが、スコアに揺らぎが付加されることによって、抽出されるアイテムがユーザの嗜好に適合しない可能性が若干高くなる。しかし、ユーザの時間的な余裕が大きい場合、例えば出力されているアイテムをスキップして次のアイテムを出力させるとか、リストの下位に表示されている他のアイテムを選択するといったような操作が可能である。従って、時間的な余裕さえあれば、ユーザが感じる不便はさほど大きくなく、むしろ新鮮味のあるアイテムが抽出されるなどといったことによる効用の方が大きいと考えられる。
 一方、本例では、ユーザの時間的な余裕が小さい場合には、揺らぎを含まない、または揺らぎの小さいスコアを用いてアイテムを抽出することによって、多様性には欠けるかもしれないがユーザの嗜好に適合している可能性が高いアイテムまたはアイテムリストがユーザに提供されるようにする。上記の通り、スコアに揺らぎを付加した場合、抽出されるアイテムがユーザの嗜好に適合しない可能性が若干高くなる。ユーザの時間的な余裕が小さい場合でも、例えば出力されているアイテムをスキップして次のアイテムを出力させるとか、リストの下位に表示されている他のアイテムを選択するといったような操作は可能でありうる。しかし、ユーザの時間的な余裕が小さい場合、そのような操作によって時間のロスが発生したと感じる可能性は、時間的な余裕が大きい場合に比べると高い。従って、本例では、状況情報によってユーザの時間的な余裕が小さいことが示される場合、揺らぎ制御部126が、揺らぎ付加部125を無効化するか、揺らぎ付加部125によって付加される揺らぎが小さくなるような制御を実行する。
 (第2の例:リストにおけるアイテムの同時参照可能数)
 上記の通り、本実施形態では、状況情報取得部123によって取得される状況情報が、クライアント11で出力されるアイテムリストにおけるアイテムの同時参照可能数を示しうる。同時参照可能数は、ユーザがリストを参照するために使用しているブラウザ(つまりクライアント11)の仕様によって異なりうる。例えば、クライアント11が画面にリストを表示するビジュアルブラウザである場合、同時参照可能数は、クライアント11で画面に表示されるリストに同時に含まれるアイテムの数でありうる。この場合の同時参照可能数は、クライアント11の画面サイズや画面レイアウトによって異なる。なお、参照の同時性を厳密に解釈しない場合は、画面のスクロールや拡大/縮小などが考慮されてもよい。また、例えば、クライアント11がリストを読み上げるボイスブラウザである場合、同時参照可能数は1と判定されてもよい。上記と同様に、参照の同時性を厳密に解釈しない場合は、所定の時間内に読み上げられるアイテムの数が同時参照可能数として判定されてもよい。他の例として、クライアント11において自動的にアイテムが出力される場合(音楽や映像など)も、同時参照可能数が1(または少ない数)のアイテムリストが提供される場合と同様に扱われてもよい。このように、出力されるアイテムリストにおけるアイテムの同時参照可能数を示す情報が取得される場合の揺らぎ制御部126の処理について、以下でさらに説明する。
 この場合、例えば、揺らぎ制御部126は、アイテムリストにおけるアイテムの同時参照可能数が多い場合には揺らぎを大きくし、同時参照可能数が少ない場合には揺らぎを小さくするように、揺らぎ付加部125を制御する。あるいは、揺らぎ制御部126は、アイテムリストにおけるアイテムの同時参照可能数が多い場合には揺らぎ付加部125を有効化し、同時参照可能数が少ない場合には揺らぎ付加部125を無効化してもよい。この場合、アイテムリストにおけるアイテムの同時参照可能数が少ない場合にはスコアに揺らぎが付加されない。
 本例では、揺らぎ制御部126が、アイテムリストにおけるアイテムの同時参照可能数が多い場合には、揺らぎを含んだスコアを用いてアイテムを抽出することによって、多様性をもったアイテムリストがユーザに提供されるようにする。上記の第1の例と同様に、スコアに揺らぎを付加し、抽出されるアイテムに多様性をもたせることには意義があるが、スコアに揺らぎが付加されることによって、抽出されるアイテムがユーザの嗜好に適合しない可能性が若干高くなる。しかし、アイテムリストにおけるアイテムの同時参照可能数が多い場合、例えば同時に表示されている他のアイテムを選択することが可能である。他のアイテムが同時に表示されていれば、ユーザが感じる不便はさほど大きくなく、むしろ新鮮味のあるアイテムが抽出されるなどといったことによる効用の方が大きいと考えられる。
 一方、本例では、揺らぎ制御部126が、アイテムリストにおけるアイテムの同時参照可能数が少ない場合には、揺らぎを含まない、または揺らぎの小さいスコアを用いてアイテムを抽出することによって、多様性には欠けるかもしれないがユーザの嗜好に適合している可能性が高いアイテムリストがユーザに提供されるようにする。上記の通り、スコアに揺らぎを付加した場合、抽出されるアイテムがユーザの嗜好に適合しない可能性が若干高くなる。アイテムリストにおけるアイテムの同時参照可能数が少ないと、参照可能なすべてのアイテムが揺らぎの結果として抽出されたものになり(つまり元のスコアに従って抽出されたアイテムとは異なるものになり)、他のアイテムを選択するためにアイテムリストを更新する操作が必要になる。このような操作はユーザに不便を感じさせる可能性があり、またアイテムの抽出アルゴリズムに対する信頼感を損ねる可能性もある。従って、本例では、状況情報によってアイテムの同時参照可能数が少ないことが示される場合、揺らぎ制御部126が、揺らぎ付加部125を無効化するか、揺らぎ付加部125によって付加される揺らぎが小さくなるような制御を実行する。
 (3-2.揺らぎの程度を制御する例)
 続いて、本実施形態における揺らぎ制御の対象の例について説明する。本実施形態では、揺らぎ付加部125が、例えばスコア取得部124によって取得されたスコアに係数算出部1251が算出した係数を乗じることによって、スコアに揺らぎを付加する。揺らぎ制御部126は、このような揺らぎ付加部125を有効化/無効化したり、揺らぎ付加部125によって付加される揺らぎの程度を制御したりする。揺らぎ制御部126が揺らぎ付加部125を有効化/無効化する場合の具体的な処理については容易に理解されるであろうが、揺らぎの程度を制御する処理についてはいくつものバリエーションがありうる。以下では、そのような制御のいくつかの例について、さらに説明する。
 (第1の例:確率の導入)
 第1の例では、揺らぎ制御部126が、揺らぎ付加部125によってスコアに揺らぎが付加される確率を、状況情報取得部123によって取得される状況情報に応じて変更する。例えば、確率Pでスコアに揺らぎが付加される場合、確率(1-P)でスコアに揺らぎが付加されない。例えば、複数のアイテムに与えられたスコアに係数を乗じることによって揺らぎが付加される場合、それぞれのアイテムに係数を乗じるか否かは確率Pに基づいて判定される。この場合、確率Pが大きいほど、スコアに係数が乗じられることによって揺らぎが付加される確率は高くなる。揺らぎを最大化する場合、確率Pは1に設定されてもよい。この場合、すべてのアイテムのスコアに揺らぎが付加される。また、揺らぎを最小化する場合、確率Pは0に設定されてもよい。この場合、どのアイテムのスコアにも揺らぎが付加されない(または、すべての係数が1として扱われる)。
 (第2の例:連続的な制御)
 第2の例では、揺らぎ制御部126が、揺らぎ付加部125において係数算出部1251が算出する係数をパラメータTによって補正することで、揺らぎの程度を制御する。例えば、係数算出部1251がアイテムのクラスごとに係数を算出する場合、クラスCについて係数Fが算出されたとする。この場合、パラメータTを用いて補正されたi番目のクラスの係数Gは、以下の式1によって算出することができる。
Figure JPOXMLDOC01-appb-M000001
 式1によって算出される係数Gは、パラメータTの値に関らず、Σ(G)=1を満たす。つまり、式1によって補正された係数Gは、全クラスでの総和が1になるように正規化されている。パラメータT=∞で、係数Gは全クラスで等しい値になる。つまり、係数Gの分布(大小関係)が完全に平準化される。一方、パラメータT≒0で、係数Gは元の分布(大小関係)を維持したまま正規化される。このようなパラメータTの性質を利用して、揺らぎ付加部125によって付加される揺らぎの程度を連続的に制御することができる。例えば、揺らぎを小さくする場合、パラメータTを大きくすればよい。T=∞として係数Gを計算することによって、揺らぎ付加部125を実質的に無効化することができる。また、揺らぎを大きくする場合、パラメータTを小さくすればよい。T≒0として係数Gを計算することによって、係数によってスコアに与えられる揺らぎを最大化することができる。
 (第3の例:係数の更新回数に応じた制御)
 第3の例では、揺らぎ制御部126が、揺らぎ付加部125において係数算出部1251が算出する係数を更新回数に応じて一時的に補正することによって、揺らぎの程度を制御する。本例では、係数算出部1251が、フィードバック取得部122によって取得されるフィードバックに基づいて、各クラスについての係数を逐次更新するものとする。この場合、上記の第2の例と同様に、クラスCについて算出された係数Fが算出されたとすると、補正されたi番目のクラスの係数Gは、係数Fの更新回数nを用いて、以下の式2によって算出することができる。なお、aは任意の定数である。
Figure JPOXMLDOC01-appb-M000002
 式2によって算出される係数Gは、係数Fの更新回数nが、係数F全体の更新回数の総和Σ(n)に比較して少ないほど上方修正されることになる。なお、係数Gの値は、いずれかのクラスについて係数Fが更新される度に変動するため、揺らぎ制御部126は、揺らぎの制御が必要になる度にそれぞれの係数Fを更新した係数Gを算出するか、定期的に係数Fから算出された係数Gの値を次回の算出まで使用するように揺らぎ付加部125を制御する。
 上記の通り、本例では、係数算出部1251が算出および更新した係数Fが、更新回数が少ないほど上方修正されて係数Gになる。従って、揺らぎ付加部125がこのような係数Gを用いてスコアに揺らぎを付加する場合、アイテムのクラスのうち、まだあまりフィードバックが収集されていないためにスコアの更新回数が少ないクラスについて、係数Gが上方修正され、従って係数が乗じられるスコアも上方修正されることになる。その結果、当該クラスのアイテムについて新たにユーザからフィードバックが提供されれば、係数算出部1251がフィードバックに基づいて係数を更新し、係数の信頼度を向上させることができる。
 (4.出力の例)
 図6は、本開示の一実施形態における出力の第1の例を示す図である。図6に示された例では、クライアント11a(音声出力機能を有する)において、ニュースコンテンツが音声出力される。ユーザは、クライアント11aに対して、出力されたニュースコンテンツに対する評価を発話する。クライアント11aは、この発話をフィードバックFBとして取得する。
 サーバ12では、揺らぎ付加部125に含まれる係数算出部1251が、フィードバックFBに基づいて係数を算出し、算出された係数を係数DB133に格納する。図示された例では、コンテンツのジャンル、例えば政治、芸術、テクノロジー、健康などといったクラスについて係数が算出されている。さらに、サーバ12では、外部のコンテンツ提供サーバから、ニュースコンテンツNCが提供される。それぞれのニュースコンテンツNCには、推薦アルゴリズムによって算出されたスコアSCが与えられている。
 さらに、サーバ12は、外部のサーバから提供されたスコアSCに、係数算出部1251によって算出された係数を乗じてスコアSC’にすることによって、スコアSCに揺らぎを加える。続いて、サーバ12では、アイテム選択部/リスト編集部127が、スコアSC’に従ってニュースコンテンツNCを出力する順序を決定する。結果として、ニュースコンテンツNCが出力される順序は、元のスコアSCに従った順序と比べて変更されている。決定された順序で、ニュースコンテンツNCは送信部128からクライアント11aに送信され、クライアント11aで音声出力される。
 上記のようにしてクライアント11aで音声出力されたニュースコンテンツNCに対しても、ユーザは、発話によってフィードバックFBを与えることが可能である。サーバ12では、係数算出部1251が、新たに提供されたフィードバックFBに基づいて係数を更新する。揺らぎ付加部125は更新された係数を用いてスコアSC’を再算出し、アイテム選択部/リスト編集部127は再算出されたスコアSC’によってニュースコンテンツNCを出力する順序を再決定する。このようにして、図示された例では、ユーザのフィードバックFBを利用してリアルタイムでアイテムの出力順が最適化される。
 図7は、図6に示されるような出力方法が適用される他の例を示す図である。図6の例ではニュースコンテンツNCが音声出力されたが、アイテム(コンテンツ)が画像として出力される場合でも、アイテム選択部/リスト編集部127によって決定された順序でコンテンツが順次出力される場合がありうる。図7に示された例では、腕時計型のウェアラブル端末であるクライアント11bにおいて、単一のニュースコンテンツNCが表示されている。このような場合も、サーバ12でアイテム選択部/リスト編集部127がスコアSC’に従って決定した順序に従って、クライアント11bでニュースコンテンツNCが出力される。ユーザからのフィードバックは、例えばサイドボタン111によって入力されてもよい。また、ニュースコンテンツNCは、例えば画像として表示されてもよいし、テキストによってスクロール表示されてもよい。
 図8は、本開示の一実施形態における出力の第2の例を示す図である。図8に示された例では、クライアント11c(ある程度の大きさのあるディスプレイを有する)において、ニュースコンテンツの要約を含むアイテムリストILが画像として出力される。ユーザは、クライアント11cに対して、ボタン操作、タッチパネル動作、または音声入力などによって、提示されたアイテムリストへの評価などをフィードバックすることができる。
 この例では、上記の第1の例においてアイテム選択部/リスト編集部127がニュースコンテンツNCの出力順を決定したのと同様の処理によって、アイテムリストILにおけるアイテムの配置が決定される。つまり、アイテムリストILにおけるアイテムの配置は、外部のサーバから提供されたスコアSCに、係数算出部1251が算出した係数を乗じて得られるスコアSC’に基づいて決定される。より具体的には、アイテムリストILにおいて、各アイテムは、スコアSC’が高いものほど目立つ位置に、および/または大きなサイズで配置される。
 また、クライアント11cの画面には、リロードボタンRLが表示されてもよい。ユーザは、ボタン操作やタッチパネル操作によってリロードボタンRLを押下することによって、サーバ12においてスコアSC’を再計算させ、アイテムリストILにおけるアイテムの配列を更新することができる。また、アイテムリストILにおけるアイテムの配列は、新たなフィードバックが取得された時点で更新されてもよい。
 (5.ハードウェア構成)
 次に、図9を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図9は、本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。図示された情報処理装置900は、例えば、上記の実施形態におけるサーバを実現しうる。
 情報処理装置900は、CPU(Central Processing unit)901、ROM(Read Only Memory)903、およびRAM(Random Access Memory)905を含む。また、情報処理装置900は、ホストバス907、ブリッジ909、外部バス911、インターフェース913、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923、通信装置925を含んでもよい。情報処理装置900は、CPU901に代えて、またはこれとともに、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはFPGA(Field-Programmable Gate Array)などの処理回路を有してもよい。
 CPU901は、演算処理装置および制御装置として機能し、ROM903、RAM905、ストレージ装置919、またはリムーバブル記録媒体927に記録された各種プログラムに従って、情報処理装置900内の動作全般またはその一部を制御する。ROM903は、CPU901が使用するプログラムや演算パラメータなどを記憶する。RAM905は、CPU901の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一次記憶する。CPU901、ROM903、およびRAM905は、CPUバスなどの内部バスにより構成されるホストバス907により相互に接続されている。さらに、ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続されている。
 入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置900の操作に対応した携帯電話などの外部接続機器929であってもよい。入力装置915は、ユーザが入力した情報に基づいて入力信号を生成してCPU901に出力する入力制御回路を含む。ユーザは、この入力装置915を操作することによって、情報処理装置900に対して各種のデータを入力したり処理動作を指示したりする。
 出力装置917は、取得した情報をユーザに対して視覚や聴覚、触覚などの感覚を用いて通知することが可能な装置で構成される。出力装置917は、例えば、LCD(Liquid Crystal Display)または有機EL(Electro-Luminescence)ディスプレイなどの表示装置、スピーカまたはヘッドフォンなどの音声出力装置、もしくはバイブレータなどでありうる。出力装置917は、情報処理装置900の処理により得られた結果を、テキストもしくは画像などの映像、音声もしくは音響などの音声、またはバイブレーションなどとして出力する。
 ストレージ装置919は、情報処理装置900の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置919は、例えば、HDD(Hard Disk Drive)などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。ストレージ装置919は、例えばCPU901が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
 ドライブ921は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体927のためのリーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。ドライブ921は、装着されているリムーバブル記録媒体927に記録されている情報を読み出して、RAM905に出力する。また、ドライブ921は、装着されているリムーバブル記録媒体927に記録を書き込む。
 接続ポート923は、機器を情報処理装置900に接続するためのポートである。接続ポート923は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポートなどでありうる。また、接続ポート923は、RS-232Cポート、光オーディオ端子、HDMI(登録商標)(High-Definition Multimedia Interface)ポートなどであってもよい。接続ポート923に外部接続機器929を接続することで、情報処理装置900と外部接続機器929との間で各種のデータが交換されうる。
 通信装置925は、例えば、通信ネットワーク931に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置925は、例えば、LAN(Local Area Network)、Bluetooth(登録商標)、Wi-Fi、またはWUSB(Wireless USB)用の通信カードなどでありうる。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、または、各種通信用のモデムなどであってもよい。通信装置925は、例えば、インターネットや他の通信機器との間で、TCP/IPなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置925に接続される通信ネットワーク931は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信または衛星通信などを含みうる。
 以上、情報処理装置900のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
 (6.補足)
 本開示の実施形態は、例えば、上記で説明したような情報処理装置、システム、情報処理装置またはシステムで実行される情報処理方法、情報処理装置を機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)アイテムのスコアを取得するスコア取得部と、
 前記スコアに揺らぎを付加する揺らぎ付加部と、
 前記アイテムのユーザの状況を示す状況情報を取得する状況情報取得部と、
 前記揺らぎを付加するか否か、または前記揺らぎの程度を前記状況情報に基づいて制御する揺らぎ制御部と
 を備える情報処理装置。
(2)前記揺らぎは、前記スコアに乗じられる係数によって表現され、
 前記係数は、前記スコアとは独立して算出される、前記(1)に記載の情報処理装置。
(3)前記係数は、前記アイテムがそのメタデータに基づいて分類されるクラスごとに算出される、前記(2)に記載の情報処理装置。
(4)前記係数は、前記クラスに分類されるアイテムに対する前記ユーザのフィードバックに基づいて算出される、前記(3)に記載の情報処理装置。
(5)前記フィードバックに基づいて前記係数を逐次更新する係数算出部をさらに備え、
 前記揺らぎ制御部は、前記係数を更新回数に応じて一時的に補正する、前記(4)に記載の情報処理装置。
(6)前記揺らぎ制御部は、前記更新回数が少ない場合には前記係数を上方修正する、前記(5)に記載の情報処理装置。
(7)前記揺らぎ制御部は、前記状況情報に基づいて前記係数を補正するときに、
  前記係数の大小関係を維持することによって前記揺らぎを大きくし、
  前記係数の大小関係を平準化することによって前記揺らぎを小さくする、前記(2)~(6)のいずれか1項に記載の情報処理装置。
(8)前記揺らぎ制御部は、前記揺らぎが付加される確率を前記状況情報に応じて変更する、前記(1)~(7)のいずれか1項に記載の情報処理装置。
(9)前記状況情報は、前記ユーザの時間的な余裕を示し、
 前記揺らぎ制御部は、前記時間的な余裕が大きい場合には前記揺らぎを大きくし、前記時間的な余裕が小さい場合には前記揺らぎを小さくするか付加しない、前記(1)~(8)のいずれか1項に記載の情報処理装置。
(10)前記スコアまたは前記揺らぎが付加されたスコアに従って前記アイテムのリストを編集するリスト編集部と、
 前記リストを出力させる出力制御部と
 をさらに備え、
 前記状況情報は、前記リストにおけるアイテムの同時参照可能数を示し、
 前記揺らぎ制御部は、前記同時参照可能数が多い場合には前記揺らぎを大きくし、前記同時参照可能数が少ない場合には前記揺らぎを小さくするか付加しない、前記(1)~(9)のいずれか1項に記載の情報処理装置。
(11)前記同時参照可能数は、前記ユーザが前記リストを参照するために使用しているブラウザの仕様に応じて決定される、前記(10)に記載の情報処理装置。
(12)前記同時参照可能数は、前記ブラウザの画面サイズおよび画面レイアウトに応じて決定される、前記(11)に記載の情報処理装置。
(13)前記スコアまたは前記揺らぎが付加されたスコアに従って前記アイテムのリストを編集するリスト編集部と、
 前記リストを出力させる出力制御部と
 をさらに備え、
 前記リスト編集部は、前記スコアまたは前記揺らぎが付加されたスコアに従って前記リストにおけるアイテムの表示サイズを決定する、前記(1)~(12)のいずれか1項に記載の情報処理装置。
(14)前記スコアまたは前記揺らぎが付加されたスコアに従った順序で前記アイテムを選択するアイテム選択部と、
 前記選択されたアイテムを出力させる出力制御部と
 をさらに備える、前記(1)~(9)のいずれか1項に記載の情報処理装置。
(15)アイテムのスコアを取得することと、
 前記スコアに揺らぎを付加することと、
 前記アイテムのユーザの状況を示す状況情報を取得することと、
 プロセッサが、前記揺らぎを付加するか否か、または前記揺らぎの程度を前記状況情報に基づいて制御することと
 を含む情報処理方法。
(16)アイテムのスコアを取得する機能と、
 前記スコアに揺らぎを付加する機能と、
 前記アイテムのユーザの状況を示す状況情報を取得する機能と、
 前記揺らぎを付加するか否か、または前記揺らぎの程度を前記状況情報に基づいて制御する機能と
 をコンピュータに実現させるためのプログラム。
 10  システム
 11  クライアント
 12  サーバ
 121  受信部
 122  フィードバック取得部
 123  状況情報取得部
 124  スコア取得部
 125  揺らぎ付加部
 1251  係数算出部
 126  揺らぎ制御部
 127  アイテム選択部/リスト編集部
 128  送信部
 131  アイテムDB
 132  ユーザDB
 133  係数DB

Claims (16)

  1.  アイテムのスコアを取得するスコア取得部と、
     前記スコアに揺らぎを付加する揺らぎ付加部と、
     前記アイテムのユーザの状況を示す状況情報を取得する状況情報取得部と、
     前記揺らぎを付加するか否か、または前記揺らぎの程度を前記状況情報に基づいて制御する揺らぎ制御部と
     を備える情報処理装置。
  2.  前記揺らぎは、前記スコアに乗じられる係数によって表現され、
     前記係数は、前記スコアとは独立して算出される、請求項1に記載の情報処理装置。
  3.  前記係数は、前記アイテムがそのメタデータに基づいて分類されるクラスごとに算出される、請求項2に記載の情報処理装置。
  4.  前記係数は、前記クラスに分類されるアイテムに対する前記ユーザのフィードバックに基づいて算出される、請求項3に記載の情報処理装置。
  5.  前記フィードバックに基づいて前記係数を逐次更新する係数算出部をさらに備え、
     前記揺らぎ制御部は、前記係数を更新回数に応じて一時的に補正する、請求項4に記載の情報処理装置。
  6.  前記揺らぎ制御部は、前記更新回数が少ない場合には前記係数を上方修正する、請求項5に記載の情報処理装置。
  7.  前記揺らぎ制御部は、前記状況情報に基づいて前記係数を補正するときに、
      前記係数の大小関係を維持することによって前記揺らぎを大きくし、
      前記係数の大小関係を平準化することによって前記揺らぎを小さくする、請求項2に記載の情報処理装置。
  8.  前記揺らぎ制御部は、前記揺らぎが付加される確率を前記状況情報に応じて変更する、請求項1に記載の情報処理装置。
  9.  前記状況情報は、前記ユーザの時間的な余裕を示し、
     前記揺らぎ制御部は、前記時間的な余裕が大きい場合には前記揺らぎを大きくし、前記時間的な余裕が小さい場合には前記揺らぎを小さくするか付加しない、請求項1に記載の情報処理装置。
  10.  前記スコアまたは前記揺らぎが付加されたスコアに従って前記アイテムのリストを編集するリスト編集部と、
     前記リストを出力させる出力制御部と
     をさらに備え、
     前記状況情報は、前記リストにおけるアイテムの同時参照可能数を示し、
     前記揺らぎ制御部は、前記同時参照可能数が多い場合には前記揺らぎを大きくし、前記同時参照可能数が少ない場合には前記揺らぎを小さくするか付加しない、請求項1に記載の情報処理装置。
  11.  前記同時参照可能数は、前記ユーザが前記リストを参照するために使用しているブラウザの仕様に応じて決定される、請求項10に記載の情報処理装置。
  12.  前記同時参照可能数は、前記ブラウザの画面サイズおよび画面レイアウトに応じて決定される、請求項11に記載の情報処理装置。
  13.  前記スコアまたは前記揺らぎが付加されたスコアに従って前記アイテムのリストを編集するリスト編集部と、
     前記リストを出力させる出力制御部と
     をさらに備え、
     前記リスト編集部は、前記スコアまたは前記揺らぎが付加されたスコアに従って前記リストにおけるアイテムの表示サイズを決定する、請求項1に記載の情報処理装置。
  14.  前記スコアまたは前記揺らぎが付加されたスコアに従った順序で前記アイテムを選択するアイテム選択部と、
     前記選択されたアイテムを出力させる出力制御部と
     をさらに備える、請求項1に記載の情報処理装置。
  15.  アイテムのスコアを取得することと、
     前記スコアに揺らぎを付加することと、
     前記アイテムのユーザの状況を示す状況情報を取得することと、
     プロセッサが、前記揺らぎを付加するか否か、または前記揺らぎの程度を前記状況情報に基づいて制御することと
     を含む情報処理方法。
  16.  アイテムのスコアを取得する機能と、
     前記スコアに揺らぎを付加する機能と、
     前記アイテムのユーザの状況を示す状況情報を取得する機能と、
     前記揺らぎを付加するか否か、または前記揺らぎの程度を前記状況情報に基づいて制御する機能と
     をコンピュータに実現させるためのプログラム。
PCT/JP2015/067657 2014-08-27 2015-06-18 情報処理装置、情報処理方法、およびプログラム WO2016031363A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-172885 2014-08-27
JP2014172885A JP2016048437A (ja) 2014-08-27 2014-08-27 情報処理装置、情報処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
WO2016031363A1 true WO2016031363A1 (ja) 2016-03-03

Family

ID=55399268

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/067657 WO2016031363A1 (ja) 2014-08-27 2015-06-18 情報処理装置、情報処理方法、およびプログラム

Country Status (2)

Country Link
JP (1) JP2016048437A (ja)
WO (1) WO2016031363A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7293158B2 (ja) * 2020-03-18 2023-06-19 ヤフー株式会社 情報処理装置、情報処理方法、及び情報処理プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012064166A (ja) * 2010-09-17 2012-03-29 Kddi Corp コンテンツ作成装置およびコンテンツ作成方法
JP2012234430A (ja) * 2011-05-06 2012-11-29 Jvc Kenwood Corp 情報処理方法、表示方法、情報処理装置、表示装置、情報処理プログラム、表示プログラム
JP2013232031A (ja) * 2012-04-27 2013-11-14 Jvc Kenwood Corp 情報処理装置、端末装置、情報処理方法、表示方法、情報処理プログラム、及び表示プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012064166A (ja) * 2010-09-17 2012-03-29 Kddi Corp コンテンツ作成装置およびコンテンツ作成方法
JP2012234430A (ja) * 2011-05-06 2012-11-29 Jvc Kenwood Corp 情報処理方法、表示方法、情報処理装置、表示装置、情報処理プログラム、表示プログラム
JP2013232031A (ja) * 2012-04-27 2013-11-14 Jvc Kenwood Corp 情報処理装置、端末装置、情報処理方法、表示方法、情報処理プログラム、及び表示プログラム

Also Published As

Publication number Publication date
JP2016048437A (ja) 2016-04-07

Similar Documents

Publication Publication Date Title
JP6316409B2 (ja) トピックに関連付けられているコンテンツ・アイテムのフィードを複数のコンテンツ・ソースから生成する
US9965553B2 (en) User agent with personality
US9442903B2 (en) Generating preview data for online content
WO2016042889A1 (ja) 情報処理装置、情報処理方法及びコンピュータプログラム
US20180115592A1 (en) Dynamically Modifying an Execution Environment for Varying Data
JP5359534B2 (ja) 情報処理装置および方法、並びにプログラム
JP6312564B2 (ja) 情報処理装置、制御方法および制御プログラム
US9684908B2 (en) Automatically generated comparison polls
US20160147890A1 (en) Identifying Content Items From Various Sources Associated with an Object
JP6784499B2 (ja) 決定装置、決定方法及び決定プログラム
US10872116B1 (en) Systems, devices, and methods for contextualizing media
JP5880101B2 (ja) 情報処理装置、情報処理方法およびプログラム
US10042943B2 (en) Information processing apparatus, information processing method and program
JP6593873B2 (ja) 情報分析装置及び情報分析方法
US10204170B2 (en) News feed
JP5881647B2 (ja) 判定装置、判定方法及び判定プログラム
US20150205796A1 (en) Information processing device, information processing method, and program
WO2016031363A1 (ja) 情報処理装置、情報処理方法、およびプログラム
US20140172977A1 (en) Suppressing content of a social network
CN113111197A (zh) 多媒体内容的推荐方法、装置、设备及存储介质
JP6604608B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
US20140257791A1 (en) Apparatus and method for auto-generation of journal entries
WO2021061107A1 (en) Systems, devices, and methods for contextualizing media
JP5832503B2 (ja) 情報処理装置、方法及びプログラム
JP2014215796A (ja) 情報処理装置及びプログラム

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: 15836544

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15836544

Country of ref document: EP

Kind code of ref document: A1