Topic analysis method and device, computer device and storage medium
By extracting and expanding keywords from conversation data and automating the analysis of topic phrases, the problem of low efficiency in traditional manual analysis is solved, achieving efficient and accurate user topic identification.
Patent Information
- Application Number
- CN202210417439.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-20
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2042-04-20
AI Technical Summary
Traditional manual analysis of user conversation data is inefficient, unable to quickly identify user needs, and cannot meet the analysis requirements under high business volume.
By extracting keywords from conversation data, filtering topic keywords and related keywords, combining them into topic phrases, determining target topics based on topic phrases, and using computer equipment and algorithms to achieve automated analysis.
It improves the efficiency of topic analysis, reduces labor costs, and can quickly and accurately identify user topics, adapting to the analysis needs under high business volume.
Smart Images

Figure CN114880467B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a topic analysis method, apparatus, computer device, and storage medium. Background Technology
[0002] With societal development, business volume is increasing dramatically across various industries, and this high volume often translates into a large amount of business-related user session data. Quickly identifying and addressing user needs is crucial for maintaining this high volume.
[0003] Traditionally, understanding business trends relies solely on manually analyzing topics from user conversation data. However, due to the sheer volume of user conversation data, this manual approach inevitably suffers from low efficiency. Summary of the Invention
[0004] Therefore, it is necessary to provide a topic analysis method, apparatus, computer device, computer-readable storage medium, and computer program product that can improve efficiency in response to the above-mentioned technical problems.
[0005] Firstly, this application provides a topic analysis method. The method includes:
[0006] Extract multiple keywords from the conversation data;
[0007] Select topic keywords from the multiple keywords;
[0008] Identify related keywords from the plurality of keywords that are relevant to the topic keywords;
[0009] The topic keywords are combined with their corresponding related keywords to obtain at least one topic phrase;
[0010] The target topic corresponding to the conversation data is determined based on the at least one topic phrase.
[0011] Secondly, this application also provides a topic analysis device. The device includes:
[0012] The keyword extraction module is used to extract multiple keywords from the conversation data; and to filter topic keywords from the multiple keywords.
[0013] The topic expansion module is used to determine related keywords from the plurality of keywords that are related to the topic keywords; combine the topic keywords with the corresponding related keywords to obtain at least one topic phrase; and determine the target topic corresponding to the conversation data based on the at least one topic phrase.
[0014] In one embodiment, the keyword extraction module is further configured to determine a first growth rate and a first call volume for each of the plurality of keywords in the session data; the first growth rate is used to characterize the growth of the keyword in the session data; the first call volume is used to characterize the proportion of the keyword in the session data; and topic keywords are selected from the plurality of keywords based on the first call volume and the first growth rate of the plurality of keywords.
[0015] In one embodiment, the topic expansion module is further configured to: determine related keywords from the plurality of keywords based on the co-occurrence frequency of each keyword with the topic keyword; combine the topic keyword with the corresponding related keywords to obtain at least one topic keyword group; select a target topic keyword group from the at least one topic keyword group based on the number of keywords adjacent to the topic keyword group in the conversation data; and determine a topic phrase based on the selected target topic keyword group.
[0016] In one embodiment, the topic expansion module is further configured to: use the selected target topic keyword group as the current topic keyword group; determine related keywords from the plurality of keywords that are related to the current topic keyword group; combine the current topic keyword group with the corresponding related keywords to obtain at least one candidate topic keyword group; select the target topic keyword group from the at least one candidate topic keyword group; return to the step of using the selected target topic keyword group as the current topic keyword group to continue iterating until the topic expansion stopping condition is met, and use the target topic keyword group expanded when the topic expansion stopping condition is met as the topic phrase.
[0017] In one embodiment, the topic expansion module is further configured to calculate the similarity between each topic phrase in the at least one topic phrase; group each topic phrase in the at least one topic phrase based on the similarity to obtain a similar topic group; and filter out the target topic corresponding to the conversation data from the similar topic group.
[0018] In one embodiment, the topic expansion module is further configured to determine, from the conversation data, an associated conversation statement that is semantically close to the topic phrase; the associated conversation statement is used to semantically supplement the topic phrase; and the topic phrase is associated with the associated conversation statement to determine the target topic corresponding to the conversation data based on the at least one topic phrase and the associated associated conversation statement.
[0019] In one embodiment, the topic expansion module is further configured to determine a second growth rate and a second call volume for each topic phrase in the at least one topic phrase in the session data; the second growth rate is used to characterize the growth of the topic phrase in the session data; the second call volume is used to characterize the proportion of the number of topic phrases in the session data; and the target topic corresponding to the session data is determined from the at least one topic phrase based on the second growth rate and the second call volume of each topic phrase.
[0020] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps in the various embodiments of the method described in this application.
[0021] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of the methods described in the embodiments of this application.
[0022] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the methods described in the various embodiments of this application.
[0023] The aforementioned topic analysis methods, devices, computer equipment, storage media, and computer program products extract multiple keywords from conversation data; filter topic keywords from these keywords; determine related keywords from the remaining keywords; combine each topic keyword with its corresponding related keywords to obtain at least one topic phrase; and determine the target topic corresponding to the conversation data based on at least one topic phrase. This method can identify topic keywords from conversation data and expand them into topic phrases based on related keywords, thereby enabling topic identification based on these phrases. Compared to manual topic analysis, this reduces labor costs and improves efficiency. Attached Figure Description
[0024] Figure 1 This is a diagram illustrating the application environment of the topic analysis method in one embodiment;
[0025] Figure 2 This is a flowchart illustrating a topic analysis method in one embodiment;
[0026] Figure 3 This is a simplified flowchart illustrating a topic analysis method in one embodiment;
[0027] Figure 4 This is a structural block diagram of a topic analysis device in one embodiment;
[0028] Figure 5 This is an internal structural diagram of a computer device in one embodiment;
[0029] Figure 6 This is a diagram of the internal structure of a computer device in another embodiment. Detailed Implementation
[0030] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0031] It should be noted that the session data involved in this application is information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of session data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0032] The topic analysis method provided in this application can be applied to, for example, Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. Server 104 can extract multiple keywords from the session data, filter out topic keywords from these keywords, determine related keywords from the remaining keywords, combine the topic keywords with their corresponding related keywords to obtain at least one topic phrase, and finally determine the target topic corresponding to the session data based on at least one topic phrase. Server 104 can return the target topic to terminal 102, and terminal 102 can display the target topic.
[0033] The terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle systems. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.
[0034] In one embodiment, the steps executed by server 104 can also be executed by terminal 102, or jointly by terminal 102 and server 104. It is understood that the implementation of the topic analysis method is not limited to a specific executing entity.
[0035] In one embodiment, such as Figure 2 As shown, a topic analysis method is provided. This embodiment applies this method to... Figure 1 Using a server as an example, it can be understood that this method can also be applied to terminals, and also to systems including terminals and servers, and is implemented through the interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0036] Step 202: Extract multiple keywords from the conversation data; select topic keywords from the multiple keywords.
[0037] In this context, topic keywords refer to seed words used to expand topic phrases. Essentially, topic keywords are keywords among multiple keywords that are relevant to the topic being discussed in the conversation; that is, topic keywords are expressive information related to the topic being discussed. These topic keywords may be involved during topic discussions in the conversation.
[0038] Specifically, the server can preprocess the acquired session data and extract multiple keywords from it. This session data can be acquired in real-time or retrieved from a database storing session data. The server can then select topic keywords from these keywords based on topic keyword evaluation criteria.
[0039] In one embodiment, the evaluation criteria for topic keywords may include at least one of growth rate and call volume. It is understood that the server can filter topic keywords based on the first growth rate of keywords in the session data. The server can also filter topic keywords based on the first call volume of keywords in the session data. Here, call volume is short for telecommunications service traffic, and the amount of call volume is related to the number of users, the frequency of user communication, the duration of each user communication, and the duration being examined.
[0040] In one embodiment, the session data includes data from multiple sessions. A single session can serve as the basic unit for statistical call volume. The server can calculate the percentage of a keyword in the session data by counting the number of sessions corresponding to data containing keywords (number of sessions) and the total number of sessions in the session data (total number of sessions), thus obtaining the first call volume for that keyword. It is understandable that this method of calculating call volume is applicable to hotline scenarios, given the high number of sessions.
[0041] In one embodiment, the server can preprocess the data of a session based on factors such as the number of session turns, the session object, the customer service agent, and the session statements. It is understood that the server can determine multiple pre-set filtering conditions for the number of session turns, the session object, the customer service agent, and the session statements, and sequentially determine whether the session data meets the filtering conditions to filter the session data that meets the conditions. For example, the server can filter out the entire session data with few session statements or low-quality Automatic Speech Recognition (ASR) translation. The server can filter out the entire session data where the first session statement does not include words related to the customer service agent. The server can filter out session statements with abnormal sentence lengths from the session data. The server can retain only session statements where the session object is the user. It is understood that the server can preprocess the session data using a single session as the basic unit.
[0042] In one embodiment, the server can perform word segmentation on the preprocessed session data and extract multiple keywords from the segmented session data. It can be understood that the server can filter out stop words from the segmented session data. For example, the server can use a word segmentation dictionary to segment the session data and a stop word dictionary to filter out stop words from the session data. The word segmentation dictionary and the stop word dictionary are constructed based on the hotline corpus.
[0043] In one embodiment, the server can extract keywords from session data based on parts of speech. It is understood that in some session scenarios, words of a certain part of speech often have significant meaning, and the server can retain only keywords of the important parts of speech from the session data. For example, in the scenario of consulting and communication services, nouns and verbs such as "traffic," "consumption," and "broadband" are relatively important, so the server can extract keywords of these two parts of speech from the session data.
[0044] Step 204: Determine the related keywords from multiple keywords that are relevant to the topic keywords; combine the topic keywords with the corresponding related keywords to obtain at least one topic phrase.
[0045] Among them, related keywords are keywords that are related to topic keywords. Topic phrases refer to topics that are reflected to some extent in the conversation data.
[0046] In one embodiment, associated keywords are keywords that satisfy a preset co-occurrence relationship with topic keywords. It can be understood that associated keywords of the topic keyword can be selected from other keywords based on the co-occurrence between the topic keyword and other keywords. Other keywords are keywords other than the topic keyword among multiple keywords.
[0047] In one embodiment, the server can determine related keywords from multiple keywords that are relevant to the topic keywords based on the co-occurrence frequency among keywords.
[0048] In another embodiment, the server may also use a phrase dictionary to determine related keywords from multiple keywords that are relevant to the topic keywords. The server can combine the topic keywords with their corresponding related keywords to obtain at least one topic phrase. The phrase dictionary is constructed based on a hotline corpus. The phrase dictionary includes multiple preset topic phrases. It is understood that the server can determine preset topic phrases containing topic keywords from the phrase dictionary, and determine the related keywords in those preset topic phrases, excluding the topic keywords. The related keywords can be combined with the topic keywords to form preset topic phrases in the phrase dictionary.
[0049] Step 206: Determine the target topic corresponding to the conversation data based on at least one topic phrase.
[0050] The target topic is the topic included in the conversation data, that is, the topic involved in the conversation data. It can be understood that the target topic can be at least one of the topics discussed in the conversation corresponding to the conversation data.
[0051] Specifically, the server can determine the target topic corresponding to the session data based on topic evaluation criteria.
[0052] In one embodiment, the topic evaluation criteria may include at least one of growth rate and call volume. The server may determine the target topic corresponding to the session data based on a second growth rate of the topic phrase in the session data. The server may also determine the target topic corresponding to the session data based on a second call volume of the topic phrase in the session data.
[0053] In one embodiment, the session data includes data from multiple sessions. The server can calculate the proportion of topic phrases in the session data by counting the number of sessions (number of sessions) corresponding to the data containing topic phrases and the total number of sessions in the session data (total number of sessions), and obtain the second traffic volume of topic phrases.
[0054] The above-described topic analysis method extracts multiple keywords from conversation data; selects topic keywords from these keywords; identifies related keywords from the remaining keywords; combines each topic keyword with its corresponding related keywords to obtain at least one topic phrase; and determines the target topic corresponding to the conversation data based on this topic phrase. This method can identify topic keywords from conversation data and expand them into topic phrases based on related keywords, thereby enabling topic identification. Compared to manual topic analysis, this reduces labor costs and improves efficiency.
[0055] In one embodiment, selecting topic keywords from multiple keywords includes: determining the first growth rate and the first call volume of each keyword in the session data; the first growth rate is used to characterize the growth of the keyword in the session data; the first call volume is used to characterize the proportion of the keyword in the session data; and selecting topic keywords from multiple keywords based on the first call volume and the first growth rate of the multiple keywords.
[0056] Specifically, the server can determine the first growth rate and the first call volume for each keyword in the session data. The server can determine the word frequency of each keyword in the session data. The server can determine candidate topic keywords from the multiple keywords based on the first call volume and the first growth rate of each keyword. The server can then filter topic keywords from the candidate topic keywords based on word frequency.
[0057] In one embodiment, the server can determine the first occurrence frequency of a keyword in multiple time windows, as well as the first total occurrence frequency of the keyword in multiple time windows, and calculate the first growth rate ratio between the first occurrence frequency and the first total occurrence frequency. The server can determine the first growth rate of a keyword in session data by comparing multiple first growth rate ratios. It can be understood that session data is streaming data, and streaming computation involves windowing the session data; session data can be processed using multiple time windows. The larger the first growth rate ratio corresponding to the current time window, the higher the popularity of the corresponding keyword. If the first growth rate ratio corresponding to the next time window is larger than the first growth rate ratio corresponding to the current time window, it indicates that the corresponding keyword has a higher growth rate. Keywords with high growth rates are more important, and the server can consider keywords with high first growth rates as candidate topic keywords.
[0058] In one embodiment, the session data may include data from a single session. The server can determine the primary call volume of a keyword in the session data by calculating the proportion of session statements containing the keyword within the session data. Alternatively, the server can determine the primary call volume of a keyword in the session data by calculating the proportion of words containing the keyword within the session data. It can be understood that the higher the proportion of a keyword in the session data and the lower its proportion in the hotline corpus, the more important the keyword. Keywords with high call volume are more important, and the server can consider keywords with high primary call volume as candidate topic keywords.
[0059] In one embodiment, the server can determine the first growth rate of a keyword in the session data based on a growth rate keyword extraction algorithm. The server can also determine the first traffic volume of a keyword in the session data based on a term frequency-inverse document frequency keyword extraction algorithm.
[0060] In one embodiment, the server can determine candidate topic keywords whose first growth rate ranks at the first growth rate threshold and whose first call volume ranks at the first call volume threshold by setting a first growth rate ranking threshold and a first call volume ranking threshold. For example, the server can select the top few keywords with the highest first growth rate or first call volume ranking as candidate topic keywords. Alternatively, the server can set a first growth rate threshold and a first call volume threshold to determine candidate topic keywords whose first growth rate reaches the first growth rate threshold and whose first call volume reaches the first call volume threshold.
[0061] In one embodiment, the server can filter topic keywords from candidate topic keywords whose word frequency ranks at the threshold by setting a word frequency ranking threshold. For example, the server can select the top few candidate topic keywords with the highest word frequency as topic keywords. It can be understood that the server can filter topic keywords from candidate topic keywords whose word frequency reaches the threshold by setting a word frequency threshold.
[0062] In this embodiment, the first growth rate and the first call volume of each keyword in the conversation data are determined among multiple keywords; based on the first call volume and the first growth rate of multiple keywords, topic keywords are selected from multiple keywords. Topical keywords with high call volume and high growth rate are more important, thereby ensuring that the target topics determined based on topic keywords are more accurate.
[0063] In one embodiment, determining related keywords from multiple keywords includes: determining related keywords from multiple keywords based on the co-occurrence frequency of each keyword and the topic keyword; combining the topic keyword with its corresponding related keywords to obtain at least one topic phrase includes: combining the topic keyword with its corresponding related keywords to obtain at least one topic keyword group; selecting a target topic keyword group from the at least one topic keyword group based on the number of keywords adjacent to the topic keyword group in the session data; and determining a topic phrase based on the selected target topic keyword group.
[0064] Specifically, the server can calculate the co-occurrence frequency of each keyword and topic keyword in the session data, and determine related keywords from multiple keywords. Co-occurrence frequency reflects the probability of a keyword and topic keyword appearing together; a higher frequency indicates that the corresponding keywords and topic keywords appear repeatedly and frequently, and the stronger the bond between the keywords and topic keywords forming a topic keyword group. The server can combine each topic keyword with its corresponding related keywords to obtain at least one topic keyword group. The server can determine the number of keywords adjacent to the topic keyword group in the session data. The more keywords appearing to the left and right of a topic keyword group, the more likely it is to be a complete multi-word expression. The server can select the topic keyword group with a high number of adjacent keywords as the target topic keyword group and use the selected target topic keyword group as the topic phrase.
[0065] In one embodiment, the server can expand topic keywords into topic keyword groups based on a topic expansion algorithm using mutual information and left / right information entropy. The server can calculate the expansion score of the topic keyword group by measuring the mutual information between the keyword and the topic keywords, as well as the left / right information entropy of the topic keyword group. The topic keyword group with the highest expansion score among multiple topic keyword groups corresponding to the expanded keyword is then selected as the target topic keyword group for that expanded keyword. It can be understood that a higher expansion score indicates higher mutual information and left / right information entropy. A higher mutual information value indicates a higher co-occurrence frequency of the keyword and the topic keywords; higher left / right information entropy indicates a greater number of keywords appearing to the left and right of the topic keyword group.
[0066] In this embodiment, based on the co-occurrence frequency of each keyword and topic keyword, topic keywords are combined with corresponding related keywords to form topic keyword groups; based on the number of keywords adjacent to the topic keyword groups in the conversation data, target topic keyword groups are selected; based on the selected target topic keyword groups, topic phrases are determined, ensuring from two dimensions that the expanded topic keyword groups are complete multi-word expressions, thereby improving the accuracy of the subsequently determined target topics.
[0067] In one embodiment, determining a topic phrase based on a selected target topic keyword group includes: using the selected target topic keyword group as the current topic keyword group; determining related keywords from multiple keywords that are relevant to the current topic keyword group; combining the current topic keyword group with the corresponding related keywords to obtain at least one candidate topic keyword group; selecting a target topic keyword group from at least one candidate topic keyword group; returning to the step of using the selected target topic keyword group as the current topic keyword group to continue iterating until the topic expansion stopping condition is met, and using the target topic keyword group expanded when the topic expansion stopping condition is met as the topic phrase.
[0068] Specifically, the server can use the selected target topic keyword group as the current topic keyword group, and determine related keywords from multiple keywords by calculating the mutual information between the keywords and the current topic keyword group. The server can combine the current topic keyword group with the corresponding related keywords to form candidate topic keyword groups. The server can select the target topic keyword group from multiple candidate topic keyword groups by calculating the left and right information entropy of the candidate topic keyword groups. The server can return to the step of using the selected target topic keyword group as the current topic keyword group to continue iterating until the topic expansion stopping condition is met, and the target topic keyword group expanded when the topic expansion stopping condition is met is taken as the topic phrase.
[0069] In one embodiment, the topic expansion stopping condition can be that the number of expansion rounds for the topic keywords reaches a preset number. For example, if the preset number of rounds is 2, the server can stop expanding after two rounds of expansion for the topic keywords, resulting in a topic phrase containing 3 keywords. The server can use a topic expansion algorithm based on mutual information and left and right information entropy to expand the topic keywords as seeds, obtaining 2-gram topic keyword groups and their expansion scores. For each topic keyword, only the 2-gram topic keyword group with the highest expansion score is retained as the seed for the next round, i.e., the target topic keyword group, for the second round of expansion. This process continues until only the 3-gram topic keyword group with the highest expansion score is retained as the target topic keyword group, resulting in a 3-gram topic phrase. It can be understood that each expansion increases the readability of the topic phrase; the longer the topic phrase, the higher the readability. However, it also decreases the confidence of the topic phrase, as each round of expansion introduces a higher probability of error. When the topic phrase is too long, the expressed semantics become more limited.
[0070] In this embodiment, the topic phrase is obtained by expanding the topic keyword group to get the target topic keyword group, which increases the readability of the topic phrase compared to directly using the topic keyword group obtained by expanding the topic keywords in one round.
[0071] In one embodiment, determining the target topic corresponding to the conversation data based on at least one topic phrase includes: calculating the similarity between each topic phrase in at least one topic phrase; grouping each topic phrase in at least one topic phrase based on the similarity to obtain a similar topic group; and filtering out the target topic corresponding to the conversation data from the similar topic group.
[0072] Specifically, the server can deduplicate topic phrases. The server can calculate the similarity between topic phrases, retaining only those with a similarity score higher than a similarity threshold for each topic phrase. Each topic phrase is then associated with its corresponding similar topic phrases, forming a group, thus creating a similar topic group. In essence, the topic phrases within a similar topic group are similar. The server can then select a topic phrase from this group as the target topic for the session data. The server can then send the selected target topic to the terminal for display.
[0073] In one embodiment, the server can determine the similarity between topic phrases by calculating the longest common subsequence among them.
[0074] In this embodiment, the similarity between topic phrases is calculated, and the topic phrases are grouped to obtain similar topic groups. The target topic corresponding to the conversation data is selected from the similar topic groups. By deduplicating topic phrases through similar topic groups, the problem of target topic repetition can be avoided.
[0075] In one embodiment, determining the target topic corresponding to the session data based on at least one topic phrase includes: determining an associated session statement from the session data that is semantically close to the topic phrase; using the associated session statement to semantically supplement the topic phrase; and associating the topic phrase with the associated session statement to determine the target topic corresponding to the session data based on at least one topic phrase and the associated associated session statement.
[0076] Specifically, the server can identify related conversational statements containing topic phrases or those semantically consistent with the topic phrases from the conversation data, and associate the topic phrases with these related conversational statements. For example, the server can retrieve related conversational statements using word vector retrieval. Alternatively, the server can verify the semantic consistency between the topic phrases and the conversational statements in the conversation data to obtain related conversational statements. The server can then send the topic phrases and associated related conversational statements to the terminal for display, allowing users to understand the topic phrases through the associated conversational statements and determine the target topic corresponding to the conversation data.
[0077] In this embodiment, related conversational statements that are semantically close to the topic phrases are determined from the conversational data; the topic phrases are associated with the related conversational statements to determine the target topic corresponding to the conversational data based on at least one topic phrase and the associated related conversational statements. By associating topic phrases with related conversational statements, the problem of insufficient expressive power caused by the short length of topic phrases can be made up for.
[0078] In one embodiment, determining the target topic corresponding to the session data based on at least one topic phrase includes: determining the second growth rate and the second call volume of each topic phrase in the session data; the second growth rate is used to characterize the growth of the topic phrase in the session data; the second call volume is used to characterize the proportion of the number of topic phrases in the session data; and determining the target topic corresponding to the session data from at least one topic phrase according to the second growth rate and the second call volume of each topic phrase.
[0079] Specifically, the server can determine the second growth rate and second traffic volume of each topic phrase in the session data. The server can send the second growth rate and second traffic volume of each topic phrase to the terminal. The terminal can display the corresponding topic phrases according to the magnitude of the second growth rate and second traffic volume. The user can then select the target topic corresponding to the session data from the topic phrases displayed on the terminal. In other words, the user can determine hot topics based on the second growth rate and second traffic volume of the topic phrases.
[0080] In one embodiment, the server can determine the second growth rate of topic phrases in the session data based on a keyword extraction algorithm that calculates growth rate. The server can also determine the second traffic volume of topic phrases in the session data based on a keyword extraction algorithm that calculates word frequency-inverse document frequency.
[0081] In one embodiment, the server can determine the second frequency of occurrence of the topic phrase in multiple time windows, as well as the second total frequency of occurrence of the topic phrase in multiple time windows, and calculate a second growth rate ratio between the second frequency of occurrence and the second total frequency of occurrence. The server can determine the first growth rate of the topic phrase in the session data by comparing multiple second growth rate ratios. It is understood that session data is streaming data, and streaming computation will window the session data; session data can be processed using multiple time windows. The larger the second growth rate ratio corresponding to the current time window, the higher the popularity of the corresponding topic phrase. If the second growth rate ratio corresponding to the next time window is larger than the second growth rate ratio corresponding to the current time window, it indicates that the growth rate of the corresponding topic phrase is higher. High-growth-rate topic phrases are more important, and the terminal can prioritize displaying topic phrases with high second growth rates. One session can correspond to one time window. One session can also correspond to multiple time windows.
[0082] In one embodiment, the session data may include data from a single session. The server can determine the second call volume of the topic phrase in the session data by calculating the proportion of session statements containing the topic phrase within the session data. Alternatively, the server can determine the second call volume of the topic phrase in the session data by calculating the proportion of words containing the topic phrase within the session data. It can be understood that the higher the proportion of the topic phrase in the session data and the lower its proportion in the hotline corpus, the more important the topic phrase is. Topical phrases with high call volume are more important, and the terminal can prioritize displaying topic phrases with high second call volume.
[0083] In one embodiment, the server can determine the first growth rate and first call volume of the topic keywords corresponding to each topic phrase in the session data, and the server can determine the target topic corresponding to the session data based on the first growth rate and first call volume of the corresponding topic keywords.
[0084] In this embodiment, by determining the second growth rate and second call volume of each topic phrase in the conversation data, and based on the second growth rate and second call volume of each topic phrase, the target topic corresponding to the conversation data is determined from at least one topic phrase. Determining the target topic from two dimensions, growth rate and call volume, can ensure the accuracy of the target topic.
[0085] In one embodiment, such as Figure 3The diagram illustrates a simplified flowchart of the topic analysis method. The server can preprocess real-time acquired session data and extract keywords from the preprocessed data. The server can filter topic keywords from the keywords using both a growth rate-based keyword extraction algorithm and a word frequency-inverse document frequency-based keyword extraction algorithm. The server can expand the topic keywords to obtain topic phrases and associate these phrases with related session statements. The server can deduplicate the topic phrases to obtain similar topic groups. The server can determine the second growth rate and second call volume of the topic phrases and sort them according to these two dimensions, obtaining two ranking results, which are then sent to the terminal. The terminal can display the topic phrases in descending order, based on both the second growth rate and second call volume. The terminal can display one topic phrase for each similar topic group. The terminal can display the associated session statements of the topic phrases to semantically supplement the topic phrases and facilitate manual identification of the target topic. It is understandable that the terminal can also sort the topic phrases.
[0086] In one embodiment, the server can extract topic keywords from session data using a topic analysis model, and expand these keywords to obtain topic phrases. The server can call the topic analysis model to obtain the topic phrases, the second growth rate and second call volume of the topic phrases, the associated session statements of the topic phrases, and the similar topic groups corresponding to the topic phrases, all returned by the topic analysis model interface. The topic analysis model can also be built into the terminal, allowing the terminal to directly call the topic analysis model to analyze the target topics corresponding to the session data and display them. It is understood that using deep learning to train a topic analysis model to analyze session data can reduce the complexity of technical implementation.
[0087] In this embodiment, topic phrases are statistically extracted from the conversation data to identify high-frequency and emerging topics at a given time. This helps manual personnel to promptly locate and resolve unexpected issues, thereby efficiently handling and resolving user problems and improving service quality. Furthermore, it eliminates the need to rely entirely on experience to extract key information, significantly reducing manual labor costs.
[0088] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0089] Based on the same inventive concept, this application also provides a topic analysis apparatus for implementing the topic analysis method described above. The solution provided by this apparatus is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more of the topic analysis apparatus embodiments provided below can be found in the limitations of the topic analysis method described above, and will not be repeated here.
[0090] In one embodiment, such as Figure 4 As shown, a topic analysis device is provided, including: a keyword extraction module 402 and a topic expansion module 404, wherein:
[0091] Keyword extraction module 402 is used to extract multiple keywords from conversation data and filter topic keywords from multiple keywords;
[0092] The topic expansion module 404 is used to determine related keywords from multiple keywords; combine the topic keywords with the corresponding related keywords to obtain at least one topic phrase; and determine the target topic corresponding to the conversation data based on at least one topic phrase.
[0093] In one embodiment, the keyword extraction module 402 is further configured to determine the first growth rate and the first call volume of each keyword in the session data among multiple keywords; the first growth rate is used to characterize the growth of the keyword in the session data; the first call volume is used to characterize the proportion of the keyword in the session data; and topic keywords are selected from multiple keywords based on the first call volume and the first growth rate of multiple keywords.
[0094] In one embodiment, the topic expansion module 404 is further configured to: determine related keywords from multiple keywords based on the co-occurrence frequency of each keyword and the topic keyword; combine the topic keyword with the corresponding related keywords to obtain at least one topic keyword group; select a target topic keyword group from the at least one topic keyword group based on the number of keywords adjacent to the topic keyword group in the session data; and determine a topic phrase based on the selected target topic keyword group.
[0095] In one embodiment, the topic expansion module 404 is further configured to: use the selected target topic keyword group as the current topic keyword group; determine related keywords from multiple keywords that are relevant to the current topic keyword group; combine the current topic keyword group with the corresponding related keywords to obtain at least one candidate topic keyword group; select the target topic keyword group from the at least one candidate topic keyword group; return to the step of using the selected target topic keyword group as the current topic keyword group to continue iterating until the topic expansion stopping condition is met, and use the target topic keyword group expanded when the topic expansion stopping condition is met as the topic phrase.
[0096] In one embodiment, the topic expansion module 404 is further configured to calculate the similarity between each topic phrase in at least one topic phrase; group each topic phrase in at least one topic phrase based on the similarity to obtain a similar topic group; and filter out the target topic corresponding to the conversation data from the similar topic group.
[0097] In one embodiment, the topic extension module 404 is further configured to determine, from the conversation data, an associated conversation statement that is semantically close to the topic phrase; the associated conversation statement is used to semantically supplement the topic phrase; the topic phrase is associated with the associated conversation statement to determine the target topic corresponding to the conversation data based on at least one topic phrase and the associated associated conversation statement.
[0098] In one embodiment, the topic expansion module 404 is further configured to determine the second growth rate and the second call volume of each topic phrase in the conversation data; the second growth rate is used to characterize the growth of the topic phrase in the conversation data; the second call volume is used to characterize the proportion of the number of topic phrases in the conversation data; and the target topic corresponding to the conversation data is determined from the at least one topic phrase based on the second growth rate and the second call volume of each topic phrase.
[0099] Each module in the aforementioned topic analysis device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the corresponding operations of each module.
[0100] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 5 As shown, this computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores session data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When executed by the processor, the computer program implements a topic analysis method.
[0101] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 6 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a topic analysis method. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0102] Those skilled in the art will understand that Figure 5 and Figure 6The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0103] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.
[0104] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps in the above method embodiments.
[0105] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0106] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0107] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0108] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0109] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A topic analysis method, characterized in that, The method includes: Extract multiple keywords from the conversation data; Select topic keywords from the multiple keywords; Determining related keywords from the plurality of keywords that are relevant to the topic keyword includes: determining related keywords from the plurality of keywords that are relevant to the topic keyword based on the co-occurrence frequency of each keyword with the topic keyword; The process of combining the topic keywords with corresponding related keywords to obtain at least one topic phrase includes: combining the topic keywords with corresponding related keywords to obtain at least one topic keyword group; selecting a target topic keyword group from the at least one topic keyword group based on the number of keywords adjacent to the topic keyword group in the conversation data; using the selected target topic keyword group as the current topic keyword group; determining related keywords related to the current topic keyword group from the plurality of keywords; combining the current topic keyword group with corresponding related keywords to obtain at least one candidate topic keyword group; selecting a target topic keyword group from the at least one candidate topic keyword group; returning to the step of using the selected target topic keyword group as the current topic keyword group to continue iterating until the topic expansion stopping condition is met, and using the target topic keyword group expanded when the topic expansion stopping condition is met as the topic phrase. Determining the target topic corresponding to the conversation data based on the at least one topic phrase includes: determining a related conversation statement from the conversation data that is semantically close to the topic phrase; the related conversation statement is used to semantically supplement the topic phrase; and associating the topic phrase with the related conversation statement to determine the target topic corresponding to the conversation data based on the at least one topic phrase and the associated related conversation statement.
2. The method according to claim 1, characterized in that, The process of selecting topic keywords from the plurality of keywords includes: Determine the first growth rate and the first call volume of each keyword in the session data; the first growth rate is used to characterize the growth of the keyword in the session data; the first call volume is used to characterize the proportion of the keyword in the session data. Based on the first call volume and first growth rate of multiple keywords, topic keywords are selected from the multiple keywords.
3. The method according to claim 1, characterized in that, The session data includes session data from multiple sessions; Before extracting multiple keywords from the session data, the method further includes: For each session in the session data, the session data of the session is preprocessed according to the number of session turns, session objects, customer service agents and session statements in the session data of the session. The preprocessing includes data filtering.
4. The method according to claim 3, characterized in that, The preprocessing of the session data for the aforementioned session includes: Filter out conversation data from a given conversation that has few sentences or low-quality speech recognition translation; or, Filter out the session data of a given session whose first statement does not contain keywords related to the agent; or, Filter out conversation statements with abnormal sentence lengths from the conversation data of the aforementioned conversation.
5. The method according to any one of claims 1 to 4, characterized in that, Determining the target topic corresponding to the conversation data based on the at least one topic phrase includes: Calculate the similarity between topic phrases in the at least one topic phrase; Based on the similarity, each topic phrase in the at least one topic phrase is grouped to obtain similar topic groups; The target topic corresponding to the conversation data is selected from the similar topic groups.
6. The method according to any one of claims 1 to 4, characterized in that, The method further includes: Determine multiple pre-set filtering conditions; these multiple filtering conditions are pre-set based on the number of conversation rounds, conversation objects, customer service agents, and conversation statements. The session data is sequentially determined to meet the filtering conditions, and the session data that meets the filtering conditions is filtered. The extraction of multiple keywords from the session data includes: The filtered conversation data is segmented into words, and multiple keywords are extracted from the segmented conversation data.
7. The method according to any one of claims 1 to 4, characterized in that, Determining the target topic corresponding to the conversation data based on the at least one topic phrase includes: Determine the second growth rate and the second call volume of each topic phrase in the at least one topic phrase in the session data; the second growth rate is used to characterize the growth of topic phrases in the session data; the second call volume is used to characterize the proportion of topic phrases in the session data. Based on the second growth rate and second call volume of each topic phrase, the target topic corresponding to the session data is determined from the at least one topic phrase.
8. A topic analysis device, characterized in that, The device includes: The keyword extraction module is used to extract multiple keywords from the conversation data; and to filter topic keywords from the multiple keywords. The topic expansion module is used to determine related keywords from a plurality of keywords that are relevant to the topic keyword, including: determining related keywords from the plurality of keywords based on the co-occurrence frequency of each keyword with the topic keyword; combining the topic keyword with its corresponding related keywords to obtain at least one topic phrase, including: combining the topic keyword with its corresponding related keywords to obtain at least one topic keyword group; selecting a target topic keyword group from the at least one topic keyword group based on the number of keywords adjacent to the topic keyword group in the conversation data; using the selected target topic keyword group as the current topic keyword group; determining related keywords related to the current topic keyword group from the plurality of keywords; and setting the current topic... Keyword groups are combined with corresponding associated keywords to obtain at least one candidate topic keyword group; a target topic keyword group is selected from the at least one candidate topic keyword group; the step of using the selected target topic keyword group as the current topic keyword group is returned to continue iterating until the topic expansion stopping condition is met, and the target topic keyword group expanded when the topic expansion stopping condition is met is taken as a topic phrase; the target topic corresponding to the conversation data is determined based on the at least one topic phrase, including: determining associated conversation statements that are semantically close to the topic phrase from the conversation data; the associated conversation statements are used to semantically supplement the topic phrase; the topic phrase is associated with the associated conversation statements to determine the target topic corresponding to the conversation data based on the at least one topic phrase and the associated associated conversation statements.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Text topic detection method and device, server and storage medium
CN110245355A
Apparatus, server, and method for providing conversation topic
CN111147949A
Data processing method and device, equipment and storage medium
CN113641803A