Information processing device, information processing method, and information processing program
The information processing device improves keyword prediction accuracy by using morphological analysis and a data augmentation model to include competitor data, addressing the limitations of existing keyword suggestion technologies.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-03-17
- Publication Date
- 2026-03-03
AI Technical Summary
Existing keyword suggestion technologies for advertising lack accuracy in predicting effective keywords for advertisers, relying solely on operational status data and search keywords without considering broader contextual and competitive data.
An information processing device that performs morphological analysis, converts keywords into multi-dimensional vectors, and uses a general-purpose prediction model to expand learning beyond an advertiser's account to include competitors' data, predicting keywords with high conversion rates (CVR) through a data augmentation model.
Enhances the accuracy of predicting and proposing keywords with high advertising effectiveness by incorporating broader data sources, improving prediction models for advertisers with limited data.
Smart Images

Figure 0007822988000001 
Figure 0007822988000002 
Figure 0007822988000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing device, an information processing method, and an information processing program. [Background technology]
[0002] In recent years, a technology has been provided that analyzes information about the operational status of listing advertisements based on natural language processing and statistical processing, determines areas for improvement in the operational information about the listing advertisements, and presents the areas for improvement to users. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-042597 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the above-mentioned conventional technology merely determines search keywords suitable for improving the operational status based on information about the operational status of listing ads and information about search keywords. There is room for improvement in keyword suggestions. Therefore, there is a need for a means to more accurately predict and suggest keywords that will be highly effective for advertisers.
[0005] The present application has been made in view of the above, and aims to more accurately predict and propose keywords that will be highly effective in advertising to advertisers. [Means for solving the problem]
[0006] The information processing device according to the present application includes a language processing unit that performs morphological analysis on keywords for each part of speech, a conversion unit that converts the keywords into multi-dimensional vectors after the morphological analysis, and a conversion unit that converts the vectors into feature quantities, Show conversion rates CVR as the objective variable When creating a prediction model that learns the correlation between actually used keywords and CVR, a determination unit determines whether to use a general-purpose prediction model depending on the advertiser's situation, and when a general-purpose prediction model is used, the learning range is expanded to include not only the advertiser's advertising account but also the advertising accounts of competitors. a learning unit that creates The CVR is predicted using the general-purpose prediction model, and keywords that are predicted to have a high CVR are calculated by comparing the keyword candidates prepared by the advertiser with the keywords actually used. a calculation unit for calculating the A proposal department that proposes keywords that are predicted to have a high CVR to advertisers; The present invention is characterized by comprising: [Effects of the Invention]
[0007] According to one aspect of the embodiment, keywords that will be highly effective for advertising to an advertiser can be predicted and proposed with higher accuracy. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is an explanatory diagram showing an overview of an information processing method according to an embodiment. [Figure 2] FIG. 2 is an explanatory diagram showing an overview of the association of recommended advertising campaigns and advertising groups. [Figure 3] FIG. 3 is a diagram illustrating an example of the configuration of an information processing system according to the embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example of the configuration of a terminal device according to the embodiment. [Figure 5] FIG. 5 is a diagram illustrating an example of the configuration of a server device according to the embodiment. [Figure 6] FIG. 6 is a diagram illustrating an example of the user information database. [Figure 7] FIG. 7 is a diagram illustrating an example of the history information database. [Figure 8] FIG. 8 is a diagram illustrating an example of the flag information database. [Figure 9A] FIG. 9A is a flowchart showing the first half of the processing procedure according to the embodiment. [Figure 9B] FIG. 9B is a flowchart showing the second half of the processing procedure according to the embodiment. [Figure 10] FIG. 10 is a diagram illustrating an example of a hardware configuration. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, an information processing device, an information processing method, and an information processing program according to the present application (hereinafter referred to as "embodiments") will be described in detail with reference to the drawings. Note that the information processing device, the information processing method, and the information processing program according to the present application are not limited to these embodiments. Furthermore, the same components in the following embodiments will be denoted by the same reference numerals, and duplicated descriptions will be omitted.
[0010] [1. Overview of information processing method] First, an overview of an information processing method performed by an information processing device according to an embodiment will be described with reference to Fig. 1. Fig. 1 is an explanatory diagram showing an overview of the information processing method according to an embodiment. Note that Fig. 1 describes an example in which keywords with high advertising effectiveness for advertisers are predicted and proposed with high accuracy.
[0011] 1, the information processing system 1 includes a terminal device 10, a server device 100, and an advertiser terminal 200. The terminal device 10, the server device 100, and the advertiser terminal 200 are connected to each other via a network N (see FIG. 3) so as to be able to communicate with each other via wired or wireless communication. In this embodiment, the terminal device 10 and the advertiser terminal 200 cooperate with the server device 100.
[0012] The terminal device 10 is a smart device such as a smartphone or tablet terminal used by a user U, and is a portable terminal device capable of communicating with any server device via a wireless communication network such as 5G (5th Generation) or LTE (Long Term Evolution). The terminal device 10 has a screen such as a liquid crystal display with a touch panel function, and accepts various operations on displayed data such as content, such as tapping, sliding, and scrolling, performed by the user U with a finger or a stylus. An operation performed on an area of the screen where content is displayed may be considered an operation on the content. The terminal device 10 may be not only a smart device, but also an information processing device such as a desktop PC (Personal Computer) or a notebook PC.
[0013] The server device 100 is an information processing device that works in conjunction with the terminal device 10 of each user U and provides API (Application Programming Interface) services for various applications (hereinafter referred to as apps) and various data to the terminal device 10 of each user U, and is realized by a computer, a cloud system, etc.
[0014] The server device 100 may also be an information processing device that provides some kind of online web service to the terminal device 10 of each user U. For example, the server device 100 may provide the following web services: internet connection, search service, social networking service (SNS), electronic commerce (EC), electronic payment, online games, online banking, online trading, hotel and ticket reservations, video and music distribution, news, maps, route search, route guidance, line information, operation information, and weather forecast. In practice, the server device 100 may cooperate with various servers that provide the above-mentioned web services and act as an intermediary for the web services or may be responsible for processing the web services.
[0015] The server device 100 can acquire user information about the user U. For example, the server device 100 acquires information about the attributes of the user U, such as the gender, age, and residential area of the user U. The server device 100 then stores and manages the information about the attributes of the user U together with identification information (such as a user ID) that identifies the user U.
[0016] The server device 100 also acquires various types of history information (log data) indicating the behavior of the user U from the terminal device 10 of the user U or from various servers based on the user ID, etc. For example, the server device 100 acquires a location history, which is a history of the user U's location and date and time, from the terminal device 10. The server device 100 also acquires a search history, which is a history of search queries entered by the user U, from a search server (search engine). The server device 100 also acquires a browsing history, which is a history of content viewed by the user U, from a content server. The server device 100 also acquires a purchase history (payment history), which is a history of the user U's product purchases and payment processes, from an e-commerce server or a payment processing server. The server device 100 may also acquire a listing history and a sales history, which are a history of the user U's listings on the marketplace, from the e-commerce server or the payment processing server. The server device 100 also acquires a posting history, which is a history of the user U's posts, from a posting server or SNS server that provides a word-of-mouth posting service. The various servers and the like described above may be the server device 100 itself. That is, the server device 100 may function as the various servers and the like described above.
[0017] The advertiser terminal 200 is an information processing device (advertiser device) used by an advertiser. The advertiser may be a corporation or the like, and the user of the advertiser terminal 200 may be, for example, a promotional officer of the advertiser. For example, the advertiser terminal 200 may be realized by a smartphone, a tablet terminal, a notebook PC, a desktop PC, a mobile phone, a PDA, or the like. The example in FIG. 1 shows a case where the advertiser terminal 200 is a notebook PC. The advertiser uses the advertiser terminal 200 to transmit and receive information to and from the server device 100. For example, the advertiser terminal 200 displays various information provided by the server device 100.
[0018] Furthermore, the advertiser terminal 200 receives information provided from the server device 100 and transmits the information to the server device 100. For example, the advertiser terminal 200 receives content for accepting designation by an advertiser from the server device 100. For example, the advertiser terminal 200 receives designation content for accepting keyword designation by an advertiser from the server device 100. For example, the advertiser terminal 200 transmits information indicating keywords (designated keywords) designated by the advertiser using the designation content to the server device 100. The advertiser terminal 200 transmits information indicating the keywords designated by the advertiser to the server device 100. For example, the advertiser terminal 200 transmits information indicating the keywords designated by the advertiser to the server device 100.
[0019] In addition, an advertiser may use the advertiser terminal 200 to request an agency to submit advertisement content (hereinafter simply referred to as "advertisement") to the server device 100, rather than submitting the advertisement to the server device 100. In this case, it is the agency that submits the advertisement to the server device 100. The term "advertiser" is a concept that includes not only the advertiser but also the agency, and the term "advertiser terminal" is a concept that includes not only the advertiser device but also the agency device used by the agency.
[0020] [1-1. Data expansion model concept] The server device 100 sets keywords in advance for the submission of advertisements that appear when a search query (keyword: KW) is entered, and when the keywords are entered, the advertisements are displayed as search results. At this time, the server device 100 trains a model on the relationship between conversions and keywords so as to increase the number of conversions (CV) and the conversion rate (CVR), and based on the results estimated using the model, suggests a message such as "If you set this keyword, the number of conversions (or conversion rate) will increase" or a notification to that effect.
[0021] However, if there is little data on conversions for a certain ad or if the number of registered keywords is small, model training may not work. For example, if the number of registered keywords required for model training is below a certain level, it may be impossible to create the model and an error may occur (a machine learning model cannot be created because there is not enough training data).
[0022] Therefore, we are considering and verifying a "data augmentation model concept" in which a general-purpose prediction model (data augmentation model) is created by expanding the scope of learning to include our own company (advertiser), competitors, and advertising accounts similar to them, and a prediction score is assigned using the general-purpose prediction model (data augmentation model) for advertising accounts that previously could not generate predictions due to an insufficient number of conversions or registered keywords.
[0023] For example, the server device 100 aggregates the learning data, and if the number of conversions is below a certain level (e.g., 0) or the number of registered keywords is below a certain level (e.g., 50 or less), it creates a model using a concept higher than the advertising account (advertising base category, advertising cross category).
[0024] This means that if we can provide effective keywords (potential KWs) using a general-purpose prediction model (data augmentation model) to advertisers who do not have accumulated past data, it is believed that this will contribute to acquiring conversions at an early stage.In addition, even for accounts that were able to produce predictions but did not have enough training data and therefore did not have sufficient accuracy, it is believed that accuracy can be improved by using a general-purpose prediction model (data augmentation model).
[0025] On the other hand, simply training a model on search queries that led to conversions for similar ads can result in a decrease in accuracy. This is because the intent of a keyword can vary depending on the advertising field, etc. When training a large amount of data, it is possible to estimate whether a keyword has a high overall conversion probability. However, just because a keyword has a high overall conversion probability does not necessarily mean that it has a high conversion probability for ads in a specific field (such as the travel industry). Furthermore, for ads with a large amount of data to begin with, accuracy is likely to decrease when considering conversions for other ads.
[0026] Typically, using data from search advertising competitors that appears when a search query is entered is thought to result in a higher learning effect because it provides more data than using only one company's (the advertiser's) data. However, the number of conversions for a search query varies depending on the industry. The content of the conversions also differs. Furthermore, even the same words have different meanings. Also, strong regional differences can result in poor accuracy.
[0027] Also, if a company has a lot of data to begin with, the accuracy is good even with a single piece of data. For example, if a shoe company originally created a model by learning only its own data (a "shoe" company), but data from a competitor "shoes and clothing" company is included, the model will be created by learning both the "shoes" company data and the "shoes and clothing" company data, resulting in poor accuracy. Also, since the meaning of words written the same way (especially abbreviations) can differ depending on the industry, accuracy will decrease if the industry is too broad.
[0028] Therefore, a method for preventing a decrease in accuracy and predicting and proposing keywords with high advertising effectiveness for advertisers with high accuracy will be described.
[0029] [1-2. Model training and scoring] In this embodiment, the server device 100 breaks down the query into parts of speech, vector-converts the meanings, quantifies them, creates a machine learning model, and predicts a score.
[0030] For example, as shown in FIG. 1, the server device 100 receives an input of a search query or extracts the search query from a search history (step S1).
[0031] Next, the server device 100 performs morphological analysis in natural language processing (NLP) on the search query, and breaks the search query down into parts of speech (step S2).
[0032] Next, the server device 100 converts the words after the morphological analysis into 200-dimensional vectors and quantifies the "meaning" (step S3). For example, the server device 100 uses a vector conversion model that takes a character string as input and outputs a vector corresponding to the character string, and outputs a multi-dimensional (e.g., 200-dimensional) vector corresponding to the input character string using a word embedding technique such as word2vec.
[0033] Next, the server device 100 creates a learning model using the vector as a feature and the CVR as a target variable (step S4).
[0034] Next, the server device 100 scores the query using the learning model (step S5).
[0035] Next, the server device 100 flags new / recommended advertising accounts according to the query scores (step S6). For example, the server device 100 assigns advertising campaigns / ad groups to advertising accounts that have submitted new / recommended keywords (or ads containing the same) by flagging the advertising accounts.
[0036] [1-3. Advertising campaign allocation / ad group allocation] An overview of the linking of recommended advertising campaigns and advertising groups, along with the flow of the entire process, will be described with reference to Figure 2. Figure 2 is an explanatory diagram showing an overview of the linking of recommended advertising campaigns and advertising groups. Figure 2 explains the logic for recommending the campaign (group) with the highest cosine similarity between the affiliated keyword and each advertising campaign as the submission destination.
[0037] For example, as shown in FIG. 2, the server device 100 reads a configuration file in which keywords (KW) are registered, and creates a model that predicts the likelihood of CV (conversion) from the company's (advertiser's) registered keywords (registered KW) (step S11).
[0038] At this time, the server device 100 calculates the keywords registered in the advertising account of the company's search advertisement and the actual value of the CVR (conversion rate). For example, the search advertisement is a listing advertisement (YSA), and the advertising account is a YSA account. In reality, the search advertisement is not limited to a listing advertisement (YSA), and may be a display advertisement (YDA), etc.
[0039] As a preprocessing step, the server device 100 corrects spelling variations in brand names written in the configuration file and then excludes them using a partial match search. The reason for this exclusion is that brand name and other brand-name keywords have high CVRs and become outliers. The server device 100 also excludes abnormal values from keywords. The server device 100 also excludes outliers in CVR, keeping the CVR between 0 and 1. The server device 100 also performs random sampling when the learning data is above a certain threshold to reduce the processing load.
[0040] The server device 100 also performs morphological analysis on the registered keywords registered in the configuration file, vectorizes the words after the morphological analysis, and averages and aggregates each vector for each keyword to create a 200-dimensional vector.The server device 100 then creates a prediction model trained using the 200-dimensional vector of each word as a feature and CVR as a target variable.
[0041] Next, the server device 100 scores the search query based on the probability of conversion likelihood (step S12).
[0042] At this time, the server device 100 extracts search queries sent to the company and its competitors, and prepares a list of suggested keywords (hereinafter referred to as suggested keywords (suggested KWs)).
[0043] The server device 100 also performs the same preprocessing as described above. That is, the server device 100 corrects spelling variations in brand names listed in the configuration file and then excludes them through a partial match search. The server device 100 also excludes abnormal values for keywords (KW). The server device 100 also excludes outliers in the CVR, keeping the CVR between 0 and 1. The server device 100 also performs random sampling when the learning data is above a certain threshold to reduce the processing load.
[0044] In addition, the server device 100 performs morphological analysis on the proposed keywords, vectorizes the words after morphological analysis, inputs the vectors into a prediction model to calculate a score predicting the CVR, and normalizes the score so that 0 is the minimum and 1 is the maximum.
[0045] Next, the server device 100 extracts keywords of the advertising campaigns and advertising groups registered in the search advertisements (step S13).
[0046] At this time, the server device 100 extracts keywords that have been registered in the company's search advertisement account, and information about the advertising campaigns and advertising groups to which they belong.
[0047] The server device 100 also performs the same preprocessing as above, except that it does not exclude outliers from the CVR. That is, the server device 100 corrects spelling variations in brand names listed in the configuration file and then excludes them through a partial match search. The server device 100 also excludes outliers in keywords. In addition, the server device 100 performs random sampling when the learning data is above a certain threshold to reduce the processing load.
[0048] The server device 100 also performs morphological analysis on the advertising campaign and advertising group information, vectorizes the words in the advertising campaign and advertising group information, and calculates the average value.The server device 100 then calculates all possible cosine similarities between the vectors of each proposed keyword and the calculated average values of the vectors.
[0049] Next, the server device 100 recommends (suggests) advertising campaigns and advertising group information according to the cosine similarity (step S14).
[0050] At this time, the server device 100 regards the vector with the highest cosine similarity as being semantically similar, and outputs or stores the advertising campaign and advertising group information as recommendation information.
[0051] For example, the server device 100 transmits the advertising campaign and advertising group information as recommendation information to the advertiser terminal 200. Alternatively, in response to a request from the advertiser terminal 200, the server device 100 presents the advertising campaign and advertising group information in a display format that can be viewed by the advertiser.
[0052] [1-4. Technical Variations] In this embodiment, the method of selecting competitors for searching search queries is currently performed by manually entering the information into a configuration file, but in the future, the method may be automatically selected from query destination data and impression data.
[0053] Furthermore, pre-processing for excluding words from search queries is not limited to independently correcting spelling variations for excluded words entered in a configuration file and excluding them, but can also involve extracting and excluding excluded words from an ad management tool, cutting off keywords based on importance using indices such as TF-IDF (Term Frequency - Inverse Document Frequency), or excluding keywords that are concentrated in one destination among queries as branding keywords. IF-IDF is a method for indicating the importance (weight) of words within a document.
[0054] Furthermore, for morphological analysis, it is possible to use a morphological analyzer such as Sudachi or Chive, instead of Mecab, to improve the accuracy of morphological analysis of proper nouns, etc.
[0055] Furthermore, as a model for vectorizing words, instead of being limited to the open source model word2vec trained on Japanese, a proprietary model trained on u2 vectors can be used to reduce unknown words and take into account the similarity of meaning between searched words.
[0056] In addition, as a vectorization method, in the above example, the average value of each vector is calculated and missing values are filled with 0, but in reality, it is also possible to take a weighted average by classifying the vectors by word importance using TF-IDF or the like, or by using a frequency distribution for word vectors.
[0057] In addition, when selecting a predictive model, predictions can be made uniformly using ridge regression, but the model can also be automatically selected based on the sample size, CVR, data variance, etc. of each account.
[0058] Furthermore, the objective variable in the prediction model is not limited to CVR (conversion rate), and the monetary value per conversion and LTV (Life Time Value) may also be used.
[0059] Furthermore, by utilizing the keywords (potential KW) obtained by this embodiment, it is possible to search for new keywords to be submitted for listing advertisements (YSA), predict trending keywords, and use them in advertisement copy.
[0060] The server device 100 may also extract similar accounts using the Dice coefficient and create a model using the data of the extracted accounts. When the amount of data is moderate, the server device 100 may select the more accurate model between the simple model and the data-augmented model. For example, the server device 100 may solve the problem of insufficient data for model creation (learning), which is not a problem that can be solved by simply increasing the data by category, by using an automatic competitive extraction technique (calculating the Dice coefficient in a brute-force manner to extract similar accounts) to increase the amount of data and ultimately select the model with the more accurate data.
[0061] [1-5. Other] For example, the server device 100 acquires the search history for a specific advertisement and identifies the conversions (clicking to view, requesting information, making a reservation, making a purchase, etc.) that occurred when the set keyword was entered.
[0062] Furthermore, the server device 100 determines (estimates) whether the number of keywords set for a given advertisement, the search history (number of keyword searches), and the like satisfy predetermined conditions. That is, the server device 100 determines whether accuracy will be improved by including advertising information of competing advertisements based on whether predetermined conditions are satisfied. Specifically, the server device 100 determines whether accuracy will be improved based on rules. For example, the server device 100 determines whether the number of keywords set is below a predetermined threshold. Alternatively, the server device 100 determines whether the number of conversions is below a predetermined threshold.
[0063] Furthermore, if it is better to include competing advertisements, the server device 100 identifies the competing advertisements. For example, the server device 100 identifies advertisements with similar set keywords. Specifically, the server device 100 identifies other advertisements with similar average values of keyword vectors to the predetermined advertisement.
[0064] Alternatively, the server device 100 identifies advertisements that are in a category similar to that of the predetermined advertisement. Also, the server device 100 identifies other advertisements registered by competitors that are in a category similar to that of the advertiser of the predetermined advertisement.
[0065] Furthermore, the server device 100 calculates the similarity between the vector of the processing target company (the advertiser of the predetermined advertisement) and the vector of a competitor through vectorization using natural language processing (NLP), and identifies other advertisements registered by competitors whose similarity is higher than a threshold. At this time, the server device 100 may calculate the similarity of the trend of the vectors of each keyword included in the predetermined advertisement and the other advertisements, and identify other advertisements whose similarity is higher than a threshold. Note that it is preferable that the individual vectors are dispersed (dispersed) to a certain extent while maintaining the overall trend. It is also preferable that the server device 100 perform learning taking into account the usage of words unique to the industry of the advertiser of the predetermined advertisement.
[0066] Furthermore, the server device 100 learns a model based on information about competing advertisements and information about a predetermined advertisement. For example, the server device 100 learns the relationship between click-through rates (CTRs) for keywords set by competitors and keywords set in a predetermined advertisement.
[0067] Furthermore, the server device 100 uses the model to estimate appropriate keywords for a predetermined advertisement. For example, the server device 100 inputs a predetermined group of keywords into the model and predicts a click-through rate (CTR) for each keyword.
[0068] In this way, when a predetermined keyword is input as a search query, the server device 100 determines (estimates) whether the search history of a predetermined advertisement provided as a search result satisfies a predetermined condition. At this time, if the search history of the predetermined advertisement satisfies the predetermined condition, the server device 100 identifies other advertisements that are in a competitive relationship based on the registered keyword. Then, the server device 100 trains a model to learn the relationship between each keyword and the conversion that occurred when each keyword was input for the identified other advertisements and the predetermined advertisement.
[0069] [2. Example of information processing system configuration] Next, a configuration of an information processing system 1 including a server device 100 according to an embodiment will be described with reference to Fig. 3. Fig. 3 is a diagram showing an example of the configuration of the information processing system 1 according to an embodiment. As shown in Fig. 3, the information processing system 1 according to an embodiment includes a terminal device 10, a server device 100, and an advertiser terminal 200. These various devices are connected to each other via a network N so as to be able to communicate with each other via wired or wireless communication. The network N is, for example, a LAN (Local Area Network) or a WAN (Wide Area Network) such as the Internet.
[0070] Furthermore, the number of devices included in the information processing system 1 shown in Fig. 3 is not limited to those shown in the figure. For example, in Fig. 3, for the sake of simplicity, only one terminal device 10 and one advertiser terminal 200 are shown, but this is merely an example and is not limiting, and two or more devices may be included.
[0071] The terminal device 10 is an information processing device used by a user U. Advertiser terminal 200 is an information processing device used by an advertiser. For example, the terminal device 10 and the advertiser terminal 200 may be smart devices such as smartphones and tablet terminals, mobile phones such as feature phones (Gala-ke / Gala-ho), PCs (Personal Computers), PDAs (Personal Digital Assistants), game consoles and AV equipment with communication functions, information appliances and digital appliances, car navigation systems, wearable devices such as smart watches and head-mounted displays, smart glasses, etc. Furthermore, the terminal device 10 and the advertiser terminal 200 may be houses and buildings, cars, home appliances, electronic devices, etc. that are compatible with the Internet of Things (IOT).
[0072] In addition, the terminal device 10 and the advertiser terminal 200 can connect to the network N via a wireless communication network such as LTE (Long Term Evolution), 4G (4th Generation), or 5G (5th Generation: 5th generation mobile communication system), or via short-range wireless communication such as Bluetooth (registered trademark) or wireless LAN (Local Area Network), and communicate with the server device 100.
[0073] The server device 100 is, for example, a computer such as a PC or a blade server, or a mainframe or a workstation, etc. The server device 100 may be realized by cloud computing.
[0074] [3. Example of terminal device configuration] Next, the configuration of the terminal device 10 will be described with reference to Fig. 4. Fig. 4 is a diagram showing an example configuration of the terminal device 10. As shown in Fig. 4, the terminal device 10 includes a communication unit 11, a display unit 12, an input unit 13, a positioning unit 14, a sensor unit 20, a control unit 30 (controller), and a storage unit 40.
[0075] (Communications Department 11) The communication unit 11 is connected to a network N (see FIG. 3) by wire or wirelessly, and transmits and receives information to and from the server device 100 via the network N. For example, the communication unit 11 is realized by a NIC (Network Interface Card), an antenna, etc.
[0076] (Display section 12) Display unit 12 is a display device that displays various information such as position information. For example, display unit 12 is a liquid crystal display (LCD) or an organic electro-luminescent display (OLED). Display unit 12 is also a touch panel display, but is not limited to this.
[0077] (Input section 13) The input unit 13 is an input device that accepts various operations from the user U. For example, the input unit 13 has buttons for inputting characters, numbers, etc. The input unit 13 may be an input / output port (I / O port), a USB (Universal Serial Bus) port, etc. If the display unit 12 is a touch panel display, a part of the display unit 12 functions as the input unit 13. The input unit 13 may be a microphone that accepts voice input from the user U. The microphone may be wireless.
[0078] (Positioning unit 14) The positioning unit 14 receives signals (radio waves) transmitted from satellites of a GPS (Global Positioning System), and acquires position information (e.g., latitude and longitude) indicating the current position of the terminal device 10, which is the device itself, based on the received signals. That is, the positioning unit 14 positions the position of the terminal device 10. Note that GPS is merely an example of a GNSS (Global Navigation Satellite System).
[0079] The positioning unit 14 can also measure the position using various methods other than GPS. For example, the positioning unit 14 may measure the position by using various communication functions of the terminal device 10 as an auxiliary positioning means for position correction, etc., as described below.
[0080] (Wi-Fi positioning) For example, the positioning unit 14 uses a Wi-Fi (registered trademark) communication function of the terminal device 10 or a communication network provided by each communication company to measure the position of the terminal device 10. Specifically, the positioning unit 14 performs Wi-Fi communication or the like and measures the distance to a nearby base station or access point, thereby measuring the position of the terminal device 10.
[0081] (Beacon positioning) The positioning unit 14 may also measure the position by using a Bluetooth (registered trademark) function of the terminal device 10. For example, the positioning unit 14 measures the position of the terminal device 10 by connecting to a beacon transmitter connected by the Bluetooth (registered trademark) function.
[0082] (geomagnetic positioning) The positioning unit 14 also measures the position of the terminal device 10 based on a geomagnetic pattern of a structure that has been measured in advance and a geomagnetic sensor that the terminal device 10 has.
[0083] (RFID positioning) Furthermore, for example, if the terminal device 10 has a function of an RFID (Radio Frequency Identification) tag equivalent to a contactless IC card used at station ticket gates, in stores, etc., or has a function of reading an RFID tag, the location where the terminal device 10 was used is recorded together with information on the payment or the like made by the terminal device 10. The positioning unit 14 may obtain such information to determine the location of the terminal device 10. Alternatively, the location may be determined by an optical sensor, an infrared sensor, or the like provided in the terminal device 10.
[0084] The positioning unit 14 may measure the position of the terminal device 10 using one or a combination of the above-mentioned positioning means, as needed.
[0085] (Sensor unit 20) The sensor unit 20 includes various sensors mounted on or connected to the terminal device 10. The connection may be wired or wireless. For example, the sensors may be detection devices other than the terminal device 10, such as wearable devices or wireless devices. In the example shown in FIG. 4, the sensor unit 20 includes an acceleration sensor 21, a gyro sensor 22, a barometric pressure sensor 23, a temperature sensor 24, a sound sensor 25, a light sensor 26, a magnetic sensor 27, and an image sensor (camera) 28.
[0086] The above-described sensors 21 to 28 are merely examples and are not intended to be limiting. That is, the sensor unit 20 may be configured to include some of the sensors 21 to 28, or may include other sensors such as a humidity sensor in addition to or instead of the sensors 21 to 28.
[0087] The acceleration sensor 21 is, for example, a three-axis acceleration sensor, and detects physical movements of the terminal device 10, such as the direction of movement, speed, and acceleration of the terminal device 10. The gyro sensor 22 detects physical movements of the terminal device 10, such as tilt in three axial directions, based on the angular velocity of the terminal device 10. The air pressure sensor 23 detects, for example, the air pressure around the terminal device 10.
[0088] Since the terminal device 10 includes the acceleration sensor 21, the gyro sensor 22, the atmospheric pressure sensor 23, etc., it is possible to measure the position of the terminal device 10 using a technique such as Pedestrian Dead-Reckoning (PDR) that uses these sensors 21 to 23. This makes it possible to obtain indoor position information that is difficult to obtain using a positioning system such as GPS.
[0089] For example, the number of steps, walking speed, and distance walked can be calculated using a pedometer that uses the acceleration sensor 21. In addition, the direction of travel, line of sight, and body tilt of the user U can be determined using the gyro sensor 22. In addition, the altitude and floor on which the terminal device 10 of the user U is located can be determined from the air pressure detected by the air pressure sensor 23.
[0090] The temperature sensor 24 detects, for example, the temperature around the terminal device 10. The sound sensor 25 detects, for example, the sound around the terminal device 10. The light sensor 26 detects the illuminance around the terminal device 10. The magnetic sensor 27 detects, for example, the geomagnetism around the terminal device 10. The image sensor 28 captures an image around the terminal device 10.
[0091] The above-mentioned air pressure sensor 23, temperature sensor 24, sound sensor 25, light sensor 26, and image sensor 28 can detect the air pressure, temperature, sound, and illuminance, respectively, and capture images of the surroundings, thereby detecting the environment and situation around the terminal device 10. Furthermore, the accuracy of the location information of the terminal device 10 can be improved based on the environment and situation around the terminal device 10.
[0092] (control unit 30) The control unit 30 includes, for example, a microcomputer having a CPU (Central Processing Unit), ROM (Read Only Memory), RAM, input / output ports, etc., and various other circuits. The control unit 30 may also be configured with hardware such as an integrated circuit, for example, an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The control unit 30 includes a transmitting unit 31, a receiving unit 32, and a processing unit 33.
[0093] (Transmitter 31) The transmission unit 31 can transmit, for example, various information input by the user U using the input unit 13, various information detected by each sensor 21 to 28 mounted on or connected to the terminal device 10, and location information of the terminal device 10 measured by the positioning unit 14 to the server device 100 via the communication unit 11.
[0094] (Receiver 32) The receiving unit 32 can receive various types of information provided by the server device 100 and requests for various types of information from the server device 100 via the communication unit 11.
[0095] (Processing unit 33) The processing unit 33 controls the entire terminal device 10, including the display unit 12. For example, the processing unit 33 can output various information transmitted by the transmitting unit 31 and various information received from the server device 100 by the receiving unit 32 to the display unit 12 for display.
[0096] (Storage unit 40) The storage unit 40 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as an HDD (Hard Disk Drive), an SSD (Solid State Drive), an optical disk, etc. The storage unit 40 stores various programs, various data, etc.
[0097] [4. Server device configuration example] Next, the configuration of the server device 100 according to the embodiment will be described with reference to Fig. 5. Fig. 5 is a diagram showing an example of the configuration of the server device 100 according to the embodiment. As shown in Fig. 5, the server device 100 includes a communication unit 110, a storage unit 120, and a control unit 130.
[0098] (Communication unit 110) The communication unit 110 is realized by, for example, a network interface card (NIC), etc. The communication unit 110 is also connected to a network N (see FIG. 3) by wire or wirelessly.
[0099] (Storage unit 120) The storage unit 120 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as an HDD, an SSD, an optical disk, etc. As shown in Fig. 5, the storage unit 120 has a user information database 121, a history information database 122, and a flag information database 123.
[0100] (User Information Database 121) The user information database 121 stores user information about the user U. For example, the user information database 121 stores various information such as the attributes of the user U. FIG. 6 is a diagram showing an example of the user information database 121. In the example shown in FIG. 6, the user information database 121 has items such as "User ID (Identifier)," "Age," "Gender," "Home," "Workplace," and "Interests."
[0101] The "user ID" indicates identification information for identifying the user U. The "user ID" may be the contact information of the user U (telephone number, email address, etc.), or may be identification information for identifying the terminal device 10 of the user U.
[0102] Furthermore, "age" indicates the age of user U identified by the user ID. Note that "age" may be information indicating the specific age of user U (e.g., 35 years old), or may be information indicating the generation of user U (e.g., 30s). Alternatively, "age" may be information indicating the date of birth of user U, or may be information indicating the generation of user U (e.g., born in the 1980s). Furthermore, "gender" indicates the gender of user U identified by the user ID.
[0103] Furthermore, "home" indicates the location information of the home of user U identified by the user ID. In the example shown in FIG. 6, "home" is illustrated as an abstract code such as "LC11," but it may also be latitude and longitude information, etc. Furthermore, for example, "home" may also be the name of an area or an address.
[0104] Furthermore, "workplace" indicates location information of the workplace (school in the case of a student) of user U identified by the user ID. In the example shown in FIG. 6, "workplace" is illustrated as an abstract code such as "LC12," but it may also be latitude and longitude information, etc. Furthermore, for example, "workplace" may also be the name of a region or an address.
[0105] Furthermore, "interests" indicate the interests of user U identified by the user ID. In other words, "interests" indicate subjects in which user U identified by the user ID is highly interested. For example, "interests" may be search queries (keywords) that user U input into a search engine. In the example shown in FIG. 6, each user U has one "interest," but there may be multiple "interests."
[0106] For example, in the example shown in FIG. 6, the age of user U identified by user ID "U1" is "20s" and the gender is "male." Furthermore, for example, the home address of user U identified by user ID "U1" is "LC11." Furthermore, for example, the workplace of user U identified by user ID "U1" is "LC12." Furthermore, for example, the user U identified by user ID "U1" is interested in "sports."
[0107] 6, abstract values such as "U1", "LC11", and "LC12" are used for illustration, but "U1", "LC11", and "LC12" are assumed to store information such as specific character strings and numerical values. Below, abstract values may also be illustrated in diagrams relating to other information.
[0108] The user information database 121 may store various types of information depending on the purpose, without being limited to the above. For example, the user information database 121 may store various types of information related to the terminal device 10 of the user U. The user information database 121 may also store information related to the user U's attributes, such as demographic attributes, psychographic attributes, geographic attributes, and behavioral attributes. For example, the user information database 121 may store information such as name, family structure, hometown (hometown), occupation, job title, income, qualifications, type of residence (detached house, apartment, etc.), whether or not the user has a car, commuting time, commuting route, commuter pass area (station, line, etc.), frequently used stations (other than the station nearest to home or workplace), extracurricular activities (location, time zone, etc.), hobbies, interests, lifestyle, etc.
[0109] (History Information Database 122) The history information database 122 stores various information related to history information (log data) that indicates the behavior of the user U. Fig. 7 is a diagram showing an example of the history information database 122. In the example shown in Fig. 7, the history information database 122 has items such as "user ID," "location history," "search history," "browsing history," "purchase history," and "posting history."
[0110] "User ID" indicates identification information for identifying user U. "Location history" indicates the location history, which is the history of user U's location and movements. "Search history" indicates the search history, which is the history of search queries entered by user U. "Browsing history" indicates the browsing history, which is the history of content viewed by user U. "Purchase history" indicates the purchase history, which is the history of purchases made by user U. "Posting history" indicates the posting history, which is the history of posts made by user U. "Posting history" may also include questions about user U's possessions.
[0111] For example, in the example shown in Figure 7, user U, identified by user ID "U1," moved as shown in "Location History #1," searched as shown in "Search History #1," viewed content as shown in "Viewing History #1," purchased specific products at specific stores as shown in "Purchase History #1," and posted as shown in "Posting History #1."
[0112] Here, in the example shown in Figure 7, abstract values such as "U1," "Location History #1," "Search History #1," "Browsing History #1," "Purchase History #1," and "Post History #1" are used for the illustration, but "U1," "Location History #1," "Search History #1," "Browsing History #1," "Purchase History #1," and "Post History #1" are assumed to store specific information such as character strings and numbers.
[0113] The history information database 122 is not limited to the above and may store various types of information depending on the purpose. For example, the history information database 122 may store the user U's usage history of a predetermined service. The history information database 122 may also store the user U's store visit history or facility visit history. The history information database 122 may also store the user U's payment history (electronic payment) using the terminal device 10.
[0114] (Flag Information Database 123) The flag information database 123 stores various information related to flagging of accounts. Fig. 8 is a diagram showing an example of the flag information database 123. In the example shown in Fig. 8, the flag information database 123 has items such as "Query", "Score", "CA", "ADG", and "new".
[0115] "Query" indicates the keyword entered as a search query. "Score" indicates the score of the keyword. Note that "Score" is the score calculated using a prediction model trained with a feature vector obtained by morphologically analyzing the keyword and CVR as the objective variable, and normalized so that 0 is the minimum and 1 is the maximum. Also, "CA" indicates an advertising campaign. "ADG" indicates an ad group. Also, "new" indicates whether the keyword is a keyword recommended for new submission. Note that "new" indicates a new keyword recommended for submission when it is "1," and a keyword not recommended for new submission when it is "0."
[0116] For example, in the example shown in FIG. 8, the query "Okinawa, SUP" has a score of "0.95", belongs to CA "AA" and ADG "d", and indicates that it is a keyword recommended for new submission.
[0117] Here, in the example shown in FIG. 8, abstract values such as "AA" and "d" are used for illustration, but "AA" and "d" are assumed to store information such as specific character strings or numerical values.
[0118] The flag information database 123 may store various information depending on the purpose, not limited to the above. For example, the flag information database 123 may store a prediction model (or identification information for identifying the model). The flag information database 123 may also store advertising accounts of competitors that are similar to the advertising account of the company (advertiser).
[0119] (control unit 130) 5, the explanation will be continued. The control unit 130 is a controller, and is realized by, for example, a central processing unit (CPU), a micro processing unit (MPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or the like, by executing various programs (corresponding to examples of information processing programs) stored in a storage device inside the server device 100 using a storage area such as a RAM as a working area. In the example shown in FIG. 5, the control unit 130 has an acquisition unit 131, a preprocessing unit 132, a language processing unit 133, a conversion unit 134, a learning unit 135, a calculation unit 136, an extraction unit 137, a proposal unit 138, and an allocation unit 139.
[0120] (Acquisition part 131) The acquisition unit 131 acquires a search query input by a user U. For example, when the user U inputs a search query into a search engine or the like to perform a keyword search, the acquisition unit 131 acquires the search query via the communication unit 110. That is, the acquisition unit 131 acquires, via the communication unit 110, the keywords input by the user U into the search box of a search engine, website, or app.
[0121] Furthermore, the acquisition unit 131 acquires user information about the user U via the communication unit 110. For example, the acquisition unit 131 acquires identification information (such as a user ID) indicating the user U, location information of the user U, attribute information of the user U, etc. from the terminal device 10 of the user U. Furthermore, the acquisition unit 131 may acquire the identification information indicating the user U, attribute information of the user U, etc. when registering the user U. Then, the acquisition unit 131 registers the user information in the user information database 121 of the storage unit 120.
[0122] Furthermore, the acquisition unit 131 acquires various types of history information (log data) indicating the behavior of the user U via the communication unit 110. For example, the acquisition unit 131 acquires various types of history information indicating the behavior of the user U from the terminal device 10 of the user U or from various servers based on the user ID or the like. Then, the acquisition unit 131 registers the various types of history information in the history information database 122 of the storage unit 120.
[0123] The acquisition unit 131 may also acquire a setting file in which keywords (KW) are registered via the communication unit 110, store the setting file in the storage unit 120, and read the setting file upon request or as needed. At this time, the keywords registered in the setting file may be used as registered keywords.
[0124] (Preprocessing unit 132) The preprocessing unit 132 corrects spelling variations in brand names from keywords and then excludes them through a partial match search. The preprocessing unit 132 also excludes abnormal values in keywords. The preprocessing unit 132 also excludes outliers in the CVR, so that the CVR falls within the range of 0 to 1. The preprocessing unit 132 also performs random sampling when the training data is above a certain threshold to reduce the processing load.
[0125] (Language processing unit 133) The language processing unit 133 performs morphological analysis on keywords for each part of speech. For example, the language processing unit 133 performs morphological analysis on registered keywords. The language processing unit 133 also performs morphological analysis on suggested keywords extracted from a search query.
[0126] (Conversion unit 134) The conversion unit 134 converts keywords into multi-dimensional vectors after morphological analysis. For example, the conversion unit 134 vectorizes words after morphological analysis of registered keywords, averages each vector for each keyword, and creates a 200-dimensional vector. The conversion unit 134 also vectorizes words after morphological analysis of proposed keywords.
[0127] (Learning Section 135) The learning unit 135 creates a learning model using the vector as a feature and the CVR as a response variable. For example, the learning unit 135 creates a prediction model trained using a 200-dimensional vector of each word as a feature and the CVR as a response variable.
[0128] (Calculation unit 136) The calculation unit 136 scores keywords using a learning model. For example, the calculation unit 136 inputs a vector into a prediction model to calculate a score that predicts CVR, and normalizes the score so that 0 is the minimum and 1 is the maximum.
[0129] (Extraction part 137) The extraction unit 137 extracts keywords of the advertising campaigns and advertising groups registered in the search advertisements. For example, the extraction unit 137 extracts keywords registered in the search advertisement account and information about the advertising campaigns and advertising groups to which they belong.
[0130] At this time, the language processing unit 133 performs morphological analysis on the advertising campaign and advertising group information. The conversion unit 134 vectorizes the words in the advertising campaign and advertising group information. The calculation unit 136 calculates the average value of the vectors of the words in the advertising campaign and advertising group information. Then, the calculation unit 136 calculates all the cosine similarities between the vectors of each proposed keyword and the calculated average value of the vectors.
[0131] (Proposal Department 138) The suggestion unit 138 recommends advertising campaigns and advertising group information according to the cosine similarity. For example, the suggestion unit 138 considers vectors with the highest cosine similarity to be semantically similar, and outputs or stores the advertising campaigns and advertising group information as recommended information.
[0132] (Allocation Section 139) The allocation unit 139 allocates an advertising campaign and an advertising group to an advertising account that has submitted a keyword. For example, the server device 100 allocates an advertising campaign / ad group to an advertising account that has submitted a new or recommended keyword (or an advertisement including the keyword) by flagging the advertising account. At this time, the allocation unit 139 may flag the new or recommended submitting account according to the score of the keyword.
[0133] [5. Processing Procedure] Next, a processing procedure by the server device 100 according to the embodiment will be described with reference to Figs. 9A and 9B. Fig. 9A is a flowchart showing the first half of the processing procedure according to the embodiment. Fig. 9B is a flowchart showing the second half of the processing procedure according to the embodiment. The processing procedure shown below is repeatedly executed by the control unit 130 of the server device 100.
[0134] For example, as shown in FIG. 9A, the acquiring unit 131 of the server device 100 reads a setting file in which keywords (KW) are registered, and acquires the registered keywords (step S101).
[0135] Next, the preprocessing unit 132 of the server device 100 performs preprocessing on the registered keywords (step S102).
[0136] For example, the preprocessing unit 132 corrects spelling variations in brand names and then excludes them from keywords through a partial match search. The preprocessing unit 132 also excludes abnormal values in keywords. The preprocessing unit 132 also excludes outliers in the CVR, so that the CVR falls within the range of 0 to 1. The preprocessing unit 132 also performs random sampling when the training data is equal to or greater than a certain threshold in order to reduce the processing load.
[0137] Next, the language processing unit 133 of the server device 100 performs morphological analysis on the registered keywords (step S103).
[0138] Next, the conversion unit 134 of the server device 100 converts the words after the morphological analysis into vectors, averages the vectors for each keyword, and creates a 200-dimensional vector (step S104).
[0139] Next, the learning unit 135 of the server device 100 creates a prediction model trained using the 200-dimensional vector of each word as a feature and the CVR as a target variable (step S105).
[0140] Next, the acquisition unit 131 of the server device 100 acquires suggested keywords extracted from search queries sent to the company and its competitors (step S106).
[0141] Next, the preprocessing unit 132 of the server device 100 performs preprocessing on the proposed keywords (step S107). Note that the content of this preprocessing is the same as that of step S102.
[0142] Next, the language processing unit 133 of the server device 100 performs morphological analysis on the proposed keywords (step S108).
[0143] Next, the conversion unit 134 of the server device 100 converts the words after the morphological analysis into vectors (step S109).
[0144] Next, as shown in FIG. 9B, the calculation unit 136 of the server device 100 inputs the vector into the prediction model to calculate a score predicting the CVR, and normalizes the score so that 0 is the minimum and 1 is the maximum (step S110).
[0145] Next, the extraction unit 137 of the server device 100 extracts keywords registered in the search advertisement account, and the associated advertisement campaign and advertisement group information (step S111).
[0146] For example, the extraction unit 137 extracts keywords of the advertising campaigns and advertising groups registered in the search advertisements.
[0147] Next, the preprocessing unit 132 of the server device 100 performs preprocessing on the advertising campaign and advertising group information (step S112).
[0148] For example, the preprocessing unit 132 corrects spelling variations in brand names from keywords in advertising campaigns and advertising groups and then performs a partial match search to remove them. The preprocessing unit 132 also removes outliers from keywords. To reduce processing load, the preprocessing unit 132 also performs random sampling when the training data is above a certain threshold. Here, outliers in CVR are not removed.
[0149] Next, the language processing unit 133 of the server device 100 performs morphological analysis on the advertising campaign and advertising group information (step S113).
[0150] Next, the conversion unit 134 of the server device 100 vectorizes the words in the advertising campaign and advertising group information (step S114).
[0151] Next, the calculation unit 136 of the server device 100 calculates the average value of the vectors, and calculates all the cosine similarities between the vectors of the proposed keywords and the calculated average values of the vectors (step S115).
[0152] Next, the proposing unit 138 of the server device 100 recommends advertising campaigns and advertising group information according to the cosine similarity (step S116).
[0153] For example, the proposing unit 138 considers the vector with the highest cosine similarity to be semantically similar, and outputs or stores the advertising campaign and advertising group information as recommendation information.
[0154] Next, the allocation unit 139 of the server device 100 allocates an advertising campaign and an advertising group to the advertising account that submitted the keyword (step S117).
[0155] For example, the allocation unit 139 performs ad campaign allocation / ad group allocation or the like for an ad account that has submitted a new / recommended keyword (or an advertisement including the keyword) by flagging the ad account.
[0156] [6. Modifications] The terminal device 10 and the server device 100 described above may be implemented in various different forms other than the above embodiment. Therefore, modifications of the embodiment will be described below.
[0157] In the above embodiment, some or all of the processing executed by the server device 100 may actually be executed by the terminal device 10. For example, the processing may be completed in a stand-alone manner (by the terminal device 10 alone). In this case, the terminal device 10 is assumed to have the functions of the server device 100 in the above embodiment. Furthermore, in the above embodiment, the terminal device 10 is linked to the server device 100, and therefore, from the perspective of the user U, it appears that the processing of the server device 100 is also being executed by the terminal device 10. In other words, from another perspective, the terminal device 10 can also be said to be equipped with the server device 100.
[0158] Furthermore, in the above embodiment, the server device 100 may be configured to automatically extract competitor advertising accounts that are similar to the company's (advertiser's) advertising account. Currently, advertising account and URL information for the company and competitors is manually specified, and keyword (KW) candidates are selected from that information. Therefore, the company's advertising accounts can be input into a learning model to enable data-driven extraction of competitors' advertising accounts. In this case, extraction logic based on the match rate between the company's registered keywords and competitors' registered keywords may be used. Keywords registered in competitor advertising accounts that are close to the company's can be expected to be submitted by the company. Furthermore, automatically extracting competitor advertising accounts saves the staff the trouble of searching for and entering competitor advertising accounts. In other words, the labor required to manually research and enter competitor advertising accounts can be reduced. Furthermore, competitor advertising accounts with similar keywords can be newly added as candidates. Furthermore, competitor advertising accounts with dissimilar keywords can be eliminated.
[0159] In the above embodiment, the server device 100 may automatically extract keywords registered in a competitor's advertising account that are similar to the company's (advertiser's) advertising account and create a setting file. In this case, the server device 100 may create the setting file by combining the keywords registered in the company's (advertiser's) advertising account and the keywords registered in the competitor's advertising account.
[0160] [7. Effects] As described above, the information processing device (terminal device 10 and server device 100) according to the present application is characterized by comprising a language processing unit 133 that performs morphological analysis of keywords for each part of speech, a conversion unit 134 that converts the keywords into multi-dimensional vectors after the morphological analysis, a learning unit 135 that creates a learning model using the vectors as features and the CVR as a target variable, a calculation unit 136 that scores the keywords using the learning model, and an allocation unit 139 that allocates advertising campaigns and advertising groups to advertising accounts that have submitted the keywords.
[0161] The information processing device according to the present application further includes a preprocessing unit 132 that corrects spelling variations of brand names from keywords and then excludes them through partial match search.
[0162] The preprocessing unit 132 filters out outliers of the keywords.
[0163] The preprocessing unit 132 removes outliers from the CVR and makes the CVR fall within the range of 0 to 1.
[0164] In order to reduce the processing load, the preprocessing unit 132 performs random sampling when the learning data is equal to or greater than a certain threshold.
[0165] The language processing unit 133 performs morphological analysis on the registered keywords. The conversion unit 134 vectorizes the words after morphological analysis and averages and aggregates each vector for each keyword to create a 200-dimensional vector. The learning unit 135 creates a prediction model trained using the 200-dimensional vector of each word as a feature and CVR as a target variable.
[0166] The language processing unit 133 performs morphological analysis on the proposed keywords extracted from the search query. The conversion unit 134 converts the words after morphological analysis into vectors. The calculation unit 136 inputs the vectors into a prediction model to calculate a score predicting CVR, and normalizes the score so that 0 is the minimum and 1 is the maximum.
[0167] The information processing device according to the present application further includes an extraction unit 137 that extracts keywords of advertising campaigns and advertising groups registered in search advertising. The extraction unit 137 extracts keywords registered in a search advertising account and information about advertising campaigns and advertising groups to which the keywords belong.
[0168] The language processing unit 133 performs morphological analysis on the advertising campaign and advertising group information. The conversion unit 134 converts words in the advertising campaign and advertising group information into vectors. The calculation unit 136 calculates the average value of the vectors and calculates all the cosine similarities between the vectors of each proposed keyword and the calculated average value of the vectors.
[0169] The system further includes a proposing unit 138 that recommends advertising campaigns and advertising group information according to the cosine similarity. The proposing unit 138 considers vectors with the highest cosine similarity to be semantically similar, and outputs or stores the advertising campaigns and advertising group information as recommended information.
[0170] By using any one or a combination of the above-described processes, the information processing device according to the present application can predict and propose keywords with high advertising effectiveness for advertisers with high accuracy.
[0171] [8. Hardware Configuration] The terminal device 10 and the server device 100 according to the above-described embodiments are realized by a computer 1000 having a configuration as shown in Fig. 10, for example. The following description will be given taking the server device 100 as an example. Fig. 10 is a diagram showing an example of a hardware configuration. The computer 1000 is connected to an output device 1010 and an input device 1020, and has a configuration in which a calculation device 1030, a primary storage device 1040, a secondary storage device 1050, an output I / F (Interface) 1060, an input I / F 1070, and a network I / F 1080 are connected via a bus 1090.
[0172] The arithmetic device 1030 operates based on programs stored in the primary storage device 1040 and the secondary storage device 1050, programs read from the input device 1020, and the like, and executes various processes. The arithmetic device 1030 is realized by, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or the like.
[0173] The primary storage device 1040 is a memory device such as a RAM (Random Access Memory) that temporarily stores data used by the arithmetic device 1030 for various calculations. The secondary storage device 1050 is a storage device in which data used by the arithmetic device 1030 for various calculations and various databases are registered, and is realized by a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), a flash memory, or the like. The secondary storage device 1050 may be an internal storage device or an external storage device. The secondary storage device 1050 may also be a removable storage medium such as a USB (Universal Serial Bus) memory or an SD (Secure Digital) memory card. The secondary storage device 1050 may also be cloud storage (online storage), a NAS (Network Attached Storage), a file server, or the like.
[0174] The output I / F 1060 is an interface for transmitting information to be output to an output device 1010 that outputs various types of information, such as a display, a projector, a printer, etc., and is realized by a connector conforming to a standard such as USB (Universal Serial Bus), DVI (Digital Visual Interface), or HDMI (High Definition Multimedia Interface), etc. The input I / F 1070 is an interface for receiving information from various input devices 1020, such as a mouse, a keyboard, a keypad, a button, a scanner, etc., and is realized by a USB, etc.
[0175] Furthermore, the output I / F 1060 and the input I / F 1070 may be wirelessly connected to the output device 1010 and the input device 1020, respectively. That is, the output device 1010 and the input device 1020 may be wireless devices.
[0176] The output device 1010 and the input device 1020 may be integrated into one device, such as a touch panel. In this case, the output I / F 1060 and the input I / F 1070 may also be integrated into one device as an input / output I / F.
[0177] The input device 1020 may be a device that reads information from, for example, an optical recording medium such as a CD (Compact Disc), a DVD (Digital Versatile Disc), or a PD (Phase Change Rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.
[0178] The network I / F 1080 receives data from other devices via the network N and sends it to the arithmetic device 1030, and also transmits data generated by the arithmetic device 1030 to other devices via the network N.
[0179] The arithmetic unit 1030 controls the output device 1010 and the input device 1020 via the output I / F 1060 and the input I / F 1070. For example, the arithmetic unit 1030 loads a program from the input device 1020 or the secondary storage device 1050 onto the primary storage device 1040 and executes the loaded program.
[0180] For example, when the computer 1000 functions as the server device 100, the arithmetic unit 1030 of the computer 1000 executes a program loaded onto the primary storage device 1040 to realize the functions of the control unit 130. The arithmetic unit 1030 of the computer 1000 may also load a program acquired from another device via the network I / F 1080 onto the primary storage device 1040 and execute the loaded program. The arithmetic unit 1030 of the computer 1000 may also cooperate with the other device via the network I / F 1080 to call and use the functions and data of a program from another program of the other device.
[0181] [9. Other] Although the embodiments of the present application have been described above, the present invention is not limited to the contents of these embodiments. Furthermore, the above-described components include those that can be easily imagined by a person skilled in the art, those that are substantially the same, and those that are within the scope of so-called equivalents. Furthermore, the above-described components can be combined as appropriate. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the spirit of the above-described embodiments.
[0182] Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically using a known method. In addition, the information including the processing procedures, specific names, various data, and parameters shown in the above documents and drawings can be changed as desired unless otherwise specified. For example, the various information shown in each drawing is not limited to the information shown in the drawings.
[0183] Furthermore, the components of each device shown in the figure are conceptual functional components and do not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or part of them can be functionally or physically distributed and integrated in any unit depending on various loads, usage conditions, etc.
[0184] For example, the above-mentioned server device 100 may be realized by multiple server computers, and depending on the function, the configuration can be flexibly changed, such as by calling an external platform using an API (Application Programming Interface) or network computing.
[0185] Furthermore, the above-described embodiments and modifications can be combined as appropriate within the scope of not causing any contradiction in the processing content.
[0186] Furthermore, the above-mentioned "section, module, unit" can be read as "means" or "circuit," etc. For example, an acquisition unit can be read as an acquisition means or an acquisition circuit. [Explanation of symbols]
[0187] 1. Information Processing Systems 10 Terminal Equipment 100 Server device 110 Communications Department 120 Storage section 121 User Information Database 122 Historical Information Database 123 Flag Information Database 130 Control Unit 131 Acquisition Department 132 Preprocessing section 133 Language Processing Unit 134 Conversion Unit 135 Learning Department 136 Calculation Unit 137 Extraction part 138 Proposal Department 139 Allocation Section
Claims
1. a linguistic processing unit that performs morphological analysis of keywords for each part of speech; a conversion unit that converts the keywords into multi-dimensional vectors after morphological analysis; a determination unit that determines whether to use a general-purpose prediction model depending on the advertiser's situation when creating a prediction model that learns the correlation between actually used keywords and CVR, using the vector as a feature and CVR indicating the conversion rate as a target variable; When using a general-purpose predictive model, a learning unit creates a general-purpose predictive model that expands the learning scope beyond the advertiser's advertising accounts to include competitors' advertising accounts; a calculation unit that predicts CVR using the general-purpose prediction model and calculates keywords that can be predicted to have a high CVR by comparing keyword candidates prepared by the advertiser with keywords that have actually been used; a suggestion unit that suggests keywords that are predicted to have a high CVR to advertisers; An information processing device comprising:
2. A preprocessing section that corrects spelling variations in brand names from the keywords and then excludes them through partial match searches. The information processing apparatus according to claim 1 , further comprising:
3. The preprocessing unit removes outliers from the keywords.
3. The information processing apparatus according to claim 2, wherein:
4. The preprocessing unit removes outliers from the CVR and makes the CVR fall within the range of 0 to 1.
3. The information processing apparatus according to claim 2, wherein:
5. The preprocessing unit performs random sampling when the training data is equal to or greater than a certain threshold in order to reduce the processing load.
3. The information processing apparatus according to claim 2, wherein:
6. The language processing unit performs a morphological analysis of the registered keywords, The conversion unit converts the words after morphological analysis into vectors, averages and aggregates each vector for each keyword, and creates a 200-dimensional vector. The learning unit creates a prediction model trained using the 200-dimensional vector of each word as a feature and CVR as a target variable.
2. The information processing apparatus according to claim 1, wherein:
7. the language processing unit performs a morphological analysis on the suggested keywords extracted from the search query; The conversion unit vectorizes the words after morphological analysis, The calculation unit inputs a vector into the prediction model to calculate a score predicting the CVR, and normalizes the score so that 0 is the minimum and 1 is the maximum.
7. The information processing apparatus according to claim 6,
8. An extraction unit that extracts keywords of advertising campaigns and advertising groups registered in the search advertisements, The extraction unit extracts keywords registered in the search advertising account, and information about advertising campaigns and advertising groups to which the keywords belong.
8. The information processing apparatus according to claim 7,
9. The language processing unit performs morphological analysis on the advertising campaign and advertising group information, The conversion unit vectorizes words in the advertising campaign and ad group information; The calculation unit calculates an average value of the vectors, and calculates all possible cosine similarities between the vectors of the proposed keywords and the calculated average values of the vectors.
9. The information processing apparatus according to claim 8,
10. The suggestion unit considers vectors with the highest cosine similarity to be semantically close, and suggests the advertising campaign and advertising group with the highest cosine similarity as a destination.
10. The information processing apparatus according to claim 9,
11. An information processing method executed by an information processing device, a language processing step of morphologically analyzing keywords by part of speech; a conversion step of converting the keywords into multi-dimensional vectors after morphological analysis; a determination step of determining whether to use a general-purpose prediction model depending on the advertiser's situation when creating a prediction model that learns the correlation between actually used keywords and CVR, using the vector as a feature and CVR, which indicates the conversion rate, as a target variable; When using a general-purpose predictive model, there is a learning process to create a general-purpose predictive model that expands the learning scope beyond the advertiser's advertising accounts to include competitors' advertising accounts. a calculation step of predicting CVR using the general-purpose prediction model and calculating keywords that can be predicted to have a high CVR by comparing keyword candidates prepared by the advertiser with keywords that have actually been used; a proposal process for proposing keywords that are predicted to have a high CVR to an advertiser; An information processing method comprising:
12. A language processing procedure that performs morphological analysis of keywords by part of speech; a conversion step of converting the keywords into multi-dimensional vectors after morphological analysis; a determination step for determining whether to use a general-purpose prediction model depending on the advertiser's situation when creating a prediction model that learns the correlation between actually used keywords and CVR, using the vector as a feature and CVR, which indicates the conversion rate, as a target variable; When using a general-purpose predictive model, there is a learning procedure to create a general-purpose predictive model that expands the learning scope beyond the advertiser's ad accounts to include competitors' ad accounts. a calculation step of predicting CVR using the general-purpose prediction model, and calculating keywords that are predicted to have a high CVR by comparing keyword candidates prepared by the advertiser with keywords that have actually been used; A proposal procedure that proposes keywords that are predicted to have a high CVR to an advertiser; An information processing program characterized by causing a computer to execute the above.
Citation Information
Patent Citations
Device, method and storage media for retrieving document
JP2002251401A
Method and apparatus for running promotional campaigns on behalf of advertisers
JP2008515105A
Advertisement distribution device, advertisement distribution method, and advertisement distribution program
JP2011085994A
Method for estimating business stage, method for learning business stage estimation model, device, and program
JP2019032614A
Relay device and remote monitoring system including the same
JP2019062358A