WO2019188102A1 - 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム - Google Patents

顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム Download PDF

Info

Publication number
WO2019188102A1
WO2019188102A1 PCT/JP2019/009186 JP2019009186W WO2019188102A1 WO 2019188102 A1 WO2019188102 A1 WO 2019188102A1 JP 2019009186 W JP2019009186 W JP 2019009186W WO 2019188102 A1 WO2019188102 A1 WO 2019188102A1
Authority
WO
WIPO (PCT)
Prior art keywords
attribute
recommendation
prediction
unit
target
Prior art date
Application number
PCT/JP2019/009186
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
Priority claimed from JP2018059214A external-priority patent/JP7198591B2/ja
Priority claimed from JP2018059215A external-priority patent/JP7283865B2/ja
Application filed by カルチュア・コンビニエンス・クラブ株式会社 filed Critical カルチュア・コンビニエンス・クラブ株式会社
Priority to EP19777248.6A priority Critical patent/EP3779836A4/en
Priority to CN201980017104.4A priority patent/CN111902836A/zh
Publication of WO2019188102A1 publication Critical patent/WO2019188102A1/ja
Priority to US17/031,940 priority patent/US20210012359A1/en

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
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0204Market segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • 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
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • 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
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0204Market segmentation
    • G06Q30/0205Location or geographical consideration
    • 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
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0239Online discounts or incentives
    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0277Online advertisement
    • 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/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4826End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data

