Organizations, such as financial institutions and social media sites, can accumulate and store a great deal of information regarding their customers. This information can include personal data, financial data, employment history, credit history and customer purchasing history. The customer information can originate from a variety of sources and is typically disparate in nature.
Embodiments of the disclosure are directed to a method implemented on an electronic computing device for predicting customer purchases, the method comprising: on the electronic computing device, receiving from one or more retailers ordering data regarding purchases made by a customer at the one or more retailers; receiving from one or more social media sites social media posts made by the customer; identifying one or more first textual elements, one or more second textual elements and one more third textual elements from the social media posts; sorting each of the first textual elements and the second textual elements into one or more categories; identifying one or more fourth textual elements from the ordering data; sorting the one or more of fourth textual elements from the ordering data into the one or more categories; for each of the one or more categories, calculating a sum of the first textual elements and the second textual elements from the social media posts; and when the sum for a category is greater than a predetermined threshold: determining whether one of the first textual elements from the social media posts for the category matches one of the fourth textual elements from the ordering data for the category; and when the one of the first textual elements from the social media posts for the category matches the one of the fourth textual elements from the ordering data for the category or when at least one of the second textual elements and one of the third textual elements from the social media posts are sorted into a same category and the category matches a category for at least one of the first textual elements from the social media posts, making a prediction that the customer will purchase a product or a service corresponding to the category.
In another aspect, an electronic computing device comprising: a processing unit; and system memory, the system memory including instructions which, when executed by the processing unit, cause the electronic computing device to: receive from one or more retailers ordering data regarding purchases made by a customer at the one or more retailers; receive from one or more social media sites social media posts made by the customer; correlate a first aspect of the ordering data with a first aspect of the social media posts; obtain a second aspect of the social media posts; and when a combination of the first aspect of the social media posts and the second aspect of the social media posts is greater than a threshold, predict a price for a purchase of a product corresponding to the first aspect of the ordering data.
In yet another aspect, an electronic computing device includes a processing unit; and system memory, the system memory including instructions which, when executed by the processing unit, cause the electronic computing device to: receive from one or more retailers ordering data regarding purchases made by a customer at the one or more retailers; receive from one or more social media sites social media posts made by the customer; identify one or more first textual elements from the social media posts, the one or first textual elements from the social media posts corresponding to names of one or more products, brands, trade names or services mentioned in the social media posts; identify one or more second textual elements from the social media posts, the one or more second textual elements in the social media posts corresponding to one or more keywords in the social media posts, the one or more keywords corresponding to generic words that can be sorted into categories; identify one more third textual elements from the social media posts, the one or more third textual elements in the social media posts corresponding to words or phrases that can correspond to an action to be taken with respect to the first textual elements and/or the second textual elements; sort each of the first textual elements and the second textual elements into one or more categories; identify one or more of fourth textual elements from the ordering data, the one or more fourth textual elements from the ordering data corresponding to one or more products, brands, trade names or services that the customer has already purchased; sort the one or more of the fourth textual elements from the ordering data into the one or more categories; for each of the one or more categories, calculate a sum of the first textual elements and the second textual elements from the social media posts; when the sum for a category is greater than a predetermined threshold: generate a template corresponding to the category; and determine whether one of the first textual elements from the social media posts for the category matches one of the fourth textual elements from the ordering data for the category; and when the one of the first textual elements from the social media posts for the category matches the one of the fourth textual elements from the ordering data for the category or when at least one of the second textual elements and one of the third textual elements from the social media posts are sorted into a same category and the category matches a category for at least one of the first textual elements from the social media posts: fill in fields in the template with names of the one or more first textual elements, the one or more second textual elements and the one or more third textual elements for the category from the social media posts; receive a selection for a predicted purchase price, a predicted purchase date or a predicted purchase brand; based on the selection, fill in fields in the template with the predicted purchase price, the predicted purchase date or the predicted purchase brand for a product, brand, trade name or service to be purchased; and fill in a field in the template with a number indicating an accuracy of the predicted purchase price, the predicted purchase date or the predicted purchase date.
The details of one or more techniques are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of these techniques will be apparent from the description, drawings, and claims.
The present disclosure is directed to systems and methods that can analyze customer posts from social media sites to predict customer purchases. The customer posts can be parsed to identify brand, product or tradenames, keyword indicators and context indicators from the customer posts. Information obtained from the social media sites can identify products or services that the customer may be interested in purchasing in the future. In addition, a prediction can be made as to a likelihood the customer will purchase the products or services in the future.
The systems and methods can also be used to obtain information regarding customer purchases from retail organizations. The information regarding the customer purchases and the information obtained from the social media sites can be used in conjunction with personal information the organization may have regarding the customer to predict future products that the customer may purchase. When the organization makes a determination that the customer is likely to purchase a product or a service in the near future, the organization can sometimes take proactive steps to help the customer with financing the product, recommending a specific product to the customer, recommending a product or service that can complement the product to be purchased or offer a coupon or other promotions as an inducement to the customer to purchase the product or service. Other proactive steps or actions can be taken by the organization.
Using the systems and methods, customer data from social media sites, for example customer social media posts, can be parsed, for example using natural language processing. Products, brands and trade names can be identified from the social media posts. In addition, keywords and context indicators can be identified from the social media posts. Products, brands and trade names can also be identified from actual customer ordering data. The products, brands, trade names and keywords can be sorted into categories. When a sum of the products, brands and tradenames and keywords are greater than a threshold for a category for a customer, an action can be performed, such as generating a template corresponding to the category. Then when there is an additional match between a product, brand or trade name identified from a social media post and a product, brand or trade name identified from the customer ordering history, fields in the template can be populated with the natural language processor data. Although natural language processing is described for parsing the social media data, other methods of parsing the social media data can be used. For example, one method can comprise an analysis of cookies and metadata associated with social media data. Another method can comprise a user-generated system of tagging, such as Twitter's #hashtag system. Still other methods of parsing the social media data are possible.
As discussed in more detail later herein, each template for a category displays data obtained from the social media posts regarding the category. In addition, each template displays a prediction regarding a possible customer purchase of a product or a brand corresponding to the category. Further, each template permits a financial institution employee to select a type of prediction to be made regarding the matched product, brand or trade name for the category. Example types of predictions can include a predicted product or brand to purchase, a predicted date on which the product is to be purchased and a predicted purchase prices. Other types of predictions are possible. Each template also displays a correlation value that indicates a degree to which the prediction is accurate.
In this disclosure, the use of social media data and order history data to predict future customer purchases are described with respect to financial organizations such as a bank. However, the systems and methods described herein are also applicable to other types of organizations and for other purposes. For example, the systems and methods can be used to target customers for promotions, to assess credit and risk both with and without the use of credit agencies and to predict how financial programs and devices can affect certain customer bases. Other examples are possible.
The systems and methods disclosed herein are directed to a computer technology that helps solves an existing problem in predicting customer purchasing behavior. The systems and methods improve efficiencies of predicting customer purchasing behavior by a systematic analysis of customer social media posts and customer ordering data. By proactively identifying customers that may be making imminent purchases of products or services, a financial organization can proactively target customers with added inducements to purchase the products or services. The added inducements can comprise advertisements, promotions, coupons, etc. Proactively targeting customers improves computing efficiencies because targeted customers are identified efficiently and customer inquiries such as email messages can be minimized.
The example retail ordering system 102 include ordering systems from retailers from which customer ordering information can be obtained over network 106. The retailers can include brick and mortar retailers and online retailers. The brick and mortar retailers can include retailers such as department stores, specialty stores, car dealerships and restaurants. The online retailers can include retailers such as amazon.com, kayak.com and zappos.com. Other brick and mortar and online retailers are possible.
Information regarding customer purchases at these retailers can be obtained from the ordering systems of the retailers. The information can be obtained using an application program interface (API) on the ordering systems of these retailers. A financial organization can obtain data regarding customer purchases using the API of each retailer. In order for the financial organization to obtain the data using the API, the customer typically needs to authorize the retailers to send the data to the financial institution.
The example social media sources 104 include social media websites such as Facebook, Twitter, LinkedIn, Instagram, etc. Customers can post comments on the social media websites regarding purchases they have made, products, brands or services they are interested in purchasing, interests and plans that they have, etc. Many of the social media websites have APIs by which the customer posts can be obtained by interested parties. In order for an interested party to be able to obtain the customer posts via the API, the customer typically needs to authorize the social media websites to permit access by the interested parties.
The example network 106 is a computer network by which the retail ordering systems 102 and the social media sources 104 can communicate with server computer 108. For system 100, network 106 is the Internet.
The example server computer 108 is a server computer of the financial institution. Server computer 108 can comprise one server computer or a plurality of server computers.
The example databases 112 are databases than can be accessed by the server computer 108. In some implementations, databases 112 comprise one database. In other implementations, server computer 108 comprises a plurality of databases. The databases 112 can include personal data regarding a customer, including financial data. The databases 112 can also include a brand and product database and a customer profile database. Other databases are possible. The brand and product database can include information regarding brands and products that the customer has previously purchased. The customer profile database can include, among other things, templates that can predict future customer purchases. The brand and product database and the customer profile database are explained in more detail later herein.
The example ordering analysis system module 110 includes a plurality of modules that can process customer ordering information from the retail ordering systems 102 and from the social media sources 104 and predict which future products and/or brands the customer may purchase in the future. The ordering analysis system module 110 is described in more detail next herein.
The ordering analysis system module 110 includes a NLP (natural language processor) module 206, a NLP data structure 208, a historical data structure 210, a tracker software module 212, a template creation module 214, templates 216, a prediction matrix module 218 and a correlation software module 220.
The example NLP module 206 receives social media data from the social media sources API 204 and identifies personal customer information, brand, product or trade names, keywords indicators and context indicators in the social media data. The social media data can include posts that the customer made on the social media websites. The social media data can include a customer name, a name and location (if applicable) of a social media website and a text string. The social media data can be parsed to identify and or extract the customer name, location, brand, product or trade names, keyword indicators, context indicators and other information from the social media data. The parsed social media data can be stored in the NLP data structure 208, as discussed in more detail later herein. In addition, the brand and product information can be stored in the brand and product database 222.
The example keywords indicators are words representing a type of product or service that the customer can purchase. A detection of a keyword indicator in the customer social media data can indicate that the customer is interested in purchasing a product or service corresponding to the type. The keyword indicators can be pre-configured for the ordering analysis system module 110 to correspond to types of products that may be of interest to the customer. Examples of keyword indicators can be car, truck, tires, flight, necklace, dinner, TV, movies, hotel, taxi, kitchen, real estate, tile and carpet. Other keyword indicators are possible.
The example context indicators are words or phrases that can represent a context for purchasing a product or a service. A detection of a context indicator in conjunction with a keyword indicator and product name can indicate that the customer is interested in purchasing the product. The way in which a detection of context indicators, keyword indicators and product names can predict a product purchase is described in more detail later herein. Examples of context indicators can be recommend, shopping, budget, review, buy, new, old, used, finance, purchase, shipping, searching, upgrade, renovate and remodel. Other context indicators are possible.
The example NLP data structure 208 comprises a data structure that organizes customer purchase information so that the customer purchase information can be easily stored, accessed and processed. An example format of the NLP data structure 208 is described in more detail later herein. See
The example historical data structure 210 comprises a data structure that organizes information regarding actual customer purchases of products and services. An example format of the historical data structure 210 is described in more detail later herein. See
The example tracker software module 212 receives one or more of product and brand name information, keyword indicators and context indicators from the NLP data structure 208 and the historical data structure 210, sorts the information and indicators received into categories and determines whether the number of product or brand names and keyword indicators in any one category is greater than a predetermined threshold. When the number of product or brand names and keyword indicators in any one category is greater than the predetermined threshold, the example template creation module 214 creates a template for the product or brand names. For the ordering analysis system module 110, the predetermined threshold is three, meaning that the template is created when the number of identified product or brand names, keyword indicators and context indicators that are sorted into one category is greater than three. Other predetermined thresholds can be used.
For examples of sorting product or brand names, a brand name identified as “Chevrolet” be sorted into an “auto” category, a brand name identified as “Delta Airlines” can be sorted into a “travel” category, a brand name identified as “Pizza Hut” can be sorted into a “food” category. For examples of sorting keyword indicators into categories, a keyword identified as “tires” can be sorted into the “auto” category, a keyword identified at “flight” can be sorted into the “travel” category, a keyword identified as “necklace” can be sorted into a “gifts” category, a keyword identified as “dinner” can be sorted into the “food” category, a keyword identified as “movies” can be sorted into an “entertainment” category and a keyword identified as “hotel” can be sorted into the “travel” category. Other examples are possible.
The tracker software module 212 can also compare data from the NLP data structure 208 with data from the historical data structure 210 to determine whether there is a match for at least one brand name, product name or trade name. If there is a match, the template creation module 214 loads NLP data into a template corresponding to a category for the matched brand name, product name or trade name. In addition, if there is a match for at least one context indicator and at least one keyword indicator, the template creation module 214 loads NLP data into a template corresponding to a category for the matched keyword.
As discussed, the template creation module 214 creates a template corresponding to product category when the predetermined threshold is greater than three and when there is a match between product names and between keyword indicators and context indicators. In addition, when the predetermined threshold is not greater than three and when there isn't a match between product names and between keyword indicators and context indicators, the template creation module 214 creates a generic template and loads NLP data into the generic template. The templates can be used to predict whether a product corresponding to the template is likely to be purchased by the customer.
The example templates 216 comprise templates corresponding to the different product categories. As discussed, the template creation module 214 creates the templates when certain conditions are met. The templates that are created can be stored in the customer profile database 224. Specific aspects of selected templates is discussed in more detail later herein.
The example prediction matrix module 218 processes data from a prediction matrix (see
An example regression equation can be:
f(y)=β0X0+β1X1+β2X2+β3X3 . . . βnXn+ϵ (1)
where, β0, β1, β2, β3 . . . βn are coefficients, X0, X1, X2, X3 . . . Xn are independent variables and is a random error component.
The prediction matrix module 218 can use a data model with the historical data to determine the coefficients β0, β1, β2, β3 . . . βn. The independent variables X0, X1, X2, X3 can correspond to the age, yearly income, historical price, historical brand, respectively. The outcome f(y) of equation (1) can represent the predicted purchase price. For the example prediction matrix module 218, the ordinary least squares (OLS) model is used to estimate the coefficients.
A regression equation similar to equation (1) can be used to predict outcomes such as a purchase time/date, a purchase brand/vendor, an expense over a month or year, a prediction of an online or retail purchase, and other outcomes, based on a separate set of dependent variables as determined by the prediction matrix. As described in more detail later herein, the prediction matrix can indicate a selection of different sets of independent/dependent variables that can predict different outcomes.
The example correlation software module 220 can calculate a correlation value for the regression equations (similar to equation (1)) that predict the different outcomes. The correlation value indicates how close the actual historical data is to fitting a regression line corresponding to equation (1). For the example ordering analysis system module 110, the coefficient of determination (R2) is used to indicate how close the historical data is the regression line. The coefficient of determination is described in more detail with regard to a discussion of the templates later herein.
The example customer profile database 224 stores templates 216 that are created by the template creation module 214. The customer profile database 224 also receives R2 correlation data from the correlation software module 220 and stores the R2 correlation data in the templates 216.
The template shown in
The travel template 300 also includes a pulldown list box 314, a predicted value 316 of the pulldown list box 314 and a R2 value 318 for the predicted value. The pulldown list box 314 permits a selection of items to be predicted, such as a predicted purchase price, a predicted purchase time/date, a predicted brand/vendor, a predicted monthly or yearly expense and a prediction as whether a predicted purchase is to occur online or at a retail location. Other predicted items are possible. In some implementations, the predicted purchase price is a default selection. In other implementations, the predicted purchase price can be the only selection. For the example travel template 300, the predicted value 316 for the purchase price is estimated to be $2,035.00. The R2 value is estimated to be 0.90022. The R2 value shows that the predicted purchase price of $2,035.00 has about a 90% probability of being accurate.
The travel template 300 also permits a selection of more travel templates 320 and more templates 322 from the same customer, John Doe.
The auto template 400 also includes a pulldown list box 414, a predicted purchase date 416 of the pulldown list box 414 and a R2 value 418 from for the predicted purchase date. The pulldown list box 414 permits a selection of items to be predicted, such as a predicted purchase price, a predicted purchase time/date, a predicted brand/vendor, a predicted monthly or yearly expense and a prediction as whether a predicted purchase is to occur online or at a retail location. Other predicted items are possible. For the example auto template 400, the predicted purchase date 416 is estimated to be Aug. 25, 2015. The R2 value is estimated to be 0.67908. The R2 value shows that the predicted purchase date of Aug. 25, 2015 has about a 68% probability of being accurate.
The auto template 400 also permits a selection of more auto templates 420 and more templates 422 from the same customer, Bob Smith.
The food template 500 also includes a pulldown list box 514, a predicted purchase brand 516 of the pulldown list box 514 and a R2 value 518 from for the predicted purchase brand. The pulldown list box 514 permits a selection of items to be predicted, such as a predicted purchase price, a predicted purchase time/date, a predicted brand/vendor, a predicted monthly or yearly expense and a prediction as whether a predicted purchase is to occur online or at a retail location. Other predicted items are possible. For the example food template 500, the predicted purchase brand 516 is predicted to be Chili's. The R2 value is estimated to be 0.99654. The R2 value shows that the predicted purchase brand of Chili's has over a 99% probability of being accurate.
The food template 500 also permits a selection of more food templates 520 and more templates 522 from the same customer, Jane Doe.
Rows of the historical data structure 210 are filled when retail ordering data from retail ordering systems 102 is entered into the historical data structure 210. The historical data structure 210 shows a record of each retail order. For example, row one shows that on Jun. 5, 2011, John Doe ordered a limousine service from Marriott and paid $100.00.
The prediction matrix 800 shows which independent variables 804 are used to obtain a specific prediction of a dependent variable 802. The independent variables 804 that are used for a specific prediction of the dependent variables 802 are indicated by a solid dot at the intersection of an independent variable 804 and a dependent variable 802. For example, for the prediction of a purchase brand/vendor 810, the independent variables used include age 816, yearly income 818, historical brand 822, NLP brand 826, NLP context 828 and NLP keywords 830. For the prediction of the purchase brand/vendor 810, independent variables for historical price 820 and recent purchases 824 are not used.
As discussed earlier herein, the systems and methods of this disclosure can be applied to organizations other than financial institutions. In other example uses, the systems and methods can be used to retrieve user geolocation, home address, etc., to incorporate geography-based price decisions into predictive models. In another example system, customers can view their own profiles and predictions regarding their behavior. Customers can set a financial plan and offer comparisons between the predicted, the plan and actual purchasing behavior. In yet another example, users can opt-in to have device metadata sent to the ordering analysis system module 110 to inform predictive templates. Metadata could include search terms that the user has entered, websites browsed, devices and operating systems used, etc. In yet another example, advertisers can be allowed to receive notifications when customers are most likely to be engaging in purchasing behavior, delivering individually targeted discounts, advertisements or other promotional material to the customer's social media sources. In yet another example, incentives can be offered to customers for providing more sensitive or private data, such as text messages, emails, chat logs, notes, journals, etc. In yet another example, large cohorts of customers with similar purchasing behavior can be studied regularly to improve a prediction matrix. Less intuitive independent variables can be used, such as a number of friends, social media posts per hour, religious/marital status, purchases made by friends, use of games or apps, social events calendar, etc.
At operation 902, social media data for a customer is received from a social media website. The social media data includes social media posts that the customer has made on the social media websites. The social media posts can include posts related to purchases that the customer is thinking of making, opinions of products or services or discussions related to food, travel, gifts, household appliances, automobiles or other items. Alternatively, or in addition to this content, the social media posts can include other various types of content.
At operation 904, the social media posts are parsed using a natural language processor. The natural language processor identifies textual elements in the social media posts that can be used to make a prediction as to whether the customer will purchase a product or a service in the near future. The textual elements can include one or more of customer names, dates of social media posts for the customer, products, brands and trade names that can be identified in the social media posts. The textual elements can also include one or more keywords or contexts associated with the possible purchase of the products, brands, trade names and services. The textual data can also include a price mentioned regarding one of the products, brands, trade names and services.
At operation 906, one or more customer names and dates of social media posts for the customer are identified from the parsed social media data. The natural language processor can be used to identify the one or more customer names and dates from the parsed social media data.
At operation 908, one or more brands, products or trade names are identified from the parsed social media data. The natural language processor can be used to identify the one or more brands, products or trade names are identified from the parsed social media data.
At operation 910, one more context indicators are identified from the parsed social media data. The natural language processor can be used to identify the one or more context indicators. The context indicators represent words or phrases that can correspond to an action to be taken with respect to the first textual elements and/or the second textual elements. Examples of context indicators can include recommend, booking, time-off, broke down, flat, upgrade, drive, going out, invite, grab a bite and plan. Other context indicators can be used.
At operation 912, one or more keyword indicators are identified from the parsed social media data. The natural language processor can be used to identify the one or more keyword indicators. The keyword indicators represent generic words that can be sorted into categories. Examples of keyword indicators can include flight, hotel, beach, vacation, anniversary, tires, paint job, hungry, dinner, downtown and drinks. Other keyword indicators can be used.
As described in operations 906-912, the textual elements are identified from the parsed social media data. However, it should be understood that in an actual implementation, the textual elements can be identified as the social media data is parsed. For example, during the parsing of the social media data, a customer name can be identified, followed by a date, followed by a product, followed by a keyword, followed by another customer name, etc. A plurality of different combinations in which the textual elements can be identified are possible.
At operation 914, the identified customer names, dates, brands, products, trade names, context indicators and keyword indicators are stored in a natural language processing (NLP) database, similar to the NLP database shown in
At operation 1004, customer ordering data is received for a customer. The customer ordering data can be received via an API on a website for the online retailer or from a retail point of sale (POS) device. Example online retailers can include amazon.com and kayak.com. Both the online retailers and the retailers associated with the POS device need to have been given permission from the customer to send the customer ordering data to the financial institution.
At operation 1006, one or more brands, products or trade names can be identified from the customer ordering data. Other information can also be identified from the customer ordering data including the name of the customer who purchased the brands or products, the date of the purchase, a dollar value of the purchase and related products. Additional or different information can be identified from the customer ordering data.
At operation 1008, the brands, products or trade names are sorted into categories. For example, a brand like Chevrolet can be sorted into an auto category, a brand like Marriot can be sorted into a travel category and a trade name like McDonald's can be sorted into a food category. Other categories are possible.
At operation 1010, the identified brands, products, trade names and categories are stored in an historical database, for example in historical data structure 210.
At operation 1102, textual data for the customer is loaded from the NLP data structure 208 into the tracker software module 212. The textual data includes the brand, product and trade name information that is created using method 1000.
At operation 1104, the product, brand or trade name information is sorted into categories. Example categories can include, auto, travel, food and gifts. Other categories are possible.
At operation 1106, keyword indicators from the textual data are sorted into categories. For example a keyword indicator such as hungry can be sorted into a food category and a keyword indicator such as tires can be sorted into the auto category.
At operation 1108, a sum is calculated of the number of brands, products, tradenames or keyword indicators in a single category.
At operation 1110, a determination is made as to whether the sum is greater than three. When a determination is made that the sum is greater than three, at operation 1112, a template is created for the category. Example templates, corresponding to
When a determination is made that the sum is not greater than three, at operation 114, textual data for a next customer is loaded from the NLP data structure 208 into the tracker software module 212.
At operation 1202, NLP data is retrieved from the NLP data structure 208. At operation 1204, customer ordering data is retrieved from the historical data structure 210.
At operation 1206, an attempt is made to match NLP data with ordering data.
At operation 1208, a determination is made as to whether there is at least one match between a brand, product or trade name between the NLP data and the ordering data. The match is done to determine whether a product, brand or trade name being mentioned in the social media posts for the customer is a product, brand or trade name that has already been purchased by the customer.
When a determination is made that there is a match for the brand, product or trade name between the NLP data and the ordering data, at operation 1212, the NLP data is loaded into a template associated with the brand, product or trade name. The loading of the NLP data into the template associated with the brand, product or trade name comprises filling in template fields with the NLP data. At operation 1220, the template data is stored in a customer profile database.
When a determination is made that there isn't a match for the brand, product or trade named between the NLP data and the ordering data, at operation 1210, a determination is made as to whether there is a match for a context indicator. This comprises determining whether a brand, product or trade name from the NLP data has a corresponding context indicator for a specific category. For example, a brand Chevrolet can have a context indicator such as broke down, flat or upgrade.
When a determination is made at operation 1210 that there is a match for the context indicator, at operation 1214 a determination is made as to whether there is a match for a keyword indicator. This comprises determining whether a brand, product or trade name for the NLP data has a corresponding keyword indicator for a specific category. For example, the brand Chevrolet can have a keyword indicator such as tires, engine, new car or paint job.
When a determination is made at operation 1214 that there is a match for the keyword indicator, at operation 1216 the NLP data is loaded into a template associated with the keyword indicator. The loading of the NLP data into the template associated with the keyword indicator comprises filling in the template fields with NLP data. At operation 1220, the template data is stored in a customer profile database.
When a determination is made at operation 1214 that there is no match for the keyword indicator, at operation 1218, the NLP data is loaded into a generic template.
At operation 1302, a customer template is obtained for a category.
At operation 1304, a dependent variable is selected from the template for a prediction. Examples or dependent variables that can be selected for the prediction include a predicted purchase price, a predicted purchase date and a predicted purchase brand. These dependent variables can be selected from a pull-down list box on the template. For example, as show in
At operation 1306, the correlation software module 220 calculates an accuracy of the prediction. The correlation software module 220 calculates the accuracy of the prediction based on the brand matches, context matches and keyword matches for the category. The correlation software module 220 uses a regression equation similar to equation (1). The correlation software module 220 uses the coefficient of determination R2 to calculate the accuracy of the prediction.
As illustrated in the example of
The mass storage device 1414 is connected to the CPU 1402 through a mass storage controller (not shown) connected to the system bus 1422. The mass storage device 1414 and its associated computer-readable data storage media provide non-volatile, non-transitory storage for the server computer 108. Although the description of computer-readable data storage media contained herein refers to a mass storage device, such as a hard disk or solid state disk, it should be appreciated by those skilled in the art that computer-readable data storage media can be any available non-transitory, physical device or article of manufacture from which the central display station can read data and/or instructions.
Computer-readable data storage media include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable software instructions, data structures, program modules or other data. Example types of computer-readable data storage media include, but are not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROMs, digital versatile discs (“DVDs”), other optical storage media, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the server computer 108.
According to various embodiments of the invention, the server computer 108 may operate in a networked environment using logical connections to remote network devices through the network 1420, such as a wireless network, the Internet, or another type of network. The server computer 108 may connect to the network 1420 through a network interface unit 1404 connected to the system bus 1422. It should be appreciated that the network interface unit 1404 may also be utilized to connect to other types of networks and remote computing systems. The server computer 108 also includes an input/output controller 1406 for receiving and processing input from a number of other devices, including a touch user interface display screen, or another type of input device. Similarly, the input/output controller 1406 may provide output to a touch user interface display screen or other type of output device.
As mentioned briefly above, the mass storage device 1414 and the RAM 1410 of the server computer 108 can store software instructions and data. The software instructions include an operating system 1418 suitable for controlling the operation of the server computer 108. The mass storage device 1414 and/or the RAM 1410 also store software instructions, that when executed by the CPU 1402, cause the server computer 108 to provide the functionality of the server computer 108 discussed in this document. For example, the mass storage device 1414 and/or the RAM 1410 can store software instructions that, when executed by the CPU 1402, cause the server computer 108 to display received data on the display screen of the server computer 108.
Although various embodiments are described herein, those of ordinary skill in the art will understand that many modifications may be made thereto within the scope of the present disclosure. Accordingly, it is not intended that the scope of the disclosure in any way be limited by the examples provided.