WO2019188101A1 - 顧客の属性情報を解析する装置、方法、およびプログラム - Google Patents

顧客の属性情報を解析する装置、方法、およびプログラム Download PDF

Info

Publication number
WO2019188101A1
WO2019188101A1 PCT/JP2019/009183 JP2019009183W WO2019188101A1 WO 2019188101 A1 WO2019188101 A1 WO 2019188101A1 JP 2019009183 W JP2019009183 W JP 2019009183W WO 2019188101 A1 WO2019188101 A1 WO 2019188101A1
Authority
WO
WIPO (PCT)
Prior art keywords
attribute
prediction
value
target
attributes
Prior art date
Application number
PCT/JP2019/009183
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 EP19776445.9A priority Critical patent/EP3779835A4/en
Priority to CN201980017105.9A priority patent/CN111902837A/zh
Publication of WO2019188101A1 publication Critical patent/WO2019188101A1/ja
Priority to US17/031,933 priority patent/US20210012363A1/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 analyzing 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 predicts the attribute value of the first prediction target attribute that is the prediction target based on the attribute value of at least one attribute other than the first prediction target attribute among the plurality of attributes, using the attribute database.
  • An attribute prediction model generation unit that generates a plurality of attribute prediction models may be provided.
  • the apparatus may include an attribute prediction model selection unit that selects a first attribute prediction model used for prediction of an attribute value of the first prediction target attribute based on each prediction error of the first plurality of attribute prediction models.
  • the apparatus may further include a sampling unit that samples some of the plurality of subjects from the attribute database.
  • the attribute prediction model generation unit may generate a first plurality of attribute prediction models using attribute values associated with a part of the sampled subjects.
  • the apparatus may include a dimension reduction unit that reduces the dimensions of a plurality of attributes based on a plurality of attribute values of each of a plurality of subjects stored in the attribute database.
  • the attribute prediction model generation unit may predict the attribute value of the first 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 selection unit selects different attribute prediction models as the first attribute prediction model used for prediction of the attribute value of the first prediction target attribute and the second attribute prediction model used for prediction of the attribute value of the second prediction target attribute. It may be selectable.
  • the attribute prediction model generation unit may learn learnable parameters in each of the first plurality of attribute prediction models.
  • Each of the first 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 apparatus may include an attribute prediction unit that predicts the attribute value of the first prediction target attribute for each of a plurality of subjects using the first attribute prediction model.
  • an attribute predicted value update unit that updates the predicted value of the first prediction target attribute based on the known attribute value may be provided.
  • the attribute prediction model generation unit may generate a second plurality of attribute prediction models that predict the attribute value of the second prediction target attribute that is the prediction target using the prediction value of the first prediction target attribute.
  • the attribute prediction model selection unit may further select a second attribute prediction model used for prediction of the attribute value of the second prediction target attribute based on the prediction errors of the second plurality of attribute prediction models.
  • the attribute prediction unit may further predict the second prediction target attribute for each of the plurality of subjects using the second attribute prediction model.
  • the attribute prediction unit predicts the predicted value of the second prediction target attribute of the target person using the known attribute value on the condition that the attribute value of the first prediction target attribute is known for each of the plurality of target persons.
  • the predicted value of the second prediction target attribute of the target person may be predicted using the attribute value of the first prediction target attribute on condition that the attribute value of the first prediction target attribute is unknown.
  • the apparatus updates the attribute value of the first prediction target attribute based on the prediction value of the first prediction target attribute on the condition that the probability of the prediction of the prediction value of the first prediction target attribute is equal to or greater than the threshold. May be provided.
  • the attribute prediction unit predicts the likelihood of prediction of other prediction target attributes used for prediction of each of the two or more prediction target attributes, and two or more The prediction order of two or more prediction target attributes may be determined based on at least one of the contributions of other prediction target attributes to each of the prediction target attributes.
  • the attribute prediction unit predicts the prediction values of the two or more prediction target attributes based on the uncertainties of prediction of the other prediction target attributes and the product sum of the contributions of the other prediction target attributes.
  • the prediction order may be determined.
  • the first prediction target attribute may be a preference attribute indicating the target person's preference for the product or service associated with the first prediction target attribute.
  • the apparatus may include a recommendation processing unit that selects whether or not a product or service associated with the first prediction target attribute is recommended to the target person based on the attribute value of the first prediction target attribute.
  • the apparatus may include a model update instruction unit that instructs to update the first attribute prediction model in response to the elapse of a predetermined period.
  • the apparatus may include a known information acquisition unit that 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 apparatus may include an attribute adding unit that adds an additional attribute to a plurality of attributes in the attribute database.
  • the attribute prediction model generation unit may generate a plurality of attribute prediction models using the additional attribute as a prediction target attribute.
  • the attribute prediction model selection unit may select an attribute prediction model used for prediction of the attribute value of the prediction target attribute based on each prediction error of the plurality of attribute prediction models.
  • the known information may indicate the presence / absence of an additional attribute for each of at least some of the plurality of subjects.
  • a method is provided.
  • the computer uses the attribute database for storing a plurality of attribute values corresponding to the plurality of attributes for each of the plurality of target persons, and sets the attribute value of the first prediction target attribute that is the prediction target, You may generate
  • the computer may select a first attribute prediction model used for prediction of an attribute value of the first prediction target attribute based on each prediction error of the first plurality of attribute prediction models.
  • the computer may sample some of the target persons from the attribute database.
  • the computer may generate the first plurality of attribute prediction models using the attribute values associated with some sampled subjects.
  • the computer may reduce the dimensions of the plurality of attributes based on the plurality of attribute values of the plurality of subjects stored in the attribute database.
  • the computer may predict the attribute value of the first prediction target attribute from the attribute value of at least one attribute among the plurality of attributes whose dimensions have been reduced.
  • the computer uses different attributes as the first attribute prediction model used for prediction of the attribute value of the first prediction target attribute and the second attribute prediction model used for prediction of the attribute value of the second prediction target attribute.
  • the prediction model may be selectable.
  • the computer may learn a learnable parameter in each of the first plurality of attribute prediction models.
  • Each of the first 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 computer may predict the attribute value of the first prediction target attribute for each of a plurality of target persons using the first attribute prediction model.
  • the predicted value of the first prediction target attribute deviates from the known attribute value by more than a reference. Accordingly, the predicted value of the first prediction target attribute may be updated based on the known attribute value.
  • the computer may generate a second plurality of attribute prediction models that predict the attribute value of the second prediction target attribute that is the prediction target using the prediction value of the first prediction target attribute. .
  • the computer may further select a second attribute prediction model used for prediction of the attribute value of the second prediction target attribute based on the prediction errors of the second plurality of attribute prediction models. .
  • the computer may further predict the second prediction target attribute for each of the plurality of subjects using the second attribute prediction model.
  • the computer predicts the second prediction target attribute of the target person using the known attribute value on the condition that the attribute value of the first prediction target attribute is known for each of the plurality of target persons.
  • the predicted value of the second prediction target attribute of the target person may be predicted using the attribute value of the first prediction target attribute on condition that the value is predicted and the attribute value of the first prediction target attribute is unknown.
  • the computer updates the attribute value of the first prediction target attribute based on the prediction value of the first prediction target attribute on condition that the probability of prediction of the prediction value of the first prediction target attribute is equal to or greater than a threshold value. You can do it.
  • the likelihood of the prediction of other prediction target attributes used by the computer for prediction of each of the two or more prediction target attributes in response to the presence of cyclic dependency between the two or more prediction target attributes may be determined based on at least one of the contributions of other prediction target attributes to each of the two or more prediction target attributes.
  • the computer uses two or more prediction targets for each of the two or more prediction target attributes based on the uncertainties of prediction of other prediction target attributes and the product sum of the contributions of the other prediction target attributes.
  • the prediction order of attribute prediction values may be determined.
  • the first prediction target attribute may be a preference attribute indicating the target person's preference for the product or service associated with the first prediction target attribute.
  • the computer may select whether or not to recommend a product or service associated with the first prediction target attribute to the target person based on the attribute value of the first prediction target attribute.
  • the computer may instruct the update of the first attribute prediction model in response to the elapse of a predetermined period.
  • the computer may acquire 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 computer may add additional attributes to the plurality of attributes in the attribute database.
  • the computer may generate a plurality of attribute prediction models using the additional attribute as a prediction target attribute.
  • the computer may select an attribute prediction model used for predicting the attribute value of the prediction target attribute based on the prediction error of each of the plurality of attribute prediction models.
  • the known information may indicate the presence / absence of an additional attribute for each of at least some of the plurality of subjects.
  • 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 predicts the attribute value of the first prediction target attribute, which is the prediction target, based on the attribute value of at least one attribute other than the first prediction target attribute among the plurality of attributes, using the attribute database. You may make it function as an attribute prediction model production
  • the program functions as an attribute prediction model selection unit that selects a first attribute prediction model used to predict an attribute value of a first prediction target attribute based on each prediction error of the first plurality of attribute prediction models. You may let me.
  • the program may cause the computer to function as a sampling unit that samples some of the target persons from the attribute database.
  • the attribute prediction model generation unit may generate a first plurality of attribute prediction models using attribute values associated with a part of the sampled subjects.
  • the program may cause the computer to function as a dimension reduction unit that reduces the dimensions of a plurality of attributes based on a plurality of attribute values of each of a plurality of subjects stored in the attribute database.
  • the attribute prediction model generation unit may predict the attribute value of the first 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 selection unit selects different attribute prediction models as the first attribute prediction model used for prediction of the attribute value of the first prediction target attribute and the second attribute prediction model used for prediction of the attribute value of the second prediction target attribute. It may be selectable.
  • the attribute prediction model generation unit may learn learnable parameters in each of the first plurality of attribute prediction models.
  • Each of the first 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 program may cause the computer to function as an attribute prediction unit that predicts the attribute value of the first prediction target attribute for each of a plurality of subjects using the first attribute prediction model.
  • the program causes the predicted value of the first prediction target attribute to deviate from the known attribute value by more than a reference when the attribute value of the first prediction target attribute is known for one of the plurality of subjects. Accordingly, the predicted value of the first prediction target attribute may be functioned as an attribute predicted value update unit that updates the predicted value based on a known attribute value.
  • the attribute prediction model generation unit may generate a second plurality of attribute prediction models that predict the attribute value of the second prediction target attribute that is the prediction target using the prediction value of the first prediction target attribute.
  • the attribute prediction model selection unit may further select a second attribute prediction model used for prediction of the attribute value of the second prediction target attribute based on the prediction errors of the second plurality of attribute prediction models.
  • the attribute prediction unit may further predict the second prediction target attribute for each of the plurality of subjects using the second attribute prediction model.
  • the attribute prediction unit predicts the predicted value of the second prediction target attribute of the target person using the known attribute value on the condition that the attribute value of the first prediction target attribute is known for each of the plurality of target persons.
  • the predicted value of the second prediction target attribute of the target person may be predicted using the attribute value of the first prediction target attribute on condition that the attribute value of the first prediction target attribute is unknown.
  • the program updates the attribute value of the first prediction target attribute based on the prediction value of the first prediction target attribute on the condition that the probability of the prediction of the prediction value of the first prediction target attribute is equal to or greater than the threshold. You may make it function as an attribute value update part.
  • the attribute prediction unit predicts the likelihood of prediction of other prediction target attributes used for prediction of each of the two or more prediction target attributes, and two or more The prediction order of two or more prediction target attributes may be determined based on at least one of the contributions of other prediction target attributes to each of the prediction target attributes.
  • the attribute prediction unit predicts the prediction values of the two or more prediction target attributes based on the uncertainties of prediction of the other prediction target attributes and the product sum of the contributions of the other prediction target attributes.
  • the prediction order may be determined.
  • the first prediction target attribute may be a preference attribute indicating the target person's preference for the product or service associated with the first prediction target attribute.
  • the program causes the computer to function as a recommendation processing unit that selects whether or not a product or service associated with the first prediction target attribute is recommended to the target person based on the attribute value of the first prediction target attribute. Good.
  • the program may cause the computer to function as a model update instruction unit that instructs to update the first attribute prediction model in response to the elapse of a predetermined period.
  • the program may cause the computer to function as a known information acquisition unit that acquires known information indicating a known attribute value of an additional attribute to be added to the attribute database for at least some of a plurality of subjects.
  • the program may cause the computer to function as an attribute adding unit that adds additional attributes to a plurality of attributes in the attribute database.
  • the attribute prediction model generation unit may generate a plurality of attribute prediction models using the additional attribute as a prediction target attribute.
  • the attribute prediction model selection unit may select an attribute prediction model used for prediction of the attribute value of the prediction target attribute based on each prediction error of the plurality of attribute prediction models.
  • the known information may indicate the presence / absence of an additional attribute for each of at least some of the plurality of subjects.
  • 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.
  • 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. 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 target persons who satisfy the extraction condition set by at least one attribute set, and evaluation of attribute prediction models 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.
  • the “basic attribute” is basic information of each subject, and at least one attribute such as name, date of birth, age or age, gender, address, telephone number, or the like is classified as one or more attributes classified as basic attributes. Including one.
  • the “basic attribute” is an attribute that is mainly input when the target person is newly registered or when the registration content is changed. However, at least a part of the attributes may be arbitrarily registered and may be a prediction target.
  • 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 target person. As one or more attributes classified as “intentionality”, for example, quality orientation / challenge orientation / solid orientation / brand for clothing. It may include at least one of a health orientation, a career orientation, a global orientation, and the like, such as an orientation orientation, a high-class orientation for food, a thrifty orientation, a discount orientation, a convenience store orientation / city orientation / a community orientation orientation, etc.
  • the orientation 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., and 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 purchase 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 may set all attributes of the attribute DB 122 or the attribute DB 167 as evaluation targets for topic generation. Instead, some of the attributes of the attribute DB 122 or the attribute DB 167 are evaluation targets for topic generation. It is good.
  • the dimension reduction unit 170 may set an attribute included in the general-purpose attribute data as a topic generation evaluation target, and may not use an attribute included in the purchase potential data and the recommendation potential data for topic generation.
  • the dimension reduction unit 170 may set only the attributes included in only some of the basic attributes, life attributes, and orientations included in the general-purpose attribute data as the topic generation evaluation targets.
  • 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 can be used by using the predicted value of the first prediction target attribute predicted by the already generated first attribute prediction model as the number of explanations. 180 can also use learning attribute information in which some of the 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 having a minimum prediction error (that is, the prediction accuracy is maximum) 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 that 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 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 1900 Computer 2000 CPU 2010 ROM 2020 RAM 2030 Communication interface 2040 Hard disk drive 2050 Flash memory drive 2060 DVD drive 2070 Input / output chip 2075 Graphic

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (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)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (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の複数の属性予測モデルを生成する属性予測モデル生成部と、第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択する属性予測モデル選択部とを備える装置を提供する。

Description

顧客の属性情報を解析する装置、方法、およびプログラム
 本発明は、顧客の属性情報を解析する装置、方法、およびプログラムに関する。
 従来、顧客に関するデータを蒐集して解析するシステムが知られている(例えば、特許文献1参照)。このようなシステムで解析されたデータは、顧客へのレコメンド、および市場調査等に用いられる。
 特許文献1 特開2015-76076号公報
解決しようとする課題
 近年、顧客に関するデータを解析して活用することへの期待は益々高まっており、データ解析の精度・効率を更に高めていくことが望まれている。
一般的開示
 本発明の第1の態様においては、装置を提供する。装置は、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部を備えてよい。装置は、属性データベースを用いて、予測対象である第1予測対象属性の属性値を、複数の属性のうち第1予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する第1の複数の属性予測モデルを生成する属性予測モデル生成部を備えてよい。装置は、第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択する属性予測モデル選択部を備えてよい。
 装置は、属性データベースから、複数の対象者のうち一部の対象者をサンプリングするサンプリング部を更に備えてよい。属性予測モデル生成部は、サンプリングされた一部の対象者に対応付けられた属性値を用いて、第1の複数の属性予測モデルを生成してよい。
 装置は、属性データベースに記憶された、複数の対象者のそれぞれの複数の属性値に基づいて、複数の属性の次元を縮約する次元縮約部を備えてよい。属性予測モデル生成部は、次元縮約された複数の属性のうち少なくとも1つの属性の属性値から第1予測対象属性の属性値を予測してよい。
 属性予測モデル選択部は、第1予測対象属性の属性値の予測に用いる第1属性予測モデル、および第2予測対象属性の属性値の予測に用いる第2属性予測モデルとして、異なる属性予測モデルを選択可能としてよい。
 属性予測モデル生成部は、第1の複数の属性予測モデルのそれぞれにおける学習可能なパラメータを学習させてよい。
 第1の複数の属性予測モデルのそれぞれは、学習によって更新されないハイパーパラメータおよび予測アルゴリズムの少なくとも1つが他の属性予測モデルと異なってよい。
 装置は、第1属性予測モデルを用いて、複数の対象者のそれぞれについて第1予測対象属性の属性値を予測する属性予測部を備えてよい。
 装置は、複数の対象者のうち一の対象者について第1予測対象属性の属性値が既知である場合において、第1予測対象属性の予測値が既知の属性値から基準以上乖離していることに応じて、第1予測対象属性の予測値を既知の属性値に基づいて更新する属性予測値更新部を備えてよい。
 属性予測モデル生成部は、予測対象である第2予測対象属性の属性値を、第1予測対象属性の予測値を用いて予測する第2の複数の属性予測モデルを生成してよい。属性予測モデル選択部は、第2の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第2予測対象属性の属性値の予測に用いる第2属性予測モデルを更に選択してよい。属性予測部は、第2属性予測モデルを用いて、複数の対象者のそれぞれについて第2予測対象属性を更に予測してよい。
 属性予測部は、複数の対象者のそれぞれについて、第1予測対象属性の属性値が既知であることを条件として既知の属性値を用いて対象者の第2予測対象属性の予測値を予測し、第1予測対象属性の属性値が未知であることを条件として第1予測対象属性の属性値を用いて対象者の第2予測対象属性の予測値を予測してよい。
 装置は、第1予測対象属性の予測値の予測の確からしさが閾値以上であることを条件として第1予測対象属性の予測値に基づいて第1予測対象属性の属性値を更新する属性値更新部を備えてよい。
 2以上の予測対象属性の間に循環依存が存在することに応じて、属性予測部は、2以上の予測対象属性のそれぞれの予測に用いる他の予測対象属性の予測の確からしさ、および2以上の予測対象属性のそれぞれに対する他の予測対象属性の寄与度の少なくとも1つに基づいて、2以上の予測対象属性の予測順序を決定してよい。
 属性予測部は、2以上の予測対象属性のそれぞれについて、他の予測対象属性の予測の不確からしさおよび他の予測対象属性の寄与度の積和に基づいて、2以上の予測対象属性の予測値の予測順序を決定してよい。
 第1予測対象属性は、第1予測対象属性に対応付けられた商品またはサービスに対する対象者の嗜好性を示す嗜好属性であってよい。
 装置は、第1予測対象属性の属性値に基づいて、第1予測対象属性に対応付けられた商品またはサービスを対象者にレコメンドするか否かを選択するレコメンド処理部を備えてよい。
 装置は、予め定められた期間が経過したことに応じて、第1属性予測モデルの更新を指示するモデル更新指示部を備えてよい。
 装置は、複数の対象者の少なくとも一部について、属性データベースに追加すべき追加属性の既知の属性値を示す既知情報を取得する既知情報取得部を備えてよい。装置は、属性データベースの複数の属性に、追加属性を追加する属性追加部を備えてよい。属性予測モデル生成部は、追加属性を予測対象属性として複数の属性予測モデルを生成してよい。属性予測モデル選択部は、複数の属性予測モデルのそれぞれの予測誤差に基づいて、予測対象属性の属性値の予測に用いる属性予測モデルを選択してよい。
 既知情報は、複数の対象者の少なくとも一部のそれぞれについて、追加属性の有無を示してよい。
 本発明の第2の態様においては、方法を提供する。方法においては、コンピュータが、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースを用いて、予測対象である第1予測対象属性の属性値を、複数の属性のうち第1予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する第1の複数の属性予測モデルを生成してよい。方法においては、コンピュータが、第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択してよい。
 方法においては、コンピュータが、属性データベースから、複数の対象者のうち一部の対象者をサンプリングしてよい。属性予測モデルの生成において、コンピュータが、サンプリングされた一部の対象者に対応付けられた属性値を用いて、第1の複数の属性予測モデルを生成してよい。
 方法においては、コンピュータが、属性データベースに記憶された、複数の対象者のそれぞれの複数の属性値に基づいて、複数の属性の次元を縮約してよい。属性予測モデルの生成において、コンピュータが、次元縮約された複数の属性のうち少なくとも1つの属性の属性値から第1予測対象属性の属性値を予測してよい。
 属性予測モデルの選択において、コンピュータが、第1予測対象属性の属性値の予測に用いる第1属性予測モデル、および第2予測対象属性の属性値の予測に用いる第2属性予測モデルとして、異なる属性予測モデルを選択可能としてよい。
 属性予測モデルの生成において、コンピュータが、第1の複数の属性予測モデルのそれぞれにおける学習可能なパラメータを学習させてよい。
 第1の複数の属性予測モデルのそれぞれは、学習によって更新されないハイパーパラメータおよび予測アルゴリズムの少なくとも1つが他の属性予測モデルと異なってよい。
 方法においては、コンピュータが、第1属性予測モデルを用いて、複数の対象者のそれぞれについて第1予測対象属性の属性値を予測してよい。
 方法においては、コンピュータが、複数の対象者のうち一の対象者について第1予測対象属性の属性値が既知である場合において、第1予測対象属性の予測値が既知の属性値から基準以上乖離していることに応じて、第1予測対象属性の予測値を既知の属性値に基づいて更新してもよい。
 属性予測モデルの生成において、コンピュータが、予測対象である第2予測対象属性の属性値を、第1予測対象属性の予測値を用いて予測する第2の複数の属性予測モデルを生成してよい。属性予測モデルの選択において、コンピュータが、第2の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第2予測対象属性の属性値の予測に用いる第2属性予測モデルを更に選択してよい。属性値の予測において、コンピュータが、第2属性予測モデルを用いて、複数の対象者のそれぞれについて第2予測対象属性を更に予測してよい。
 属性値の予測において、コンピュータが、複数の対象者のそれぞれについて、第1予測対象属性の属性値が既知であることを条件として既知の属性値を用いて対象者の第2予測対象属性の予測値を予測し、第1予測対象属性の属性値が未知であることを条件として第1予測対象属性の属性値を用いて対象者の第2予測対象属性の予測値を予測してよい。
 方法においては、コンピュータが、第1予測対象属性の予測値の予測の確からしさが閾値以上であることを条件として第1予測対象属性の予測値に基づいて第1予測対象属性の属性値を更新してよい。
 属性値の予測において、コンピュータが、2以上の予測対象属性の間に循環依存が存在することに応じて、2以上の予測対象属性のそれぞれの予測に用いる他の予測対象属性の予測の確からしさ、および2以上の予測対象属性のそれぞれに対する他の予測対象属性の寄与度の少なくとも1つに基づいて、2以上の予測対象属性の予測順序を決定してもよい。
 属性値の予測において、コンピュータが、2以上の予測対象属性のそれぞれについて、他の予測対象属性の予測の不確からしさおよび他の予測対象属性の寄与度の積和に基づいて、2以上の予測対象属性の予測値の予測順序を決定してよい。
 第1予測対象属性は、第1予測対象属性に対応付けられた商品またはサービスに対する対象者の嗜好性を示す嗜好属性であってよい。
 方法においては、コンピュータが、第1予測対象属性の属性値に基づいて、第1予測対象属性に対応付けられた商品またはサービスを対象者にレコメンドするか否かを選択してよい。
 方法においては、コンピュータが、予め定められた期間が経過したことに応じて、第1属性予測モデルの更新を指示してよい。
 方法においては、コンピュータが、複数の対象者の少なくとも一部について、属性データベースに追加すべき追加属性の既知の属性値を示す既知情報を取得してよい。方法においては、コンピュータが、属性データベースの複数の属性に、追加属性を追加してよい。属性予測モデルの生成において、コンピュータが、追加属性を予測対象属性として複数の属性予測モデルを生成してよい。記属性予測モデルの選択において、コンピュータが、複数の属性予測モデルのそれぞれの予測誤差に基づいて、予測対象属性の属性値の予測に用いる属性予測モデルを選択してよい。
 既知情報は、複数の対象者の少なくとも一部のそれぞれについて、追加属性の有無を示してよい。
 本発明の第3の態様においては、コンピュータにより実行されるプログラムを提供する。プログラムは、コンピュータを、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部として機能させてよい。プログラムは、コンピュータを、属性データベースを用いて、予測対象である第1予測対象属性の属性値を、複数の属性のうち第1予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する第1の複数の属性予測モデルを生成する属性予測モデル生成部として機能させてよい。プログラムは、コンピュータを、第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択する属性予測モデル選択部として機能させてよい。
 プログラムは、コンピュータを、属性データベースから、複数の対象者のうち一部の対象者をサンプリングするサンプリング部として機能させてよい。属性予測モデル生成部は、サンプリングされた一部の対象者に対応付けられた属性値を用いて、第1の複数の属性予測モデルを生成してよい。
 プログラムは、コンピュータを、属性データベースに記憶された、複数の対象者のそれぞれの複数の属性値に基づいて、複数の属性の次元を縮約する次元縮約部として機能させてよい。属性予測モデル生成部は、次元縮約された複数の属性のうち少なくとも1つの属性の属性値から第1予測対象属性の属性値を予測してよい。
 属性予測モデル選択部は、第1予測対象属性の属性値の予測に用いる第1属性予測モデル、および第2予測対象属性の属性値の予測に用いる第2属性予測モデルとして、異なる属性予測モデルを選択可能としてよい。
 属性予測モデル生成部は、第1の複数の属性予測モデルのそれぞれにおける学習可能なパラメータを学習させてよい。
 第1の複数の属性予測モデルのそれぞれは、学習によって更新されないハイパーパラメータおよび予測アルゴリズムの少なくとも1つが他の属性予測モデルと異なってよい。
 プログラムは、コンピュータを、第1属性予測モデルを用いて、複数の対象者のそれぞれについて第1予測対象属性の属性値を予測する属性予測部として機能させてよい。
 プログラムは、コンピュータを、複数の対象者のうち一の対象者について第1予測対象属性の属性値が既知である場合において、第1予測対象属性の予測値が既知の属性値から基準以上乖離していることに応じて、第1予測対象属性の予測値を既知の属性値に基づいて更新する属性予測値更新部として機能させてよい。
 属性予測モデル生成部は、予測対象である第2予測対象属性の属性値を、第1予測対象属性の予測値を用いて予測する第2の複数の属性予測モデルを生成してよい。属性予測モデル選択部は、第2の複数の属性予測モデルのそれぞれの予測誤差に基づいて、第2予測対象属性の属性値の予測に用いる第2属性予測モデルを更に選択してよい。属性予測部は、第2属性予測モデルを用いて、複数の対象者のそれぞれについて第2予測対象属性を更に予測してよい。
 属性予測部は、複数の対象者のそれぞれについて、第1予測対象属性の属性値が既知であることを条件として既知の属性値を用いて対象者の第2予測対象属性の予測値を予測し、第1予測対象属性の属性値が未知であることを条件として第1予測対象属性の属性値を用いて対象者の第2予測対象属性の予測値を予測してよい。
 プログラムは、コンピュータを、第1予測対象属性の予測値の予測の確からしさが閾値以上であることを条件として第1予測対象属性の予測値に基づいて第1予測対象属性の属性値を更新する属性値更新部として機能させてよい。
 2以上の予測対象属性の間に循環依存が存在することに応じて、属性予測部は、2以上の予測対象属性のそれぞれの予測に用いる他の予測対象属性の予測の確からしさ、および2以上の予測対象属性のそれぞれに対する他の予測対象属性の寄与度の少なくとも1つに基づいて、2以上の予測対象属性の予測順序を決定してよい。
 属性予測部は、2以上の予測対象属性のそれぞれについて、他の予測対象属性の予測の不確からしさおよび他の予測対象属性の寄与度の積和に基づいて、2以上の予測対象属性の予測値の予測順序を決定してよい。
 第1予測対象属性は、第1予測対象属性に対応付けられた商品またはサービスに対する対象者の嗜好性を示す嗜好属性であってよい。
 プログラムは、コンピュータを、第1予測対象属性の属性値に基づいて、第1予測対象属性に対応付けられた商品またはサービスを対象者にレコメンドするか否かを選択するレコメンド処理部として機能させてよい。
 プログラムは、コンピュータを、予め定められた期間が経過したことに応じて、第1属性予測モデルの更新を指示するモデル更新指示部として機能させてよい。
 プログラムは、コンピュータを、複数の対象者の少なくとも一部について、属性データベースに追加すべき追加属性の既知の属性値を示す既知情報を取得する既知情報取得部として機能させてよい。プログラムは、コンピュータを、属性データベースの複数の属性に、追加属性を追加する属性追加部として機能させてよい。属性予測モデル生成部は、追加属性を予測対象属性として複数の属性予測モデルを生成してよい。属性予測モデル選択部は、複数の属性予測モデルのそれぞれの予測誤差に基づいて、予測対象属性の属性値の予測に用いる属性予測モデルを選択してよい。
 既知情報は、複数の対象者の少なくとも一部のそれぞれについて、追加属性の有無を示してよい。
 なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
本実施形態に係るシステム100の構成を端末112、端末152、および端末192と共に示す。 本実施形態に係る属性DB122および属性DB167に格納されるデータ構造の一例を示す。 本実施形態に係る予測モデル生成装置150の動作フローを示す。 本実施形態に係る属性予測モデル生成部180が生成する属性予測モデルの評価結果の一例を示す。 本実施形態に係る属性予測モデル選択部185が生成する属性予測モデルの選択結果の一例を示す。 本実施形態に係る属性予測装置110における属性情報取得フローを示す。 本実施形態に係る属性予測装置110における属性予測フローを示す。 予測対象属性の依存関係の一例を示す。 本実施形態に係るシステム100における属性追加フローを示す。 本実施形態に係るコンピュータ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は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ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
1900 コンピュータ
2000 CPU
2010 ROM
2020 RAM
2030 通信インターフェイス
2040 ハードディスクドライブ
2050 フラッシュメモリ・ドライブ
2060 DVDドライブ
2070 入出力チップ
2075 グラフィック・コントローラ
2080 表示装置
2082 ホスト・コントローラ
2084 入出力コントローラ
2090 フラッシュメモリ
2095 DVD

Claims (20)

  1.  複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部と、
     前記属性データベースを用いて、予測対象である第1予測対象属性の属性値を、前記複数の属性のうち前記第1予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する第1の複数の属性予測モデルを生成する属性予測モデル生成部と、
     前記第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、前記第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択する属性予測モデル選択部と
     を備える装置。
  2.  前記属性データベースから、前記複数の対象者のうち一部の対象者をサンプリングするサンプリング部を更に備え、
     前記属性予測モデル生成部は、サンプリングされた一部の対象者に対応付けられた属性値を用いて、前記第1の複数の属性予測モデルを生成する請求項1に記載の装置。
  3.  前記属性データベースに記憶された、前記複数の対象者のそれぞれの前記複数の属性値に基づいて、前記複数の属性の次元を縮約する次元縮約部を更に備え、
     前記属性予測モデル生成部は、次元縮約された前記複数の属性のうち少なくとも1つの属性の属性値から前記第1予測対象属性の属性値を予測する請求項1または2に記載の装置。
  4.  前記属性予測モデル選択部は、前記第1予測対象属性の属性値の予測に用いる前記第1属性予測モデル、および第2予測対象属性の属性値の予測に用いる第2属性予測モデルとして、異なる属性予測モデルを選択可能とする請求項1から3のいずれか一項に記載の装置。
  5.  前記属性予測モデル生成部は、前記第1の複数の属性予測モデルのそれぞれにおける学習可能なパラメータを学習させる請求項1から4のいずれか一項に記載の装置。
  6.  前記第1の複数の属性予測モデルのそれぞれは、学習によって更新されないハイパーパラメータおよび予測アルゴリズムの少なくとも1つが他の属性予測モデルと異なる請求項1から5のいずれか一項に記載の装置。
  7.  前記第1属性予測モデルを用いて、前記複数の対象者のそれぞれについて前記第1予測対象属性の属性値を予測する属性予測部を更に備える請求項1から6のいずれか一項に記載の装置。
  8.  前記複数の対象者のうち一の対象者について前記第1予測対象属性の属性値が既知である場合において、前記第1予測対象属性の予測値が既知の属性値から基準以上乖離していることに応じて、前記第1予測対象属性の予測値を前記既知の属性値に基づいて更新する属性予測値更新部を更に備える請求項7に記載の装置。
  9.  前記属性予測モデル生成部は、予測対象である第2予測対象属性の属性値を、前記第1予測対象属性の予測値を用いて予測する第2の複数の属性予測モデルを生成し、
     前記属性予測モデル選択部は、前記第2の複数の属性予測モデルのそれぞれの予測誤差に基づいて、前記第2予測対象属性の属性値の予測に用いる第2属性予測モデルを更に選択し、
     前記属性予測部は、前記第2属性予測モデルを用いて、前記複数の対象者のそれぞれについて前記第2予測対象属性を更に予測する請求項7または8に記載の装置。
  10.  前記属性予測部は、前記複数の対象者のそれぞれについて、前記第1予測対象属性の属性値が既知であることを条件として既知の属性値を用いて対象者の前記第2予測対象属性の予測値を予測し、前記第1予測対象属性の属性値が未知であることを条件として前記第1予測対象属性の属性値を用いて対象者の前記第2予測対象属性の予測値を予測する請求項9に記載の装置。
  11.  前記第1予測対象属性の予測値の予測の確からしさが閾値以上であることを条件として前記第1予測対象属性の予測値に基づいて前記第1予測対象属性の属性値を更新する属性値更新部を更に備える請求項7に記載の装置。
  12.  2以上の予測対象属性の間に循環依存が存在することに応じて、前記属性予測部は、前記2以上の予測対象属性のそれぞれの予測に用いる他の予測対象属性の予測の確からしさ、および前記2以上の予測対象属性のそれぞれに対する他の予測対象属性の寄与度の少なくとも1つに基づいて、前記2以上の予測対象属性の予測順序を決定する請求項7から11のいずれか一項に記載の装置。
  13.  前記属性予測部は、前記2以上の予測対象属性のそれぞれについて、他の予測対象属性の予測の不確からしさおよび他の予測対象属性の寄与度の積和に基づいて、前記2以上の予測対象属性の予測値の予測順序を決定する請求項12に記載の装置。
  14.  前記第1予測対象属性は、前記第1予測対象属性に対応付けられた商品またはサービスに対する対象者の嗜好性を示す嗜好属性である請求項7から13のいずれか一項に記載の装置。
  15.  前記第1予測対象属性の属性値に基づいて、前記第1予測対象属性に対応付けられた商品またはサービスを対象者にレコメンドするか否かを選択するレコメンド処理部を更に備える請求項14に記載の装置。
  16.  予め定められた期間が経過したことに応じて、前記第1属性予測モデルの更新を指示するモデル更新指示部を更に備える請求項1から15のいずれか一項に記載の装置。
  17.  前記複数の対象者の少なくとも一部について、前記属性データベースに追加すべき追加属性の既知の属性値を示す既知情報を取得する既知情報取得部と、
     前記属性データベースの前記複数の属性に、前記追加属性を追加する属性追加部と、
     を更に備え、
     前記属性予測モデル生成部は、前記追加属性を予測対象属性として複数の属性予測モデルを生成し、
     前記属性予測モデル選択部は、前記複数の属性予測モデルのそれぞれの予測誤差に基づいて、前記予測対象属性の属性値の予測に用いる属性予測モデルを選択する
     請求項1から16のいずれか一項に記載の装置。
  18.  前記既知情報は、前記複数の対象者の少なくとも一部のそれぞれについて、前記追加属性の有無を示す請求項17に記載の装置。
  19.  コンピュータが、複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースを用いて、予測対象である第1予測対象属性の属性値を、前記複数の属性のうち前記第1予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する第1の複数の属性予測モデルを生成する属性予測モデル生成段階と、
     前記コンピュータが、前記第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、前記第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択する属性予測モデル選択段階と
     を備える方法。
  20.  コンピュータにより実行され、前記コンピュータを、
     複数の対象者のそれぞれについて、複数の属性に対応する複数の属性値を記憶するための属性データベースに接続される属性データベース接続部と、
     前記属性データベースを用いて、予測対象である第1予測対象属性の属性値を、前記複数の属性のうち前記第1予測対象属性以外の少なくとも1つの属性の属性値に基づいてそれぞれ予測する第1の複数の属性予測モデルを生成する属性予測モデル生成部と、
     前記第1の複数の属性予測モデルのそれぞれの予測誤差に基づいて、前記第1予測対象属性の属性値の予測に用いる第1属性予測モデルを選択する属性予測モデル選択部と
     して機能させるプログラム。
PCT/JP2019/009183 2018-03-27 2019-03-07 顧客の属性情報を解析する装置、方法、およびプログラム WO2019188101A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP19776445.9A EP3779835A4 (en) 2018-03-27 2019-03-07 Device, method and program for analyzing customer attribute information
CN201980017105.9A CN111902837A (zh) 2018-03-27 2019-03-07 分析顾客的属性信息的装置、方法、及程序
US17/031,933 US20210012363A1 (en) 2018-03-27 2020-09-25 Device, method and computer-readable medium for analyzing customer attribute information

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2018-059214 2018-03-27
JP2018-059215 2018-03-27
JP2018059214A JP7198591B2 (ja) 2018-03-27 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,933 Continuation US20210012363A1 (en) 2018-03-27 2020-09-25 Device, method and computer-readable medium for analyzing customer attribute information

Publications (1)

Publication Number Publication Date
WO2019188101A1 true WO2019188101A1 (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 Before (1)

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

Country Status (5)

Country Link
US (2) US20210012359A1 (ja)
EP (2) EP3779835A4 (ja)
CN (2) CN111902836A (ja)
TW (2) TW201946010A (ja)
WO (2) WO2019188102A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111915344A (zh) * 2020-06-20 2020-11-10 武汉海云健康科技股份有限公司 一种基于医疗大数据的新会员催熟方法和装置

Families Citing this family (3)

* 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
CN112819533A (zh) * 2021-01-29 2021-05-18 深圳脉腾科技有限公司 信息推送方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276460A (ja) * 1999-03-24 2000-10-06 Fuji Electric Co Ltd 電力需要量予測方法
JP2015076076A (ja) 2013-10-11 2015-04-20 カルチュア・コンビニエンス・クラブ株式会社 顧客データ解析システム
WO2017159403A1 (ja) * 2016-03-16 2017-09-21 日本電気株式会社 予測システム、方法およびプログラム

Family Cites Families (16)

* 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
US7107192B1 (en) * 1999-03-31 2006-09-12 International Business Machines Corporation Method for computing models based on attributes selected by entropy
CA2938561C (en) * 2004-02-27 2019-09-03 Accenture Global Services Limited System for individualized customer interaction
JP2006221329A (ja) * 2005-02-09 2006-08-24 Toshiba Corp 行動予測装置、行動予測方法および行動予測プログラム
JP2007317068A (ja) * 2006-05-29 2007-12-06 Osaka Prefecture Univ リコメンド装置およびリコメンドシステム
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
JP2016118827A (ja) * 2014-12-18 2016-06-30 Kddi株式会社 コンテンツ配信システム、サーバ装置および携帯端末装置
JP6311851B2 (ja) * 2016-03-16 2018-04-18 日本電気株式会社 共クラスタリングシステム、方法およびプログラム
WO2017175355A1 (ja) * 2016-04-07 2017-10-12 楽天株式会社 情報処理装置、情報処理方法、プログラム
JP6679451B2 (ja) * 2016-09-16 2020-04-15 ヤフー株式会社 選択装置、選択方法および選択プログラム
CN107818344B (zh) * 2017-10-31 2020-01-07 深圳壹账通智能科技有限公司 用户行为进行分类和预测的方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276460A (ja) * 1999-03-24 2000-10-06 Fuji Electric Co Ltd 電力需要量予測方法
JP2015076076A (ja) 2013-10-11 2015-04-20 カルチュア・コンビニエンス・クラブ株式会社 顧客データ解析システム
WO2017159403A1 (ja) * 2016-03-16 2017-09-21 日本電気株式会社 予測システム、方法およびプログラム

Non-Patent Citations (1)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111915344A (zh) * 2020-06-20 2020-11-10 武汉海云健康科技股份有限公司 一种基于医疗大数据的新会员催熟方法和装置

Also Published As

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

Similar Documents

Publication Publication Date Title
Suchacka et al. Using association rules to assess purchase probability in online stores
US11042898B2 (en) Clickstream purchase prediction using Hidden Markov Models
WO2019188101A1 (ja) 顧客の属性情報を解析する装置、方法、およびプログラム
JP6767824B2 (ja) 判定装置、判定方法及び判定プログラム
US20200273054A1 (en) Digital receipts economy
Pham et al. Preference-based user rating correction process for interactive recommendation systems
CN109417644B (zh) 跨屏广告投放的收益优化
JP6253744B1 (ja) 情報解析装置、情報解析方法、および情報解析プログラム
JP6253745B1 (ja) 情報解析装置、情報解析方法、および情報解析プログラム
JP2020149693A (ja) 生成装置、生成方法および生成プログラム
CN111429161B (zh) 特征提取方法、特征提取装置、存储介质及电子设备
Khodabandehlou et al. An effective recommender system based on personality traits, demographics and behavior of customers in time context
US20220198529A1 (en) Automatic rule generation for next-action recommendation engine
US10586163B1 (en) Geographic locale mapping system for outcome prediction
JP7198591B2 (ja) 顧客の属性情報を解析する装置、方法、およびプログラム
Heinrich et al. Something’s missing? A procedure for extending item content data sets in the context of recommender systems
JP7283865B2 (ja) 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム
CN116109354A (zh) 内容推荐方法、装置、设备、存储介质及计算机程序产品
Bahrani et al. A new improved KNN-based recommender system
JP7419313B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP7407779B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Cao et al. Adaptive Data Acquisition for Personalized Recommender Systems with Optimality Guarantees on Short-Form Video Platforms
Lopez Optimizing Marketing ROI with Predictive Analytics: Harnessing Big Data and AI for Data-Driven Decision Making
Khalique et al. Research Article A Deterministic Model for Determining Degree of Friendship Based on Mutual Likings and Recommendations on OTT Platforms
JP2024042574A (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: 19776445

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

Country of ref document: EP

Effective date: 20201027

NENP Non-entry into the national phase

Ref country code: JP