Definitions

  • the present invention relates to an apparatus, a method, and a program for making a recommendation based on customer attribute information.
  • Patent Document 1 Japanese Patent Laid-Open No. 2015-76076
  • an apparatus may include an attribute database connection unit connected to an attribute database for storing a plurality of attribute values corresponding to a plurality of attributes for each of a plurality of subjects.
  • the apparatus may include a recommendation determining unit that determines whether or not to recommend at least one of a product and a service based on at least one of a plurality of attribute values for a first target person among a plurality of target persons.
  • the apparatus may include a recommendation method determining unit that determines a recommendation method for recommending at least one of goods and services to the first target person.
  • the apparatus may include a recommendation result acquisition unit that acquires a recommendation result by a recommendation method for the first subject.
  • the apparatus may include a recommendation result storage unit that stores a recommendation result obtained by the recommendation method in association with at least some of a plurality of attributes in the attribute database.
  • the apparatus may include a recommendation model generation unit that generates a recommendation model for selecting a recommendation method using an attribute database including a recommendation result obtained by the recommendation method as an attribute value of at least some attributes.
  • the recommendation method determination unit may determine a recommendation method for recommending at least one of a product and a service to the second target person using the recommendation model.
  • the recommendation method determination unit may determine different recommendation methods for each of a part of the plurality of first subjects.
  • the recommendation method determination unit determines to use at least one of e-mail, Internet advertisement, direct mail, printing on a receipt issued to the first target person, and TV advertisement as a recommendation method for the first target person. You can do it.
  • the recommendation method determination unit may determine to provide at least one incentive of discounts on products and services, coupons, and points as a recommendation method for the first target person.
  • the apparatus may include an environment information acquisition unit that acquires environment information indicating an environment in which the second target person is placed.
  • the apparatus may include a group selection unit that selects a group to be recommended from among a plurality of groups of at least one of products and services based on environmental information about the second target person.
  • the recommendation determining unit recommends the second target person out of at least one of products and services included in the group selected by the group selecting unit based on at least one of the plurality of attribute values for the second target person. At least one of goods and services may be determined.
  • the group selection unit may preferentially select a group associated with the store closer to the current position of the second target person from the plurality of stores.
  • the group selection unit may select a group to be recommended from among the plurality of groups based on the last use date and time of each of the plurality of stores for the second target person or the elapsed period from the last use.
  • the recommendation method determination unit may determine the recommendation method based further on the environmental information about the second target person.
  • a method in a second aspect of the present invention, stores a plurality of attribute values in an attribute database for storing a plurality of attribute values corresponding to a plurality of attributes for each of the plurality of target persons for a first target person among the plurality of target persons. Based on at least one, it may be determined whether to recommend at least one of goods and services.
  • the computer may determine a recommendation method for recommending at least one of goods and services to the first subject.
  • the computer may obtain a recommendation result by a recommendation method for the first subject.
  • the computer may store the recommendation result by the recommendation method in association with at least some of the plurality of attributes in the attribute database.
  • the computer may generate a recommendation model for selecting a recommendation method using an attribute database including a recommendation result by the recommendation method as an attribute value of at least some attributes.
  • the computer may determine a recommendation method for recommending at least one of a product and a service to the second target person using the recommendation model.
  • the computer may determine a different recommendation method for each of a part of the plurality of first subjects.
  • the computer uses at least one of electronic mail, Internet advertisement, direct mail, printing on a receipt issued to the first subject, and television advertisement as the recommendation method for the first subject. You may decide that.
  • the computer may decide to provide an incentive of at least one of a discount for goods and services, a coupon grant, and a point grant as a recommendation method for the first subject. .
  • the computer may acquire environment information indicating an environment where the second target person is placed.
  • the computer may select a group to recommend from among a plurality of groups of at least one of goods and services based on environmental information about the second subject.
  • the computer based on at least one of a plurality of attribute values for the second subject, from among at least one of products and services included in the group selected by the group selection unit, You may determine at least one of the goods and service recommended to a 2nd subject person.
  • the computer may preferentially select a group associated with the store closer to the current location of the second target person from the plurality of stores.
  • the computer may select a group to be recommended from among the plurality of groups based on the last use date and time of each of the plurality of stores for the second target person or the elapsed period from the last use.
  • the computer may determine the recommendation method further based on the environmental information about the second target person.
  • a program executed by a computer may cause the computer to function as an attribute database connection unit connected to an attribute database for storing a plurality of attribute values corresponding to a plurality of attributes for each of a plurality of subjects.
  • the program functions as a recommendation deciding unit that decides whether or not to recommend at least one of a product and a service based on at least one of a plurality of attribute values for a first target person among a plurality of target persons.
  • Good may cause the first target person to function as a recommendation method determination unit that determines a recommendation method for recommending at least one of goods and services.
  • the program may function as a recommendation result acquisition unit that acquires a recommendation result by a recommendation method for the first subject.
  • the program may function as a recommendation result storage unit that stores recommendation results obtained by the recommendation method in association with at least some of the plurality of attributes in the attribute database.
  • the program may function as a recommendation model generation unit that generates a recommendation model for selecting a recommendation method using an attribute database that includes a recommendation result obtained by the recommendation method as an attribute value of at least some attributes.
  • the recommendation method determination unit may determine a recommendation method for recommending at least one of a product and a service to the second target person using the recommendation model.
  • the recommendation method determination unit may determine different recommendation methods for each of a part of the plurality of first subjects.
  • the recommendation method determination unit determines to use at least one of e-mail, Internet advertisement, direct mail, printing on a receipt issued to the first target person, and TV advertisement as a recommendation method for the first target person. You can do it.
  • the recommendation method determination unit may determine to provide at least one incentive of discounts on products and services, coupons, and points as a recommendation method for the first target person.
  • the program may cause the computer to function as an environment information acquisition unit that acquires environment information indicating an environment in which the second target person is placed.
  • the program may cause the computer to function as a group selection unit that selects a group to be recommended from among a plurality of groups of at least one of products and services based on environmental information about the second target person.
  • the recommendation determining unit recommends the second target person out of at least one of products and services included in the group selected by the group selecting unit based on at least one of the plurality of attribute values for the second target person. At least one of goods and services may be determined.
  • the group selection unit may preferentially select a group associated with the store closer to the current position of the second target person from the plurality of stores.
  • the group selection unit may select a group to be recommended from among the plurality of groups based on the last use date and time of each of the plurality of stores for the second target person or the elapsed period from the last use.
  • the recommendation method determination unit may determine the recommendation method based further on the environmental information about the second target person.
  • a configuration of a system 100 according to the present embodiment is shown together with a terminal 112, a terminal 152, and a terminal 192.
  • An example of the data structure stored in attribute DB122 and attribute DB167 which concerns on this embodiment is shown.
  • generation apparatus 150 which concerns on this embodiment is shown.
  • generates is shown.
  • generates is shown.
  • the attribute information acquisition flow in the attribute prediction apparatus 110 which concerns on this embodiment is shown.
  • the attribute prediction flow in the attribute prediction apparatus 110 which concerns on this embodiment is shown.
  • FIG. 1 An example of the dependency relationship of a prediction object attribute is shown.
  • the attribute addition flow in the system 100 which concerns on this embodiment is shown.
  • the structure of the recommendation processing apparatus 190 which concerns on this embodiment is shown with the terminal 192.
  • FIG. An example of the data structure stored in recommendation DB980 which concerns on this embodiment is shown.
  • the recommendation processing flow of the recommendation processing apparatus 190 which concerns on this embodiment is shown. 2 shows an exemplary configuration of a computer 1900 according to the present embodiment.
  • FIG. 1 shows a configuration of a system 100 according to the present embodiment, together with a terminal 112, a terminal 152, and a terminal 192.
  • the system 100 registers and manages attribute data (also referred to as “attribute information”) of each target person who is a subscriber or a member of a point service or the like in an attribute database (attribute DB).
  • attribute DB attribute database
  • the system 100 generates an attribute prediction model that mainly predicts attributes in the attribute DB for which attribute data has not been acquired, and predicts attribute values. Then, the system 100 enables the attribute DB including the predicted attribute value to be used for recommendations of products or services (hereinafter collectively referred to as “products etc.”) and market research.
  • the system 100 includes an attribute prediction device 110, a prediction model generation device 150, and a recommendation processing device 190.
  • the system 100 may be realized by a computer such as a server computer, may be a system realized by a plurality of computers, or may be a distributed system realized by a plurality of computers dispersed in a region. Good.
  • the system 100 manages attribute information of a target person such as each member in a point system provided by one provider, a common point system common to a plurality of providers, a credit card, electronic money, and other arbitrary member services. .
  • the attribute prediction device 110 inputs and registers the attribute information of the target person, and mainly predicts unknown attribute information based on the registered attribute information.
  • the attribute prediction apparatus 110 can compare attribute values between a plurality of subjects regardless of whether the attribute information is known or unknown. Predicts its attribute information.
  • the attribute prediction device 110 includes an attribute information acquisition unit 115, an attribute DB connection unit 120, an attribute DB 122, a dimension reduction unit 125, a reduction DB connection unit 130, a reduction DB 132, an attribute prediction unit 135, It has an attribute value update unit 140 and an attribute predicted value update unit 142.
  • the attribute information acquisition unit 115 acquires the attribute information of the target person and stores it in the attribute DB 122 via the attribute DB connection unit 120.
  • the source of the attribute information of the target person is, for example, information that the target person fills in or optionally inputs or inputs at the time of new member registration, the target person's answer to the member questionnaire, and the target person purchases the product etc. in the store etc.
  • the attribute information acquisition unit 115 accesses the attribute DB 122 via the attribute DB connection unit 120 at an arbitrary timing such as periodically, searches for a target person whose attribute value for at least one attribute is unknown, Unknown attribute values may be actively collected, for example, by conducting a member questionnaire through the Internet.
  • the attribute DB connection unit 120 is connected to the attribute DB 122 and processes access to the attribute DB 122 from each unit in the system 100.
  • the attribute DB 122 stores attribute information including a plurality of attribute values corresponding to a plurality of attributes for each of a plurality of subjects.
  • the attribute DB 122 may be realized by at least a part of a storage area of an external storage device such as a hard disk drive connected to a computer that performs processing of the system 100.
  • the attribute DB 122 may be external to the system 100 provided by a cloud storage service or the like. It may be realized by a storage device.
  • the dimension reduction unit 125 reduces the dimensions of a plurality of attributes based on the plurality of attribute values of each of the plurality of subjects stored in the attribute DB 122.
  • the dimension reduction unit 125 uses a topic model to calculate a plurality of values representing the degree or probability that the attribute information of each subject included in the attribute DB 122 corresponds to each of a plurality of topics. Then, the dimension reduction unit 125 adds the calculated plurality of values to the attribute information of each subject as a plurality of attributes for dimension reduction.
  • the dimension reduction part 125 can reduce many attributes which comprise attribute information of an object person to the attribute for every topic which becomes a smaller number.
  • the dimension reduction unit 125 may exclude at least a part or all of attributes other than the plurality of attributes added for dimension reduction from the explanatory variables of the attribute prediction model.
  • the dimension reduction unit 125 converts the attribute DB 122 into the reduction DB 132 by applying the above-described dimension reduction processing to the attribute DB 122.
  • the contracted DB connection unit 130 is connected to the contracted DB 132 and processes write access to the contracted DB 132 from the dimension contracting unit 125 and read access to the contracted DB 132 from the attribute predicting unit 135.
  • the reduction DB 132 stores, as attribute information, a plurality of attribute values corresponding to a plurality of attributes, including at least a part of the attributes reduced by the dimension reduction unit 125 for each of a plurality of subjects.
  • the contracted DB 132 may be realized by an external storage device connected to a computer that performs processing of the system 100, or by a storage device provided by a cloud storage service or the like outside the system 100. May be.
  • the attribute prediction unit 135 receives from the prediction model generation apparatus 150 the attribute prediction model selected for each of one or more attributes (indicated as “prediction target attributes”) of the prediction target in the attribute DB 122. Then, the attribute prediction unit 135 predicts the attribute value of the prediction target attribute for each of the plurality of target persons using the received attribute prediction model. More specifically, the attribute prediction unit 135 executes the selected attribute prediction model for each prediction target attribute for each of all target persons or at least some target persons, and stores each attribute stored in the reduced DB 132. Based on the attribute information of the target person, the predicted value of the prediction target attribute is calculated. The attribute prediction unit 135 stores the calculated prediction value in the attribute DB 122 via the attribute DB connection unit 120.
  • the attribute DB 122 associates each of a plurality of attributes with a known attribute value based on the attribute information acquired by the attribute information acquisition unit 115 and a predicted value predicted by the attribute prediction unit 135. Both are stored as broad attribute values.
  • the attribute DB 122 stores a known attribute value and a predicted value using the same expression format.
  • the attribute information acquisition unit 115 converts the representation format of the acquired attribute information raw data
  • the attribute DB 122 stores the attribute value whose representation format is converted as a known attribute value.
  • the attribute information acquisition unit 115 may convert an absolute evaluation attribute value acquired as raw attribute information data into a relative evaluation attribute value, and the attribute DB 122 may store the attribute value converted into a relative evaluation.
  • the attribute DB 122 replaces the age of the subject represented by an absolute evaluation such as 35 years old with a relative value (for example, deviation value or percentile ranking) among all subjects with known age. Etc.) in which the converted attribute value is stored.
  • the attribute DB 122 stores an attribute value converted into a probability of being a male or a deviation value of a possibility of being a male with respect to the sex of the subject.
  • the attribute DB 122 stores the predicted value of the attribute in a representation format such as deviation value, percentile ranking, or probability in the same manner as the known attribute value after conversion. You can get compatibility. Accordingly, the system 100 can use a known attribute value as an explanatory variable when generating an attribute prediction model, and can also use a prediction value as an explanatory variable when using the attribute prediction model. As a result, the attribute prediction device 110 also uses the attribute prediction model to determine the attribute value of the prediction target attribute for a target person for whom a known attribute value has not been obtained for at least some of the attributes serving as explanatory variables of the attribute prediction model. Can be predicted.
  • the attribute DB 122 can be realized in various other forms such as a form in which a known attribute value is stored in an expression format before conversion and a predicted value is stored in an expression format after conversion. Even in such a case, every time the system 100 refers to the predicted value instead of the known attribute value, the system 100 converts the predicted value representation format into the known attribute value representation format, thereby recognizing the known value. It is possible to realize the same operation as when the attribute value and the predicted value are stored in the same expression format.
  • the attribute DB 122 may separately store the raw data of the attribute information acquired by the attribute information acquisition unit 115 in addition to the known attribute value obtained by converting the expression format.
  • the attribute value update unit 140 updates the attribute value of the attribute based on the predicted value on the condition that the certainty of the predicted value of the attribute stored in the attribute DB 122 is greater than or equal to the threshold value. Thereby, when the accuracy of the predicted value is sufficiently high, an unacquired attribute value can be set based on the predicted value.
  • the attribute prediction value update unit 142 determines that the attribute prediction value deviates from the known attribute value by more than the reference. Update the predicted value of an attribute based on a known attribute value. Thereby, when a predicted value deviates greatly from a known attribute value for some subjects, the predicted value can be rewritten to a more accurate value.
  • the attribute prediction device 110 may include an attribute data acquisition unit 144 and an attribute addition unit 146.
  • the attribute data acquisition unit 144 acquires known information indicating known attribute values of additional attributes to be added to the attribute database for at least some of the plurality of subjects.
  • the attribute data acquisition unit 144 receives known information from the user of the system 100 or the attribute prediction device 110 via the terminal 112.
  • Attribute addition unit 146 adds an additional attribute to a plurality of attributes in attribute DB 122.
  • the attribute adding unit 146 sets a known attribute value of the additional attribute for each target person included in the known information based on the attribute value indicated in the known information acquired by the attribute data acquiring unit 144. For a subject whose known attribute value is not indicated in the known information, the attribute adding unit 146 does not set a known attribute value.
  • the system 100 may process the additional attribute as the prediction target attribute. That is, the prediction model generation device 150 may generate one or a plurality of attribute prediction models for predicting the attribute value of the prediction target attribute using the additional attribute as the prediction target attribute by the attribute prediction model generation unit 180. Further, when a plurality of attribute prediction models are generated, the prediction model generation apparatus 150 selects an attribute prediction model used for prediction of the attribute value of the prediction target attribute by the attribute prediction model selection unit 185 based on each prediction error. You can do it.
  • the prediction model generation device 150 generates an attribute prediction model that predicts one or more attributes to be predicted in the attribute DB 122.
  • the prediction model generation apparatus 150 includes a model update instruction unit 155, a sampling unit 160, an attribute DB connection unit 165, an attribute DB 167, a dimension reduction unit 170, a reduction DB connection unit 175, a reduction DB 177, An attribute prediction model generation unit 180 and an attribute prediction model selection unit 185 are included.
  • the model update instruction unit 155 instructs to update the attribute prediction model used by the attribute prediction device 110 in response to the elapse of a predetermined period.
  • the model update instruction unit 155 triggers the sampling unit 160 to start processing, for example, when a period such as one day, one week, or one month has elapsed since the previous attribute prediction model was updated. Etc., to update the attribute prediction model.
  • the model update instruction unit 155 transmits the attribute prediction model already prepared in the prediction model generation apparatus 150 during the period to the attribute prediction apparatus 110 when the period has elapsed. This may be instructed to the attribute prediction model selection unit 185.
  • the sampling unit 160 samples some of the plurality of subjects whose attribute information is stored in the attribute DB 122, and associates the attribute information stored in the attribute DB 122 in association with the sampled subjects into the attribute DB. Store or copy in the attribute DB 167 via the connection unit 165.
  • the sampling unit 160 is the target number corresponding to the number of samples used for generating the attribute prediction model among the target persons whose attribute values of the prediction target attribute are known among the target persons registered in the attribute DB 122. May be extracted. Instead, the sampling unit 160 may randomly extract subjects for the number of samples used for generating the attribute prediction model from the subjects registered in the attribute DB 122.
  • the attribute DB connection unit 165 is connected to the attribute DB 167, and processes access to the attribute DB 167 from each unit in the prediction model generation device 150.
  • the attribute DB 167 stores attribute information including a plurality of attribute values corresponding to a plurality of attributes for each of a plurality of subjects sampled by the sampling unit 160 among the subjects registered in the attribute DB 122.
  • the attribute DB 167 may be realized by an external storage device connected to a computer that performs processing of the system 100, or realized by a storage device provided by a cloud storage service or the like outside the system 100. Also good.
  • the dimension reduction unit 170 reduces the dimensions of the plurality of attributes based on the plurality of attribute values of the plurality of subjects stored in the attribute DB 167.
  • the dimension reduction unit 170 may convert the attribute DB 167 into the reduction DB 177 by applying the same dimension reduction process as the dimension reduction unit 125 to the attribute DB 167.
  • the contracted DB connection unit 175 is connected to the contracted DB 177, and processes write access from the dimension contracting unit 170 to the contracted DB 177 and read access to the contracted DB 177 from the attribute prediction model generating unit 180.
  • the reduced DB 177 is an attribute having a plurality of attribute values corresponding to a plurality of attributes at least partially including the attribute reduced by the dimension reducing unit 170 for each of a plurality of subjects sampled by the sampling unit 160.
  • the contracted DB 177 may be realized by an external storage device connected to a computer that performs processing of the system 100, or by a storage device provided by a cloud storage service or the like outside the system 100. May be.
  • the attribute prediction model generation unit 180 uses the attribute DB 167 to predict the attribute value of the prediction target attribute based on the attribute value of at least one attribute other than the prediction target attribute among the plurality of attributes, respectively. Is generated.
  • the attribute prediction model generation unit 180 according to the present embodiment generates a plurality of attribute prediction models by referring to the attribute DB 167 and using attribute values associated with some subjects sampled from the attribute DB 122. To do.
  • the attribute prediction model generation unit 180 reduces the amount of calculation and the calculation time required when each of the plurality of attribute prediction models is generated using the attribute information of all subjects stored in the attribute DB 122. be able to. If sufficient calculation capability can be ensured, the attribute prediction model generation unit 180 may generate a plurality of attribute prediction models using the attribute information of each target person stored in the attribute DB 122 without using sampling. Good.
  • the attribute prediction model generation unit 180 may indirectly use the attribute DB 167 by referring to the contracted DB 177 converted from the attribute DB 167. Accordingly, the attribute prediction model generation unit 180 can predict the attribute value of the prediction target attribute from the attribute value of at least one attribute among the plurality of attributes whose dimensions have been reduced. The attribute prediction model generation unit 180 removes all or at least some attributes other than the plurality of attributes added by the dimension reduction unit 170 for dimension reduction from the explanatory variables of the attribute prediction model. By effectively using the reduction result, an attribute prediction model can be generated using only some of the attributes that can affect the prediction of the prediction target attribute as explanatory variables. As a result, the attribute prediction model generation unit 180 can reduce the amount of calculation and the calculation time required for generating a plurality of attribute prediction models.
  • the attribute prediction model generation unit 180 can generate a plurality of attribute prediction models for predicting the prediction target attribute for each of the plurality of prediction target attributes.
  • the attribute prediction model generation unit 180 is different as a first attribute prediction model used for prediction of the attribute value of the first prediction target attribute and a second attribute prediction model used for prediction of the attribute value of the second prediction target attribute. Attribute prediction model can be selected.
  • Each of the plurality of attribute prediction models may be different from other attribute prediction models in at least one of a hyperparameter and a prediction algorithm that are not updated by learning.
  • the attribute prediction model generation unit 180 learns, for each of a plurality of attribute prediction models, a learnable parameter in the attribute prediction model, and each of the plurality of attribute prediction models predicts an attribute value of a prediction target attribute. To minimize the process.
  • the attribute prediction model selection unit 185 predicts the attribute value of the prediction target attribute based on each prediction error of the plurality of attribute prediction models generated by the attribute prediction model generation unit 180 for each of the plurality of prediction target attributes. Select the attribute prediction model used for. For example, the attribute prediction model selection unit 185 selects, for each prediction target attribute, an attribute prediction model with the smallest prediction error from among a plurality of attribute prediction models. At this time, the attribute prediction model selection unit 185 can select an attribute prediction model in which at least one of the hyperparameter and the prediction algorithm is different for each prediction target attribute.
  • the attribute prediction model selection unit 185 provides the attribute prediction model selected for each prediction target attribute to the attribute prediction unit 135 in the attribute prediction device 110. As an example, the attribute prediction model selection unit 185 provides the attribute prediction unit 135 with a set of identification information and hyperparameter values that specify a prediction algorithm used for the attribute prediction model.
  • the recommendation processing device 190 selects whether or not to recommend a product or the like associated with the prediction target attribute to the target person based on the attribute value of the prediction target attribute set as the prediction target in each of the plurality of target persons.
  • the recommendation processing device 190 when the attribute value of the prediction target attribute indicating the preference for a specific product or the like shows a preference equal to or higher than a threshold value, You may decide to recommend.
  • the recommendation processing device 190 is a prediction target that indicates at least a part of one or more basic attributes, life attributes, and orientation (for example, whether or not you own a residence, a car, whether it is high-end or thrift-oriented) It may be determined to recommend a product or the like based on the attribute value of the attribute.
  • the recommendation processing device 190 recommends a product or the like to a target person who has decided to recommend among a plurality of target persons.
  • the recommendation processing device 190 may provide the target person with an e-mail, a direct mail, and an Internet advertisement including an advertisement of the product, and the TV CM including the advertisement of the product is provided to the target person. It may be provided for viewers including the service, and services such as coupons, discounts, and point grants that preferentially purchase such products may be provided.
  • the terminal 112 is connected to the attribute prediction device 110 directly or indirectly through a network, and statistical processing of attribute information of a plurality of subjects stored in the attribute DB 122 or the contract DB 132 of the attribute prediction device 110, To perform database processing such as addition / deletion, setting of attribute values, and narrowing down of target persons satisfying the extraction condition set by at least one attribute set, and evaluation of the attribute prediction model for each prediction target attribute of the prediction target Provide a user interface.
  • the terminal 152 is connected to the prediction model generation apparatus 150 directly or indirectly through a network, and the prediction algorithm generation unit 180 can generate / change / delete prediction algorithms, and the attribute prediction model generation unit 180 Hyper parameter range specification and value specification to be given to the attribute prediction model, confirmation of each learned parameter and prediction result of a plurality of attribute prediction models generated by the attribute prediction model generation unit 180, evaluation, and comparison between attribute models, attributes Manual selection or selection of an attribute prediction model for the prediction model selection unit 185, addition / deletion of an attribute to / from the attribute DB 167 that is a subset of the attribute DB 122, setting of an attribute value, and an extraction condition set by at least one attribute pair For database processing such as narrowing down the target audience Providing a user interface for performing statistical processing of the attribute information of a plurality of subjects stored in the attribute DB167 or contraction DB177 prediction model generating apparatus 150.
  • the terminal 192 is connected to the terminal 192 directly or indirectly through a network, and provides a user interface for managing the recommendation processing in the recommendation processing device 190.
  • the terminal 192 sets and adjusts conditions for narrowing down the target audience according to the advertising budget, discounts on products, etc., or the point grant budget, confirms the results of narrowing down the target audience, Provides a user interface for setting and recommending instructions.
  • the terminal 112, the terminal 152, and the terminal 192 may be desktop computers or portable terminals such as tablets and smartphones.
  • a plurality of attributes that predict attribute values for each prediction target attribute A prediction model is generated, and a suitable attribute prediction model can be selected for each prediction target attribute. Therefore, according to the system 100, it is possible to further improve the prediction accuracy for each prediction target attribute.
  • FIG. 2 shows an example of a data structure stored in the attribute DB 122 and the attribute DB 167 according to the present embodiment.
  • the attribute DB 122 and the attribute DB 167 store personal identification information (personal ID) for identifying an individual and attribute information about a plurality of attributes of the individual for each of a plurality of subjects.
  • personal ID personal identification information
  • “Individual ID” is an identifier for identifying an individual subject person in the system 100, and is, for example, a membership number or a login ID of a service provided by the system 100.
  • the attribute DB 122 and the attribute DB 167 include “personal ID” as the name of the subject, an e-mail address, an address, a telephone number, identification information of the portable terminal owned by the subject, or at least one combination thereof. Information generated based on the information may be used.
  • attribute information is attribute values for various attributes of the target person.
  • Each attribute stored in the attribute DB 122 and the attribute DB 167 according to the present embodiment is roughly classified into general-purpose attribute data, purchase potential data, and recommendation potential data.
  • General-purpose attribute data is a set of attributes indicating the characteristics of each target person, and specifically indicates the characteristics of the target person in general. “General-purpose attribute data” includes at least one of one or more attributes classified as basic attributes, one or more attributes classified as lifestyle attributes, and one or more attributes classified as oriented. May include.
  • Life attributes is information related to the lifestyle of the target person, and one or more attributes classified as “life attributes” include, for example, married / unmarried, residence style, household annual income, individual annual income, occupation, and ownership of automobiles. It may include at least one of presence / absence and presence / absence of residence.
  • the attribute values related to “life attributes” may be collected at the time of new registration or the like, may be collected by various methods such as a questionnaire, or may be a prediction target.
  • Orientation is information indicating the orientation, tendency and / or preference of the subject, and as one or more attributes classified as orientation, for example, quality orientation / challenge orientation / solid orientation / brand orientation etc. for clothing. It may include at least one of food-oriented, frugal-oriented, discount-oriented, convenience-oriented / city-oriented / regional-oriented, etc., and other health-oriented, career-oriented, global-oriented, etc.
  • “intentionality” is an attribute related to the subject's preference, for example, presence or absence of preference for various hobbies such as driving, gourmet, travel, and sports, presence or preference of preference for various products, etc.
  • it may include at least one of presence / absence or preference degree of various websites and the like.
  • the attribute regarding “intentionality” can be added according to the purpose of the survey in various surveys.
  • the attribute value related to “intentionality” may be collected at the time of new registration or the like, may be collected by various methods such as a questionnaire, or may be a prediction target.
  • “Purchase potential data” is a set of attributes indicating the purchase possibility of each target person for each of a plurality of products or a plurality of product groups or service groups. “Purchasing potential data” may include, for example, attributes associated with each product or service corresponding to the genre, etc., for each genre, type, or classification of products such as entertainment, food, and daily necessities. . Each attribute of “purchasing potential data” may be a preference attribute indicating the preference of the target person with respect to a product or the like associated with the attribute.
  • the “purchasing potential data” includes attributes for each of a large number of products and the like that are subject to sales management by the member service provided by the system 100.
  • the “purchase potential data” may include each attribute corresponding to each code value of, for example, a JAN code for identifying each product. In this case, for each product assigned with a JAN code, 1 Or two or more attributes are assigned.
  • the “purchasing potential data” may include hundreds of thousands to millions of attributes or more.
  • the “purchasing potential data” may have an attribute corresponding to a product group or a service group.
  • the “purchase potential data” may have an attribute corresponding to a product group such as beer, liquor, and / or beverage.
  • Purchasing potential data is a preference level that quantifies the purchase performance (presence / absence of purchase, purchase volume, purchase time, purchase location, etc.) and / or the response of the target to product questionnaires or advertisements for each target person. Etc. may be stored as known attribute values.
  • the “purchasing potential data” may also store a predicted value predicted using an attribute prediction model as at least a part of the attribute value.
  • “Recommendation potential data” is a set of attributes indicating the characteristics of each target person regarding the recommendation. “Recommended potential data” may include at least one of one or more attributes related to media response, one or more attributes related to incentive response, and one or more attributes related to separability as an example.
  • Media response is, for example, direct mail, e-mail, advertisement printed on receipt, Internet advertisement, TV advertisement, etc. It includes one or more attributes indicating values and the like. For example, when a certain target person does not respond to direct mail, the recommendation processing device 190 may decrease the attribute value of the attribute related to the effectiveness or evaluation value of the direct mail, or set a lower attribute value. Good. In addition, when a certain target person clicks an Internet advertisement at a frequency higher than the reference frequency or purchases a product via the Internet advertisement, the recommendation processing device 190 determines the effectiveness or evaluation value of the Internet advertisement, etc. The attribute value of the attribute relating to may be increased or a higher attribute value may be set.
  • the “incentive response” is, for example, the effectiveness or evaluation value of a recommendation using the incentive for the target person for each incentive such as discount, coupon grant, point grant, point increase, and sales promotion offer.
  • the recommendation processing device 190 increases the attribute value of the attribute related to the effectiveness of the point grant or the evaluation value, or sets a higher attribute value. It may be set.
  • “Possibility of separation” includes, as an example, one or a plurality of attributes indicating the possibility of not using products of each business operator and / or each product manufacturer or service provider. .
  • the attribute prediction apparatus 110 considers that the target person has separated from the sales company and has made a separation. Is stored in the attribute DB 122. Instead, the attribute prediction apparatus 110 may store the separation evaluation value calculated according to the elapsed period since the target person last used the seller as attribute values in the attribute DB 122.
  • FIG. 3 shows an operation flow of the prediction model generation apparatus 150 according to the present embodiment.
  • the model update instruction unit 155 instructs to update the attribute prediction model used by the attribute prediction device 110 in response to the elapse of a predetermined period.
  • the model update instruction unit 155 may instruct an update of the attribute prediction model in response to an instruction from a user or an administrator of the system 100.
  • the prediction model generation apparatus 150 may set all the attributes of the attribute DB 122 or the attribute DB 167 as prediction targets, may set each attribute excluding some attributes such as the name of the target person as prediction targets, and use general-purpose attribute data.
  • the attributes other than the basic attributes included in the data may be targeted for prediction, and purchase potential data and / or recommendation potential data may be targeted for prediction.
  • the prediction model generation apparatus 150 may exclude the attribute for dimension reduction added by the dimension reduction unit 170 from the prediction target.
  • the prediction model generation apparatus 150 may set only the attributes designated by the user or the administrator of the system 100 as prediction targets among all the attributes included in the attribute DB 122 or the attribute DB 167.
  • the prediction model generation apparatus 150 may instruct the update of the attribute prediction model at a timing that may vary depending on the prediction target attribute. For example, the prediction model generation device 150 periodically instructs the attribute prediction model to be updated for attributes belonging to the general-purpose attribute data, and for attributes belonging to the purchase potential data, as an example, purchase of products or the like corresponding to the attributes Whenever a predetermined quantity of data is received, the attribute prediction model is instructed to be updated. For attributes belonging to the recommendation potential data, for example, every time a predetermined number of recommendations are made, the attribute prediction model is instructed to be updated. Also good.
  • the prediction model generation apparatus 150 may make the update frequency of the attribute prediction model which predicts the attribute which belongs to purchase potential data lower than the update frequency of the attribute prediction model which predicts the attribute which belongs to general-purpose attribute data. Since the purchase potential data includes attributes corresponding to individual products and the like, the number of attributes is usually larger than that of general-purpose attribute data. Therefore, the prediction model generation device 150 predicts attributes belonging to the purchase potential data. By reducing the update frequency of the prediction model generation device 150, the calculation amount of the prediction model generation device 150 can be greatly reduced.
  • the sampling unit 160 samples some subjects from the attribute DB 122, and associates attribute information stored in the attribute DB 122 in association with the sampled subjects with the attribute DB 167 via the attribute DB connection unit 165. To store.
  • the dimension reduction unit 170 uses the topic model such as the latent Dirichlet allocation method (LDA) or the probabilistic latent semantic analysis method (Probabilistic Latin Semantic Analysis) as an example. Contract.
  • LDA latent Dirichlet allocation method
  • Probabilistic Latin Semantic Analysis Probabilistic Latin Semantic Analysis
  • Contract When using a topic model, the dimension reduction unit 170 models the number of topics as a plurality of types such as 10, 20, 30,..., 100, for example, and uses a plurality of attributes generated for each number of topics for dimension reduction. May be stored in the contracted DB 177 as the attribute of. Accordingly, the attribute prediction model generation unit 180 can set the number of topics to be used as a hyperparameter of the attribute prediction model, and the attribute prediction model selection unit 185 can select the attribute prediction model having the optimal number of topics. .
  • LDA latent Dirichlet allocation method
  • Probabilistic Latin Semantic Analysis Probabilistic Latin Semantic Analysis
  • the dimension reduction unit 170 sets only the attributes included in the basic attribute and the life attribute as evaluation targets for topic generation, and the attribute included in the orientation may not be used for topic generation. If all attributes are subject to topic generation evaluation, even small differences between target audiences (for example, whether a particular product has been purchased) can be included in the evaluation and reflected in the attribute value after dimension reduction. The amount of calculation required for the reduction process increases. When only some attributes are to be evaluated for topic generation, the amount of calculation can be reduced by using only some attributes that are emphasized by the user or administrator of the system 100.
  • the dimension reduction unit 170 may reduce the dimension of the attribute DB 167 by another method instead of the topic model or in addition to the topic model.
  • the dimension reduction unit 170 may exclude an attribute for which the ratio of the target person in which the known attribute value is stored is less than the reference ratio from the explanatory variable of the attribute prediction model.
  • the prediction model generation device 150 repeats the processing between S340 and S380 (S350 to S370) for each prediction target attribute.
  • the attribute prediction model generation unit 180 generates one or more attribute prediction models for predicting the attribute value of the prediction target attribute.
  • the attribute prediction model generation unit 180 extracts attribute information of a plurality of target persons for modeling used for generating an attribute prediction model from the attribute information of each target person stored in the attribute DB 167.
  • the attribute prediction model generation unit 180 extracts attribute information for which the attribute value of the prediction target attribute is known, that is, attribute information for which the attribute value is actually obtained for the prediction target attribute, as the attribute information of the target person for modeling. .
  • the attribute prediction model generation unit 180 has a known attribute value among each attribute that may be used as an explanatory variable of the attribute prediction model (that is, an attribute that inputs an attribute value to the attribute prediction model as a candidate for the explanatory variable). It is also possible to extract attribute information having a larger ratio of those with higher priority. Note that the attribute prediction model generation unit 180 may increase the number of samples using a technique such as boost sampling when the number of modeling subjects is equal to or less than a predetermined reference number.
  • the attribute prediction model generation unit 180 generates a plurality of attribute prediction models using the extracted attribute information of the target person as learning attribute information.
  • the attribute prediction model generation unit 180 generates a plurality of attribute prediction models in which at least one of a prediction algorithm and a hyperparameter that is not updated by learning is different from each other.
  • the attribute prediction model generation unit 180 may select a prediction algorithm from various machine learning algorithms including, for example, random forest, gradient boosting, logistic regression, neural network, and support vector machine (SVM). Further, the attribute prediction model generation unit 180 includes the number of topics of the dimension reduction in the dimension reduction unit 170, the depth of the decision tree in the random forest, the depth of the tree in the gradient boosting, the normalization parameter in the logistic regression, and the neural network.
  • hyperparameters that can be set in the prediction algorithm such as the number of neurons and the number of layers in the network from a set of setting values that can be set as hyperparameters
  • a plurality of different hyperparameter sets may be obtained for each selected prediction algorithm.
  • the attribute prediction model generation unit 180 optimizes each of a plurality of attribute prediction models in which at least one of the pair of prediction algorithms and hyperparameters obtained as described above is different from each other by learning using the learning attribute information. . That is, for each learning attribute information, the attribute prediction model generation unit 180, when an attribute value other than the prediction target attribute among the learning attribute information is input to the attribute prediction model, the prediction target in the learning attribute information The learnable parameter of the attribute prediction model is updated so that a predicted value closer to the known attribute value of the attribute is output. Thereby, the attribute prediction model generation unit 180 learns and optimizes learnable parameters for each of the attribute prediction models.
  • optimization does not necessarily mean minimizing the prediction error of the attribute prediction model (that is, making all of the learnable parameters optimal values), and the prediction error of the attribute prediction model is It means a state in which the attribute prediction model generation unit 180 has finished learning processing to be further reduced (that is, a state in which learning processing that can be practically executed has been completed).
  • the attribute prediction model generation unit 180 may limit the explanatory variables of the attribute prediction model to only known attribute values. In this case, although the number of samples that can be used as learning attribute information is limited, the attribute prediction model generation unit 180 increases the possibility of generating a more accurate attribute prediction model based on actual attribute information. Can do. Instead, the attribute prediction model generation unit 180 may use attribute prediction values as some or all explanatory variables. That is, the attribute prediction model generation unit 180 predicts the attribute value of the second prediction target attribute using the predicted value of the first prediction target attribute predicted by the first attribute prediction model. An attribute prediction model may be generated.
  • the attribute prediction model generation unit 180 can use the predicted value of the first prediction target attribute predicted by the already generated first attribute prediction model as an explanatory variable. Can also use learning attribute information in which some known attribute values are missing, and can increase the accuracy of the attribute prediction model using more learning attribute information.
  • the attribute prediction model generation unit 180 uses the difference between the predicted value and the expected value of the prediction target attribute predicted by the attribute prediction model from each attribute information as the prediction error for all the attribute information that is the target of the prediction error evaluation.
  • An accumulated value may be used.
  • various known methods can be applied including, for example, a method of summing the squares of the difference between the predicted value and the expected value.
  • the attribute prediction model generation unit 180 may use a value that decreases as an AUC (Area Under the Curve), which will be described later, increases (for example, 1-AUC value) as an index indicating a prediction error.
  • prediction error includes an index that changes according to “prediction error”. That is, for example, an index indicating prediction accuracy also corresponds to an index indicating prediction error. A higher prediction accuracy corresponds to a lower prediction error, and a lower prediction accuracy indicates a higher prediction error. Equivalent to high. Therefore, the attribute prediction model generation unit 180 may use an AUC that increases as the prediction accuracy increases as an index indicating a prediction error (an index that decreases as the prediction error increases). In this case, a high prediction error means that the index value indicating the prediction error is small.
  • the attribute prediction model generation unit 180 evaluates the generated plurality of learned attribute prediction models, respectively.
  • the attribute prediction model generation unit 180 may evaluate the attribute prediction model based only on the prediction error, and not only the prediction error but also, for example, the calculation amount is smaller and / or the number of attributes to be referenced is smaller. Other conditions such as these may also be included as evaluation parameters. Further, the attribute prediction model generation unit 180 may evaluate the attribute prediction model using the value of the objective function including a term relating to the prediction error used for optimization of the prediction algorithm. Here, the attribute prediction model generation unit 180 may calculate the prediction error of each of the plurality of attribute prediction models using cross validation.
  • the attribute prediction model generation unit 180 learns a plurality of attribute prediction models using a part of the extracted modeling attribute information, and uses attribute information that is not used for learning among the attribute information for modeling. And calculating a prediction error of each of the plurality of attribute prediction models.
  • the attribute prediction model selection unit 185 selects an attribute prediction model used for prediction of the attribute value of the prediction target attribute based on the evaluation result such as prediction error of each of the plurality of attribute prediction models.
  • the attribute prediction model selection unit 185 selects an attribute prediction model with the smallest prediction error from among a plurality of attribute prediction models.
  • the attribute prediction model selection unit 185 may select the attribute prediction model having the highest evaluation among the plurality of attribute prediction models using the evaluation result including the condition other than the prediction error as the evaluation parameter.
  • the attribute prediction model selection unit 185 is based on the evaluation results such as the prediction error of each of the second one or more attribute prediction models using the prediction values of other attribute prediction models as explanatory variables.
  • the second attribute prediction model used for predicting the attribute value of the second prediction target attribute may be further selected.
  • the prediction model generation apparatus 150 can select an attribute prediction model optimized individually for each prediction target attribute by performing the processing of S350 to S370 for each prediction target attribute of the prediction target. it can. Thereby, the prediction model production
  • FIG. 4 shows an example of an evaluation result of the attribute prediction model generated by the attribute prediction model generation unit 180 according to this embodiment.
  • the attribute prediction model generation unit 180 has attribute identification information (attribute ID), dimension reduction parameter, prediction algorithm identification information (prediction algorithm ID) for each of one or more attribute prediction models generated for each prediction target attribute. ), Generating an evaluation result including hyperparameters, prediction errors, and model evaluation.
  • the “Attribute ID” is identification information of the prediction target attribute of the prediction target.
  • the “dimensional reduction parameter” is a parameter such as the number of topics used by the dimensional reduction unit 125 and the dimensional reduction unit 170 for dimensional reduction.
  • the attribute prediction model generation unit 180 records a setting value for each parameter.
  • the dimension reduction parameter can also be a kind of hyperparameter.
  • Prediction algorithm ID is identification information for identifying the prediction algorithm selected in the entry.
  • Hiper parameter indicates a set value for each hyper parameter in the selected prediction algorithm.
  • Prediction error indicates the prediction error of the attribute prediction model generated using the dimension reduction parameter, the prediction algorithm, and the hyper parameter specified in the entry.
  • Model evaluation indicates an evaluation result of the attribute prediction model generated corresponding to the entry.
  • the attribute prediction model generation unit 180 evaluates the attribute prediction model based only on the prediction error, the “model evaluation” column may not be provided separately.
  • FIG. 5 shows an example of an attribute prediction model selection result generated by the attribute prediction model selection unit 185 according to the present embodiment.
  • the attribute prediction model selection unit 185 selects an attribute prediction model used for prediction of the attribute value for each prediction target attribute using the evaluation result of each attribute prediction model by the attribute prediction model generation unit 180.
  • the attribute prediction model selection unit 185 generates a selection result including an attribute ID, a dimension reduction parameter selection value, a selection prediction algorithm ID, and a hyper parameter selection value for each prediction target attribute to be predicted.
  • attribute ID is identification information of a prediction target attribute corresponding to the entry.
  • the “dimension reduction parameter selection value” includes setting values of one or more dimension reduction parameters used for prediction of the prediction target attribute corresponding to the entry.
  • the “dimension reduction parameter value” corresponds to the dimension reduction parameter of the selected attribute prediction model in FIG.
  • the “selected prediction algorithm ID” is identification information for identifying a prediction algorithm used for prediction of a prediction target attribute corresponding to the entry.
  • the “selected prediction algorithm ID” corresponds to the prediction algorithm ID of the selected attribute prediction model in FIG.
  • the “hyper parameter selection value” is a setting value for each hyper parameter given to the prediction algorithm used for prediction of the prediction target attribute corresponding to the entry.
  • the “hyper parameter selection value” corresponds to the hyper parameter of the selected attribute prediction model in FIG.
  • the attribute prediction model selection unit 185 supplies the attribute prediction model selection result for each prediction target attribute to the attribute prediction unit 135, so that the dimension reduction parameter, the prediction algorithm, and the hyper parameter used for prediction for each prediction target attribute are obtained. This can be set for the attribute prediction unit 135. Note that the attribute prediction model selection unit 185 may supply the prediction error and / or evaluation result of the selected attribute prediction model to the attribute prediction unit 135.
  • FIG. 6 shows an attribute information acquisition flow in the attribute prediction apparatus 110 according to the present embodiment.
  • the attribute information acquisition unit 115 acquires the attribute information of the target person.
  • the attribute information acquisition unit 115 writes the acquired attribute information into the attribute DB 122 via the attribute DB connection unit 120.
  • the attribute information acquisition unit 115 may write the acquired attribute information as a known attribute value in the attribute DB 122. Further, when the attribute DB 122 and the attribute DB 167 store known attribute values in the same expression format as the predicted values for the attributes to be written, the attribute information acquisition unit 115 predicts the expression format of the acquired raw data of the attribute information. It is converted into the same expression format as the value and stored in the attribute DB 122.
  • FIG. 7 shows an attribute prediction flow in the attribute prediction apparatus 110 according to the present embodiment.
  • the dimension reduction unit 125 reduces the dimension of the attribute DB 122 using a topic model such as the latent Dirichlet distribution method or the probabilistic latent semantic analysis method as an example.
  • the dimension reduction unit 125 refers to the dimension reduction parameter selection value corresponding to the attribute prediction model selected for each prediction target attribute, and the dimension reduction parameter specified for at least one prediction target attribute.
  • the attribute for dimensional reduction according to the selected value is stored in the reduction DB 132.
  • the dimension reduction unit 125 copies an attribute used as an explanatory variable in at least one attribute prediction model selected by the attribute prediction model selection unit 185 among a plurality of attributes in the attribute DB 122 as an attribute of the reduction DB 132. To do.
  • the attribute prediction device 110 repeats the processing between S730 and S790 (S730 to S780) for each prediction target attribute (S720, S790).
  • the attribute prediction unit 135 predicts the attribute value of the prediction target attribute using the attribute prediction model selected for the prediction target attribute by the attribute prediction model selection unit 185.
  • the attribute prediction unit 135 acquires attribute values of attributes corresponding to the explanatory variables of the attribute prediction model included in the attribute information stored in the contract DB 132 for each target person via the contract DB connection unit 130. Is input to the attribute prediction model to calculate the predicted value of the prediction target attribute.
  • the attribute prediction unit 135 uses the predicted value of the first prediction target attribute based on the first attribute prediction model to predict the predicted value of the second prediction target attribute that is the prediction target.
  • the prediction value of the first prediction target attribute is input to the second attribute prediction model, and the second attribute prediction model is used to select the second value for each of the plurality of subjects.
  • the prediction target attribute is further predicted.
  • the attribute prediction unit 135 includes each of the plurality of target persons.
  • the predicted value of the second prediction target attribute of the subject is predicted using the known attribute value on the condition that the attribute value of the first prediction target attribute is known, and the attribute value of the first prediction target attribute is unknown
  • the predicted value of the second prediction target attribute of the subject may be predicted using the attribute value of the first prediction target attribute.
  • the attribute prediction unit 135 predicts the second prediction target attribute with higher accuracy by using the known attribute value for the target person who has the first prediction target attribute that is the prediction target by the first attribute prediction model.
  • the attribute prediction unit 135 stores the predicted value of the prediction target attribute in the attribute DB 122 via the attribute DB connection unit 120.
  • the attribute prediction unit 135 stores the predicted value in the attribute DB 122 even when the known attribute value of the prediction target attribute is stored in the attribute DB 122. May be.
  • the attribute predicted value update unit 142 determines the predicted value of the prediction target attribute when the attribute value of the prediction target attribute is known for one or a plurality of target persons among the plurality of target persons registered in the attribute DB 122. It is determined whether or not the attribute value deviates from a known attribute value. This criterion may be determined in advance by a designer, a system builder, a user, and / or an administrator of the system 100, and the attribute predicted value update unit 142 determines the variance or standard deviation of the known attribute values of the prediction target attribute. Or the like may be calculated by multiplying the constant by a constant.
  • the attribute predicted value update unit 142 sets the predicted value of the prediction target attribute to the known attribute value in S760. You may update based on. That is, when the known attribute value of the prediction target attribute and the predicted value take the same expression format, the attribute predicted value update unit 142 may rewrite the predicted value of the prediction target attribute with a known attribute value. In the case where the known attribute value and the predicted value of the prediction target attribute have different expression formats, the attribute predicted value update unit 142 converts the expression format of the known attribute value and rewrites the predicted value of the prediction target attribute. Also good.
  • the reference used for determining whether or not there is a divergence may be set in advance by a designer of the system 100, a system builder, a user, and / or an administrator.
  • the attribute prediction value update unit 142 uses a predicted value that is significantly wrong for other target prediction models that use the prediction target attribute as an explanatory variable for a target person whose attribute value of the prediction target attribute is known.
  • the attribute predicted value update unit 142 sets the predicted value to “unmarried” if it is known that the target person is “unmarried” even if the target person is erroneously predicted to be “married”. It can be updated and the prediction accuracy of other attributes predicted using this attribute as an explanatory variable can be increased.
  • the attribute value update unit 140 sets the attribute value of the prediction target attribute based on the prediction value of the prediction target attribute on the condition that the probability of prediction of the prediction value of the prediction target attribute is equal to or greater than the threshold (Yes in S770). May be updated (S780).
  • the attribute value update unit 140 when the known attribute value of the prediction target attribute and the prediction value have the same expression form, the attribute prediction value update unit 142 converts the known attribute value of the prediction target attribute to the predicted value. It may be rewritten as In the case where the known attribute value and the predicted value of the prediction target attribute have different representation formats, the attribute value update unit 140 may rewrite the attribute value of the prediction target attribute by converting the representation format of the prediction value.
  • the threshold used for determining the likelihood of prediction may be set in advance by a designer of the system 100, a system builder, a user, and / or an administrator.
  • the attribute value update unit 140 adapts to situations where the attribute value of the prediction target attribute is already known, such as when the acquisition time of the attribute value is old or when the situation of the subject has changed.
  • the known attribute value can be replaced based on the predicted value in response to the predicted value of the prediction target attribute becoming sufficiently accurate.
  • the target person who has purchased diapers is maintained with the "no child" attribute, and the target person who has frequently purchased gasoline is set to have the "no car” attribute. It is possible to prevent such a situation from being maintained.
  • the attribute value update unit 140 includes, as prediction accuracy, all target persons whose prediction target attributes are known, all target persons included in the learning attribute information, or learning attribute information for cross-validation.
  • AUC rea Under the Curve
  • the attribute value update unit 140 arranges each target person whose prediction target attribute is known on the horizontal axis in descending order of the predicted value, and for each target person on the horizontal axis, has all predicted values higher than the target person.
  • the area under the ROC curve in the ROC curve (Receiver Operating Characteristic Curve) in which the ratio of the target persons who satisfy the prediction target attribute among the target persons is plotted is calculated as AUC.
  • the attribute value update unit 140 may normalize the maximum value that the AUC can take to 1 by normalizing the horizontal axis of the ROC curve to 1. Instead, the attribute value update unit 140 may use a parameter value that increases as the prediction error decreases, such as (constant ⁇ prediction error), as the predictability of prediction.
  • FIG. 8 shows an example of the dependency relationship of the prediction target attribute.
  • the attribute prediction model A 810 predicts the attribute value of the prediction target attribute c based on the attribute value of the attribute a and the attribute value of the attribute b.
  • the attribute prediction model B 820 predicts the attribute value of the prediction target attribute e based on the attribute value of the attribute c and the attribute value of the attribute d.
  • the attribute prediction model C830 predicts the attribute value of the prediction target attribute b based on the attribute value of the attribute e and the attribute value of the attribute f.
  • the attribute prediction model A810 inputs the attribute value of the attribute b and outputs the attribute value of the attribute c
  • the attribute prediction model B820 inputs the attribute value of the attribute c and outputs the attribute value of the attribute e
  • the attribute prediction model C830 inputs the attribute value of the attribute e and outputs the attribute value of the attribute b. Therefore, in the chain of explanatory variables and objective variables in a plurality of attribute prediction models, there is a cyclic dependency between two or more prediction target attributes: attribute b ⁇ attribute c ⁇ attribute e ⁇ attribute b.
  • the attribute prediction model generation unit 180, the attribute prediction model selection unit 185, and / or the attribute prediction unit 135 uses, for example, a known attribute value of the attribute c in the attribute prediction model B820 as an explanatory variable, and the predicted value of the attribute c is If not used as an explanatory variable, the attribute prediction model B 820 no longer inputs the predicted value of the attribute c output from the attribute prediction model A 810, so that the cyclic dependency between the prediction target attributes can be eliminated. That is, the attribute prediction model generation unit 180, the attribute prediction model selection unit 185, and / or the attribute prediction unit 135 has a cyclic dependency of the input / output relationship to the attribute prediction model between two or more prediction target attributes.
  • the attribute prediction model may be generated or selected so that a known attribute value is input as the attribute value of the attribute included in the cyclic dependency in at least one attribute prediction model constituting the cyclic dependency.
  • the attribute prediction unit 135 cannot predict the attribute value of the prediction target attribute for a target person for which no known attribute value exists, or the prediction accuracy decreases. . Therefore, the attribute predicting unit 135 may have a configuration that allows cyclic dependency between two or more prediction target attributes.
  • the attribute predicting unit 135 has a certainty of predicting other prediction target attributes used for prediction of each of the two or more prediction target attributes according to the existence of cyclic dependency between the two or more prediction target attributes.
  • the prediction order of two or more prediction target attributes may be determined based on at least one of the degrees of contribution of other prediction target attributes to each of the two or more prediction target attributes. For example, in the example of this figure, if the order of attribute c, attribute b, and attribute e is in descending order of the prediction probability, the attribute prediction unit 135 inputs the attribute c having the highest prediction probability.
  • the prediction order may be determined so that B820 is executed first with priority.
  • the attribute prediction unit 135 may execute an attribute prediction model using the attribute as an input in descending order of the probability of prediction among the cyclically dependent attributes. Instead, when the attribute prediction model B820 is executed, the attribute prediction unit 135 inputs the prediction value output by the attribute prediction model C830 and the attribute prediction model C830 that receives the prediction value output by the attribute prediction model B820.
  • the attribute prediction model A 810 and the subsequent attribute prediction models B 820 may be executed along the dependency direction between the prediction target attributes.
  • the attribute prediction unit 135 predicts the predicted value of the dependency target prediction target attribute by using a predicted value that is predicted to be more likely to be closer to the original attribute value with higher probability of prediction. Thus, the accuracy of the predicted value can be increased more quickly.
  • the attribute prediction unit 135 in the example of the figure, the contribution degree of the attribute c in the prediction of the prediction target attribute e, the contribution degree of the attribute b in the prediction of the prediction target attribute c, and the attribute e in the prediction of the prediction target attribute b. If the degree of contribution decreases in this order, the attribute prediction unit 135 may determine the prediction order so that the attribute prediction model C830 having the attribute “e” having the lowest contribution as an input is executed with the highest priority. Good. Thereafter, the attribute prediction unit 135 may execute an attribute prediction model using the attribute as an input in descending order of contribution in the prediction of the next prediction target attribute by the attribute prediction model among the cyclically dependent attributes.
  • the attribute prediction unit 135 inputs the prediction value output by the attribute prediction model A810 and the prediction value output by the attribute prediction model A810.
  • the attribute prediction model B830 and the subsequent attribute prediction model C830 may be executed along the dependency direction between the prediction target attributes.
  • the attribute prediction unit 135 preferentially uses a prediction value that has a low degree of contribution that affects the prediction of the attribute prediction model in the subsequent stage and is unlikely to have a cyclic dependency, and uses the prediction value of the dependency target prediction target attribute. It is possible to make predictions, and it becomes possible to attenuate the influence of the cyclic dependence of the prediction values more quickly.
  • the attribute prediction unit 135 determines both the certainty of prediction of other prediction target attributes used for prediction of each of the two or more prediction target attributes and the contribution degree of the other prediction target attributes to each of the two or more prediction target attributes. Based on this, the prediction order of two or more prediction target attributes may be determined, and the prediction order may be determined in consideration of other conditions.
  • the attribute prediction unit 135 inputs the attribute when the attribute included in the cyclic dependency has a higher certainty of the prediction of the attribute used for prediction or the contribution of the attribute in the prediction is lower. Give priority to model execution.
  • the attribute prediction unit 135 may determine the priority based on a weighted sum of the accuracy of prediction of an attribute used for prediction (or the uncertainty of prediction) and the contribution of the attribute in the prediction.
  • the attribute prediction unit 135 has two or more prediction target attributes based on the product sum of the prediction uncertainties of the other prediction target attributes and the contributions of the other prediction target attributes. You may determine the prediction order of the prediction value of a prediction object attribute. That is, for example, the attribute prediction unit 135 determines the uncertain likelihood and input of each input attribute included in the cyclic dependency for each of a plurality of attribute prediction models (attribute prediction model A810, attribute prediction model B820, attribute prediction model C830, and the like). The product-sum of attribute contributions is taken, and the attribute prediction model with a smaller product-sum value is prioritized and executed.
  • the attribute prediction unit 135 may use a parameter value whose value decreases as the prediction probability increases as the prediction uncertainty.
  • the attribute prediction unit 135 may use a value obtained by subtracting from 1 the probability of prediction based on AUC normalized to 1 at the maximum, such as (1-AUC).
  • the attribute prediction unit 135 predicts between two or more prediction target attributes calculated by circulation by setting the prediction order between the prediction target attributes included in the cyclic dependency to a more appropriate order.
  • the accuracy of the value can be increased faster and / or the convergence of the predicted value can be accelerated.
  • the prediction value can be optimized earlier.
  • FIG. 9 shows an attribute addition flow in the system 100 according to the present embodiment.
  • the attribute data acquisition unit 144 acquires known information indicating a known attribute value of an additional attribute to be added to the attribute database for at least some of the plurality of subjects.
  • the terminal 112 can easily add an attribute to the attribute DB 122 so that an end user of the system 100 such as a marketer can easily predict an arbitrary characteristic of each target person.
  • the terminal 112 adds an attribute according to the known information, sets a known attribute value, and sets a known attribute value in response to the known information being dragged and dropped on the icon of the application that provides the user interface.
  • a user interface for executing at least a part of generation / selection of the attribute prediction model may be provided.
  • the known information acquired by the attribute data acquiring unit 144 may be information including a set of personal identification information and known attribute values of one or more additional attributes for each of at least some of the plurality of subjects.
  • the additional attribute is a binary attribute indicating whether or not the target person has a specific characteristic (for example, “whether or not the product A is bought”)
  • the known information includes each target whose additional attribute is true. At least one of a list of personal identification information of the person and a list of personal identification information of each subject whose additional attribute is false.
  • the attribute adding unit 146 adds an additional attribute to the plurality of attributes in the attribute DB 122.
  • the attribute addition unit 146 adds an additional attribute column to the attribute DB 122 via the attribute DB connection unit 120, and sets the additional attribute in the attribute DB 122 based on the known attribute value of each target person included in the known information.
  • the attribute adding unit 146 may set the known attribute value indicated in the known information as the known attribute value of the additional attribute in the attribute DB 122, and the known attribute value indicated in the known information as the attribute DB 122. It may be converted into the expression format in and set as a known attribute value of the additional attribute.
  • the prediction model generation device 150 in the system 100 generates one or a plurality of attribute prediction models using the additional attribute as a prediction target attribute.
  • the model update instruction unit 155 promptly adds the attribute prediction model of the additional attribute without waiting for the elapse of a predetermined period in response to the addition of the additional attribute to the attribute DB 122 by the attribute data acquisition unit 144. May be generated.
  • the process of generating one or more attribute prediction models using the additional attribute as a prediction target attribute may be the same as the process from S320 to S350 in the operation flow of FIG.
  • the prediction model generation device 150 in the system 100 selects an attribute prediction model to be used for predicting the attribute value of the prediction target attribute that is an additional attribute, based on the prediction error of each of the plurality of attribute prediction models.
  • the process of selecting the attribute prediction model used for predicting the attribute value of the additional attribute from the plurality of attribute prediction models may be the same as the process from S360 to S370 in FIG.
  • the attribute prediction device 110 in the system 100 may execute the attribute prediction flow shown in FIG. 7 to predict the attribute value of the additional attribute for each target person or all target persons.
  • the system 100 learns an attribute prediction model that predicts the attribute value of the additional attribute using the known attribute values of some target persons included in the known information as teacher data, and other target persons or all target persons. The predicted value of the additional attribute can be calculated for.
  • the attribute data acquisition unit 144 and the attribute addition unit 146 are provided in the attribute prediction device 110 and add an additional attribute to the attribute DB 122 that is a master.
  • the attribute data acquisition unit 144 and the attribute addition unit 146 may be provided in the prediction model generation device 150 and may add an additional attribute to the attribute DB 167 that is a subset.
  • FIG. 10 shows the configuration of the recommendation processing apparatus 190 according to this embodiment together with the terminal 192.
  • the recommendation processing device 190 includes an environment information acquisition unit 900, a group selection unit 910, a recommendation determination unit 920, a recommendation method determination unit 930, a recommendation execution unit 940, a recommendation result acquisition unit 950, and a recommendation result storage unit 960.
  • the environment information acquisition unit 900 acquires environment information indicating an environment in which a recommended target person among a plurality of target persons registered in the system 100 is placed.
  • the environment information acquisition unit 900 includes position information indicating a position or place where the recommendation target person is present, weather information such as weather, weather, temperature, and / or humidity at the position or place where the recommendation target person is present, and the target person.
  • At least one of the behavior information indicating the behavior is acquired as environmental information.
  • the group selection unit 910 selects a group to be recommended from among a plurality of groups such as products based on the environmental information about the recommendation target acquired by the environmental information acquisition unit 900.
  • the group selection unit 910 stores one or a plurality of sets of environmental conditions, which are conditions for environmental information, and groups of products or the like recommended under the environmental conditions, and is acquired by the environmental information acquisition unit 900.
  • the environmental information that has been set satisfies a certain environmental condition
  • a group of products or the like associated with the environmental condition is selected as a recommendation target.
  • the group selection unit 910 may select a group such as a product handled at the store as a recommendation target group.
  • the group selection unit 910 gives priority to a group associated with a store closer to the recommendation target person's current position among a plurality of stores affiliated with the member service provided by the system 100 from the plurality of groups. May be selected.
  • the group selection unit 910 may select a soft drink, ice confectionery, and / or service member store from the target person in the nearest cafe.
  • a group related to etc. may be selected as a recommendation target.
  • the recommendation processing device 190 does not have the group selection unit 910, and may adopt a configuration in which a recommendation target product or the like is selected as a recommendation target from an arbitrary product or the like.
  • the group selection unit 910 may select a group to be recommended from among a plurality of groups such as products, based on the last use date and time of each of the plurality of stores for the recommendation target person or the elapsed period from the last use. . For example, when a predetermined reference period or more has elapsed since the last use of a store for a recommendation target person, the recommendation target person can be regarded as moving away from the store. In such a case, for example, the group selection unit 910 selects a group of products or the like handled in the store as a recommendation candidate, thereby enabling a recommendation that prevents the customer from leaving.
  • the recommendation determination unit 920 determines whether or not to recommend a product or the like based on at least one of the plurality of attribute values stored in the attribute DB 122 for the recommendation target person.
  • the recommendation determination unit 920 includes attributes associated with each product (or each product designated as recommendable) included in the purchase potential data among the attribute information of the recommendation target person stored in the attribute DB 122.
  • the attribute value (known attribute value or predicted value) is referred to, and if there is an attribute value indicating a preference higher than the reference value, the product corresponding to the attribute is determined as the recommended product.
  • the recommendation deciding unit 920 has attribute values (known attribute values or predicted values) of attributes associated with each product or the like (or each product designated as recommendable) included in the purchase potential data. Among them, one corresponding to an attribute value indicating higher palatability may be given higher priority, and one or more products to be recommended may be selected.
  • the recommendation determination unit 920 selects the group selection unit 910 based on at least one of a plurality of attribute values for the recommendation target person. From among the products included in the selected group, the product to be recommended to the recommended target person is determined. In this case, the recommendation determining unit 920 narrows the range for selecting products etc. to the range of the selected group, and selects the products to be recommended in the same manner as described above.
  • the recommendation method determining unit 930 determines a recommendation method for recommending a product or the like to a recommendation target person.
  • the recommendation method determination unit 930 may determine a recommendation method for recommending a product or the like to a recommendation target person using a recommendation model generated by a recommendation model generation unit 990 described later.
  • the recommendation method determination unit 930 is, as a recommendation method for the recommendation target person, at least one of media such as e-mail, Internet advertisement, direct mail, printing on a receipt issued to the target person, and television advertisement. You may decide to use one.
  • the recommendation method determination part 930 may determine providing the incentive of at least one of discount of goods etc., provision of a coupon, and point provision as a recommendation method with respect to a recommendation subject.
  • the recommendation result storage unit 960 stores the recommendation result by the determined recommendation method in association with at least some of the plurality of attributes in the attribute DB 122. For example, the recommendation result storage unit 960 associates the recommendation result with at least one attribute associated with the product to be recommended in the purchase potential data in the attribute information of the person to be recommended stored in the attribute DB 122. Store. In this case, the recommendation result storage unit 960 can reflect the recommendation result in the attribute value (known attribute value) of the attribute indicating the preference for the recommended product or the like.
  • the system 100 uses the attribute information acquisition unit 115 instead of updating the attribute in the purchase potential data in the attribute DB 122 from the recommendation result storage unit 960. You may take the structure to update.
  • the recommendation result storage unit 960 stores in association with at least one attribute corresponding to the medium used in the determined recommendation method, which is included in the media reaction in the recommendation potential data of the recommendation target person stored in the attribute DB 122. You can do it. As a result, the recommendation result storage unit 960 converts the recommendation result corresponding to the medium used in the determined recommendation method to the attribute value (known attribute value) indicating the effectiveness of the recommendation using each medium included in the media reaction. ).
  • the recommendation result storage unit 960 stores in association with at least one attribute corresponding to the incentive used in the determined recommendation method, which is included in the incentive reaction in the recommendation potential data of the recommendation target person stored in the attribute DB 122. You can do it. Thereby, the recommendation result storage unit 960 converts the recommendation result corresponding to the incentive used in the determined recommendation method to the attribute value (known attribute value) indicating the effectiveness of the recommendation that provides each incentive included in the incentive reaction. ).
  • the recommendation result storage unit 960 stores the content of the executed recommendation and the recommendation history including the recommendation result in the recommendation DB 980 via the recommendation DB connection unit 970.
  • the recommendation model generation unit 990 generates a recommendation model for selecting a recommendation method by using the attribute DB 122 that includes a recommendation result by the recommendation method as an attribute value of at least some attributes.
  • the recommendation model generation unit 990 according to the present embodiment generates a recommendation model using the recommendation DB 980 in addition to the attribute DB 122.
  • the recommendation model generation unit 990 may use a reduced DB 132 obtained by dimension reduction of the attribute DB 122, and the attribute DB 122 is sampled.
  • the attribute DB 167 may be used, and the contract DB 177 obtained by sampling and dimension reduction of the attribute DB 122 may be used.
  • generation part 990 may produce
  • a recommendation result corresponding to a recommendation method for recommending a product or the like is stored in the attribute DB 122 or the like as at least one attribute of the target person, and later using the attribute DB 122 or the like including this attribute. It is possible to generate and update a recommendation model for selecting a recommendation method in the recommendation. Thereby, the system 100 can perform the recommendation by a recommendation method more suitable for the subject as the number of recommendations is increased.
  • FIG. 11 shows an example of a data structure stored in the recommendation DB 980 according to this embodiment.
  • the recommendation DB 980 stores a personal ID, environmental information, a product ID / service ID, a recommendation method, and a recommendation result corresponding to each recommendation performed by the recommendation processing device 190.
  • “Personal ID” identifies the person to be recommended. “Environmental information” is environmental information about a recommendation target acquired by the environmental information acquisition unit 900 regarding the recommendation. “Product ID / Service ID” is identification information of a recommended product or the like.
  • “Recommendation method” is a recommendation method selected by the recommendation method determination unit 930 and executed by the recommendation execution unit 940, and includes media used for the recommendation and incentives added to the recommendation.
  • the “recommendation result” may indicate the behavior of the recommendation target person for the recommendation. In addition to the purchase of the recommended product etc., for example, the response to the e-mail / direct mail including the advertisement of the recommended product etc.
  • the recommendation DB 980 may store the date or date of the recommendation. In addition to or instead of storing the personal ID, the recommendation DB 980 may store at least a copy of the attribute information of the recommendation target person stored in the attribute DB 122 or the like. As an example, the recommendation DB 980 may store a copy of general-purpose attribute data of the recommendation target person, and in addition to or instead of this, the recommendation DB 980 is stored in association with the recommendation target product or the like in the purchase potential data. An attribute value of at least one attribute may be stored. According to this aspect, the amount of data stored in the recommendation DB 980 increases, but the recommendation processing device 190 records the attribute information of the recommendation target person used to determine the recommendation and / or to determine the recommendation method. Even if the attribute DB 122 is updated later, a recommendation model can be generated using the attribute information before the update.
  • FIG. 12 shows a recommendation processing flow of the recommendation processing apparatus 190 according to the present embodiment.
  • the environment information acquisition unit 900 acquires environment information for a target person (recommendation target person) among a plurality of target persons registered in the system 100.
  • the environment information acquisition unit 900 receives environment information from an application for a member service that is installed and executed on a mobile terminal such as a mobile phone or a smartphone that is carried by the recommended person.
  • the environmental information acquisition unit 900 can identify each target person located in that area and / or each target person who has an address in that area. It is good also as a recommendation object person by searching from attribute DB122 etc. and these object persons.
  • the recommendation method determination unit 930 determines a recommendation method for recommending the product or the like to the recommendation target person.
  • the recommendation method determination unit 930 may determine the recommendation method based on the environment information about the recommendation target person. For example, the recommendation method determination unit 930 may input at least a part of the environment information and attribute information about the recommendation target person and the recommendation target product and the like into the recommendation model, and determine the recommendation method using the recommendation model. Good.
  • the recommendation method determination unit 930 not only attempts to utilize the learning result by always determining the recommendation model using the recommendation model, but also randomly determines the recommendation method at a predetermined ratio. Alternatively, another recommendation method may be searched (Exploration) by selecting a recommendation method of the second best or less.
  • the recommendation executing unit 940 executes a recommendation by the determined recommendation method for the recommendation target person.
  • the recommendation execution unit 940 transmits a recommendation e-mail addressed to the e-mail address of the person to be reminded using a medium according to the determined recommendation method, and an advertisement link included in the Web page displayed by the person to be recommended To provide Internet advertisements, to output a list of addresses including address of each recommendation target person or address book, and to print advertisements on receipts upon receipt of purchase transactions associated with the purchase of products etc. by recommended target persons At least a part of the recommendation process may be performed, such as instructing the distribution of the advertisement of the recommended product or the like to the server or the like of the television / CATV provider.
  • the recommendation result acquisition unit 950 acquires a recommendation result for the recommendation target person.
  • the recommendation result acquisition unit 950 confirms that the recommended person has purchased the recommended product, received an opening confirmation message for the recommendation by e-mail, clicked on an advertisement link in the e-mail, or clicked on an Internet advertisement. Has been recorded, the receipt of an inquiry from a recommendation recipient who received a direct mail, the use of a coupon printed on a receipt, and / or an interaction with a TV advertisement, etc. To get that.
  • the recommendation result storage unit 960 reflects the contents of the executed recommendation and the acquired recommendation result in the attribute DB 122 and stores them in the recommendation DB 980 as a recommendation history.
  • the recommendation model generation unit 990 generates a recommendation model for selecting a recommendation method using the attribute DB 122 and the recommendation DB 980.
  • the recommendation model generation unit 990 may generate or update the recommendation model every time the recommendation result is acquired, or instead, every time the recommendation result is acquired a predetermined number of times or periodically.
  • a recommendation model may be generated or updated.
  • the recommendation model generation unit 990 may employ an algorithm selected in advance from various machine learning algorithms including, for example, random forest, gradient boosting, logistic regression, neural network, and support vector machine (SVM). Similarly to the attribute prediction model generation unit 180 and the attribute prediction model selection unit 185, an algorithm and a hyper parameter may be optimized.
  • various machine learning algorithms including, for example, random forest, gradient boosting, logistic regression, neural network, and support vector machine (SVM).
  • SVM support vector machine
  • the recommendation model generation unit 990 receives the attribute information and environment information of the target person, and outputs a recommendation rate for each recommendation method (for each media and for each incentive), a success probability, a deviation value of the success possibility, or the like.
  • the model is learned using the recommendation history stored in the recommendation DB 980.
  • the recommendation model generation unit 990 may perform a learning process so as to reflect a recommendation cost (an advertisement cost, an incentive cost, etc.).
  • the recommendation model generation unit 990 reduces the success rate or the like according to the cost in proportion to the recommendation that provides the incentive because the recommendation that provides the incentive is higher in cost than the recommendation that provides the incentive.
  • the recommendation model may be learned so as to reduce the ratio of the cost to the price of the product.
  • the recommendation model may be configured by combining the estimation model that receives the attribute information and the environment information and outputs the success rate or the like of any one of the recommendation methods for all the recommendation methods.
  • the recommendation model generation unit 990 extracts learning recommendation history from the recommendation history stored in the recommendation DB 980, inputs the attribute information and environment information of the target person corresponding to the extracted recommendation history to the recommendation model, and recommends the recommendation model.
  • a recommendation model is learned by calculating a difference between an estimated value (success rate, etc.) output from the model and a recommendation result, and repeating a process of updating parameters of the recommendation model so that the difference becomes smaller.
  • the recommendation model generation unit 990 may perform online learning by updating the recommendation model using the newly acquired recommendation result, and may execute the recommendation by the recommendation processing device 190 while learning.
  • the recommendation model generation unit 990 provides the generated / updated recommendation model to the recommendation method determination unit 930.
  • a recommendation method for generating / updating a recommendation model based on a result of recommending a target person and recommending a product or the like to the same or different target person is recommended. It can be determined using a model. Thereby, the system 100 can improve the accuracy of the recommendation.
  • the recommendation processing device 190 can also perform batch recommendation processing that can be specified by the user and / or administrator of the system 100.
  • the recommendation processing device 190 receives designation of recommendation target person narrowing conditions via the terminal 192, and displays the number of recommendation target persons satisfying the narrowing down condition on the terminal 192.
  • the narrowing-down condition may be specified by a range of attribute values of one or a plurality of attributes, for example, “Annual income is 20% or higher, male, and 40 to 50 years old”.
  • the attribute value of one or more attributes is extracted from the upper or lower order of the attribute value, such as “X name from the one with higher preference (or purchase possibility) for the product A”. May also include a designation of that.
  • the user or the like of the system 100 operates the terminal 192 to set / adjust the narrowing condition and determine the narrowing condition used for the recommendation. Also, the user of the system 100 designates a recommendation method as necessary.
  • the recommendation processing device 190 receives a recommendation execution instruction via the terminal 192, and executes a recommendation and obtains a recommendation result for each target person narrowed down by the narrowing-down conditions in the same manner as S1150 to S1180 in FIG. Reflecting the recommendation result to the database (DB) and updating the recommendation model.
  • the recommendation processing device 190 may perform a process of S1140 to determine a recommendation method suitable for each target person.
  • the recommendation method determination unit 930 may determine different recommendation methods for each of a part of the plurality of subjects.
  • the recommendation processing device 190 can execute a plurality of recommendation methods different from each other and use these recommendation results for learning the recommendation model.
  • the prediction model generation device 150 instead of the recommendation model generation unit 990 generating a recommendation model, the prediction model generation device 150 also functions as a recommendation model generation unit, and the prediction model generation device 150 has an attribute. It is also possible to adopt a configuration for generating a recommendation model as a kind of prediction model.
  • the attribute DB 122 stores at least one attribute for each recommendation method corresponding to each of a plurality of types of environment information as recommendation potential data.
  • the recommendation result storage unit 960 updates known attribute values in these attributes in the attribute DB 122 according to the recommendation result corresponding to the environment information and the recommendation method.
  • the prediction model generation device 150 generates a recommendation model that predicts these attributes in the recommendation potential data based on the attribute information of the subject as one type of attribute prediction model.
  • the recommendation method determining unit 930 selects the recommendation method corresponding to the attribute including the predicted value indicating that the success rate is higher, based on the predicted value of these attributes predicted by the recommendation model, so that the optimum is achieved.
  • the recommended recommendation method may be determined.
  • FIG. 13 illustrates an example of a computer 1900 in which aspects of the present invention may be embodied in whole or in part.
  • a program installed in the computer 1900 can cause the computer 1900 to function as an operation associated with the apparatus according to the embodiment of the present invention or as one or more sections of the apparatus, or to perform the operation or the one or more sections.
  • the section can be executed and / or the computer 1900 can execute a process according to an embodiment of the invention or a stage of the process.
  • Such a program may be executed by CPU 2000 to cause computer 1900 to perform certain operations associated with some or all of the blocks in the flowcharts and block diagrams described herein.
  • a computer 1900 is connected to a CPU peripheral unit having a CPU 2000, a RAM 2020, a graphic controller 2075, and a display device 2080 that are connected to each other by a host controller 2082, and to the host controller 2082 by an input / output controller 2084.
  • An input / output unit having a communication interface 2030, a hard disk drive 2040, and a DVD drive 2060, a ROM 2010 connected to an input / output controller 2084, a flash memory drive 2050, and a legacy input / output unit having an input / output chip 2070.
  • the host controller 2082 connects the RAM 2020 to the CPU 2000 and the graphic controller 2075 that access the RAM 2020 at a high transfer rate.
  • the CPU 2000 operates based on programs stored in the ROM 2010 and the RAM 2020 and controls each unit.
  • the graphic controller 2075 acquires image data generated by the CPU 2000 or the like on a frame buffer provided in the RAM 2020 and displays it on the display device 2080.
  • the graphic controller 2075 may include a frame buffer for storing image data generated by the CPU 2000 or the like.
  • the input / output controller 2084 connects the host controller 2082 to the communication interface 2030, the hard disk drive 2040, and the DVD drive 2060, which are relatively high-speed input / output devices.
  • the communication interface 2030 communicates with other devices via a network by wire or wireless.
  • the communication interface functions as hardware that performs communication.
  • the hard disk drive 2040 stores programs and data used by the CPU 2000 in the computer 1900.
  • the DVD drive 2060 reads a program or data from the DVD 2095 and provides it to the hard disk drive 2040 via the RAM 2020.
  • the ROM 2010, the flash memory drive 2050, and the relatively low-speed input / output device of the input / output chip 2070 are connected to the input / output controller 2084.
  • the ROM 2010 stores a boot program that the computer 1900 executes at startup and / or a program that depends on the hardware of the computer 1900.
  • the flash memory drive 2050 reads a program or data from the flash memory 2090 and provides it to the hard disk drive 2040 via the RAM 2020.
  • the input / output chip 2070 connects the flash memory drive 2050 to the input / output controller 2084 and inputs / outputs various input / output devices via, for example, a parallel port, a serial port, a keyboard port, a mouse port, and the like. Connect to controller 2084.
  • the program provided to the hard disk drive 2040 via the RAM 2020 is stored in a recording medium such as the flash memory 2090, the DVD 2095, or an IC card and provided by the user.
  • the program is read from the recording medium, installed in the hard disk drive 2040 in the computer 1900 via the RAM 2020, and executed by the CPU 2000.
  • the information processing described in these programs is read by the computer 1900 and provides cooperation between the software and the various types of hardware resources.
  • An apparatus or method may be configured by implementing information manipulation or processing in accordance with the use of computer 1900.
  • the CPU 2000 executes a communication program loaded on the RAM 2020 and executes a communication interface based on the processing content described in the communication program.
  • a communication process is instructed to 2030.
  • the communication interface 2030 reads transmission data stored in a transmission buffer area or the like provided on a storage device such as the RAM 2020, the hard disk drive 2040, the flash memory 2090, or the DVD 2095, and transmits it to the network.
  • the reception data received from the network is written into a reception buffer area or the like provided on the storage device.
  • the communication interface 2030 may transfer transmission / reception data to / from the storage device by a DMA (direct memory access) method.
  • the CPU 2000 transfers the storage device or the communication interface 2030 as a transfer source.
  • the transmission / reception data may be transferred by reading the data from the data and writing the data to the communication interface 2030 or the storage device of the transfer destination.
  • the CPU 2000 DMAs all or necessary portions of files or databases stored in an external storage device such as the hard disk drive 2040, the DVD drive 2060 (DVD 2095), the flash memory drive 2050 (flash memory 2090), or the like.
  • the data is read into the RAM 2020 by transfer or the like, and various processes are performed on the data on the RAM 2020. Then, CPU 2000 writes the processed data back to the external storage device by DMA transfer or the like.
  • the RAM 2020 and the external storage device are collectively referred to as a memory, a storage unit, or a storage device.
  • the CPU 2000 can also store a part of the RAM 2020 in the cache memory and perform reading and writing on the cache memory. Even in such a form, the cache memory bears a part of the function of the RAM 2020. Therefore, in the present embodiment, the cache memory is also included in the RAM 2020, the memory, and / or the storage device unless otherwise indicated. To do.
  • the CPU 2000 performs various operations, such as various operations, information processing, condition determination, information search / replacement, etc., described in the present embodiment, specified for the data read from the RAM 2020 by the instruction sequence of the program. Is written back to the RAM 2020. For example, when performing the condition determination, the CPU 2000 determines whether or not the various variables shown in the present embodiment satisfy the conditions such as large, small, above, below, equal, etc., compared to other variables or constants. If the condition is satisfied (or not satisfied), the program branches to a different instruction sequence or calls a subroutine.
  • the CPU 2000 can search for information stored in a file or database in the storage device. For example, in the case where a plurality of entries in which the attribute value of the second attribute is associated with the attribute value of the first attribute are stored in the storage device, the CPU 2000 displays the plurality of entries stored in the storage device. The entry that matches the condition in which the attribute value of the first attribute is specified is retrieved, and the attribute value of the second attribute that is stored in the entry is read, thereby associating with the first attribute that satisfies the predetermined condition The attribute value of the specified second attribute can be obtained.
  • Attribute Prediction Device 112 Terminal 115 Attribute Information Acquisition Unit 120 Attribute DB Connection Unit 122 Attribute DB 125-dimensional contraction unit 130 contracted DB connection unit 132 contracted DB 135 Attribute Prediction Unit 140 Attribute Value Update Unit 142 Attribute Prediction Value Update Unit 144 Attribute Data Acquisition Unit 146 Attribute Addition Unit 150 Prediction Model Generation Device 152 Terminal 155 Model Update Instruction Unit 160 Sampling Unit 165 Attribute DB Connection Unit 167 Attribute DB 170 Dimension Reduction Unit 175 Reduction DB Connection Unit 177 Reduction DB 180 Attribute prediction model generation unit 185 Attribute prediction model selection unit 190 Recommendation processing device 192 Terminal 810 Attribute prediction model A 820 Attribute prediction model B 830 Attribute prediction model C 900 environment information acquisition unit 910 group selection unit 920 recommendation determination unit 930 recommendation method determination unit 940 recommendation execution unit 950 recommendation result acquisition unit 960 recommendation result

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部と、複数の対象者のうちの第1対象者について、複数の属性値の少なくとも1つに基づいて、商品等をレコメンドするか否かを決定するレコメンド決定部と、第1対象者に商品等をレコメンドするレコメンド方法を決定するレコメンド方法決定部と、第1対象者に対するレコメンド結果を取得するレコメンド結果取得部と、レコメンド結果を、属性データベースにおける複数の属性のうちの少なくとも一部の属性に対応付けて格納するレコメンド結果格納部と、レコメンド結果を少なくとも一部の属性の属性値として含む属性データベースを用いてレコメンド方法を選択するレコメンドモデルを生成するレコメンドモデル生成部とを備える装置を提供する。

Description

顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム
 本発明は、顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラムに関する。
 従来、顧客に関するデータを蒐集して解析するシステムが知られている(例えば、特許文献1参照)。このようなシステムで解析されたデータは、顧客へのレコメンド、および市場調査等に用いられる。
 特許文献1 特開2015-76076号公報
解決しようとする課題
 近年、顧客に関するデータを解析して商品及び/又はサービスのレコメンドに活用することへの期待は益々高まっており、レコメンドの効果を更に高めていくことが望まれている。
一般的開示
 本発明の第1の態様においては、装置を提供する。装置は、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部を備えてよい。装置は、複数の対象者のうちの第1対象者について、複数の属性値の少なくとも1つに基づいて、商品およびサービスの少なくとも一方をレコメンドするか否かを決定するレコメンド決定部を備えてよい。装置は、第1対象者に商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を決定するレコメンド方法決定部を備えてよい。装置は、第1対象者に対するレコメンド方法によるレコメンド結果を取得するレコメンド結果取得部を備えてよい。装置は、レコメンド方法によるレコメンド結果を、属性データベースにおける複数の属性のうちの少なくとも一部の属性に対応付けて格納するレコメンド結果格納部を備えてよい。装置は、レコメンド方法によるレコメンド結果を少なくとも一部の属性の属性値として含む属性データベースを用いてレコメンド方法を選択するレコメンドモデルを生成するレコメンドモデル生成部を備えてよい。
 レコメンド方法決定部は、第2対象者に対して商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を、レコメンドモデルを用いて決定してよい。
 レコメンド方法決定部は、複数の第1対象者の一部ずつに対して、互いに異なるレコメンド方法を決定してよい。
 レコメンド方法決定部は、第1対象者に対するレコメンド方法として、電子メール、インターネット広告、ダイレクトメール、第1対象者に発行するレシートへの印刷、およびテレビ広告のうちの少なくとも1つを用いることを決定してよい。
 レコメンド方法決定部は、第1対象者に対するレコメンド方法として、商品およびサービスの少なくとも一方の値引、クーポンの付与、および、ポイント付与の少なくとも一方のインセンティブを提供することを決定してよい。
 装置は、第2対象者が置かれた環境を示す環境情報を取得する環境情報取得部を備えてよい。装置は、第2対象者についての環境情報に基づいて、商品およびサービスの少なくとも一方の複数のグループの中からレコメンドするグループを選択するグループ選択部を備えてよい。レコメンド決定部は、第2対象者についての複数の属性値の少なくとも1つに基づいて、グループ選択部が選択したグループに含まれる商品およびサービスの少なくとも一方の中から、第2対象者にレコメンドする商品およびサービスの少なくとも一方を決定してよい。
 グループ選択部は、複数のグループの中から、複数の店舗のうち第2対象者の現在位置により近い店舗に対応付けられたグループをより優先して選択してよい。
 グループ選択部は、第2対象者についての複数の店舗のそれぞれの最終利用日時または最終利用からの経過期間に更に基づいて、複数のグループの中からレコメンドするグループを選択してよい。
 レコメンド方法決定部は、第2対象者についての環境情報に更に基づいて、レコメンド方法を決定してよい。
 本発明の第2の態様においては、方法を提供する。方法においては、コンピュータが、複数の対象者のうちの第1対象者について、複数の対象者のそれぞれについて複数の属性に対応する複数の属性値を記憶するための属性データベースにおける複数の属性値の少なくとも1つに基づいて、商品およびサービスの少なくとも一方をレコメンドするか否かを決定してよい。方法においては、コンピュータが、第1対象者に商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を決定してよい。方法においては、コンピュータが、第1対象者に対するレコメンド方法によるレコメンド結果を取得してよい。方法においては、コンピュータが、レコメンド方法によるレコメンド結果を、属性データベースにおける複数の属性のうちの少なくとも一部の属性に対応付けて格納してよい。方法においては、コンピュータが、レコメンド方法によるレコメンド結果を少なくとも一部の属性の属性値として含む属性データベースを用いてレコメンド方法を選択するレコメンドモデルを生成してよい。
 レコメンド方法の決定において、コンピュータが、第2対象者に対して商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を、レコメンドモデルを用いて決定してよい。
 レコメンド方法の決定において、コンピュータが、複数の第1対象者の一部ずつに対して、互いに異なるレコメンド方法を決定してよい。
 レコメンド方法の決定において、コンピュータが、第1対象者に対するレコメンド方法として、電子メール、インターネット広告、ダイレクトメール、第1対象者に発行するレシートへの印刷、およびテレビ広告のうちの少なくとも1つを用いることを決定してよい。
 レコメンド方法の決定において、コンピュータが、第1対象者に対するレコメンド方法として、商品およびサービスの少なくとも一方の値引、クーポンの付与、および、ポイント付与の少なくとも一方のインセンティブを提供することを決定してよい。
 方法においては、コンピュータが、第2対象者が置かれた環境を示す環境情報を取得してよい。方法においては、コンピュータが、第2対象者についての環境情報に基づいて、商品およびサービスの少なくとも一方の複数のグループの中からレコメンドするグループを選択してよい。レコメンドするか否かの決定において、コンピュータが、第2対象者についての複数の属性値の少なくとも1つに基づいて、グループ選択部が選択したグループに含まれる商品およびサービスの少なくとも一方の中から、第2対象者にレコメンドする商品およびサービスの少なくとも一方を決定してよい。
 グループの選択において、コンピュータが、複数のグループの中から、複数の店舗のうち第2対象者の現在位置により近い店舗に対応付けられたグループをより優先して選択してよい。
 グループの選択において、コンピュータが、第2対象者についての複数の店舗のそれぞれの最終利用日時または最終利用からの経過期間に更に基づいて、複数のグループの中からレコメンドするグループを選択してよい。
 レコメンド方法の決定において、コンピュータが、第2対象者についての環境情報に更に基づいて、レコメンド方法を決定してよい。
 本発明の第3の態様においては、コンピュータにより実行されるプログラムを提供する。プログラムは、コンピュータを、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部として機能させてよい。プログラムは、複数の対象者のうちの第1対象者について、複数の属性値の少なくとも1つに基づいて、商品およびサービスの少なくとも一方をレコメンドするか否かを決定するレコメンド決定部として機能させてよい。プログラムは、第1対象者に商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を決定するレコメンド方法決定部として機能させてよい。プログラムは、第1対象者に対するレコメンド方法によるレコメンド結果を取得するレコメンド結果取得部として機能させてよい。プログラムは、レコメンド方法によるレコメンド結果を、属性データベースにおける複数の属性のうちの少なくとも一部の属性に対応付けて格納するレコメンド結果格納部として機能させてよい。プログラムは、レコメンド方法によるレコメンド結果を少なくとも一部の属性の属性値として含む属性データベースを用いてレコメンド方法を選択するレコメンドモデルを生成するレコメンドモデル生成部として機能させてよい。
 レコメンド方法決定部は、第2対象者に対して商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を、レコメンドモデルを用いて決定してよい。
 レコメンド方法決定部は、複数の第1対象者の一部ずつに対して、互いに異なるレコメンド方法を決定してよい。
 レコメンド方法決定部は、第1対象者に対するレコメンド方法として、電子メール、インターネット広告、ダイレクトメール、第1対象者に発行するレシートへの印刷、およびテレビ広告のうちの少なくとも1つを用いることを決定してよい。
 レコメンド方法決定部は、第1対象者に対するレコメンド方法として、商品およびサービスの少なくとも一方の値引、クーポンの付与、および、ポイント付与の少なくとも一方のインセンティブを提供することを決定してよい。
 プログラムは、コンピュータを、第2対象者が置かれた環境を示す環境情報を取得する環境情報取得部として機能させてよい。プログラムは、コンピュータを、第2対象者についての環境情報に基づいて、商品およびサービスの少なくとも一方の複数のグループの中からレコメンドするグループを選択するグループ選択部として機能させてよい。レコメンド決定部は、第2対象者についての複数の属性値の少なくとも1つに基づいて、グループ選択部が選択したグループに含まれる商品およびサービスの少なくとも一方の中から、第2対象者にレコメンドする商品およびサービスの少なくとも一方を決定してよい。
 グループ選択部は、複数のグループの中から、複数の店舗のうち第2対象者の現在位置により近い店舗に対応付けられたグループをより優先して選択してよい。
 グループ選択部は、第2対象者についての複数の店舗のそれぞれの最終利用日時または最終利用からの経過期間に更に基づいて、複数のグループの中からレコメンドするグループを選択してよい。
 レコメンド方法決定部は、第2対象者についての環境情報に更に基づいて、レコメンド方法を決定してよい。
 なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
本実施形態に係るシステム100の構成を端末112、端末152、および端末192と共に示す。 本実施形態に係る属性DB122および属性DB167に格納されるデータ構造の一例を示す。 本実施形態に係る予測モデル生成装置150の動作フローを示す。 本実施形態に係る属性予測モデル生成部180が生成する属性予測モデルの評価結果の一例を示す。 本実施形態に係る属性予測モデル選択部185が生成する属性予測モデルの選択結果の一例を示す。 本実施形態に係る属性予測装置110における属性情報取得フローを示す。 本実施形態に係る属性予測装置110における属性予測フローを示す。 予測対象属性の依存関係の一例を示す。 本実施形態に係るシステム100における属性追加フローを示す。 本実施形態に係るレコメンド処理装置190の構成を端末192と共に示す。 本実施形態に係るレコメンドDB980に格納されるデータ構造の一例を示す。 本実施形態に係るレコメンド処理装置190のレコメンド処理フローを示す。 本実施形態に係るコンピュータ1900の構成の一例を示す。
 以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
 図1は、本実施形態に係るシステム100の構成を端末112、端末152、および端末192と共に示す。システム100は、ポイントサービス等の加入者または会員等である各対象者の属性データ(「属性情報」とも示す。)を属性データベース(属性DB)に登録して管理する。システム100は、属性DBにおける、属性データを取得していない属性を主に予測する属性予測モデルを生成して、属性値を予測する。そして、システム100は、予測した属性値を含む属性DBを、商品またはサービス(以下「商品等」と総称する。)のレコメンドおよび市場調査等に活用可能とする。
 システム100は、属性予測装置110と、予測モデル生成装置150と、レコメンド処理装置190とを備える。システム100は、サーバ・コンピュータ等のコンピュータにより実現されてもよく、複数のコンピュータで実現されたシステムであってもよく、地域的に分散された複数のコンピュータで実現された分散システムであってもよい。システム100は、1事業者が提供するポイントシステム、複数の事業者にわたる共通の共通ポイントシステム、クレジットカード、電子マネー、およびその他の任意の会員サービスにおける各会員等の対象者の属性情報を管理する。
 属性予測装置110は、対象者の属性情報を入力して登録し、登録された属性情報に基づいて主に未知の属性情報を予測する。本実施形態に係る属性予測装置110は、複数の対象者間の属性値を、属性情報が既知であるか未知であるかに関わらず比較可能とするために、属性情報が既知の対象者についてもその属性情報を予測する。属性予測装置110は、属性情報取得部115と、属性DB接続部120と、属性DB122と、次元縮約部125と、縮約DB接続部130と、縮約DB132と、属性予測部135と、属性値更新部140と、属性予測値更新部142とを有する。
 属性情報取得部115は、対象者の属性情報を取得して、属性DB接続部120を介して属性DB122に格納する。対象者の属性情報のソースは、一例として、新規会員登録の際に対象者が必須または任意で記入または入力する情報、会員アンケートに対する対象者の回答、店舗等において対象者が商品等を購入したことに応じた決済情報、電子商取引サイトにおいて対象者が商品等を購入したことに応じた決済情報、対象者がアクセスしたWebサイトの情報、対象者がWebサイト上でクリックしたインターネット広告(Web広告)の情報、および、対象者が視聴したテレビ番組の情報等の少なくとも1つであってよく、対象者の同意を受けて提供される。属性情報取得部115は、定期的等の任意のタイミングで属性DB接続部120を介して属性DB122をアクセスし、少なくとも1つの属性に対する属性値が未知の対象者を検索して、Webサイト等を介して会員アンケートを行うこと等によって、能動的に未知の属性値を蒐集してもよい。
 属性DB接続部120は、属性DB122に接続され、システム100内の各部から属性DB122に対するアクセスを処理する。属性DB122は、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を含む属性情報を記憶する。属性DB122は、システム100の処理を行うコンピュータに接続されたハードディスクドライブ等の外部記憶装置の少なくとも一部の記憶領域によって実現されてもよく、例えばクラウドストレージサービス等によって提供されるシステム100の外部の記憶装置によって実現されてもよい。
 次元縮約部125は、属性DB122に記憶された、複数の対象者のそれぞれの複数の属性値に基づいて、複数の属性の次元を縮約する。一例として次元縮約部125は、トピックモデルを用いて、属性DB122に含まれる各対象者の属性情報が、複数のトピックのそれぞれに該当する程度または確率を表す複数の値を算出する。そして、次元縮約部125は、算出した複数の値を、各対象者の属性情報に対して次元縮約用の複数の属性として追加する。これにより、次元縮約部125は、対象者の属性情報を構成する多数の属性を、より少ない数となるトピック毎の属性に縮約することができる。これに伴い、次元縮約部125は、次元縮約用に追加した複数の属性以外の属性の少なくとも一部または全部を、属性予測モデルの説明変数から除いてもよい。次元縮約部125は、属性DB122に対し上記の次元縮約処理を適用して、縮約DB132に変換する。
 縮約DB接続部130は、縮約DB132に接続され、次元縮約部125から縮約DB132への書込アクセスおよび属性予測部135からの縮約DB132の読出アクセスを処理する。縮約DB132は、複数の対象者のそれぞれについて、次元縮約部125により縮約された属性を少なくとも一部に含む、複数の属性に対応する複数の属性値を属性情報として記憶する。縮約DB132も、属性DB122と同様に、システム100の処理を行うコンピュータに接続された外部記憶装置により実現されてもよく、システム100の外部のクラウドストレージサービス等により提供される記憶装置によって実現されてもよい。
 属性予測部135は、属性DB122における予測対象の1または2以上の属性(「予測対象属性」と示す。)のそれぞれに対して選択された属性予測モデルを予測モデル生成装置150から受け取る。そして、属性予測部135は、受け取った属性予測モデルを用いて、複数の対象者のそれぞれについて予測対象属性の属性値を予測する。より具体的には、属性予測部135は、全対象者または少なくとも一部の対象者のそれぞれについて、予測対象属性毎に、選択された属性予測モデルを実行し、縮約DB132に格納された各対象者の属性情報に基づいて予測対象属性の予測値を算出する。属性予測部135は、算出した予測値を属性DB接続部120を介して属性DB122に格納する。
 なお、本実施形態に係る属性DB122は、複数の属性のそれぞれに対応付けて、属性情報取得部115が取得した属性情報に基づく既知の属性値、および属性予測部135により予測された予測値の両方を広義の属性値として格納する。本実施形態においては、説明の便宜上、属性DB122は、既知の属性値と予測値とを、同じ表現形式を用いて格納するものとする。この場合、属性情報取得部115は、取得した属性情報の生データの表現形式を変換し、属性DB122は、表現形式が変換された属性値を、既知の属性値として格納する。例えば、属性情報取得部115は、属性情報の生データとして取得した絶対評価の属性値を相対評価の属性値に変換し、属性DB122は、相対評価に変換された属性値を格納してよい。このような例としては、属性DB122が、35歳等の絶対評価で表された対象者の年齢に代えて、年齢が既知である全対象者の中での相対値(例えば偏差値またはパーセンタイルランキング等)に変換された属性値を格納する場合が挙げられる。別の例としては、属性DB122が、対象者の性別について、男性である確率、または男性である可能性の偏差値等に変換された属性値を格納する場合が挙げられる。ここで、属性DB122が、属性の予測値も変換後の既知の属性値と同様に偏差値、パーセンタイルランキング、または確率等の表現形式で格納することで、既知の属性値と予測値との間で互換性を得ることができる。これにより、システム100は、属性予測モデルの生成においては既知の属性値を説明変数として使用し、属性予測モデルの使用時においては予測値を説明変数として使用することも可能となる。この結果、属性予測モデルの説明変数となる少なくとも一部の属性について既知の属性値が得られていない対象者についても、属性予測装置110は、その属性予測モデルを用いて予測対象属性の属性値を予測することが可能となる。
 なお、属性DB122は、変換前の表現形式で既知の属性値を格納し、変換後の表現形式で予測値を格納する形態等、他の様々な形態で実現し得る。このような場合であっても、システム100は、既知の属性値に代えて予測値を参照する度に、予測値の表現形式から既知の属性値の表現形式へと変換することで、既知の属性値および予測値を同じ表現形式で格納する場合と同様の動作を実現することが可能となる。また、属性DB122は、表現形式を変換した既知の属性値に加え、属性情報取得部115が取得した属性情報の生データも別途格納してもよい。
 属性値更新部140は、属性DB122に格納されているある属性の予測値の確からしさが閾値以上であることを条件として、予測値に基づいてその属性の属性値を更新する。これにより、予測値の確度が十分に高い場合には、未取得の属性値を予測値に基づいて設定することができる。
 属性予測値更新部142は、属性DB122に格納されているある属性の属性値が既知である場合において、その属性の予測値が既知の属性値から基準以上乖離していることに応じて、その属性の予測値を既知の属性値に基づいて更新する。これにより、一部の対象者について予測値が既知の属性値から大きく外れている場合に、予測値をより正確な値に書き換えることができる。
 また、属性予測装置110は、属性データ取得部144と属性追加部146とを有してもよい。属性データ取得部144は、複数の対象者の少なくとも一部について、属性データベースに追加すべき追加属性の既知の属性値を示す既知情報を取得する。例えば、属性データ取得部144は、システム100または属性予測装置110のユーザ等から、端末112を介して既知情報を受け取る。
 属性追加部146は、属性DB122の複数の属性に、追加属性を追加する。属性追加部146は、既知情報に含まれる各対象者についての追加属性の既知の属性値を、属性データ取得部144が取得した既知情報において示された属性値に基づいて設定する。既知情報において既知の属性値が示されていない対象者については、属性追加部146は、既知の属性値を設定しない。
 追加属性が属性DB122に追加されると、システム100は、追加属性を予測対象属性として処理してよい。すなわち、予測モデル生成装置150は、追加属性を予測対象属性として、予測対象属性の属性値を予測する1または複数の属性予測モデルを属性予測モデル生成部180により生成してよい。また、予測モデル生成装置150は、複数の属性予測モデルを生成した場合に、それぞれの予測誤差に基づいて、予測対象属性の属性値の予測に用いる属性予測モデルを属性予測モデル選択部185により選択してよい。
 予測モデル生成装置150は、属性DB122において予測対象とする1または2以上の属性のそれぞれを予測する属性予測モデルを生成する。予測モデル生成装置150は、モデル更新指示部155と、サンプリング部160と、属性DB接続部165と、属性DB167と、次元縮約部170と、縮約DB接続部175と、縮約DB177と、属性予測モデル生成部180と、属性予測モデル選択部185とを有する。
 モデル更新指示部155は、予め定められた期間が経過したことに応じて、属性予測装置110が使用する属性予測モデルの更新を指示する。モデル更新指示部155は、例えば、前回属性予測モデルを更新してから1日、1週間、または1ヶ月等といった期間が経過したことに応じて、サンプリング部160に対して処理の開始をトリガする等により、属性予測モデルの更新を指示する。これに代えて、モデル更新指示部155は、その期間の間に予測モデル生成装置150内で既に準備された属性予測モデルを、その期間が経過したことに応じて属性予測装置110へと送信することを属性予測モデル選択部185に指示してもよい。
 サンプリング部160は、属性DB122が属性情報を格納する複数の対象者のうち一部の対象者をサンプリングして、サンプリングした対象者に対応付けて属性DB122に格納されている属性情報を、属性DB接続部165を介して属性DB167に格納またはコピーする。ここで、サンプリング部160は、属性DB122に登録されている対象者のうち、予測対象属性の属性値が既知である対象者の中から、属性予測モデルの生成に使用するサンプル数分の対象者を抽出してもよい。これに代えて、サンプリング部160は、属性DB122に登録されている対象者の中から、属性予測モデルの生成に使用するサンプル数分の対象者をランダムに抽出してもよい。
 属性DB接続部165は、属性DB167に接続され、予測モデル生成装置150内の各部から属性DB167に対するアクセスを処理する。属性DB167は、属性DB122に登録された対象者のうちサンプリング部160によりサンプリングされた複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を含む属性情報を記憶する。属性DB167も、属性DB122と同様に、システム100の処理を行うコンピュータに接続された外部記憶装置により実現されてもよく、システム100の外部のクラウドストレージサービス等により提供される記憶装置によって実現されてもよい。
 次元縮約部170は、属性DB167に記憶された、複数の対象者のそれぞれの複数の属性値に基づいて、複数の属性の次元を縮約する。次元縮約部170は、属性DB167に対して次元縮約部125と同様の次元縮約処理を適用して、縮約DB177に変換してもよい。
 縮約DB接続部175は、縮約DB177に接続され、次元縮約部170から縮約DB177への書込アクセスおよび属性予測モデル生成部180からの縮約DB177の読出アクセスを処理する。縮約DB177は、サンプリング部160によりサンプリングされた複数の対象者のそれぞれについて、次元縮約部170により縮約された属性を少なくとも一部に含む複数の属性に対応する複数の属性値を有する属性情報を記憶する。縮約DB177も、属性DB122と同様に、システム100の処理を行うコンピュータに接続された外部記憶装置により実現されてもよく、システム100の外部のクラウドストレージサービス等により提供される記憶装置によって実現されてもよい。
 属性予測モデル生成部180は、属性DB167を用いて、予測対象属性の属性値を、複数の属性のうち予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する複数の属性予測モデルを生成する。本実施形態に係る属性予測モデル生成部180は、属性DB167を参照することにより、属性DB122からサンプリングされた一部の対象者に対応付けられた属性値を用いて、複数の属性予測モデルを生成する。これにより、属性予測モデル生成部180は、複数の属性予測モデルのそれぞれを、属性DB122に格納された全対象者の属性情報を用いて生成した場合に必要となる計算量および計算時間を削減することができる。なお、十分な計算能力が確保できる場合には、属性予測モデル生成部180は、サンプリングを用いず属性DB122に格納された各対象者の属性情報を用いて複数の属性予測モデルを生成してもよい。
 また、本実施形態において、属性予測モデル生成部180は、属性DB167から変換された縮約DB177を参照することにより、属性DB167を間接的に使用してよい。これにより、属性予測モデル生成部180は、次元縮約された複数の属性のうち少なくとも1つの属性の属性値から予測対象属性の属性値を予測することができる。ここで次元縮約部170が次元縮約用に追加した複数の属性以外の全ての属性または少なくとも一部の属性を属性予測モデルの説明変数から除くことで、属性予測モデル生成部180は、次元縮約の結果を効果的に利用して、多数の属性の中から予測対象属性の予測に影響を与えうる一部の属性のみを説明変数として属性予測モデルを生成することができる。この結果、属性予測モデル生成部180は、複数の属性予測モデルの生成に必要となる計算量および計算時間を削減することができる。
 以上において、属性予測モデル生成部180は、複数の予測対象属性のそれぞれに対して、その予測対象属性を予測する属性予測モデルを複数生成することができる。ここで、属性予測モデル生成部180は、第1予測対象属性の属性値の予測に用いる第1属性予測モデル、および第2予測対象属性の属性値の予測に用いる第2属性予測モデルとして、異なる属性予測モデルを選択可能とする。これら複数の属性予測モデルのそれぞれは、学習によって更新されないハイパーパラメータおよび予測アルゴリズムの少なくとも1つが他の属性予測モデルと異なるものであってよい。属性予測モデル生成部180は、複数の属性予測モデルのそれぞれについて、その属性予測モデルにおける学習可能なパラメータを学習させて、複数の属性予測モデルのそれぞれが予測対象属性の属性値を予測する予測誤差を最小化する処理を行う。
 属性予測モデル選択部185は、複数の予測対象属性のそれぞれに対して属性予測モデル生成部180が生成した複数の属性予測モデルのそれぞれの予測誤差に基づいて、その予測対象属性の属性値の予測に用いる属性予測モデルを選択する。例えば、属性予測モデル選択部185は、予測対象属性毎に、複数の属性予測モデルの中から予測誤差が最小の属性予測モデルを選択する。この際、属性予測モデル選択部185は、予測対象属性毎に、ハイパーパラメータおよび予測アルゴリズムの少なくとも1つが異なる属性予測モデルを選択しうる。属性予測モデル選択部185は、予測対象属性毎に選択された属性予測モデルを属性予測装置110内の属性予測部135へと提供する。一例として、属性予測モデル選択部185は、属性予測モデルに用いる予測アルゴリズムを指定する識別情報およびハイパーパラメータの値のセットを属性予測部135へと提供する。
 レコメンド処理装置190は、複数の対象者のそれぞれにおける予測対象とした予測対象属性の属性値に基づいて、予測対象属性に対応付けられた商品等を対象者にレコメンドするか否かを選択する。ここで、レコメンド処理装置190は、複数の対象者のそれぞれについて、特定の商品等に対する嗜好性を示す予測対象属性の属性値が閾値以上の嗜好性を示す場合に、その対象者にその商品等をレコメンドすることを決定してもよい。また、レコメンド処理装置190は、1または複数の基本属性、生活属性、および志向性の少なくとも一部(例えば居住地、車を所有しているか否か、高級志向か倹約志向か)を示す予測対象属性の属性値に基づいて、商品等をレコメンドすることを決定してもよい。
 そして、レコメンド処理装置190は、複数の対象者のうちレコメンドをすることを決定した対象者に対して、商品等をレコメンドする。一例として、レコメンド処理装置190は、その商品等の広告を含む電子メール、ダイレクトメール、およびインターネット広告等を対象者に提供してもよく、その商品等の広告を含むテレビCMをその対象者を含む視聴者向けに提供してもよく、その商品等の購入を優遇するクーポン、値引、およびポイント付与等のサービスを提供してもよい。
 端末112は、直接的またはネットワークを介して間接的に属性予測装置110に接続され、属性予測装置110の属性DB122または縮約DB132に格納された複数の対象者の属性情報の統計処理、属性の追加・削除、属性値の設定、および少なくとも1つの属性の組が設定した抽出条件を満たす対象者の絞り込み等のデータベース処理、ならびに予測対象の各予測対象属性に対する属性予測モデルの評価等を行うためのユーザーインターフェイスを提供する。
 端末152は、直接的またはネットワークを介して間接的に予測モデル生成装置150に接続され、属性予測モデル生成部180が生成可能な予測アルゴリズムの追加・変更・削除、属性予測モデル生成部180が各属性予測モデルに与えるハイパーパラメータの範囲指定および値指定、属性予測モデル生成部180が生成した複数の属性予測モデルのそれぞれの学習済パラメータおよび予測結果の確認、評価、および属性モデル間の比較、属性予測モデル選択部185に対する手動による属性予測モデルの選択指定または選択補助、属性DB122のサブセットである属性DB167に対する属性の追加・削除、属性値の設定、および少なくとも1つの属性の組が設定した抽出条件を満たす対象者の絞り込み等のデータベース処理、ならびに予測モデル生成装置150の属性DB167または縮約DB177に格納した複数の対象者の属性情報の統計処理等を行うためのユーザーインターフェイスを提供する。
 端末192は、直接的またはネットワークを介して間接的に端末192に接続され、レコメンド処理装置190におけるレコメンド処理を管理するためのユーザーインターフェイスを提供する。一例として、端末192は、広告予算、および商品等の値引またはポイント付与予算に応じてレコメンドの対象者を絞り込むための条件の設定および調整、レコメンドの対象者の絞り込み結果の確認、レコメンド方法の設定、およびレコメンド実行の指示等を行うためのユーザーインターフェイスを提供する。
 端末112、端末152、および端末192は、デスクトップ・コンピュータであってよく、タブレットおよびスマートフォン等の携帯端末であってもよい。
 以上に示したシステム100によれば、属性DB122または属性DB122のサブセットである属性DB167に格納された複数の対象者の属性情報に基づいて、予測対象属性毎に、属性値を予測する複数の属性予測モデルを生成し、予測対象属性毎に好適な属性予測モデルを選択することができる。したがって、システム100によれば、予測対象属性毎の予測精度をより向上することが可能となる。
 図2は、本実施形態に係る属性DB122および属性DB167に格納されるデータ構造の一例を示す。属性DB122および属性DB167は、複数の対象者のそれぞれについて、個人を識別する個人識別情報(個人ID)、および当該個人が有する複数の属性についての属性情報を記憶する。
 「個人ID」は、システム100において個々の対象者個人を識別するための識別子であり、例えばシステム100が提供するサービスの会員番号またはログインID等である。これに代えて、属性DB122および属性DB167は、「個人ID」として、対象者の名前、電子メールアドレス、住所、電話番号、対象者所有の携帯端末の識別情報、またはこれらの少なくとも1つの組み合わせに基づいて生成された情報を用いてもよい。
 「属性情報」は、対象者が有する各種の属性についての属性値である。本実施形態に係る属性DB122および属性DB167が格納する各属性は、汎用属性データ、購買ポテンシャルデータ、およびレコメンドポテンシャルデータに大別される。
 「汎用属性データ」は、各対象者の特性を示す属性のセットであり、特に対象者自身の特性を汎用的に示すものである。「汎用属性データ」は、基本属性に分類される1または複数の属性、生活属性に分類される1または複数の属性、および志向性に分類される1または複数の属性のうちの少なくとも1つを含んでよい。
 「基本属性」は、各対象者の基本情報であり、「基本属性」に分類される1または複数の属性として、例えば名前、生年月日、年令または年代、性別、住所、電話番号等の少なくとも1つを含む。「基本属性」は、主に対象者の新規登録時または登録内容変更時等に入力される属性であるが、少なくとも一部の属性は任意登録であってよく、予測対象となってもよい。
 「生活属性」は、対象者の生活態様に関する情報であり、「生活属性」に分類される1または複数の属性として、例えば既婚/未婚、住居形態、世帯年収、個人年収、職種、自動車の所有有無、および住居の所有有無等の少なくとも1つを含みうる。「生活属性」に関する属性値は、新規登録時等に収集されてもよく、アンケート等の各種の方法によって収集されてもよく、予測対象となってもよい。
 「志向性」は、対象者の志向、傾向及び/又は嗜好を示す情報であり、志向性に分類される1または複数の属性として、例えば衣類に対する品質志向/チャレンジ志向/堅実志向/ブランド志向等、食に対する高級志向/倹約志向/値引志向等、住に対するコンビニ志向/都会志向/地域重視志向等、その他健康志向、キャリア志向、およびグローバル志向等の少なくとも1つを含みうる。または、「志向性」は、対象者の嗜好に関する属性として、例えば、ドライブ、グルメ、旅行、およびスポーツ等の各種の趣味に対する嗜好の有無または嗜好度、各種の商品等に対する嗜好の有無または嗜好度、並びに各種のウェブサイト等に対する嗜好の有無または嗜好度等の少なくとも1つを含んでよい。「志向性」に関する属性は、各種の調査において調査の目的に応じて追加されうる。「志向性」に関する属性値は、新規登録時等に収集されてもよく、アンケート等の各種の方法によって収集されてもよく、予測対象となってもよい。
 「購買ポテンシャルデータ」は、複数の商品等、あるいは複数の商品群またはサービス群のそれぞれに対する各対象者の購買可能性を示す属性のセットである。「購買ポテンシャルデータ」は、一例としてエンターテインメント、食品、および日用品といった商品等のジャンル、種別、または分類のそれぞれについて、そのジャンル等に対応する各商品または各サービスに対応付けられた属性を含んでよい。「購買ポテンシャルデータ」の各属性は、その属性に対応付けられた商品等に対する対象者の嗜好性を示す嗜好属性であってよい。
 一例として、「購買ポテンシャルデータ」は、システム100が提供する会員サービスによる販売管理の対象とする多数の商品等のそれぞれに対する属性を含む。「購買ポテンシャルデータ」は、各商品等を識別する例えばJANコードの各コード値に対応して各属性を含んでもよく、この場合、JANコードが割り当てられた1つ1つの商品等に対し、1または2以上の属性が割り当てられる。システム100が提供する会員サービスが複数の事業者にわたる共通ポイントシステムを提供する場合には、「購買ポテンシャルデータ」は、数十万~数百万、あるいはそれ以上の属性を含みうる。また、「購買ポテンシャルデータ」は、商品群またはサービス群に対応する属性を有していてもよい。例えば、「購買ポテンシャルデータ」は、例えば、ビール、酒類、及び/又は飲料といった商品群に対応する属性を有していてもよい。
 「購買ポテンシャルデータ」は、各対象者について、購買実績(購買の有無、購買量、購買時期、購買場所等)、及び/又は、商品アンケートもしくは広告に対する対象者の反応等を数値化した嗜好度等を既知の属性値として格納してもよい。また、「購買ポテンシャルデータ」は、属性予測モデルを用いて予測した予測値も属性値の少なくとも一部として格納してもよい。
 「レコメンドポテンシャルデータ」は、レコメンドに関する各対象者の特性を示す属性のセットである。「レコメンドポテンシャルデータ」は、一例としてメディア反応に関する1または複数の属性、インセンティブ反応に関する1または複数の属性、および、離反可能性に関する1または複数の属性のうちの少なくとも1つを含んでよい。
 「メディア反応」は、一例としてダイレクトメール、電子メール、レシートに印刷する広告、インターネット広告、および、TV広告等のレコメンドに用いるメディア毎に、対象者に対するそのメディアを用いたレコメンドの有効性または評価値等を示す1または複数の属性を含む。例えば、ある対象者がダイレクトメールには反応しない場合には、レコメンド処理装置190は、ダイレクトメールの有効性または評価値等に関する属性の属性値を減少させ、またはより低い属性値を設定してもよい。また、ある対象者がインターネット広告を基準頻度以上の頻度でクリックする場合、またはインターネット広告を経由して商品を購入した場合等には、レコメンド処理装置190は、インターネット広告の有効性または評価値等に関する属性の属性値を増加させ、またはより高い属性値を設定してもよい。
 「インセンティブ反応」は、一例として値引、クーポン付与、ポイント付与、ポイント増額、および、販売促進品の提供等といったインセンティブ毎に、対象者に対するそのインセンティブを用いたレコメンドの有効性または評価値等を示す1または複数の属性を含む。例えば、値引の提供をしてもある対象者が商品等の購入に至らなかった場合には、レコメンド処理装置190は、値引の有効性または評価値等に関する属性の属性値を減少させ、またはより低い属性値を設定してもよい。また、ある対象者がポイント付与を提供した商品等を購入した場合には、レコメンド処理装置190は、ポイント付与の有効性または評価値等に関する属性の属性値を増加させ、またはより高い属性値を設定してもよい。
 「離反可能性」は、一例として各販売事業者、及び/又は、各商品メーカ若しくはサービス提供者毎に、その事業者等の商品等を利用しなくなる可能性を示す1または複数の属性を含む。例えば、ある対象者がある販売事業者から最後に商品等を購入してから基準期間以上経過した場合、属性予測装置110は、その対象者がその販売事業者から離反したとみなし、離反した旨を示す属性値を属性DB122に格納する。これに代えて、属性予測装置110は、その対象者がその販売業者を最後に利用してからの経過期間に応じて算出した離反評価値を属性値として属性DB122に格納してもよい。
 図3は、本実施形態に係る予測モデル生成装置150の動作フローを示す。ステップS310において、モデル更新指示部155は、予め定められた期間が経過したことに応じて、属性予測装置110が使用する属性予測モデルの更新を指示する。これに代えて、またはこれに加えて、モデル更新指示部155は、システム100のユーザまたは管理者等の指示を受けて、属性予測モデルの更新を指示してもよい。
 ここで予測モデル生成装置150は、属性DB122または属性DB167が有する全属性を予測対象としてもよく、対象者の名前等の一部の属性を除いた各属性を予測対象としてもよく、汎用属性データに含まれる基本属性を除いた各属性を予測対象としてもよく、購買ポテンシャルデータ及び/又はレコメンドポテンシャルデータを予測対象としてもよい。また、予測モデル生成装置150は、次元縮約部170が追加した次元縮約用の属性については、予測対象から除いてもよい。また、予測モデル生成装置150は、属性DB122または属性DB167が有する全属性のうち、システム100のユーザまたは管理者が指定した属性のみを予測対象としてもよい。
 なお、予測モデル生成装置150は、予測対象属性によって異なりうるタイミングで属性予測モデルの更新を指示してもよい。例えば、予測モデル生成装置150は、汎用属性データに属する属性については、定期的に属性予測モデルの更新を指示し、購買ポテンシャルデータに属する属性については、一例としてその属性に対応する商品等の購買データを予め定められた数量分受け取る度に属性予測モデルの更新を指示し、レコメンドポテンシャルデータに属する属性については、一例として予め定められた回数レコメンドを行う度に属性予測モデルの更新を指示してもよい。また、予測モデル生成装置150は、購買ポテンシャルデータに属する属性を予測する属性予測モデルの更新頻度を、汎用属性データに属する属性を予測する属性予測モデルの更新頻度よりも低くしてもよい。購買ポテンシャルデータは、個々の商品等に対応する属性を含むことから通常は汎用属性データよりも属性数が多くなるので、予測モデル生成装置150は、購買ポテンシャルデータに属する属性を予測する属性予測モデルの更新頻度をより低くすることにより予測モデル生成装置150の計算量を大幅に低減させることが可能となる。
 S320において、サンプリング部160は、属性DB122から一部の対象者をサンプリングして、サンプリングした対象者に対応付けて属性DB122に格納されている属性情報を、属性DB接続部165を介して属性DB167に格納する。
 S330において、次元縮約部170は、一例として潜在的ディリクレ配分法(LDA:Latent Dirichlet Allocation)または確率的潜在意味解析法(Probabilistic Latent Semantic Analysis)等のトピックモデルを用いて、属性DB167の次元を縮約する。トピックモデルを用いる場合、次元縮約部170は、トピック数を例えば10、20、30、…、100等の複数種類のそれぞれとしてモデリングし、トピック数毎に生成した複数の属性を次元縮約用の属性として縮約DB177に格納してもよい。これにより、属性予測モデル生成部180は、使用するトピック数を属性予測モデルのハイパーパラメータとすることができ、属性予測モデル選択部185は、最適なトピック数の属性予測モデルを選択することができる。
 ここで次元縮約部170は、属性DB122または属性DB167が有する全属性をトピック生成の評価対象としてもよく、これに代えて、属性DB122または属性DB167が有する属性の一部をトピック生成の評価対象としてもよい。例えば、次元縮約部170は、汎用属性データに含まれる属性はトピック生成の評価対象とし、購買ポテンシャルデータおよびレコメンドポテンシャルデータに含まれる属性はトピック生成には使用しなくてもよい。また例えば、次元縮約部170は、汎用属性データに含まれる基本属性、生活属性、および志向性のうち一部のみに含まれる属性のみをトピック生成の評価対象としてもよい。一例として、次元縮約部170は、基本属性および生活属性に含まれる属性のみをトピック生成の評価対象とし、志向性に含まれる属性はトピック生成に使用しなくてもよい。全属性をトピック生成の評価対象とした場合には、対象者間の小さな差異(例えば特定の商品を購入したかどうか)までも評価に含めて次元縮約後の属性値に反映できるが、次元縮約処理に要する計算量が増加する。一部の属性のみをトピック生成の評価対象とする場合には、システム100のユーザまたは管理者等が重視する一部の属性のみを用いることで、計算量を抑えることができる。
 また、次元縮約部170は、トピックモデルに代えて、またはトピックモデルに加えて、他の手法により属性DB167の次元を縮約してもよい。例えば、次元縮約部170は、既知の属性値が格納されている対象者の割合が基準割合未満である属性については、属性予測モデルの説明変数から除いてもよい。
 次に、予測モデル生成装置150は、予測対象属性毎にS340およびS380の間の処理(S350~S370)を繰り返す。
 S350において、属性予測モデル生成部180は、予測対象属性の属性値を予測する1または複数の属性予測モデルを生成する。まず、属性予測モデル生成部180は、属性DB167に格納された各対象者の属性情報のうち、属性予測モデルの生成に用いるモデリング用の複数の対象者の属性情報を抽出する。属性予測モデル生成部180は、モデリング用の対象者の属性情報として、予測対象属性の属性値が既知である属性情報、すなわち予測対象属性について実際に属性値が得られている属性情報を抽出する。ここで、属性予測モデル生成部180は、属性予測モデルの説明変数として使用する可能性がある各属性(すなわち説明変数の候補として属性予測モデルに属性値を入力する属性)のうち属性値が既知であるものの割合がより大きい属性情報をより優先して抽出するようにしてもよい。なお、属性予測モデル生成部180は、モデリング用の対象者の数が予め定められた基準数以下の場合には、ブーストサンプリング等の手法を用いてサンプル数を増やしてもよい。
 次に、属性予測モデル生成部180は、抽出した対象者の属性情報を学習用属性情報として用いて、複数の属性予測モデルを生成する。属性予測モデル生成部180は、予測アルゴリズムおよび学習によって更新されないハイパーパラメータの少なくとも1つが互いに異なる複数の属性予測モデルを生成する。属性予測モデル生成部180は、例えばランダムフォレスト、勾配ブースティング、ロジスティック回帰、ニューラルネットワーク、およびサポートベクタマシン(SVM)等を含む各種の機械学習アルゴリズムの中から予測アルゴリズムを選択してもよい。また、属性予測モデル生成部180は、次元縮約部170における次元縮約のトピック数、ランダムフォレストにおける決定木の深さ、勾配ブースティングにおける木の深さ、ロジスティック回帰における正規化パラメータ、およびニューラルネットワークにおけるニューロン数および層数等のような予測アルゴリズムに設定可能な1または複数のハイパーパラメータのそれぞれを、ハイパーパラメータとして設定可能な複数の設定値の組の中から独立して選択することにより、選択した予測アルゴリズム毎に互いに異なる複数のハイパーパラメータの組を得てもよい。
 属性予測モデル生成部180は、上記のようにして得られた予測アルゴリズムおよびハイパーパラメータの組の少なくとも一方が互いに異なる複数の属性予測モデルのそれぞれを、学習用属性情報を用いて学習により最適化する。すなわち、属性予測モデル生成部180は、各学習用属性情報について、その学習用属性情報のうち予測対象属性以外の属性値を属性予測モデルの入力とした場合に、その学習用属性情報における予測対象属性の既知の属性値により近い予測値を出力するように属性予測モデルの学習可能パラメータを更新していく。これにより、属性予測モデル生成部180は、各属性予測モデルのそれぞれについて、学習可能パラメータを学習させて最適化する。ここで、「最適化」とは、必ずしもその属性予測モデルの予測誤差を最小化すること(すなわち学習可能パラメータの全てを最適値とすること)を意味せず、その属性予測モデルの予測誤差をより低減する学習処理を属性予測モデル生成部180がやり終えた状態(すなわち現実的に実行可能な学習処理を完了した状態)を意味する。
 ここで、属性予測モデル生成部180は、属性予測モデルの説明変数を、既知の属性値のみに制限してもよい。この場合、属性予測モデル生成部180は、学習用属性情報として使用できるサンプル数は制限されるが、現実の属性情報に基づきより精度の高い属性予測モデルを生成することができる可能性を高めることができる。これに代えて、属性予測モデル生成部180は、一部または全部の説明変数として属性の予測値を用いてもよい。すなわち、属性予測モデル生成部180は、第2予測対象属性の属性値を、第1の属性予測モデルにより予測された第1予測対象属性の予測値を用いて予測する第2の1または複数の属性予測モデルを生成してもよい。第2の複数の属性予測モデルの生成において、既に生成された第1属性予測モデルによって予測された第1予測対象属性の予測値を説明変数として使用可能とすることにより、属性予測モデル生成部180は、既知の属性値が一部欠けている学習用属性情報も利用することができ、より多くの学習用属性情報を用いて属性予測モデルの精度を高めうる。
 なお、属性予測モデル生成部180は、予測誤差として、各属性情報から属性予測モデルによって予測された予測対象属性の予測値と期待値との差を、予測誤差の評価対象となる全属性情報について累積した値を用いてもよい。このような誤差の算出方法は、一例として予測値と期待値との差の2乗を合計するもの等を含め公知の様々な方法を適用することができる。これに代えて、属性予測モデル生成部180は、後述するAUC(Area Under the Curve)が増えるにつれて減少する値(一例として1-AUC値)を、予測誤差を示す指標として用いてもよい。
 ここで「予測誤差」とは、「予測誤差」に応じて変化する指標も含まれる。すなわち例えば、予測精度を示す指標もまた、予測誤差を示す指標に該当し、予測精度がより高いことは、予測誤差がより低いことに相当し、予測精度がより低いことは、予測誤差がより高いことに相当する。したがって、属性予測モデル生成部180は、予測精度が高いほど大きくなるAUCを、予測誤差を示す指標(予測誤差が高いほど小さくなる指標)として用いてもよい。この場合、予測誤差が高いとは、予測誤差を示す指標値が小さいことを意味する。
 S360において、属性予測モデル生成部180は、生成された学習済の複数の属性予測モデルをそれぞれ評価する。属性予測モデル生成部180は、予測誤差のみに基づいて属性予測モデルを評価してもよく、予測誤差のみでなく、例えば計算量がより小さいこと、及び/又は、参照する属性数がより少ないこと等の他の条件も評価パラメータとして含めてもよい。また、属性予測モデル生成部180は、予測アルゴリズムの最適化に用いる、予測誤差に関する項を含む目的関数の値を用いて、属性予測モデルを評価してもよい。ここで、属性予測モデル生成部180は、交叉検定を用いて複数の属性予測モデルのそれぞれの予測誤差を算出してもよい。この場合、属性予測モデル生成部180は、抽出したモデリング用の属性情報の一部を用いて複数の属性予測モデルを学習させ、モデリング用の属性情報のうち学習に使用していない属性情報を用いて複数の属性予測モデルのそれぞれの予測誤差を算出する。
 S370において、属性予測モデル選択部185は、複数の属性予測モデルのそれぞれの予測誤差等の評価結果に基づいて、その予測対象属性の属性値の予測に用いる属性予測モデルを選択する。一例として属性予測モデル選択部185は、複数の属性予測モデルのうち、予測誤差が最小の属性予測モデルを選択する。これに代えて、属性予測モデル選択部185は、複数の属性予測モデルのうち、予測誤差以外の条件も評価パラメータとして含めた評価結果を用いて評価が最も高い属性予測モデルを選択してもよい。ここで、属性予測モデル選択部185は、上記のように他の属性予測モデルによる予測値を説明変数とする第2の1または複数の属性予測モデルのそれぞれの予測誤差等の評価結果に基づいて、第2予測対象属性の属性値の予測に用いる第2属性予測モデルを更に選択してもよい。
 予測モデル生成装置150は、予測対象の各予測対象属性のそれぞれに対してS350~S370の処理を行なうことにより、各予測対象属性に対して個別に最適化された属性予測モデルを選択することができる。これにより、予測モデル生成装置150は、各予測対象属性の予測精度をより高めることができる。
 図4は、本実施形態に係る属性予測モデル生成部180が生成する属性予測モデルの評価結果の一例を示す。属性予測モデル生成部180は、各予測対象属性に対して生成された1または複数の属性予測モデルのそれぞれについて、属性識別情報(属性ID)、次元縮約パラメータ、予測アルゴリズム識別情報(予測アルゴリズムID)、ハイパーパラメータ、予測誤差、およびモデル評価を含む評価結果を生成する。
 「属性ID」は、予測対象の予測対象属性の識別情報である。「次元縮約パラメータ」は、次元縮約部125および次元縮約部170が次元縮約に用いる、トピック数等のパラメータである。次元縮約パラメータが複数存在する場合、属性予測モデル生成部180は、パラメータ毎の設定値を記録する。次元縮約パラメータも、ハイパーパラメータの一種となりうる。
 「予測アルゴリズムID」は、当該エントリにおいて選択された予測アルゴリズムを識別する識別情報である。「ハイパーパラメータ」は、選択された予測アルゴリズムにおけるハイパーパラメータ毎の設定値を示す。「予測誤差」は、当該エントリにおいて指定された次元縮約パラメータ、予測アルゴリズム、およびハイパーパラメータを用いて生成した属性予測モデルの予測誤差を示す。「モデル評価」は、当該エントリに対応して生成された属性予測モデルの評価結果を示す。ここで、属性予測モデル生成部180は、属性予測モデルを予測誤差のみに基づいて評価する場合には、「モデル評価」のカラムを別途設けなくてもよい。
 図5は、本実施形態に係る属性予測モデル選択部185が生成する属性予測モデルの選択結果の一例を示す。属性予測モデル選択部185は、属性予測モデル生成部180による各属性予測モデルの評価結果を用いて、予測対象属性毎に、属性値の予測に用いる属性予測モデルを選択する。属性予測モデル選択部185は、予測対象の各予測対象属性について、属性ID、次元縮約パラメータ選択値、選択予測アルゴリズムID、ハイパーパラメータ選択値を含む選択結果を生成する。
 「属性ID」は、当該エントリに対応する予測対象属性の識別情報である。「次元縮約パラメータ選択値」は、当該エントリに対応する予測対象属性の予測に用いる1または複数の次元縮約パラメータのそれぞれの設定値を含む。「次元縮約パラメータ値」は、図4中における選択された属性予測モデルの次元縮約パラメータに対応する。「選択予測アルゴリズムID」は、当該エントリに対応する予測対象属性の予測に用いる予測アルゴリズムを識別する識別情報である。「選択予測アルゴリズムID」は、図4中における選択された属性予測モデルの予測アルゴリズムIDに対応する。「ハイパーパラメータ選択値」は、当該エントリに対応する予測対象属性の予測に用いる予測アルゴリズムに与えるハイパーパラメータ毎の設定値である。「ハイパーパラメータ選択値」は、図4中における選択された属性予測モデルのハイパーパラメータに対応する。
 属性予測モデル選択部185は、予測対象属性毎の属性予測モデルの選択結果を属性予測部135に供給することにより、予測対象属性毎に予測に用いる次元縮約パラメータ、予測アルゴリズム、およびハイパーパラメータを属性予測部135に対して設定することができる。なお、属性予測モデル選択部185は、選択された属性予測モデルの予測誤差及び/又は評価結果を属性予測部135に供給してもよい。
 図6は、本実施形態に係る属性予測装置110における属性情報取得フローを示す。S610において、属性情報取得部115は、対象者の属性情報を取得する。S620において、属性情報取得部115は、取得した属性情報を、属性DB接続部120を介して属性DB122に書き込む。
 属性DB122が書き込み対象の属性について既知の属性値と予測値とを別個に記憶する場合、属性情報取得部115は、取得した属性情報を、既知の属性値として属性DB122に書き込んでよい。また、属性DB122および属性DB167が書き込み対象の属性について予測値と同じ表現形式で既知の属性値を記憶する場合には、属性情報取得部115は、取得した属性情報の生データの表現形式を予測値と同じ表現形式に変換して属性DB122に格納する。
 図7は、本実施形態に係る属性予測装置110における属性予測フローを示す。ステップS710において、次元縮約部125は、サンプリング部160と同様に、一例として潜在的ディリクレ配分法または確率的潜在意味解析法等のトピックモデルを用いて、属性DB122の次元を縮約する。ここで、次元縮約部125は、各予測対象属性について選択された属性予測モデルに対応する次元縮約パラメータ選択値を参照し、少なくとも1つの予測対象属性に対して指定された次元縮約パラメータ選択値に応じた次元縮約用の属性を縮約DB132に格納する。また、次元縮約部125は、属性DB122における複数の属性のうち、属性予測モデル選択部185により選択された少なくとも1つの属性予測モデルにおいて説明変数として使用する属性を、縮約DB132の属性としてコピーする。
 属性予測装置110は、予測対象属性毎に、S730およびS790の間の処理(S730~S780)を繰り返す(S720、S790)。
 S730において、属性予測部135は、属性予測モデル選択部185によって予測対象属性用に選択された属性予測モデルを用いて、予測対象属性の属性値を予測する。属性予測部135は、各対象者について縮約DB132に格納された属性情報に含まれる、属性予測モデルの説明変数に対応する属性の属性値を縮約DB接続部130を介して取得し、これらの属性値を属性予測モデルに入力して予測対象属性の予測値を算出する。ここで、属性予測部135は、第1属性予測モデルによる第1予測対象属性の予測値を用いて予測対象である第2予測対象属性の予測値を予測する第2属性予測モデルについては、説明変数となる第1予測対象属性の属性値として、当該第1予測対象属性の予測値を第2属性予測モデルに入力し、第2属性予測モデルを用いて、複数の対象者のそれぞれについて第2予測対象属性を更に予測する。
 また、第1予測対象属性について既知の属性値および予測値が同じ表現形式で表されている場合、または一方から他方に変換可能な場合においては、属性予測部135は、複数の対象者のそれぞれについて、第1予測対象属性の属性値が既知であることを条件として既知の属性値を用いて対象者の第2予測対象属性の予測値を予測し、第1予測対象属性の属性値が未知であることを条件として第1予測対象属性の属性値を用いて対象者の第2予測対象属性の予測値を予測してもよい。これにより、属性予測部135は、第1属性予測モデルによる予測対象となった第1予測対象属性が既知の対象者については既知の属性値を用いてより高い精度で第2予測対象属性を予測しつつ、第1予測対象属性が未知の対象者についても予測を行うことが可能となる。
 S740において、属性予測部135は、予測対象属性の予測値を属性DB接続部120を介して属性DB122に格納する。ここで、属性予測部135は、予測対象属性の予測値が算出できた場合、予測対象属性の既知の属性値が属性DB122に格納されている場合であっても予測値を属性DB122に格納してもよい。
 S750において、属性予測値更新部142は、属性DB122に登録された複数の対象者のうち1または複数の対象者について予測対象属性の属性値が既知である場合において、予測対象属性の予測値が既知の属性値から基準以上乖離しているか否かを判断する。この基準は、システム100の設計者、システム構築者、ユーザ、及び/又は管理者によって予め定められてもよく、属性予測値更新部142が、予測対象属性の既知の属性値の分散または標準偏差等を定数倍すること等により算出してもよい。
 予測対象属性の予測値が既知の属性値から基準以上乖離していることに応じて(S750でYes)、属性予測値更新部142は、S760において、予測対象属性の予測値を既知の属性値に基づいて更新してもよい。すなわち、予測対象属性の既知の属性値および予測値が同じ表現形式をとる場合には、属性予測値更新部142は、予測対象属性の予測値を既知の属性値に書き換えてもよい。予測対象属性の既知の属性値および予測値が異なる表現形式をとる場合には、属性予測値更新部142は、既知の属性値の表現形式を変換して、予測対象属性の予測値を書き換えてもよい。ここで、乖離しているか否かの判断に用いる基準は、システム100の設計者、システム構築者、ユーザ、及び/又は管理者等によって予め設定されてよい。
 これにより、属性予測値更新部142は、予測対象属性の属性値が既知の対象者については、当該予測対象属性を説明変数として使用する他の属性予測モデルが、大幅に誤った予測値を用いて他の予測対象属性を予測するのを防ぐことができる。例えば、属性予測値更新部142は、ある対象者について誤って「既婚」と予測された場合においても、その対象者が「未婚」であることが既知であれば、予測値を「未婚」に更新することができ、この属性を説明変数として用いて予測される他の属性の予測精度を高めることができる。
 また、属性値更新部140は、予測対象属性の予測値の予測の確からしさが閾値以上であることを条件として(S770でYes)、予測対象属性の予測値に基づいて予測対象属性の属性値を更新してもよい(S780)。ここで、属性値更新部140は、予測対象属性の既知の属性値および予測値が同じ表現形式をとる場合には、属性予測値更新部142は、予測対象属性の既知の属性値を予測値に書き換えてもよい。予測対象属性の既知の属性値および予測値が異なる表現形式をとる場合には、属性値更新部140は、予測値の表現形式を変換して、予測対象属性の属性値を書き換えてもよい。ここで予測の確からしさの判断に用いる閾値は、システム100の設計者、システム構築者、ユーザ、及び/又は管理者等によって予め設定されてよい。
 これにより、属性値更新部140は、予測対象属性の属性値が既知の対象者についても、属性値の入手時期が古い場合、および、対象者の状況が変化した場合等の事情に適応して、予測対象属性の予測値が十分に確からしくなったことに応じて、既知の属性値を予測値に基づいて置き換えることができる。この結果、一例としておむつを購入するようになった対象者を「子なし」属性としたまま維持すること、および、頻繁にガソリンを購入するようになった対象者を「車なし」属性としたまま維持すること等を防ぐことが可能となる。
 ここで、属性値更新部140は、予測の確からしさとして、予測対象属性が既知の全対象者、学習用属性情報に含まれる全対象者、または、交叉検定用の学習用属性情報に含まれる全対象者の予測値に基づくAUC(Area Under the Curve)を用いてよい。一例として、属性値更新部140は、予測対象属性が既知である各対象者を予測値が高い順に横軸に並べ、横軸上の各対象者について、その対象者以上の予測値を有する全対象者のうち予測対象属性を満たす対象者の割合をプロットしたROC曲線(Receiver Operating Characteristic Curve)における、ROC曲線の下側の面積をAUCとして算出する。この際、属性値更新部140は、ROC曲線の横軸も1に正規化することにより、AUCの取り得る最大値を1に正規化してもよい。これに代えて、属性値更新部140は、予測の確からしさとして、(定数-予測誤差)のように予測誤差が減少するほど増加するパラメータの値を用いてもよい。
 図8は、予測対象属性の依存関係の一例を示す。属性予測モデルA810は、属性aの属性値および属性bの属性値に基づいて、予測対象属性cの属性値を予測する。属性予測モデルB820は、属性cの属性値および属性dの属性値に基づいて、予測対象属性eの属性値を予測する。属性予測モデルC830は、属性eの属性値および属性fの属性値に基づいて、予測対象属性bの属性値を予測する。
 この例において、属性予測モデルA810が属性bの属性値を入力して属性cの属性値を出力し、属性予測モデルB820が属性cの属性値を入力して属性eの属性値を出力し、属性予測モデルC830が属性eの属性値を入力して属性bの属性値を出力する。したがって、複数の属性予測モデルにおける説明変数および目的変数の連鎖の中に、属性b→属性c→属性e→属性bという2以上の予測対象属性の間の循環依存が存在する。
 ここで、属性予測モデル生成部180、属性予測モデル選択部185、及び/又は属性予測部135は、例えば属性予測モデルB820が属性cの既知の属性値を説明変数とし、属性cの予測値は説明変数としないようにすれば、属性予測モデルA810が出力する属性cの予測値を属性予測モデルB820が入力しなくなるので予測対象属性間の循環依存を解消することができる。すなわち、属性予測モデル生成部180、属性予測モデル選択部185、及び/又は属性予測部135は、2以上の予測対象属性の間に属性予測モデルへの入出力関係の循環依存が存在する場合には、循環依存を構成する少なくとも1つの属性予測モデルにおいて循環依存に含まれる属性の属性値として既知の属性値を入力するように属性予測モデルを生成または選択すればよい。
 ただし、既知の属性値を入力とする場合には、属性予測部135は、既知の属性値が存在しない対象者については予測対象属性の属性値を予測できなくなり、または予測精度が低下してしまう。そこで、属性予測部135は、2以上の予測対象属性の間の循環依存を許容する構成も取り得る。
 この場合、属性予測部135は、2以上の予測対象属性の間に循環依存が存在することに応じて、2以上の予測対象属性のそれぞれの予測に用いる他の予測対象属性の予測の確からしさ、および2以上の予測対象属性のそれぞれに対する他の予測対象属性の寄与度の少なくとも1つに基づいて、2以上の予測対象属性の予測順序を決定するようにしてもよい。例えば、本図の例において予測の確からしさが高い順に属性c、属性b、属性eの順序であれば、属性予測部135は、最も予測の確からしさが高い属性cを入力とする属性予測モデルB820を最も優先して先に実行するように予測順序を決定してもよい。その後属性予測部135は、循環依存する属性の中で予測の確からしさが高い順に、その属性を入力とする属性予測モデルを実行していってよい。これに代えて、属性予測部135は、属性予測モデルB820を実行した場合には、属性予測モデルB820が出力した予測値を入力する属性予測モデルC830、属性予測モデルC830が出力した予測値を入力とする属性予測モデルA810というように属性予測モデルB820以降は予測対象属性間の依存方向に沿って属性予測モデルを実行してもよい。これにより、属性予測部135は、予測の確からしさが高くより本来の属性値に近いと想定される予測値を優先して使用して依存先の予測対象属性の予測値を予測していくことができ、予測値の精度をより早く高めることが可能となる。
 また例えば、属性予測部135は、本図の例において予測対象属性eの予測における属性cの寄与度、予測対象属性cの予測における属性bの寄与度、予測対象属性bの予測における属性eの寄与度がこの順に低くなるのであれば、属性予測部135は、最も寄与度が低い属性eを入力とする属性予測モデルC830を最も優先して先に実行するように予測順序を決定してもよい。その後属性予測部135は、循環依存する属性の中で属性予測モデルによる次の予測対象属性の予測における寄与度が低い順に、その属性を入力とする属性予測モデルを実行していってよい。これに代えて、属性予測部135は、属性予測モデルC830を実行した場合には、属性予測モデルC830が出力した予測値を入力する属性予測モデルA810、属性予測モデルA810が出力した予測値を入力とする属性予測モデルB820というように属性予測モデルC830以降は予測対象属性間の依存方向に沿って属性予測モデルを実行してもよい。これにより、属性予測部135は、後段の属性予測モデルの予測に影響を与える寄与度が低く循環依存の影響を与えにくい予測値を優先して使用して依存先の予測対象属性の予測値を予測していくことができ、予測値の循環依存の影響をより早く減衰させることが可能となる。
 属性予測部135は、2以上の予測対象属性のそれぞれの予測に用いる他の予測対象属性の予測の確からしさ、および2以上の予測対象属性のそれぞれに対する他の予測対象属性の寄与度の両方に基づいて、2以上の予測対象属性の予測順序を決定するようにしてもよく、他の条件も更に加味して予測順序を決定してもよい。ここで、属性予測部135は、循環依存に含まれる属性に関して、予測に用いる属性の予測の確からしさがより高く、または予測における属性の寄与度がより低い場合に、その属性を入力する属性予測モデルの実行をより優先する。一例として、属性予測部135は、予測に用いる属性の予測の確からしさ(または予測の不確からしさ)と予測における属性の寄与度との重み付け和によって優先度を決定してよい。
 他の例として、属性予測部135は、2以上の予測対象属性のそれぞれについて、他の予測対象属性の予測の不確からしさおよび他の予測対象属性の寄与度の積和に基づいて、2以上の予測対象属性の予測値の予測順序を決定してもよい。すなわち例えば、属性予測部135は、複数の属性予測モデル(属性予測モデルA810、属性予測モデルB820、および属性予測モデルC830等)のそれぞれについて、循環依存に含まれる各入力属性の不確からしさおよび各入力属性の寄与度の積和をとり、積和値がより小さい属性予測モデルをより優先して実行する。
 なお、属性予測部135は、予測の不確からしさとして、予測の確からしさが増加すると値が減少するパラメータの値を用いてよい。例えば属性予測部135は、(1-AUC)のように、最大1に正規化されたAUCに基づく予測の確からしさを1から減じた値を用いてもよい。
 以上に示したように、循環依存に含まれる予測対象属性間の予測順序をより適切な順序とすることで、属性予測部135は、循環して算出される2以上の予測対象属性間の予測値の精度をより早く高め、及び/又は予測値の収束をより早めることができる。これにより、属性DB122および属性DB167が多くの属性を有することにより各属性予測モデルの実行周期が長くなる場合にも、予測値をより早く最適化することができる。
 図9は、本実施形態に係るシステム100における属性追加フローを示す。S900において、属性データ取得部144は、複数の対象者の少なくとも一部について、属性データベースに追加すべき追加属性の既知の属性値を示す既知情報を取得する。例えば、端末112は、マーケティング担当者等のシステム100のエンドユーザ等が各対象者の任意の特性を簡単に予測できるようにするべく、簡単に属性DB122に属性を追加して各対象者のその属性の予測値を算出するユーザーインターフェイスを提供する。一例として、端末112は、当該ユーザーインターフェイスを提供するアプリケーションのアイコンに対して既知情報がドラッグ&ドロップされたことに応じて、この既知情報に応じた属性の追加、既知の属性値の設定、および属性予測モデルの生成・選択の少なくとも一部を実行するユーザーインターフェイスを提供してもよい。
 属性データ取得部144が取得する既知情報は、複数の対象者の少なくとも一部のそれぞれについて、個人識別情報と、1または複数の追加属性の既知の属性値との組を含む情報であってよい。また、追加属性が、対象者が特定の特性を有するか否かを示す2値属性である場合(例えば「商品Aを買ったか否か」)、既知情報は、追加属性が真である各対象者の個人識別情報のリスト、および追加属性が偽である各対象者の個人識別情報のリストの少なくとも一方を含んでよい。
 S910において、属性追加部146は、属性DB122の複数の属性に、追加属性を追加する。例えば、属性追加部146は、属性DB接続部120を介して属性DB122に追加属性のカラムを追加し、既知情報に含まれる各対象者の既知の属性値に基づいて、属性DB122における追加属性に格納する既知の属性値を設定する。この際、属性追加部146は、既知情報において示された既知の属性値を属性DB122における追加属性の既知の属性値として設定してもよく、既知情報において示された既知の属性値を属性DB122における表現形式に変換して追加属性の既知の属性値として設定してもよい。
 S920において、システム100内の予測モデル生成装置150は、追加属性を予測対象属性として1または複数の属性予測モデルを生成する。ここで、モデル更新指示部155は、属性データ取得部144によって属性DB122に追加属性が追加されたことに応じて、予め定められた期間の経過を待つことなく、すみやかに追加属性の属性予測モデルの生成を指示してよい。追加属性を予測対象属性として1または複数の属性予測モデルを生成する処理は、図3の動作フローにおけるS320からS350の処理と同様であってよい。
 S930において、システム100内の予測モデル生成装置150は、複数の属性予測モデルのそれぞれの予測誤差に基づいて、追加属性である予測対象属性の属性値の予測に用いる属性予測モデルを選択する。複数の属性予測モデルの中から追加属性の属性値の予測に用いる属性予測モデルを選択する処理は、図3のS360からS370の処理と同様であってよい。
 以上に示した処理の後、システム100内の属性予測装置110は、図7に示した属性予測フローを実行して、各対象者または全対象者についての追加属性の属性値を予測してよい。これにより、システム100は、既知情報に含まれる一部の対象者についての既知の属性値を教師データとして追加属性の属性値を予測する属性予測モデルを学習し、他の対象者または全対象者について追加属性の予測値を算出することができる。
 なお、本実施形態において、属性データ取得部144および属性追加部146は、属性予測装置110内に設けられ、マスターである属性DB122に対して追加属性を追加する。これに代えて、属性データ取得部144および属性追加部146は、予測モデル生成装置150内に設けられ、サブセットである属性DB167に対して追加属性を追加する形態を採ってもよい。
 図10は、本実施形態に係るレコメンド処理装置190の構成を端末192と共に示す。レコメンド処理装置190は、環境情報取得部900と、グループ選択部910と、レコメンド決定部920と、レコメンド方法決定部930と、レコメンド実行部940と、レコメンド結果取得部950と、レコメンド結果格納部960と、レコメンドDB接続部970と、レコメンドDB980と、レコメンドモデル生成部990とを有する。
 環境情報取得部900は、システム100に登録された複数の対象者のうちのあるレコメンド対象者が置かれた環境を示す環境情報を取得する。一例として環境情報取得部900は、レコメンド対象者がいる位置または場所を示す位置情報、レコメンド対象者がいる位置または場所における天気、天候、気温、及び/又は湿度等の天候情報、並びに、対象者の行動(買い物中、旅行中、通勤中、および仕事中等)を示す行動情報のうちの少なくとも1つを環境情報として取得する。
 グループ選択部910は、環境情報取得部900により取得された、レコメンド対象者についての環境情報に基づいて、商品等の複数のグループの中からレコメンドするグループを選択する。一例として、グループ選択部910は、環境情報についての条件である環境条件と、その環境条件においてレコメンドする商品等のグループとの組を、1または複数記憶しておき、環境情報取得部900により取得された環境情報がある環境条件を満たす場合に、その環境条件に対応付けられた商品等のグループをレコメンド対象として選択する。例えば、グループ選択部910は、レコメンド対象者がある店舗から基準以内の距離に位置する場合には、その店舗で取り扱っている商品等のグループをレコメンド対象のグループとして選択してよい。また例えば、グループ選択部910は、複数のグループの中から、システム100が提供する会員サービスと提携する複数の店舗のうちレコメンド対象者の現在位置により近い店舗に対応付けられたグループをより優先して選択してもよい。また例えば、グループ選択部910は、レコメンド対象者がいる位置または場所の気温が基準以上に高い場合には、清涼飲料、氷菓子、及び/又はサービス加盟店のうち対象者から最寄りのカフェの商品等に関するグループを、レコメンド対象として選択してよい。なお、レコメンド処理装置190は、グループ選択部910を有さず任意の商品等の中からレコメンド対象の商品等をレコメンド対象として選択する構成を採ってもよい。
 グループ選択部910は、レコメンド対象者についての複数の店舗のそれぞれの最終利用日時または最終利用からの経過期間に更に基づいて、商品等の複数のグループの中からレコメンドするグループを選択してもよい。例えば、レコメンド対象者がある店舗を最後に利用してから予め定められた基準期間以上が経過している場合、そのレコメンド対象者は、その店舗から離反しつつあるとみなすことができる。このような場合、グループ選択部910は、一例として当該店舗で取り扱っている商品等のグループを選択してレコメンド候補とすることで、顧客の離反を防ぐようなレコメンドを可能とする。
 レコメンド決定部920は、レコメンド対象者について、属性DB122に格納された複数の属性値の少なくとも1つに基づいて、商品等をレコメンドするか否かを決定する。一例としてレコメンド決定部920は、属性DB122に格納されたレコメンド対象者の属性情報のうち、購買ポテンシャルデータに含まれる各商品等(あるいはレコメンド可能と指定された各商品等)に対応付けられた属性の属性値(既知の属性値または予測値)を参照し、基準値以上の嗜好性を示す属性値があればその属性に対応する商品等をレコメンド対象の商品等とする。これに代えて、レコメンド決定部920は、購買ポテンシャルデータに含まれる各商品等(あるいはレコメンド可能と指定された各商品等)に対応付けられた属性の属性値(既知の属性値または予測値)のうち、より高い嗜好性を示す属性値に対応するものをより優先して、レコメンド対象とする1または2以上の商品等を選択してもよい。
 ここでグループ選択部910によって商品等のグループが選択されていることに応じて、レコメンド決定部920は、レコメンド対象者についての複数の属性値の少なくとも1つに基づいて、グループ選択部910が選択したグループに含まれる商品等の中から、レコメンド対象者にレコメンドする商品等を決定する。この場合、レコメンド決定部920は、商品等を選択する範囲を選択されたグループの範囲内に絞って、上記と同様にしてレコメンド対象の商品等を選択する。
 レコメンド方法決定部930は、レコメンド対象者に商品等をレコメンドするレコメンド方法を決定する。レコメンド方法決定部930は、レコメンド対象者に対して商品等をレコメンドするレコメンド方法を、後述するレコメンドモデル生成部990が生成したレコメンドモデルを用いて決定してもよい。ここで、レコメンド方法決定部930は、レコメンド対象者に対するレコメンド方法として、電子メール、インターネット広告、ダイレクトメール、対象者に対して発行するレシートへの印刷、およびテレビ広告等のメディアのうちの少なくとも1つを用いることを決定してもよい。また、レコメンド方法決定部930は、レコメンド対象者に対するレコメンド方法として、商品等の値引、クーポンの付与、および、ポイント付与の少なくとも一方のインセンティブを提供することを決定してもよい。
 レコメンド実行部940は、レコメンド対象者に対し、レコメンド対象の商品等を、レコメンド方法決定部930により決定されたレコメンド方法によってレコメンドする。レコメンド結果取得部950は、レコメンド対象者に対する、決定されたレコメンド方法によるレコメンド結果を取得する。
 レコメンド結果格納部960は、決定されたレコメンド方法によるレコメンド結果を、属性DB122における複数の属性のうちの少なくとも一部の属性に対応付けて格納する。例えば、レコメンド結果格納部960は、レコメンド結果を、属性DB122に格納されたレコメンド対象者の属性情報中、購買ポテンシャルデータにおける、レコメンド対象の商品等に対応付けられた少なくとも1つの属性に対応付けて格納する。この場合、レコメンド結果格納部960は、レコメンド結果を、レコメンド対象の商品等に対する嗜好性を示す属性の属性値(既知の属性値)に反映することができる。ここで、システム100は、レコメンド対象となった商品等が購入された場合には、属性DB122における購買ポテンシャルデータ中の属性を、レコメンド結果格納部960から更新する代わりに、属性情報取得部115から更新する構成を採ってもよい。
 また、レコメンド結果格納部960は、属性DB122に格納されたレコメンド対象者のレコメンドポテンシャルデータ中のメディア反応に含まれる、決定したレコメンド方法で用いたメディアに対応する少なくとも1つの属性に対応付けて格納してよい。これにより、レコメンド結果格納部960は、決定したレコメンド方法で用いたメディアに対応するレコメンド結果を、メディア反応に含まれる各メディアを用いたレコメンドの有効性を示す属性の属性値(既知の属性値)に反映することができる。
 また、レコメンド結果格納部960は、属性DB122に格納されたレコメンド対象者のレコメンドポテンシャルデータ中のインセンティブ反応に含まれる、決定したレコメンド方法で用いたインセンティブに対応する少なくとも1つの属性に対応付けて格納してよい。これにより、レコメンド結果格納部960は、決定したレコメンド方法で用いたインセンティブに対応するレコメンド結果を、インセンティブ反応に含まれる各インセンティブを提供するレコメンドの有効性を示す属性の属性値(既知の属性値)に反映することができる。
 また、レコメンド結果格納部960は、実行したレコメンドの内容およびレコメンド結果を含むレコメンド履歴をレコメンドDB接続部970を介してレコメンドDB980に格納する。
 レコメンドDB接続部970は、レコメンドDB980に接続され、システム100内の各部からレコメンドDB980に対するアクセスを処理する。レコメンドDB980は、レコメンド処理装置190が実行したレコメンドの内容およびレコメンド結果の履歴を格納する。レコメンドDB980も、属性DB122と同様に、システム100の処理を行うコンピュータに接続された外部記憶装置により実現されてもよく、システム100の外部のクラウドストレージサービス等により提供される記憶装置によって実現されてもよい。
 レコメンドモデル生成部990は、レコメンド方法によるレコメンド結果を少なくとも一部の属性の属性値として含む属性DB122を用いてレコメンド方法を選択するレコメンドモデルを生成する。本実施形態に係るレコメンドモデル生成部990は、属性DB122に加え、レコメンドDB980を用いてレコメンドモデルを生成する。ここで、レコメンドモデル生成部990は、属性DB122を用いるのに代えて、または属性DB122を用いるのに加えて、属性DB122を次元縮約した縮約DB132を用いてもよく、属性DB122をサンプリングした属性DB167を用いてもよく、属性DB122をサンプリングおよび次元縮約した縮約DB177を用いてもよい。また、レコメンドモデル生成部990は、レコメンドDB980を更に用いてレコメンドモデルを生成してもよい。
 本実施形態に係るシステム100によれば、商品等をレコメンドしたレコメンド方法に応じたレコメンド結果を対象者の少なくとも1つの属性として属性DB122等に格納し、この属性を含む属性DB122等を用いて後のレコメンドにおけるレコメンド方法を選択するためのレコメンドモデルを生成・更新することができる。これにより、システム100は、レコメンドの回数を重ねていくことに応じて、対象者により適したレコメンド方法でレコメンドを行うことが可能となる。
 図11は、本実施形態に係るレコメンドDB980に格納されるデータ構造の一例を示す。レコメンドDB980は、レコメンド処理装置190が行った各レコメンドに対応して、個人ID、環境情報、商品ID/サービスID、レコメンド方法、およびレコメンド結果を格納する。
 「個人ID」は、レコメンド対象者を識別する。「環境情報」は、当該レコメンドに関して環境情報取得部900が取得した、レコメンド対象者についての環境情報である。「商品ID/サービスID」は、レコメンドした商品等の識別情報である。
 「レコメンド方法」は、レコメンド方法決定部930により選択され、レコメンド実行部940により実行されたレコメンド方法であり、レコメンドに用いたメディアおよびレコメンドに付加したインセンティブを含む。「レコメンド結果」は、レコメンドに対するレコメンド対象者の行動を示すものであってよく、レコメンド対象商品等の購入に加え、例えばレコメンド対象商品等の広告を含む電子メール/ダイレクトメールへの反応(電子メールを開封した、電子メール内の広告リンクをクリックした、電子メール/ダイレクトメールに対して返信した、問合せをした等)、インターネット広告への反応(インターネット広告をクリックした等)、テレビCMへの反応(問合せをした、インタラクティブCMの場合にインタラクションを行った等)、並びにその他の反応(店舗に来店した等)の少なくとも1つを格納してよい。ここで、「レコメンド結果」は、複数種類の反応のそれぞれに対応するカラムを有していてもよい。
 レコメンドDB980は、レコメンドをした日付若しくは日時等を格納してもよい。また、レコメンドDB980は、個人IDを格納するのに加えて、またはこれに代えて、属性DB122等に格納されたレコメンド対象者の属性情報の少なくとも一部のコピーを格納してもよい。一例として、レコメンドDB980は、レコメンド対象者の汎用属性データのコピーを格納してもよく、これに加えて、またはこれに代えて、購買ポテンシャルデータにおける、レコメンド対象商品等に対応付けて格納された少なくとも1つの属性の属性値を格納してもよい。この形態によれば、レコメンドDB980に格納するデータ量が増加するが、レコメンド処理装置190は、レコメンドを決定するため、及び/又はレコメンド方法を決定するために用いたレコメンド対象者の属性情報を記録しておくことができ、後に属性DB122が更新された場合であっても更新前の属性情報を用いてレコメンドモデルを生成することができる。
 図12は、本実施形態に係るレコメンド処理装置190のレコメンド処理フローを示す。S1100において、環境情報取得部900は、システム100に登録された複数の対象者の中のある対象者(レコメンド対象者)について、環境情報を取得する。一例として、環境情報取得部900は、レコメンド対象者が携帯する、携帯電話またはスマートフォン等の携帯端末にインストールされて実行される会員サービス用のアプリケーションから、環境情報を受け取る。また、環境情報取得部900は、ある地域について天候情報等の環境情報を受信したことに応じて、その地域に位置する各対象者、及び/又は、その地域内に住所を有する各対象者を属性DB122等から検索して、これらの対象者をレコメンド対象者としてもよい。
 S1110において、グループ選択部910は、レコメンド対象者についての環境情報に基づいて、l商品等の複数のグループの中からレコメンドするグループを選択する。S1120において、レコメンド決定部920は、レコメンド対象者について、属性DB122に格納された複数の属性値の少なくとも1つに基づいて、商品等をレコメンドするか否かを決定する。商品等をレコメンドしないと決定した場合、レコメンド決定部920は、S1130において、処理をS1100へと戻す。
 商品等をレコメンドすることが決定された場合、レコメンド方法決定部930は、レコメンド対象者に商品等をレコメンドするレコメンド方法を決定する。ここで、レコメンド方法決定部930は、レコメンド対象者についての環境情報に更に基づいて、レコメンド方法を決定してよい。例えば、レコメンド方法決定部930は、レコメンド対象者についての環境情報および属性情報の少なくとも一部と、レコメンド対象商品等とをレコメンドモデルに入力して、レコメンドモデルを用いてレコメンド方法を決定してもよい。ここで、レコメンド方法決定部930は、常にレコメンドモデルを用いてレコメンドモデルを決定することによって学習結果の活用(Exploitation)を図るのみでなく、予め指定された割合でランダムにレコメンド方法を決定し、または次善またはそれ以下のレコメンド方法を選択する等により、他のレコメンド方法の探索(Exploration)を図ってもよい。
 S1150において、レコメンド実行部940は、レコメンド対象者に対し、決定されたレコメンド方法によるレコメンドを実行する。レコメンド実行部940は、決定されたレコメンド方法に応じたメディアを用い、レコメンド用の電子メールをリマインド対象者の電子メールアドレス宛に送信する、レコメンド対象者が表示するWebページに含まれる広告用リンクに対してインターネット広告を提供する、各レコメンド対象者の宛先を含む宛先リストまたは宛名書きを出力する、レコメンド対象者による商品等購入に伴う購買トランザクションを受けたことに応じてレシートへの広告印刷を指示する、テレビ/CATV事業者のサーバ等に対してレコメンド対象商品等の広告配信を指示する等、レコメンド処理の少なくとも一部分を行ってもよい。
 S1160において、レコメンド結果取得部950は、レコメンド対象者に対するレコメンド結果を取得する。レコメンド結果取得部950は、レコメンド対象者がレコメンド対象商品等を購入したこと、電子メールによるレコメンドに対する開封確認メッセージを受けたこと、電子メール中の広告リンク等がクリックされたこと、インターネット広告がクリックされたこと、ダイレクトメールを受けたレコメンド対象者からの問合せを受けたことが記録されたこと、レシートに印刷されたクーポン等が使用されたこと、及び/又は、テレビ広告等に対するインタラクションがあったことを取得する。
 S1170において、レコメンド結果格納部960は、実行されたレコメンドの内容および取得されたレコメンド結果を、属性DB122に反映すると共に、レコメンドの履歴としてレコメンドDB980に格納する。
 S1180において、レコメンドモデル生成部990は、属性DB122およびレコメンドDB980を用いて、レコメンド方法を選択するレコメンドモデルを生成する。ここで、レコメンドモデル生成部990は、レコメンド結果が取得される度にレコメンドモデルを生成または更新してもよく、これに代えて予め定められた回数レコメンド結果が取得される度、または定期的にレコメンドモデルを生成または更新してもよい。
 レコメンドモデル生成部990は、例えばランダムフォレスト、勾配ブースティング、ロジスティック回帰、ニューラルネットワーク、およびサポートベクタマシン(SVM)等を含む各種の機械学習アルゴリズムの中から予め選択されたアルゴリズムを採用してよく、属性予測モデル生成部180および属性予測モデル選択部185と同様にしてアルゴリズムおよびハイパーパラメータをも最適化の対象としてもよい。
 レコメンドモデル生成部990は、対象者の属性情報および環境情報を入力とし、レコメンド方法毎(メディア毎、インセンティブ毎)の成功率、成功可能性、または成功可能性の偏差値等を出力とするレコメンドモデルを、レコメンドDB980に格納されたレコメンド履歴を用いて学習させる。この学習において、レコメンドモデル生成部990は、レコメンドのコスト(広告コスト、インセンティブのコスト等)を反映させるように学習処理を行ってもよい。例えば、レコメンドモデル生成部990は、インセンティブを提供するレコメンドはインセンティブを提供するレコメンドと比較してコストが高いことから、インセンティブを提供するレコメンドについては成功率等をコストに応じた割合削減させる(一律の削減、商品等の価格に対するコストの割合分の削減等)ようにレコメンドモデルを学習させてもよい。ここで、レコメンドモデルは、属性情報および環境情報を入力とし、いずれか1つのレコメンド方法の成功率等を出力する推測モデルを全レコメンド方法分組み合わせて構成されてもよい。
 レコメンドモデル生成部990は、一例としてレコメンドDB980に格納されたレコメンド履歴から学習用のレコメンド履歴を抽出し、抽出したレコメンド履歴に対応する対象者の属性情報および環境情報をレコメンドモデルに入力し、レコメンドモデルが出力する推測値(成功率等)とレコメンド結果との差分を算出し、差分がより小さくなるようにレコメンドモデルのパラメータを更新する処理を繰り返すことにより、レコメンドモデルを学習させる。レコメンドモデル生成部990は、新たに取得されたレコメンド結果を用いてレコメンドモデルを更新していくオンライン学習を行って、学習しながらレコメンド処理装置190によるレコメンドを実行可能としてもよい。レコメンドモデル生成部990は、生成・更新したレコメンドモデルをレコメンド方法決定部930に提供する。
 以上に示したシステム100によれば、対象者に対してレコメンドを行った結果に基づいてレコメンドモデルを生成・更新し、同一または異なる対象者に対して商品等をレコメンドするレコメンド方法を、そのレコメンドモデルを用いて決定することができる。これにより、システム100は、レコメンドの精度を高めていくことができる。
 以上に示した環境情報に応じたレコメンド処理フローに加え、レコメンド処理装置190は、システム100のユーザ及び/又は管理者等によって指定可能な一括レコメンド処理を行うこともできる。レコメンド処理装置190は、端末192を介してレコメンド対象者の絞込条件の指定を受け、絞込条件を満たすレコメンド対象者の人数等を端末192に表示する。ここで絞込条件は、例えば「年収が上位20%以上、男性、かつ、40~50歳」といったように1または複数の属性の属性値の範囲によって指定されてもよい。また、絞込条件は、例えば「商品Aに対する嗜好性(または購買可能性)が高い方からX名」等のように1または複数の属性の属性値の上位または下位から指定人数分を抽出することの指定を含んでもよい。
 システム100のユーザ等は、端末192を操作して絞込条件を設定・調整して、レコメンドに使用する絞込条件を決定する。また、システム100のユーザ等は、必要に応じてレコメンド方法を指定する。レコメンド処理装置190は、レコメンド実行指示を端末192を介して受け取り、絞込条件によって絞り込まれた各対象者に対して、図12のS1150~S1180と同様にしてレコメンドの実行、レコメンド結果の取得、データベース(DB)へのレコメンド結果反映、及び、レコメンドモデルの更新を行う。
 ここで、特定のレコメンド方法が指定されなかった場合、レコメンド処理装置190は、S1140の処理を行って、各対象者に適したレコメンド方法を決定してもよい。ここで、レコメンド方法決定部930は、複数の対象者の一部ずつに対して、互いに異なるレコメンド方法を決定してもよい。これにより、レコメンド処理装置190は、互いに異なる複数のレコメンド方法を実行して、これらのレコメンド結果をレコメンドモデルの学習に役立てることができる。
 本実施形態に係るシステム100の変形例として、レコメンドモデル生成部990がレコメンドモデルを生成するのに代えて、予測モデル生成装置150をレコメンドモデル生成部としても機能させ、予測モデル生成装置150が属性予測モデルの一種としてレコメンドモデルを生成する構成を採ることもできる。この場合、一例として属性DB122は、レコメンドポテンシャルデータとして、複数種類の環境情報のそれぞれに対応して、各レコメンド方法に対して少なくとも1つの属性を格納する。レコメンド結果格納部960は、環境情報およびレコメンド方法に応じたレコメンド結果に応じて、属性DB122におけるこれらの属性における既知の属性値を更新する。予測モデル生成装置150は、属性予測モデルの1種として、対象者の属性情報に基づいて、レコメンドポテンシャルデータにおけるこれらの属性を予測するレコメンドモデルを生成する。レコメンド方法決定部930は、レコメンドモデルが予測したこれらの属性の予測値に基づいて、より成功率が高いことを示す予測値を含む属性に対応するレコメンド方法を優先的に選択することにより、最適なレコメンド方法を決定してよい。
 図13は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ1900の例を示す。コンピュータ1900にインストールされたプログラムは、コンピュータ1900に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ1900に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1900に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU2000によって実行されてよい。
 本実施形態に係るコンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示装置2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、ハードディスクドライブ2040、及びDVDドライブ2060を有する入出力部と、入出力コントローラ2084に接続されるROM2010、フラッシュメモリ・ドライブ2050、及び入出力チップ2070を有するレガシー入出力部を備える。
 ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
 入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040、DVDドライブ2060を接続する。通信インターフェイス2030は、有線又は無線によりネットワークを介して他の装置と通信する。また、通信インターフェイスは、通信を行うハードウェアとして機能する。ハードディスクドライブ2040は、コンピュータ1900内のCPU2000が使用するプログラム及びデータを格納する。DVDドライブ2060は、DVD2095からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。
 また、入出力コントローラ2084には、ROM2010と、フラッシュメモリ・ドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。フラッシュメモリ・ドライブ2050は、フラッシュメモリ2090からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、フラッシュメモリ・ドライブ2050を入出力コントローラ2084へと接続するとともに、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
 RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、フラッシュメモリ2090、DVD2095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。これらのプログラム内に記述される情報処理は、コンピュータ1900に読み取られ、ソフトウェアと、上記様々なタイプのハードウェア資源との間の協働をもたらす。装置または方法が、コンピュータ1900の使用に従い情報の操作または処理を実現することによって構成されてよい。
 一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、フラッシュメモリ2090、又はDVD2095等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
 また、CPU2000は、ハードディスクドライブ2040、DVDドライブ2060(DVD2095)、フラッシュメモリ・ドライブ2050(フラッシュメモリ2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020及び外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。
 本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
 また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすか否かを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
 また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第1属性の属性値に対し第2属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、CPU2000は、記憶装置に格納されている複数のエントリの中から第1属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第2属性の属性値を読み出すことにより、所定の条件を満たす第1属性に対応付けられた第2属性の属性値を得ることができる。
 また、実施形態の説明において複数の要素が列挙された場合には、列挙された要素以外の要素を用いてもよい。例えば、「Xは、A、B及びCを用いてYを実行する」と記載される場合、Xは、A、B及びCに加え、Dを用いてYを実行してもよい。
 以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
 請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
100 システム
110 属性予測装置
112 端末
115 属性情報取得部
120 属性DB接続部
122 属性DB
125 次元縮約部
130 縮約DB接続部
132 縮約DB
135 属性予測部
140 属性値更新部
142 属性予測値更新部
144 属性データ取得部
146 属性追加部
150 予測モデル生成装置
152 端末
155 モデル更新指示部
160 サンプリング部
165 属性DB接続部
167 属性DB
170 次元縮約部
175 縮約DB接続部
177 縮約DB
180 属性予測モデル生成部
185 属性予測モデル選択部
190 レコメンド処理装置
192 端末
810 属性予測モデルA
820 属性予測モデルB
830 属性予測モデルC
900 環境情報取得部
910 グループ選択部
920 レコメンド決定部
930 レコメンド方法決定部
940 レコメンド実行部
950 レコメンド結果取得部
960 レコメンド結果格納部
970 レコメンドDB接続部
980 レコメンドDB
990 レコメンドモデル生成部
1900 コンピュータ
2000 CPU
2010 ROM
2020 RAM
2030 通信インターフェイス
2040 ハードディスクドライブ
2050 フラッシュメモリ・ドライブ
2060 DVDドライブ
2070 入出力チップ
2075 グラフィック・コントローラ
2080 表示装置
2082 ホスト・コントローラ
2084 入出力コントローラ
2090 フラッシュメモリ
2095 DVD

Claims (11)

  1.  複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部と、
     前記複数の対象者のうちの第1対象者について、前記複数の属性値の少なくとも1つに基づいて、商品およびサービスの少なくとも一方をレコメンドするか否かを決定するレコメンド決定部と、
     前記第1対象者に商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を決定するレコメンド方法決定部と、
     前記第1対象者に対する前記レコメンド方法によるレコメンド結果を取得するレコメンド結果取得部と、
     前記レコメンド方法による前記レコメンド結果を、前記属性データベースにおける前記複数の属性のうちの少なくとも一部の属性に対応付けて格納するレコメンド結果格納部と、
     前記レコメンド方法による前記レコメンド結果を前記少なくとも一部の属性の属性値として含む前記属性データベースを用いて前記レコメンド方法を選択するレコメンドモデルを生成するレコメンドモデル生成部と
     を備える装置。
  2.  前記レコメンド方法決定部は、第2対象者に対して商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を、前記レコメンドモデルを用いて決定する請求項1に記載の装置。
  3.  前記レコメンド方法決定部は、複数の前記第1対象者の一部ずつに対して、互いに異なるレコメンド方法を決定する請求項2に記載の装置。
  4.  前記レコメンド方法決定部は、前記第1対象者に対するレコメンド方法として、電子メール、インターネット広告、ダイレクトメール、前記第1対象者に発行するレシートへの印刷、およびテレビ広告のうちの少なくとも1つを用いることを決定する請求項2または3に記載の装置。
  5.  前記レコメンド方法決定部は、前記第1対象者に対するレコメンド方法として、商品およびサービスの少なくとも一方の値引、クーポンの付与、および、ポイント付与の少なくとも一方のインセンティブを提供することを決定する請求項2から4のいずれか一項に記載の装置。
  6.  前記第2対象者が置かれた環境を示す環境情報を取得する環境情報取得部と、
     前記第2対象者についての前記環境情報に基づいて、商品およびサービスの少なくとも一方の複数のグループの中からレコメンドするグループを選択するグループ選択部と
     を備え、
     前記レコメンド決定部は、前記第2対象者についての前記複数の属性値の少なくとも1つに基づいて、前記グループ選択部が選択したグループに含まれる商品およびサービスの少なくとも一方の中から、前記第2対象者にレコメンドする商品およびサービスの少なくとも一方を決定する
     請求項2から5のいずれか一項に記載の装置。
  7.  前記グループ選択部は、前記複数のグループの中から、複数の店舗のうち前記第2対象者の現在位置により近い店舗に対応付けられたグループをより優先して選択する請求項6に記載の装置。
  8.  前記グループ選択部は、前記第2対象者についての前記複数の店舗のそれぞれの最終利用日時または最終利用からの経過期間に更に基づいて、前記複数のグループの中からレコメンドするグループを選択する請求項7に記載の装置。
  9.  前記レコメンド方法決定部は、前記第2対象者についての前記環境情報に更に基づいて、前記レコメンド方法を決定する請求項6から8のいずれか一項に記載の装置。
  10.  コンピュータが、複数の対象者のうちの第1対象者について、前記複数の対象者のそれぞれについて複数の属性に対応する複数の属性値を記憶するための属性データベースにおける前記複数の属性値の少なくとも1つに基づいて、商品およびサービスの少なくとも一方をレコメンドするか否かを決定するレコメンド決定段階と、
     前記コンピュータが、前記第1対象者に商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を決定するレコメンド方法決定段階と、
     前記コンピュータが、前記第1対象者に対する前記レコメンド方法によるレコメンド結果を取得するレコメンド結果取得段階と、
     前記コンピュータが、前記レコメンド方法による前記レコメンド結果を、前記属性データベースにおける前記複数の属性のうちの少なくとも一部の属性に対応付けて格納するレコメンド結果格納段階と、
     前記コンピュータが、前記レコメンド方法による前記レコメンド結果を前記少なくとも一部の属性の属性値として含む前記属性データベースを用いて前記レコメンド方法を選択するレコメンドモデルを生成するレコメンドモデル生成段階と
     を備える方法。
  11.  コンピュータにより実行され、前記コンピュータを、
     複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部と、
     前記複数の対象者のうちの第1対象者について、前記複数の属性値の少なくとも1つに基づいて、商品およびサービスの少なくとも一方をレコメンドするか否かを決定するレコメンド決定部と、
     前記第1対象者に商品およびサービスの少なくとも一方をレコメンドするレコメンド方法を決定するレコメンド方法決定部と、
     前記第1対象者に対する前記レコメンド方法によるレコメンド結果を取得するレコメンド結果取得部と、
     前記レコメンド方法による前記レコメンド結果を、前記属性データベースにおける前記複数の属性のうちの少なくとも一部の属性に対応付けて格納するレコメンド結果格納部と、
     前記レコメンド方法による前記レコメンド結果を前記少なくとも一部の属性の属性値として含む前記属性データベースを用いて前記レコメンド方法を選択するレコメンドモデルを生成するレコメンドモデル生成部と
     して機能させるプログラム。
PCT/JP2019/009186 2018-03-27 2019-03-07 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム WO2019188102A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP19777248.6A EP3779836A4 (en) 2018-03-27 2019-03-07 DEVICE, METHOD AND PROGRAM FOR MAKING RECOMMENDATIONS BASED ON CUSTOMER ATTRIBUTE INFORMATION
CN201980017104.4A CN111902836A (zh) 2018-03-27 2019-03-07 基于顾客属性信息进行建议的装置、方法、及程序
US17/031,940 US20210012359A1 (en) 2018-03-27 2020-09-25 Device, method and computer-readable medium for making recommendations on the basis of customer attribute information

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2018-059214 2018-03-27
JP2018059214A JP7198591B2 (ja) 2018-03-27 2018-03-27 顧客の属性情報を解析する装置、方法、およびプログラム
JP2018-059215 2018-03-27
JP2018059215A JP7283865B2 (ja) 2018-03-27 2018-03-27 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/031,940 Continuation US20210012359A1 (en) 2018-03-27 2020-09-25 Device, method and computer-readable medium for making recommendations on the basis of customer attribute information

Publications (1)

Publication Number Publication Date
WO2019188102A1 true WO2019188102A1 (ja) 2019-10-03

Family

ID=68059798

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2019/009186 WO2019188102A1 (ja) 2018-03-27 2019-03-07 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム
PCT/JP2019/009183 WO2019188101A1 (ja) 2018-03-27 2019-03-07 顧客の属性情報を解析する装置、方法、およびプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/009183 WO2019188101A1 (ja) 2018-03-27 2019-03-07 顧客の属性情報を解析する装置、方法、およびプログラム

Country Status (5)

Country Link
US (2) US20210012363A1 (ja)
EP (2) EP3779836A4 (ja)
CN (2) CN111902837A (ja)
TW (2) TW201945959A (ja)
WO (2) WO2019188102A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7155074B2 (ja) 2019-07-03 2022-10-18 富士フイルム株式会社 情報提案システム、情報提案方法、プログラムおよび記録媒体
US10733512B1 (en) * 2019-12-17 2020-08-04 SparkCognition, Inc. Cooperative use of a genetic algorithm and an optimization trainer for autoencoder generation
CN111915344A (zh) * 2020-06-20 2020-11-10 武汉海云健康科技股份有限公司 一种基于医疗大数据的新会员催熟方法和装置
CN112819533A (zh) * 2021-01-29 2021-05-18 深圳脉腾科技有限公司 信息推送方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007317068A (ja) * 2006-05-29 2007-12-06 Osaka Prefecture Univ リコメンド装置およびリコメンドシステム
JP2015076076A (ja) 2013-10-11 2015-04-20 カルチュア・コンビニエンス・クラブ株式会社 顧客データ解析システム
JP2016118827A (ja) * 2014-12-18 2016-06-30 Kddi株式会社 コンテンツ配信システム、サーバ装置および携帯端末装置
WO2017175355A1 (ja) * 2016-04-07 2017-10-12 楽天株式会社 情報処理装置、情報処理方法、プログラム
JP2018045553A (ja) * 2016-09-16 2018-03-22 ヤフー株式会社 選択装置、選択方法および選択プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852818A (en) * 1996-12-23 1998-12-22 Oracle Corporation Non-recursive method for parameter evaluation within an information management system
JP2000276460A (ja) * 1999-03-24 2000-10-06 Fuji Electric Co Ltd 電力需要量予測方法
US7107192B1 (en) * 1999-03-31 2006-09-12 International Business Machines Corporation Method for computing models based on attributes selected by entropy
CA2556778C (en) * 2004-02-27 2019-08-06 Accenture Global Services Gmbh System for individualized customer interaction
JP2006221329A (ja) * 2005-02-09 2006-08-24 Toshiba Corp 行動予測装置、行動予測方法および行動予測プログラム
US20130046626A1 (en) * 2011-08-19 2013-02-21 Bank Of America Corporation Optimizing offers based on user transaction history
JP5124680B1 (ja) * 2011-11-30 2013-01-23 楽天株式会社 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
JP5693649B2 (ja) * 2013-05-07 2015-04-01 カルチュア・コンビニエンス・クラブ株式会社 市場調査・分析システム
CN105095616A (zh) * 2014-04-24 2015-11-25 日本电气株式会社 数据分析装置、数据分析方法
US20160063538A1 (en) * 2014-08-29 2016-03-03 Verizon Patent And Licensing Inc. Marketing platform that determines advertisements and marketing channels for the advertisements
US20160171539A1 (en) * 2014-12-12 2016-06-16 Staples, Inc. Inference-Based Behavioral Personalization and Targeting
WO2017159403A1 (ja) * 2016-03-16 2017-09-21 日本電気株式会社 予測システム、方法およびプログラム
US20190012573A1 (en) * 2016-03-16 2019-01-10 Nec Corporation Co-clustering system, method and program
CN107818344B (zh) * 2017-10-31 2020-01-07 深圳壹账通智能科技有限公司 用户行为进行分类和预测的方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007317068A (ja) * 2006-05-29 2007-12-06 Osaka Prefecture Univ リコメンド装置およびリコメンドシステム
JP2015076076A (ja) 2013-10-11 2015-04-20 カルチュア・コンビニエンス・クラブ株式会社 顧客データ解析システム
JP2016118827A (ja) * 2014-12-18 2016-06-30 Kddi株式会社 コンテンツ配信システム、サーバ装置および携帯端末装置
WO2017175355A1 (ja) * 2016-04-07 2017-10-12 楽天株式会社 情報処理装置、情報処理方法、プログラム
JP2018045553A (ja) * 2016-09-16 2018-03-22 ヤフー株式会社 選択装置、選択方法および選択プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3779836A4

Also Published As

Publication number Publication date
EP3779835A4 (en) 2021-12-29
WO2019188101A1 (ja) 2019-10-03
US20210012359A1 (en) 2021-01-14
US20210012363A1 (en) 2021-01-14
EP3779836A1 (en) 2021-02-17
TW201945959A (zh) 2019-12-01
EP3779836A4 (en) 2022-01-19
TW201946010A (zh) 2019-12-01
EP3779835A1 (en) 2021-02-17
CN111902836A (zh) 2020-11-06
CN111902837A (zh) 2020-11-06

Similar Documents

Publication Publication Date Title
US20210105541A1 (en) Yield optimization of cross-screen advertising placement
US11042898B2 (en) Clickstream purchase prediction using Hidden Markov Models
US8924265B2 (en) System and process for improving product recommendations for use in providing personalized advertisements to retail customers
WO2019188102A1 (ja) 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム
US8583524B2 (en) System and process for improving recommendations for use in providing personalized advertisements to retail customers
JP6767824B2 (ja) 判定装置、判定方法及び判定プログラム
US20200273054A1 (en) Digital receipts economy
US8108329B2 (en) System and process for boosting recommendations for use in providing personalized advertisements to retail customers
US11455660B2 (en) Extraction device, extraction method, and non-transitory computer readable storage medium
CN109417644B (zh) 跨屏广告投放的收益优化
JP6253744B1 (ja) 情報解析装置、情報解析方法、および情報解析プログラム
JP6253745B1 (ja) 情報解析装置、情報解析方法、および情報解析プログラム
US20240144328A1 (en) Automatic rule generation for next-action recommendation engine
JP7198591B2 (ja) 顧客の属性情報を解析する装置、方法、およびプログラム
US20160148271A1 (en) Personalized Marketing Based on Sequence Mining
JP7283865B2 (ja) 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム
CN116109354A (zh) 内容推荐方法、装置、设备、存储介质及计算机程序产品
JP7407779B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
TELECOMUNICATIONS THE UNIVERSITY OF ZAMBIA
JP2022178712A (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: 19777248

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019777248

Country of ref document: EP

Effective date: 20201027

NENP Non-entry into the national phase

Ref country code: JP