system
The system addresses the challenge of obtaining accurate and balanced information by analyzing articles from multiple sources, evaluating reporting stance, and generating summaries, enhancing reliability through user feedback.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-03-06
AI Technical Summary
In today's internet environment, where information sources are diversifying and fake news and biased reporting are common, it is difficult for consumers to obtain accurate and balanced information, necessitating a method to determine the reliability or bias of individual news articles and compare reports from different sources.
A system that acquires articles from multiple sources, analyzes them using natural language processing technology to evaluate the reporting stance of each source, generates comparisons and summaries, and provides them to a user terminal, while incorporating user feedback to improve accuracy and reliability.
Enables users to efficiently obtain multifaceted and reliable information, forming unbiased opinions by continuously improving through feedback, and providing accurate and balanced information.
Smart Images

Figure 2026037181000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] In today's internet environment, where information sources are diversifying and fake news and biased reporting are common, it is difficult for consumers to obtain accurate and balanced information. Therefore, there is a need for a method to determine the reliability or bias of individual news articles. Furthermore, there is a need for a system that can compare reports from different sources and provide a comprehensive understanding. [Means for solving the problem]
[0005] The system includes a means for acquiring articles from multiple sources and a means for analyzing the acquired articles using natural language processing technology to evaluate the reporting stance of each source. It also includes a means for generating a comparison and summary for each source based on the evaluation results and providing them to a user terminal. The system also collects user feedback and incorporates it into the next data analysis and evaluation, thereby improving the accuracy and reliability of the system. The system extracts topics and keywords from the acquired articles and evaluates the sentiment of the articles, enabling a detailed evaluation of the tone of each source.
[0006] "Sources" refers to websites, news distribution services, blogs, social media accounts, etc. that provide news articles and news content.
[0007] "Article" refers to text content such as news, reports, columns, interviews, etc. provided by a source.
[0008] "Acquisition methods" refers to software or tools used to automatically collect articles from sources, including APIs and web scraping technologies.
[0009] "Natural language processing technology" is a general term for algorithms and techniques that enable computers to understand and analyze human language, including text tokenization, semantic analysis, and sentiment analysis.
[0010] "Means for analysis" refers to software or algorithms that use natural language processing technology to analyze the content of retrieved articles and extract features and patterns.
[0011] "Reporting stance" refers to the perspective and tone in which an article is reported, such as positive, negative, or neutral.
[0012] "Means of evaluation" refers to criteria or algorithms for quantitatively or qualitatively assessing the reporting stance and reliability of articles.
[0013] "Comparison and summary generation tools" refers to software or algorithms that compare articles from multiple sources with each other and summarize key points and differences.
[0014] "User terminal" refers to the device used by a user to access information, such as a smartphone, tablet, or PC.
[0015] "Means of providing" refers to the communication infrastructure and software used to deliver information from the server to the user's terminal.
[0016] "Means for collecting feedback" refers to interfaces and systems for collecting opinions and ratings from users.
[0017] "Extraction methods" refers to algorithms and tools used to extract key topics and keywords from articles.
[0018] "Sentiment assessors" refer to software or algorithms that analyze the emotional tone of an article's text and determine whether it is positive, negative, neutral, etc.
[0019] "Tone" refers to the emotional nuances and reporting stance of the article's content. [Brief explanation of the drawings]
[0020] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5]FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0021] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0022] First, the terms used in the following description will be explained.
[0023] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0024] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0025] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0026] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0027] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0028] [First embodiment]
[0029] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0030] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0031] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0032] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0033] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0034] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0035] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0036] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0037] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0038] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0039] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0040] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0041] This invention relates to a system that enables users to obtain accurate and balanced information in the modern internet environment where fake news and biased reporting are rampant. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it generates comparisons and summaries based on the evaluation results and provides them to the user's device.
[0042] System Configuration
[0043] 1. Data Collection
[0044] The server collects articles from a pre-defined list of news sites and sources, using news APIs and web scraping techniques, for example, by retrieving the latest article URLs from RSS feeds or API endpoints and extracting the article text accordingly.
[0045] 2. Data Analysis
[0046] The server uses natural language processing (NLP) techniques to analyze the retrieved articles. Specifically, it performs the following tasks:
[0047] Tokenization: Breaking text into meaningful units.
[0048] Topic modeling: Extracting major themes.
[0049] Sentiment analysis: Evaluate the positive, negative, or neutral tone of an article.
[0050] Keyword extraction: Identifying important words and phrases that appear frequently in articles.
[0051] 3. Reporting Stance Evaluation
[0052] The server then evaluates the reporting stance of each source based on the analysis results, for example, quantifying the tone of each article based on a sentiment score and calculating the overall bias and impartiality of the source, thereby formalizing the degree to which a particular source is positive, negative, or neutral.
[0053] 4. Comparison and Summary
[0054] The server then compares the reporting stance of each source based on the evaluation results and generates a summary. For example, it can comprehensively compare multiple articles on the same topic and summarize the perspective and content of each source. This summary is then provided to the user in a format that can be quickly digested.
[0055] 5. Information provision
[0056] The server sends the generated summary and comparison results to the user terminal, a process that includes converting them into an appropriate data format and preparing them for display in the user's interface.
[0057] 6. User Interaction
[0058] Users can use their devices to view the information provided and provide feedback on the content, such as "This article is reliable" or "This article is biased." The server collects this feedback and reflects it in the next data analysis and evaluation.
[0059] Specific examples
[0060] For example, here's how it works for news about the coronavirus:
[0061] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0062] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[0063] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[0064] 4. The server summarizes the differences between articles from each source and provides them to the user.
[0065] 5. Users view the summary on their devices and provide feedback.
[0066] 6. The server will incorporate the collected feedback into the next analysis.
[0067] The above system and method allow users to efficiently obtain multifaceted and reliable information, enabling them to form unbiased opinions. Furthermore, by continuously improving the system through feedback, the provision of more accurate and reliable information is realized.
[0068] The processing flow will be explained below.
[0069] Step 1:
[0070] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles. In this case, it queries an RSS feed or API endpoint to get the article URL. It then uses the URL to extract the article text.
[0071] Step 2:
[0072] The server analyzes the retrieved articles using natural language processing technology. Specifically, it performs the following operations:
[0073] Tokenization: Breaking down the article text into grammatically meaningful units.
[0074] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[0075] Sentiment analysis: Evaluates the tone of an article and calculates a sentiment score: positive, negative, or neutral.
[0076] Keyword extraction: Identifying important, frequently occurring words and phrases.
[0077] Step 3:
[0078] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if source A contains articles that are 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning toward positive.
[0079] Step 4:
[0080] The server compares and summarises each source based on the evaluation results. Specifically, it performs the following operations:
[0081] Organize the resulting data in a comparative table format to visualize how different sources report on a single topic.
[0082] Write a summary statement highlighting the main points of view and tone of each source, for example, Source A focuses on economics, Source B focuses on health.
[0083] Step 5:
[0084] The server provides the generated comparison and summary to the user's device. When providing the data, it converts it into an appropriate data format and makes it displayable on the device according to the user interface specifications. For example, the data is sent in JSON format, and the device application parses it and displays it on the screen.
[0085] Step 6:
[0086] The user views the provided information on their device. The user interface presents the information in an easy-to-read format, provides summaries and comparison tables, and provides links to view the article in more detail.
[0087] Step 7:
[0088] The user provides feedback by selecting a feedback option (e.g., "trustworthy" or "biased") and sending the information from the device to the server.
[0089] Step 8:
[0090] The server collects user feedback and reflects it in the next data analysis and evaluation. Based on the new feedback, the analysis algorithm and evaluation criteria are adjusted to improve the accuracy and reliability of the system.
[0091] Example 1
[0092] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0093] In today's internet environment, fake news and biased reporting are commonplace, making it difficult for users to obtain accurate and balanced information. This increases the risk that users will make incorrect decisions based on biased information. Furthermore, scrutinizing all articles provided by numerous sources takes time and effort, making it difficult to effectively gather information.
[0094] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0095] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for collecting feedback from users, and means for reflecting the collected feedback in the next data analysis and evaluation. This allows users to quickly obtain multifaceted and reliable information and form opinions with less bias. Furthermore, the system is continuously improved through feedback, enabling the provision of even more accurate and reliable information.
[0096] "Sources" are websites or platforms such as news sites, blogs, and social media that provide news articles and information content.
[0097] An "article" is text content written to convey news or information and published on a news site, blog, or other source.
[0098] "Natural language processing technology" is a technology that enables computers to understand, analyze, and generate human language, and includes processes such as tokenization, topic modeling, sentiment analysis, and keyword extraction.
[0099] "Tone" is an indicator of the tone and perspective a particular source uses to report a news story, and includes a positive, negative, or neutral sentiment score and bias.
[0100] A "Comparison and Summary" is a concise explanation based on articles from multiple sources that summarizes the main points and differences in perspective, and is provided to help users quickly understand the information.
[0101] "User terminal" means a device used by a user to view information and provide feedback, including a smartphone, tablet, or PC.
[0102] "Feedback" refers to a user's opinion or evaluation of the information provided, including comments on reliability, bias, etc., and an evaluation score.
[0103] A "generative AI model" is an artificial intelligence model used for text generation and summary generation, which includes a neural network trained on a large dataset.
[0104] This invention relates to a system that enables users to efficiently obtain accurate and balanced information. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it compares the articles based on the evaluation results, generates summaries, and provides them to the user's terminal.
[0105] 1. Data Collection
[0106] The server collects articles from pre-defined news sites and sources. This collection is done using web scraping libraries such as Python's BeautifulSoup and Scrapy. It is also possible to obtain the URLs of the latest articles using a news API. For example, the server can use the News API to obtain the URLs of articles related to the "new coronavirus" and then scrape the articles to store them in a database.
[0107] 2. Data Analysis
[0108] The server analyzes the retrieved articles using natural language processing (NLP) techniques. Specifically, it tokenizes them using NLTK or spaCy, performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts keywords using TF-IDF or RAKE.
[0109] 3. Reporting Stance Evaluation
[0110] Based on the analysis results, the server evaluates the reporting stance of each source. This evaluation involves quantifying the sentiment score of the article and calculating the proportion of positive, negative, and neutral opinions for each source. This allows the server to assess the degree of bias of a particular source.
[0111] 4. Comparison and Summary
[0112] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3 (registered trademark)), it generates comparative summaries of multiple articles on the same topic. This summary is provided to users in a format that can be quickly understood.
[0113] 5. Information provision
[0114] The server sends the generated summary and comparison results to the user's device. This process involves transferring the data in JSON format using an HTTP request and preparing it for display in a user interface, where the data is displayed in an easy-to-read format.
[0115] 6. User Interaction
[0116] Users use their devices to view the information provided and provide feedback on its content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation. This allows the system to continuously improve and provide more accurate and reliable information.
[0117] Specific examples
[0118] For example, here's how it works for news about the coronavirus:
[0119] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0120] 2. The server analyzes each article using natural language processing techniques to extract key topics and sentiment (e.g., using VADER to assess positive / negative tone).
[0121] 3. The server evaluates the reporting stance based on the sentiment score of each article and calculates the bias and fairness of each source.
[0122] 4. The server summarizes the differences between articles from different sources, using a generative AI model to generate coherent text.
[0123] 5. The user views the summary on their device and provides feedback.
[0124] 6. The server will incorporate the collected feedback into the next data analysis.
[0125] Examples of prompts for generative AI models include:
[0126] "Collect the latest articles about COVID-19 and analyze each article for topic and sentiment."
[0127] "Evaluate differences in reporting stances and generate summaries based on articles from multiple sources."
[0128] "Collect user feedback and incorporate it into your next analysis."
[0129] This system allows users to quickly obtain multifaceted, reliable information, enabling them to form unbiased opinions. Furthermore, the system is continuously improved based on collected feedback, providing more accurate and reliable information.
[0130] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0131] Step 1:
[0132] The server collects articles from pre-configured news sites and information sources. This collection process uses web scraping libraries such as Python's BeautifulSoup and Scrapy. It also obtains the URLs of the latest articles using the News API. For example, if a user specifies that articles related to the "new coronavirus" be collected, the server uses the News API to obtain the URLs of related articles, scrapes the article text based on those URLs, and stores it in the database.
[0133] Input: News API endpoint, search query (e.g., "coronavirus")
[0134] Output: Article body data (stored in database)
[0135] Specific behavior:
[0136] The server calls the NewsAPI to get the article URL.
[0137] The server uses BeautifulSoup to extract the article text from the obtained URL and save it in the database.
[0138] Step 2:
[0139] The server analyzes the retrieved articles using natural language processing (NLP) techniques. First, it tokenizes them using NLTK or spaCy, then performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts important keywords using TF-IDF or RAKE.
[0140] Input: Article body data (retrieved from database)
[0141] Output: Analysis results (topics, sentiment scores, keywords)
[0142] Specific behavior:
[0143] The server tokenizes the article text using NLTK.
[0144] The server uses LDA to perform topic modeling and extract major themes.
[0145] The server uses VADER to calculate the sentiment score for the article.
[0146] The server uses TF-IDF to extract important keywords.
[0147] Step 3:
[0148] The server evaluates the reporting stance of each source based on the analysis results. To do this, it quantifies the sentiment score of the article and calculates the proportion of positive, negative, and neutral opinions for each source. Based on these results, it quantitatively evaluates the bias of a specific source.
[0149] Input: Analysis results (topics, sentiment scores, keywords)
[0150] Output: Reporting attitude evaluation results (proportion of positive, negative, and neutral)
[0151] Specific behavior:
[0152] The server aggregates the sentiment scores for each article and calculates the percentage of positive, negative, and neutral sentiment.
[0153] The server evaluates the bias of each source and stores the results in a database.
[0154] Step 4:
[0155] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it compares multiple articles on the same topic and generates a coherent summary. This summary is then provided to the user for quick understanding.
[0156] Input: Reporting attitude evaluation results
[0157] Output: Generated summary
[0158] Specific behavior:
[0159] The server inputs a prompt sentence into the generative AI model and generates a summary.
[0160] The server stores the generated summaries in a database.
[0161] Step 5:
[0162] The server sends the generated summary and comparison results to the user device, using an HTTP request to transfer the data in JSON format, preparing it for display in a format suitable for the user interface.
[0163] Input: Generated summary, reporting attitude evaluation results
[0164] Output: Summary and evaluation results displayed on the user's terminal
[0165] Specific behavior:
[0166] The server converts the summary and evaluation results into JSON format.
[0167] The server sends data to the user terminal using an HTTP request.
[0168] The server adapts the display format of the data to suit the user interface.
[0169] Step 6:
[0170] Users use their devices to view the information provided and provide feedback on the content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation.
[0171] Input: User feedback
[0172] Output: Improved analysis and evaluation algorithms
[0173] Specific behavior:
[0174] The user views the provided summary at the terminal.
[0175] Users provide feedback on confidence and bias.
[0176] The server stores the user feedback in a database and reflects it in the next data analysis.
[0177] (Application example 1)
[0178] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0179] In today's internet environment, fake news and biased reporting are widespread, making it difficult for users to obtain accurate and balanced information. Furthermore, there are limited means to objectively evaluate the reliability and bias of information, making it difficult for users to understand the degree of bias in each source. Furthermore, while users need to be able to quickly digest collected news information and comprehensively understand reports from different perspectives, there is a lack of efficient ways to do this.
[0180] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0181] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a mobile information terminal, means for collecting news related to a topic selected by a user, means for displaying the sentiment scores and main topics of the analyzed articles, means for visualizing the bias and sentiment score for each article, and means for comparing multiple articles and generating summaries. This allows users to efficiently acquire diversified and less biased information.
[0182] A "source" is a source such as a website or API that provides news articles or information content.
[0183] "Means of obtaining articles" refers to methods of collecting news articles from multiple sources using news APIs and web scraping technology.
[0184] "Natural language processing technology" is a general term for algorithms and techniques for understanding and analyzing text, including tokenization, sentiment analysis, and topic modeling.
[0185] The "means for assessing reporting stance" is a method that uses natural language processing technology to calculate an emotional score for each article and then evaluates the bias and fairness of each source based on that score.
[0186] The "comparison and summary generation method" is a method for comparing the content and tone of articles collected from multiple sources and generating a comprehensive summary.
[0187] A "mobile information terminal" is an information processing device capable of mobile communication, such as a smartphone or tablet terminal.
[0188] The "sentiment score" is a numerical evaluation value that indicates whether the content of an article is positive, negative, or neutral.
[0189] A "topic" refers to the main theme or subject of a news article.
[0190] "Tokenization" is the process of dividing text into meaningful units called tokens.
[0191] "Keyword extraction" is a technique for identifying important words and phrases that appear frequently in a text.
[0192] "Feedback" refers to the act of a user providing feedback on the quality and reliability of an article.
[0193] This invention is a system that allows users to obtain accurate and balanced information. It collects news articles from multiple sources and analyzes them using natural language processing technology. It also evaluates the reporting stance of each source, and based on the results, generates comparisons and summaries and provides them to the user's terminal. This system uses the following hardware and software.
[0194] Hardware and Software
[0195] Server: A central processing unit for acquiring, analyzing, evaluating, comparing, summarizing, and providing news articles. Specific servers can be cloud-based services (e.g., AWS (registered trademark), Google (registered trademark) Cloud).
[0196] Smartphone: A mobile information device that allows users to view news information and provide feedback.
[0197] Natural language processing library: used to analyze the retrieved articles. Examples: NLTK, spaCy.
[0198] Machine learning framework: Used to perform article sentiment scoring and topic modeling. Examples: TENSORFLOW(R), PyTorch.
[0199] Web scraping tools: Used to gather articles from news sites. Example: BeautifulSoup.
[0200] Database: Used to store news articles and user feedback. Examples: SQLite, PostgreSQL.
[0201] Operation explanation
[0202] 1. News gathering
[0203] The server retrieves news articles related to the user's selected topic from multiple sources using pre-configured news APIs and web scraping tools, and stores the retrieved articles in a database.
[0204] 2. Natural Language Processing Analysis
[0205] The server analyzes the collected articles using a natural language processing library, which includes the following steps:
[0206] Tokenization: Breaking text into meaningful units (tokens).
[0207] Keyword extraction: Extract important words and phrases.
[0208] Sentiment analysis: Classifies the tone of an article as positive, negative, or neutral and calculates a sentiment score.
[0209] Topic modeling: Extracting major themes.
[0210] 3. Reporting Stance Evaluation
[0211] The server evaluates the sentiment score of each article based on the results of natural language processing analysis, quantifying the reporting stance of each source, and using this to evaluate the bias and fairness of each source.
[0212] 4. Comparison and Summary
[0213] The server compares multiple articles and generates summaries based on the results of the reporting assessment, allowing users to understand the reporting content from different sources at a glance.
[0214] 5. Information provision
[0215] The server provides the generated summaries and evaluation results to a smartphone, where users can view the summaries and provide feedback on specific articles.
[0216] 6. Feedback
[0217] The smartphone application collects user feedback and sends it to the server, which then incorporates it into the next data analysis and evaluation.
[0218] Specific examples
[0219] For example, consider the case where a user who wants to find news about the new coronavirus uses an app called "News Balancer."
[0220] 1. A user enters the topic "COVID-19" into the app.
[0221] 2. The server uses news APIs and web scraping tools to collect relevant articles from multiple sources.
[0222] 3. The server analyzes the article using natural language processing technology and extracts sentiment scores and major topics.
[0223] 4. The server evaluates the reporting stance based on the article's sentiment score and main topics, and quantifies the bias.
[0224] 5. The server compares multiple articles based on the evaluation results and generates a summary.
[0225] 6. The summary and evaluation results are sent to the user's smartphone and displayed.
[0226] 7. Users view the article and provide feedback.
[0227] Example prompts to input to the generative AI model
[0228] "Collect news articles about COVID-19 and use natural language processing to analyze the sentiment scores and main themes. Compare the reporting stances of multiple sources and provide a user-friendly summary."
[0229] This system allows users to efficiently obtain multifaceted and unbiased information.
[0230] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0231] Step 1:
[0232] The server retrieves news articles from multiple sources using news APIs and web scraping tools based on the topics selected by the user.
[0233] Input: User-defined topic
[0234] Output: A list of retrieved news articles
[0235] Specific operation: The server sends a request to the pre-configured news API endpoint to obtain relevant news article data and store it in the database. It also uses a web scraping tool to scrape articles from each news site and store the content in the database.
[0236] Step 2:
[0237] The server analyzes the retrieved news articles using natural language processing libraries (e.g., NLTK, spaCy).
[0238] Input: A list of retrieved news articles
[0239] Output: Parsed article data (tokens, keywords, sentiment scores, topics, etc.)
[0240] What it does: The server passes the news article text data to a natural language processing library for tokenization, keyword extraction, sentiment analysis, and topic modeling, for example, to calculate the article's sentiment score and classify it into a positive, negative, or neutral category.
[0241] Step 3:
[0242] The server evaluates the reporting stance of each source based on the results of natural language processing analysis.
[0243] Input: Parsed article data (sentiment scores, topics, etc.)
[0244] Output: Reporting attitude evaluation results for each source (bias score)
[0245] What it does: The server aggregates the sentiment scores of articles and calculates a bias score for each source, which is a numerical value of how positive, negative, or neutral each source is.
[0246] Step 4:
[0247] The server compares multiple articles and generates summaries based on the results of the reporting stance evaluation.
[0248] Input: Reporting attitude evaluation results for each source, analyzed article data
[0249] Output: Compared and summarized article data
[0250] How it works: The server compares multiple articles on the same topic based on the evaluation results, extracts key points and different perspectives, and creates a summary that is presented to the user in a format that is easy to understand.
[0251] Step 5:
[0252] The server sends the generated summary and evaluation results to the smartphone device.
[0253] Input: Comparison and summarized article data
[0254] Output: Summary and evaluation results displayed on smartphone
[0255] Specific operation: The server formats the data and provides users with summarized information and reporting stance evaluation results in cooperation with a smartphone application.
[0256] Step 6:
[0257] Users can view the provided summary and evaluation results on their smartphone and provide feedback if necessary.
[0258] Input: User feedback (trust rating, etc.)
[0259] Output: Feedback data
[0260] How it works: Users can enter their opinions about each article in the smartphone app, including their assessment of the article's reliability, bias, etc.
[0261] Step 7:
[0262] The server collects feedback from users and reflects it in the next data analysis and evaluation.
[0263] Input: User feedback data
[0264] Output: Updated evaluation model, data reflected in next analysis
[0265] How it works: The server stores the feedback data in a database and uses it to train machine learning models, which improves the accuracy of the next news analysis and reporting stance evaluation.
[0266] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0267] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[0268] System Configuration
[0269] 1. Data Collection
[0270] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles, for example by getting the URL of the latest article from an RSS feed or API endpoint and extracting the article text from that URL.
[0271] 2. Data Analysis
[0272] The server analyzes the retrieved articles using natural language processing technology. The specific tasks are as follows:
[0273] Tokenization: Breaking down the article text into grammatically meaningful units.
[0274] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[0275] Sentiment Analysis: Evaluate the sentiment of an article. Calculate a positive, negative, or neutral sentiment score.
[0276] Keyword extraction: Identifying important, frequently occurring words and phrases.
[0277] 3. Reporting Stance Evaluation
[0278] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if Source A is 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning more toward the positive side.
[0279] 4. Comparison and Summary
[0280] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The specific work is as follows:
[0281] Organize the resulting data in comparative tables, for example to visualize how different sources report on a single topic.
[0282] Write a summary that highlights the main perspective and tone of each source, for example, Source A focuses on economic issues, while Source B focuses on health issues.
[0283] 5. Information provision
[0284] The server provides the generated comparison and summary to the user's device, converting them into an appropriate data format and making them displayable according to the user interface specifications. For example, the data can be sent in JSON format, and the device application can parse it and display it on the screen.
[0285] 6. Emotion Engine
[0286] The device is equipped with an emotion engine that recognizes the user's emotions. When the user browses information, emotion data is acquired from their facial expressions and actions. Specifically, the emotion engine uses a camera and microphone to analyze facial expressions and tone of voice, and determines the user's current emotional state.
[0287] 7. User Interaction
[0288] Users view the information provided on their devices and provide feedback on the content. Emotional data recognized by the emotion engine is also collected. Feedback is in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next data analysis and evaluation.
[0289] Specific examples
[0290] For example, here's how it works for news about the coronavirus:
[0291] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0292] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[0293] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[0294] 4. The server summarizes the differences between articles from each source and provides them to the user's terminal.
[0295] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[0296] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotional state data.
[0297] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[0298] This system allows users to efficiently obtain multifaceted, reliable information and receive content tailored to their emotions. Furthermore, the system is continuously improved through feedback, enabling the provision of more accurate and reliable information.
[0299] The processing flow will be explained below.
[0300] Step 1:
[0301] The server collects news articles from multiple sources, periodically queries a pre-defined list of news sites and APIs to retrieve the latest article URLs, and then parses the HTML pages from the URLs to extract information such as the article title, body text, and publication date.
[0302] Step 2:
[0303] The server analyzes the retrieved articles using natural language processing (NLP) technology. Specifically, it performs the following operations:
[0304] Tokenization: Breaking text down into words and phrases.
[0305] Topic modeling: Extract major topics using LDA (Latent Dirichlet Allocation) and other methods.
[0306] Sentiment analysis: Calculates a sentiment score (positive, negative, neutral).
[0307] Keyword extraction: Analyze the frequency of important words and phrases.
[0308] Step 3:
[0309] The server evaluates the reporting stance of each source based on the analysis results. Evaluation criteria include a positive, negative, or neutral sentiment score, topic diversity, and the number of cited sources. For example, the server evaluates whether the reporting stance of source A is generally positive or negative.
[0310] Step 4:
[0311] The server generates a comparison and summary for each source based on the evaluation results. Specific operations include:
[0312] The sentiment scores and topic distribution for each source are summarized in a comparison table.
[0313] Generate summaries that highlight key perspectives and reporting styles, such as classifying source A as focusing on economic impacts and source B as focusing on medical impacts.
[0314] Step 5:
[0315] The server sends the generated comparison and summary to the user's device. At this time, the data is formatted in JSON format or other formats to suit the device's UI. The device application receives this data and displays it on the screen.
[0316] Step 6:
[0317] The device uses an emotion engine to recognize the user's emotions as they browse articles. For example, it uses a camera and microphone to analyze the user's facial expressions and tone of voice to obtain emotion data. The emotion data captures the user's reactions in real time as they browse articles.
[0318] Step 7:
[0319] The user views the information provided on the device and provides feedback. They select a feedback option (e.g., "trustworthy" or "biased") and send the information from the device to the server. Emotion data collected by the emotion engine is also sent at the same time.
[0320] Step 8:
[0321] The server collects user feedback and emotion data and reflects it in the next data analysis and evaluation. For example, if a particular article stresses a user, the algorithm will be adjusted to reduce the frequency of such articles from the next time. The server integrates the feedback and emotion data to further improve the analysis algorithm and evaluation criteria.
[0322] Example 2
[0323] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0324] In today's information society, users are required to efficiently collect a large number of news articles from a variety of sources and understand the reporting stance of each source. However, evaluating the reliability and balance of information is difficult, and there are few systems that provide information that suits the user's emotional state. Therefore, there is a need for a system that allows users to obtain reliable and balanced news information without feeling excessive stress.
[0325] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for acquiring articles from multiple information sources, a means for analyzing the acquired articles using natural language processing technology, a means for evaluating the reporting stance of each information source, a means for generating a comparison and summary for each information source based on the evaluation results, a means for providing the generated comparison and summary to a user terminal, and a terminal equipped with an emotion engine that recognizes the user's emotions. This allows the user to efficiently obtain accurate and balanced information and further allows the user to receive news content that is tailored to the user's emotional state.
[0326] "Multiple sources" refers to a collection of information provided from a variety of sources and media.
[0327] An "article" is a piece of writing or a report written to convey news or information.
[0328] "Means of collection" refers to the methods and technologies used to collect data from websites and APIs.
[0329] "Natural language processing technology" refers to computer technology for analyzing and processing human language, including tokenization, topic modeling, sentiment analysis, and keyword extraction.
[0330] "Means of analysis" refers to the techniques and methods used to break down and analyze collected information and extract useful data and patterns.
[0331] "News tone" refers to the tone or perspective from which a source reports the news, and includes positive, negative, or neutral emotional assessments.
[0332] "Means of evaluation" refers to techniques and methods for measuring and judging based on specific criteria, based on data and information.
[0333] "Comparison and summary generation methods" refers to techniques and methods for comparing data from multiple sources and providing a concise summary of the main points.
[0334] A "user terminal" is a device or equipment through which a user accesses information.
[0335] "Means of providing" refers to the technology and methods used to deliver the generated information to users.
[0336] An "emotion engine" is a system or software that recognizes and analyzes a user's emotional state.
[0337] "Feedback" refers to the opinions and reactions that users provide to the system.
[0338] A "topic" is the subject or theme of a news article or piece of information.
[0339] "Keywords" are important words or phrases within the text data.
[0340] "Tone" refers to the emotional tone or mood of a piece of writing or an article.
[0341] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[0342] System Configuration
[0343] 1. Data Collection
[0344] The server uses Python libraries such as BeautifulSoup and requests to collect news articles from multiple sources. Sources include websites (e.g., general news sites) and news APIs (e.g., NewsAPI). Specifically, at a set time each day, the server checks a configured list of websites and API endpoints and retrieves the latest articles from RSS feeds and APIs.
[0345] 2. Data Analysis
[0346] The server analyzes the collected news articles using natural language processing (NLP) techniques, using libraries such as NLTK and SpaCy. It can perform the following operations:
[0347] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[0348] Topic modeling: Uses LDA (Latent Dirichlet Allocation) to extract major themes.
[0349] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[0350] Keyword extraction: Extract important words and phrases using the TF-IDF method.
[0351] 3. Reporting Stance Evaluation
[0352] The server evaluates the reporting stance of each source based on the analysis results. The sentiment scores are combined to calculate the overall trend of the source. For example, if source A is 75% positive, 15% negative, and 10% neutral, the source is evaluated as having a strong positive reporting stance.
[0353] 4. Comparison and Summary
[0354] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on the same topic. It also summarizes the main points of view and differences in tone in a summary.
[0355] 5. Information provision
[0356] The server provides the generated comparison table and summary in JSON format to the user's device, where the device application parses the JSON data and displays it in an appropriate user interface.
[0357] 6. Emotion Engine
[0358] The device is equipped with an emotion engine that recognizes the user's emotions. It uses the camera and microphone to analyze the user's facial expressions and tone of voice to determine their emotional state. For example, OpenCV and Affdex SDK are used to analyze facial expressions, and a voice analysis library (e.g., praat, librosa) is used to analyze the voice recorded from the microphone.
[0359] 7. User Interaction
[0360] Users view the information provided on their devices and provide feedback on the content. Feedback is in the form of "This article is reliable" or "This article is biased," and the server collects this feedback and reflects it in the next data analysis and evaluation. This improves the accuracy and reliability of the system.
[0361] Specific examples
[0362] For example, to collect and analyze news articles about a new virus, it works like this:
[0363] 1. The server collects articles about the "new virus" from multiple sources.
[0364] 2. The server analyzes each article using natural language processing technology (NLTK or Spacy) to extract key topics and sentiment.
[0365] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table and summary.
[0366] 4. The server summarizes the differences between articles from each source and provides them to the user's device. The data is sent in JSON format, and the device application parses and displays it.
[0367] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[0368] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotion data.
[0369] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[0370] Example prompts for generative AI models
[0371] This system collects news articles from multiple sources and analyzes them using natural language processing technology. It also recognizes the user's emotions and optimizes the information provided. For example, it has a function that collects the latest news articles about the new coronavirus, determines the user's current emotional state using an emotion engine, and then displays articles with relaxing content. Please provide a detailed explanation of the system based on this example.
[0372] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0373] Step 1: Data collection
[0374] The server retrieves articles from multiple sources. Specifically, it uses Python libraries such as BeautifulSoup and requests to gather data from websites and news APIs. A pre-configured list of source URLs and API endpoints is provided as input. Based on these inputs, the server retrieves the latest article URLs and extracts the article text from those URLs. The output is data containing the article text and associated metadata.
[0375] Specific behavior:
[0376] It checks a set list of websites and API endpoints at a set time each day.
[0377] Get new article URLs and metadata from RSS feeds or APIs.
[0378] Extract article text from a web page using BeautifulSoup.
[0379] Step 2: Data analysis
[0380] The server analyzes the retrieved articles using natural language processing technology. The article text retrieved in the data collection step is provided as input. Based on this input, the server performs the following data processing and calculations, and obtains the analysis results as output:
[0381] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[0382] Topic modeling: Extract major themes using LDA (Latent Dirichlet Allocation).
[0383] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[0384] Keyword extraction: Identify important words and phrases using the TF-IDF method.
[0385] Specific behavior:
[0386] Use NLTK's word_tokenize function to break down the article text into words.
[0387] Run LDA to extract major topics.
[0388] Analyzes sentiment using VADER or TextBlob and calculates a sentiment score.
[0389] Extract important keywords using the TF-IDF method.
[0390] Step 3: Reporting Stance Assessment
[0391] The server evaluates the reporting stance of each source based on the analysis results. The input is the sentiment score obtained in the data analysis step. Based on this input, the sentiment scores are combined to evaluate the reporting stance of each source. The output is the reporting tendency (positive, negative, neutral) of each source.
[0392] Specific behavior:
[0393] The sentiment scores for each article are tallied to calculate the percentage of positive, negative, and neutral opinions for each source.
[0394] Analyze the trends of each source and evaluate their reporting stance.
[0395] Step 4: Compare and summarize
[0396] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The evaluation results of each source obtained in the reporting stance evaluation step are provided as input. Data comparison is performed based on this input, and a summary and comparison table are generated as output.
[0397] Specific behavior:
[0398] The evaluation results are obtained using an SQL query and organized in a comparison table format.
[0399] Write a summary that highlights the differences in perspective and tone of each source.
[0400] Step 5: Provide information
[0401] The server provides the generated comparison table and summary to the user terminal. The summary and comparison table generated in the comparison and summary step are provided as input. Based on this input, data is obtained as output in JSON format and converted into a displayable state according to the user interface specifications.
[0402] Specific behavior:
[0403] The server's API endpoint receives the summary and comparison table and outputs the data in JSON format.
[0404] The application on the user's device parses the JSON data and displays it in the user interface.
[0405] Step 6: Emotion Engine
[0406] The device is equipped with an emotion engine that recognizes the user's emotions. The user's facial expressions and tone of voice are provided as input. Analysis is performed based on this input, and the user's emotional state (positive, negative, neutral) is obtained as output.
[0407] Specific behavior:
[0408] The user's facial expressions are captured using the device's camera and analyzed using OpenCV and Affdex SDK.
[0409] The voice recorded by the microphone is analyzed using a voice analysis library (praat or librosa) to determine the emotional state.
[0410] Step 7: User Interaction
[0411] Users browse the information provided on their devices and provide feedback on the content. The input is the provided news summary or comparison table, and by submitting feedback based on this content, feedback data is obtained as output. The server reflects this feedback data in the next data analysis and evaluation.
[0412] Specific behavior:
[0413] A feedback form is displayed in the device application, and the user enters their opinion, such as "This article is trustworthy" or "This article is biased."
[0414] The feedback data is sent to a server and stored in a database.
[0415] This process allows users to efficiently obtain reliable and balanced news information and provides emotionally relevant news content. Furthermore, collecting user feedback improves the accuracy and reliability of the system.
[0416] (Application example 2)
[0417] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0418] When collecting and analyzing news articles, it is difficult to provide information based on the individual emotions and interests of users. Furthermore, displaying appropriate advertisements requires taking into account both the user's emotions and the article content, but achieving this in real time with conventional technology has been difficult. Furthermore, a method is needed to continuously learn from user feedback and improve the accuracy of the system.
[0419] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for recognizing the user's emotional state, and means for selecting and displaying optimal advertisements based on the user's emotional state and the emotional evaluation of the article. This makes it possible to provide appropriate information and advertisements based on the user's emotions and the content of the article in real time.
[0420] "Source" refers to the source material or platform from which data is obtained, including websites, APIs, feeds, etc. that provide news articles and data.
[0421] "Natural language processing technology" refers to computational techniques for analyzing, understanding, and generating language data, and includes techniques such as tokenization, topic modeling, and sentiment analysis.
[0422] "News tone" refers to the way information is presented and the emotional assessment in news articles and sources, and evaluates whether the article is biased towards the positive, negative, or neutral.
[0423] "Comparison" refers to a method of evaluating data obtained from multiple sources using uniform criteria and clarifying the differences.
[0424] A "summary" is a concise, easy-to-understand summary of detailed information, providing a brief summary of the main points and perspectives of a news article from a source.
[0425] "User terminal" refers to a device through which a user receives information, and includes smartphones, tablets, computers, etc.
[0426] "Emotional state" refers to the internal feelings a user shows while browsing information, and is analyzed from facial expressions such as joy, sadness, surprise, and language.
[0427] "Advertisement" refers to information intended to promote the sale of products or services, and is selected and displayed based on the user's interests and emotions.
[0428] A system for implementing this invention collects news articles from multiple sources, analyzes them using natural language processing techniques, and displays optimal advertisements based on the user's emotional state.
[0429] First, the server retrieves news articles from multiple sources, including websites, news APIs, RSS feeds, etc.
[0430] The server then analyzes the retrieved news articles using natural language processing (NLP) techniques, such as tokenization, topic modeling, sentiment analysis, and keyword extraction. This allows the server to extract major topics, sentiment scores, and important keywords from the article text. Specific software used includes TextBlob and spaCy.
[0431] The server then rates each source's reporting stance using an algorithm that combines the sentiment scores of each article and calculates the overall trend of the source, so for example, a source might be classified as 75% positive, 15% negative, or 10% neutral.
[0432] The server then compares each source and generates a summary based on the evaluation results. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on a single topic. The generated summary is sent to the user's device in JSON format or similar.
[0433] On the user device, an emotion engine recognizes the user's emotional state. It uses a camera and microphone to analyze the user's facial expressions and tone of voice to determine the user's current emotional state. The specific software used is the FER (Face Emotion Recognition) library.
[0434] The server then applies an algorithm to select the most appropriate advertisement based on the user's current emotional state and the emotional score of the news article. If the user's emotional state matches the emotional rating of the article, the corresponding advertisement is selected and displayed on the user's device at the appropriate time.
[0435] Users can view these news articles and advertisements and provide feedback, which is collected by the server and reflected in the next data analysis and evaluation.
[0436] A specific example is a news article about the new coronavirus. The server collects articles about the new coronavirus from multiple sources and analyzes them using natural language processing technology, extracting key topics and emotion scores. While the user is browsing the article, the device's camera analyzes the user's facial expressions to recognize, for example, a positive emotional state. Based on this information, the server selects advertisements for health-related products and displays them on the user's device.
[0437] An example of a prompt is:
[0438] "A new COVID-19 vaccine has been developed. A positive reaction can be detected from the user's facial expressions."
[0439] Based on this prompt, the system will carry out the appropriate processing.
[0440] This makes it possible to provide appropriate information and advertisements in real time based on the user's emotions and article content.
[0441] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0442] Step 1:
[0443] The server retrieves news articles from multiple sources. It collects the latest articles from websites, news APIs, and RSS feeds, and extracts the article text from each source. The input is the URL or API endpoint of the source, and the output is the text data of the retrieved news article.
[0444] Step 2:
[0445] The server analyzes the retrieved news articles using natural language processing technology. Specifically, it tokenizes the article text, applies topic modeling (e.g., LDA), and performs sentiment analysis. It also extracts important keywords. The input is the text data of the news articles, and the output is each article's topic, sentiment score, and extracted keywords.
[0446] Step 3:
[0447] The server evaluates the reporting stance of each source based on the analysis results. It aggregates the sentiment scores of each article and calculates the overall positive, negative, or neutral tendency of the source. The input is the result of sentiment analysis, and the output is an evaluation of the reporting stance of each source.
[0448] Step 4:
[0449] The server generates a comparison and summary for each source based on the evaluation results. The analysis results are organized in a comparison table format to visualize the coverage of different sources on a single topic. It also summarizes important differences in perspective and tone in a summary. The input is the evaluated reporting data, and the output is a comparison table and a summary.
[0450] Step 5:
[0451] The server provides the generated comparison and summary to the user's device. It converts the data into an appropriate format (e.g., JSON format) and makes it displayable according to the user interface specifications. The input is the comparison table and summary text, and the output is the data sent to the user's device.
[0452] Step 6:
[0453] The device uses an emotion engine to recognize the user's emotional state. The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice, and determines the user's emotions. The input is the user's facial image and voice data, and the output is the user's emotional state (e.g., positive, negative, neutral).
[0454] Step 7:
[0455] The server selects and displays the optimal advertisement based on the user's emotional state and the emotional rating of the news article. For example, if the user is in a positive emotional state, it selects an advertisement related to an article with a positive emotional rating. The input is the user's emotional state data and the emotional rating data of the news article, and the output is the selected advertisement URL.
[0456] Step 8:
[0457] Users view news articles or displayed advertisements on their devices and provide feedback. Feedback is collected in the form of statements such as "This article is trustworthy" or "This article is biased." The input is user feedback, and the output is feedback data.
[0458] Step 9:
[0459] The server reflects the collected feedback data in the next data analysis and evaluation, thereby improving the accuracy of the analysis and evaluation algorithms. The input is the feedback data, and the output is an updated analysis model and evaluation algorithm.
[0460] The above processing steps make it possible to provide appropriate information and advertisements in real time based on the user's emotions and the content of news articles.
[0461] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0462] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0463] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0464] [Second embodiment]
[0465] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0466] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0467] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0468] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0469] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0470] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0471] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0472] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0473] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0474] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0475] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0476] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0477] This invention relates to a system that enables users to obtain accurate and balanced information in the modern internet environment where fake news and biased reporting are rampant. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it generates comparisons and summaries based on the evaluation results and provides them to the user's device.
[0478] System Configuration
[0479] 1. Data Collection
[0480] The server collects articles from a pre-defined list of news sites and sources, using news APIs and web scraping techniques, for example, by retrieving the latest article URLs from RSS feeds or API endpoints and extracting the article text accordingly.
[0481] 2. Data Analysis
[0482] The server uses natural language processing (NLP) techniques to analyze the retrieved articles. Specifically, it performs the following tasks:
[0483] Tokenization: Breaking text into meaningful units.
[0484] Topic modeling: Extracting major themes.
[0485] Sentiment analysis: Evaluate the positive, negative, or neutral tone of an article.
[0486] Keyword extraction: Identifying important words and phrases that appear frequently in articles.
[0487] 3. Reporting Stance Evaluation
[0488] The server then evaluates the reporting stance of each source based on the analysis results, for example, quantifying the tone of each article based on a sentiment score and calculating the overall bias and impartiality of the source, thereby formalizing the degree to which a particular source is positive, negative, or neutral.
[0489] 4. Comparison and Summary
[0490] The server then compares the reporting stance of each source based on the evaluation results and generates a summary. For example, it can comprehensively compare multiple articles on the same topic and summarize the perspective and content of each source. This summary is then provided to the user in a format that can be quickly digested.
[0491] 5. Information provision
[0492] The server sends the generated summary and comparison results to the user terminal, a process that includes converting them into an appropriate data format and preparing them for display in the user's interface.
[0493] 6. User Interaction
[0494] Users can use their devices to view the information provided and provide feedback on the content, such as "This article is reliable" or "This article is biased." The server collects this feedback and reflects it in the next data analysis and evaluation.
[0495] Specific examples
[0496] For example, here's how it works for news about the coronavirus:
[0497] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0498] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[0499] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[0500] 4. The server summarizes the differences between articles from each source and provides them to the user.
[0501] 5. Users view the summary on their devices and provide feedback.
[0502] 6. The server will incorporate the collected feedback into the next analysis.
[0503] The above system and method allow users to efficiently obtain multifaceted and reliable information, enabling them to form unbiased opinions. Furthermore, by continuously improving the system through feedback, the provision of more accurate and reliable information is realized.
[0504] The processing flow will be explained below.
[0505] Step 1:
[0506] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles. In this case, it queries an RSS feed or API endpoint to get the article URL. It then uses the URL to extract the article text.
[0507] Step 2:
[0508] The server analyzes the retrieved articles using natural language processing technology. Specifically, it performs the following operations:
[0509] Tokenization: Breaking down the article text into grammatically meaningful units.
[0510] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[0511] Sentiment analysis: Evaluates the tone of an article and calculates a sentiment score: positive, negative, or neutral.
[0512] Keyword extraction: Identifying important, frequently occurring words and phrases.
[0513] Step 3:
[0514] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if source A contains articles that are 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning toward positive.
[0515] Step 4:
[0516] The server compares and summarises each source based on the evaluation results. Specifically, it performs the following operations:
[0517] Organize the resulting data in a comparative table format to visualize how different sources report on a single topic.
[0518] Write a summary statement highlighting the main points of view and tone of each source, for example, Source A focuses on economics, Source B focuses on health.
[0519] Step 5:
[0520] The server provides the generated comparison and summary to the user's device. When providing the data, it converts it into an appropriate data format and makes it displayable on the device according to the user interface specifications. For example, the data is sent in JSON format, and the device application parses it and displays it on the screen.
[0521] Step 6:
[0522] The user views the provided information on their device. The user interface presents the information in an easy-to-read format, provides summaries and comparison tables, and provides links to view the article in more detail.
[0523] Step 7:
[0524] The user provides feedback by selecting a feedback option (e.g., "trustworthy" or "biased") and sending the information from the device to the server.
[0525] Step 8:
[0526] The server collects user feedback and reflects it in the next data analysis and evaluation. Based on the new feedback, the analysis algorithm and evaluation criteria are adjusted to improve the accuracy and reliability of the system.
[0527] Example 1
[0528] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0529] In today's internet environment, fake news and biased reporting are commonplace, making it difficult for users to obtain accurate and balanced information. This increases the risk that users will make incorrect decisions based on biased information. Furthermore, scrutinizing all articles provided by numerous sources takes time and effort, making it difficult to effectively gather information.
[0530] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0531] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for collecting feedback from users, and means for reflecting the collected feedback in the next data analysis and evaluation. This allows users to quickly obtain multifaceted and reliable information and form opinions with less bias. Furthermore, the system is continuously improved through feedback, enabling the provision of even more accurate and reliable information.
[0532] "Sources" are websites or platforms such as news sites, blogs, and social media that provide news articles and information content.
[0533] An "article" is text content written to convey news or information and published on a news site, blog, or other source.
[0534] "Natural language processing technology" is a technology that enables computers to understand, analyze, and generate human language, and includes processes such as tokenization, topic modeling, sentiment analysis, and keyword extraction.
[0535] "Tone" is an indicator of the tone and perspective a particular source uses to report a news story, and includes a positive, negative, or neutral sentiment score and bias.
[0536] A "Comparison and Summary" is a concise explanation based on articles from multiple sources that summarizes the main points and differences in perspective, and is provided to help users quickly understand the information.
[0537] "User terminal" means a device used by a user to view information and provide feedback, including a smartphone, tablet, or PC.
[0538] "Feedback" refers to a user's opinion or evaluation of the information provided, including comments on reliability, bias, etc., and an evaluation score.
[0539] A "generative AI model" is an artificial intelligence model used for text generation and summary generation, which includes a neural network trained on a large dataset.
[0540] This invention relates to a system that enables users to efficiently obtain accurate and balanced information. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it compares the articles based on the evaluation results, generates summaries, and provides them to the user's terminal.
[0541] 1. Data Collection
[0542] The server collects articles from pre-defined news sites and sources. This collection is done using web scraping libraries such as Python's BeautifulSoup and Scrapy. It is also possible to obtain the URLs of the latest articles using a news API. For example, the server can use the News API to obtain the URLs of articles related to the "new coronavirus" and then scrape the articles to store them in a database.
[0543] 2. Data Analysis
[0544] The server analyzes the retrieved articles using natural language processing (NLP) techniques. Specifically, it tokenizes them using NLTK or spaCy, performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts keywords using TF-IDF or RAKE.
[0545] 3. Reporting Stance Evaluation
[0546] Based on the analysis results, the server evaluates the reporting stance of each source. This evaluation involves quantifying the sentiment score of the article and calculating the proportion of positive, negative, and neutral opinions for each source. This allows the server to assess the degree of bias of a particular source.
[0547] 4. Comparison and Summary
[0548] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it generates a comparative summary of multiple articles on the same topic. This summary is provided to users in a format that can be quickly understood.
[0549] 5. Information provision
[0550] The server sends the generated summary and comparison results to the user's device. This process involves transferring the data in JSON format using an HTTP request and preparing it for display in a user interface, where the data is displayed in an easy-to-read format.
[0551] 6. User Interaction
[0552] Users use their devices to view the information provided and provide feedback on its content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation. This allows the system to continuously improve and provide more accurate and reliable information.
[0553] Specific examples
[0554] For example, here's how it works for news about the coronavirus:
[0555] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0556] 2. The server analyzes each article using natural language processing techniques to extract key topics and sentiment (e.g., using VADER to assess positive / negative tone).
[0557] 3. The server evaluates the reporting stance based on the sentiment score of each article and calculates the bias and fairness of each source.
[0558] 4. The server summarizes the differences between articles from different sources, using a generative AI model to generate coherent text.
[0559] 5. The user views the summary on their device and provides feedback.
[0560] 6. The server will incorporate the collected feedback into the next data analysis.
[0561] Examples of prompts for generative AI models include:
[0562] "Collect the latest articles about COVID-19 and analyze each article for topic and sentiment."
[0563] "Evaluate differences in reporting stances and generate summaries based on articles from multiple sources."
[0564] "Collect user feedback and incorporate it into your next analysis."
[0565] This system allows users to quickly obtain multifaceted, reliable information, enabling them to form unbiased opinions. Furthermore, the system is continuously improved based on collected feedback, providing more accurate and reliable information.
[0566] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0567] Step 1:
[0568] The server collects articles from pre-configured news sites and information sources. This collection process uses web scraping libraries such as Python's BeautifulSoup and Scrapy. It also obtains the URLs of the latest articles using the News API. For example, if a user specifies that articles related to the "new coronavirus" be collected, the server uses the News API to obtain the URLs of related articles, scrapes the article text based on those URLs, and stores it in the database.
[0569] Input: News API endpoint, search query (e.g., "coronavirus")
[0570] Output: Article body data (stored in database)
[0571] Specific behavior:
[0572] The server calls the NewsAPI to get the article URL.
[0573] The server uses BeautifulSoup to extract the article text from the obtained URL and save it in the database.
[0574] Step 2:
[0575] The server analyzes the retrieved articles using natural language processing (NLP) techniques. First, it tokenizes them using NLTK or spaCy, then performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts important keywords using TF-IDF or RAKE.
[0576] Input: Article body data (retrieved from database)
[0577] Output: Analysis results (topics, sentiment scores, keywords)
[0578] Specific behavior:
[0579] The server tokenizes the article text using NLTK.
[0580] The server uses LDA to perform topic modeling and extract major themes.
[0581] The server uses VADER to calculate the sentiment score for the article.
[0582] The server uses TF-IDF to extract important keywords.
[0583] Step 3:
[0584] The server evaluates the reporting stance of each source based on the analysis results. To do this, it quantifies the sentiment score of the article and calculates the proportion of positive, negative, and neutral opinions for each source. Based on these results, it quantitatively evaluates the bias of a specific source.
[0585] Input: Analysis results (topics, sentiment scores, keywords)
[0586] Output: Reporting attitude evaluation results (proportion of positive, negative, and neutral)
[0587] Specific behavior:
[0588] The server aggregates the sentiment scores for each article and calculates the percentage of positive, negative, and neutral sentiment.
[0589] The server evaluates the bias of each source and stores the results in a database.
[0590] Step 4:
[0591] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it compares multiple articles on the same topic and generates a coherent summary. This summary is then provided to the user for quick understanding.
[0592] Input: Reporting attitude evaluation results
[0593] Output: Generated summary
[0594] Specific behavior:
[0595] The server inputs a prompt sentence into the generative AI model and generates a summary.
[0596] The server stores the generated summaries in a database.
[0597] Step 5:
[0598] The server sends the generated summary and comparison results to the user device, using an HTTP request to transfer the data in JSON format, preparing it for display in a format suitable for the user interface.
[0599] Input: Generated summary, reporting attitude evaluation results
[0600] Output: Summary and evaluation results displayed on the user's terminal
[0601] Specific behavior:
[0602] The server converts the summary and evaluation results into JSON format.
[0603] The server sends data to the user terminal using an HTTP request.
[0604] The server adapts the display format of the data to suit the user interface.
[0605] Step 6:
[0606] Users use their devices to view the information provided and provide feedback on the content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation.
[0607] Input: User feedback
[0608] Output: Improved analysis and evaluation algorithms
[0609] Specific behavior:
[0610] The user views the provided summary at the terminal.
[0611] Users provide feedback on confidence and bias.
[0612] The server stores the user feedback in a database and reflects it in the next data analysis.
[0613] (Application example 1)
[0614] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0615] In today's internet environment, fake news and biased reporting are widespread, making it difficult for users to obtain accurate and balanced information. Furthermore, there are limited means to objectively evaluate the reliability and bias of information, making it difficult for users to understand the degree of bias in each source. Furthermore, while users need to be able to quickly digest collected news information and comprehensively understand reports from different perspectives, there is a lack of efficient ways to do this.
[0616] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0617] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a mobile information terminal, means for collecting news related to a topic selected by a user, means for displaying the sentiment scores and main topics of the analyzed articles, means for visualizing the bias and sentiment score for each article, and means for comparing multiple articles and generating summaries. This allows users to efficiently acquire diversified and less biased information.
[0618] A "source" is a source such as a website or API that provides news articles or information content.
[0619] "Means of obtaining articles" refers to methods of collecting news articles from multiple sources using news APIs and web scraping technology.
[0620] "Natural language processing technology" is a general term for algorithms and techniques for understanding and analyzing text, including tokenization, sentiment analysis, and topic modeling.
[0621] The "means for assessing reporting stance" is a method that uses natural language processing technology to calculate an emotional score for each article and then evaluates the bias and fairness of each source based on that score.
[0622] The "comparison and summary generation method" is a method for comparing the content and tone of articles collected from multiple sources and generating a comprehensive summary.
[0623] A "mobile information terminal" is an information processing device capable of mobile communication, such as a smartphone or tablet terminal.
[0624] The "sentiment score" is a numerical evaluation value that indicates whether the content of an article is positive, negative, or neutral.
[0625] A "topic" refers to the main theme or subject of a news article.
[0626] "Tokenization" is the process of dividing text into meaningful units called tokens.
[0627] "Keyword extraction" is a technique for identifying important words and phrases that appear frequently in a text.
[0628] "Feedback" refers to the act of a user providing feedback on the quality and reliability of an article.
[0629] This invention is a system that allows users to obtain accurate and balanced information. It collects news articles from multiple sources and analyzes them using natural language processing technology. It also evaluates the reporting stance of each source, and based on the results, generates comparisons and summaries and provides them to the user's terminal. This system uses the following hardware and software.
[0630] Hardware and Software
[0631] Server: A central processing unit for acquiring, analyzing, evaluating, comparing, summarizing, and providing news articles. Specific servers can be cloud-based services (e.g., AWS, Google Cloud).
[0632] Smartphone: A mobile information device that allows users to view news information and provide feedback.
[0633] Natural language processing library: used to analyze the retrieved articles. Examples: NLTK, spaCy.
[0634] Machine learning frameworks: used to perform article sentiment scoring and topic modeling. Examples: TensorFlow, PyTorch.
[0635] Web scraping tools: Used to gather articles from news sites. Example: BeautifulSoup.
[0636] Database: Used to store news articles and user feedback. Examples: SQLite, PostgreSQL.
[0637] Operation explanation
[0638] 1. News gathering
[0639] The server retrieves news articles related to the user's selected topic from multiple sources using pre-configured news APIs and web scraping tools, and stores the retrieved articles in a database.
[0640] 2. Natural Language Processing Analysis
[0641] The server analyzes the collected articles using a natural language processing library, which includes the following steps:
[0642] Tokenization: Breaking text into meaningful units (tokens).
[0643] Keyword extraction: Extract important words and phrases.
[0644] Sentiment analysis: Classifies the tone of an article as positive, negative, or neutral and calculates a sentiment score.
[0645] Topic modeling: Extracting major themes.
[0646] 3. Reporting Stance Evaluation
[0647] The server evaluates the sentiment score of each article based on the results of natural language processing analysis, quantifying the reporting stance of each source, and using this to evaluate the bias and fairness of each source.
[0648] 4. Comparison and Summary
[0649] The server compares multiple articles and generates summaries based on the results of the reporting assessment, allowing users to understand the reporting content from different sources at a glance.
[0650] 5. Information provision
[0651] The server provides the generated summaries and evaluation results to a smartphone, where users can view the summaries and provide feedback on specific articles.
[0652] 6. Feedback
[0653] The smartphone application collects user feedback and sends it to the server, which then incorporates it into the next data analysis and evaluation.
[0654] Specific examples
[0655] For example, consider the case where a user who wants to find news about the new coronavirus uses an app called "News Balancer."
[0656] 1. A user enters the topic "COVID-19" into the app.
[0657] 2. The server uses news APIs and web scraping tools to collect relevant articles from multiple sources.
[0658] 3. The server analyzes the article using natural language processing technology and extracts sentiment scores and major topics.
[0659] 4. The server evaluates the reporting stance based on the article's sentiment score and main topics, and quantifies the bias.
[0660] 5. The server compares multiple articles based on the evaluation results and generates a summary.
[0661] 6. The summary and evaluation results are sent to the user's smartphone and displayed.
[0662] 7. Users view the article and provide feedback.
[0663] Example prompts to input to the generative AI model
[0664] "Collect news articles about COVID-19 and use natural language processing to analyze the sentiment scores and main themes. Compare the reporting stances of multiple sources and provide a user-friendly summary."
[0665] This system allows users to efficiently obtain multifaceted and unbiased information.
[0666] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0667] Step 1:
[0668] The server retrieves news articles from multiple sources using news APIs and web scraping tools based on the topics selected by the user.
[0669] Input: User-defined topic
[0670] Output: A list of retrieved news articles
[0671] Specific operation: The server sends a request to the pre-configured news API endpoint to obtain relevant news article data and store it in the database. It also uses a web scraping tool to scrape articles from each news site and store the content in the database.
[0672] Step 2:
[0673] The server analyzes the retrieved news articles using natural language processing libraries (e.g., NLTK, spaCy).
[0674] Input: A list of retrieved news articles
[0675] Output: Parsed article data (tokens, keywords, sentiment scores, topics, etc.)
[0676] What it does: The server passes the news article text data to a natural language processing library for tokenization, keyword extraction, sentiment analysis, and topic modeling, for example, to calculate the article's sentiment score and classify it into a positive, negative, or neutral category.
[0677] Step 3:
[0678] The server evaluates the reporting stance of each source based on the results of natural language processing analysis.
[0679] Input: Parsed article data (sentiment scores, topics, etc.)
[0680] Output: Reporting attitude evaluation results for each source (bias score)
[0681] What it does: The server aggregates the sentiment scores of articles and calculates a bias score for each source, which is a numerical value of how positive, negative, or neutral each source is.
[0682] Step 4:
[0683] The server compares multiple articles and generates summaries based on the results of the reporting stance evaluation.
[0684] Input: Reporting attitude evaluation results for each source, analyzed article data
[0685] Output: Compared and summarized article data
[0686] How it works: The server compares multiple articles on the same topic based on the evaluation results, extracts key points and different perspectives, and creates a summary that is presented to the user in a format that is easy to understand.
[0687] Step 5:
[0688] The server sends the generated summary and evaluation results to the smartphone device.
[0689] Input: Comparison and summarized article data
[0690] Output: Summary and evaluation results displayed on smartphone
[0691] Specific operation: The server formats the data and provides users with summarized information and reporting stance evaluation results in cooperation with a smartphone application.
[0692] Step 6:
[0693] Users can view the provided summary and evaluation results on their smartphone and provide feedback if necessary.
[0694] Input: User feedback (trust rating, etc.)
[0695] Output: Feedback data
[0696] How it works: Users can enter their opinions about each article in the smartphone app, including their assessment of the article's reliability, bias, etc.
[0697] Step 7:
[0698] The server collects feedback from users and reflects it in the next data analysis and evaluation.
[0699] Input: User feedback data
[0700] Output: Updated evaluation model, data reflected in next analysis
[0701] How it works: The server stores the feedback data in a database and uses it to train machine learning models, which improves the accuracy of the next news analysis and reporting stance evaluation.
[0702] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0703] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[0704] System Configuration
[0705] 1. Data Collection
[0706] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles, for example by getting the URL of the latest article from an RSS feed or API endpoint and extracting the article text from that URL.
[0707] 2. Data Analysis
[0708] The server analyzes the retrieved articles using natural language processing technology. The specific tasks are as follows:
[0709] Tokenization: Breaking down the article text into grammatically meaningful units.
[0710] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[0711] Sentiment Analysis: Evaluate the sentiment of an article. Calculate a positive, negative, or neutral sentiment score.
[0712] Keyword extraction: Identifying important, frequently occurring words and phrases.
[0713] 3. Reporting Stance Evaluation
[0714] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if Source A is 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning more toward the positive side.
[0715] 4. Comparison and Summary
[0716] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The specific work is as follows:
[0717] Organize the resulting data in comparative tables, for example to visualize how different sources report on a single topic.
[0718] Write a summary that highlights the main perspective and tone of each source, for example, Source A focuses on economic issues, while Source B focuses on health issues.
[0719] 5. Information provision
[0720] The server provides the generated comparison and summary to the user's device, converting them into an appropriate data format and making them displayable according to the user interface specifications. For example, the data can be sent in JSON format, and the device application can parse it and display it on the screen.
[0721] 6. Emotion Engine
[0722] The device is equipped with an emotion engine that recognizes the user's emotions. When the user browses information, emotion data is acquired from their facial expressions and actions. Specifically, the emotion engine uses a camera and microphone to analyze facial expressions and tone of voice, and determines the user's current emotional state.
[0723] 7. User Interaction
[0724] Users view the information provided on their devices and provide feedback on the content. Emotional data recognized by the emotion engine is also collected. Feedback is in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next data analysis and evaluation.
[0725] Specific examples
[0726] For example, here's how it works for news about the coronavirus:
[0727] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0728] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[0729] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[0730] 4. The server summarizes the differences between articles from each source and provides them to the user's terminal.
[0731] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[0732] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotional state data.
[0733] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[0734] This system allows users to efficiently obtain multifaceted, reliable information and receive content tailored to their emotions. Furthermore, the system is continuously improved through feedback, enabling the provision of more accurate and reliable information.
[0735] The processing flow will be explained below.
[0736] Step 1:
[0737] The server collects news articles from multiple sources, periodically queries a pre-defined list of news sites and APIs to retrieve the latest article URLs, and then parses the HTML pages from the URLs to extract information such as the article title, body text, and publication date.
[0738] Step 2:
[0739] The server analyzes the retrieved articles using natural language processing (NLP) technology. Specifically, it performs the following operations:
[0740] Tokenization: Breaking text down into words and phrases.
[0741] Topic modeling: Extract major topics using LDA (Latent Dirichlet Allocation) and other methods.
[0742] Sentiment analysis: Calculates a sentiment score (positive, negative, neutral).
[0743] Keyword extraction: Analyze the frequency of important words and phrases.
[0744] Step 3:
[0745] The server evaluates the reporting stance of each source based on the analysis results. Evaluation criteria include a positive, negative, or neutral sentiment score, topic diversity, and the number of cited sources. For example, the server evaluates whether the reporting stance of source A is generally positive or negative.
[0746] Step 4:
[0747] The server generates a comparison and summary for each source based on the evaluation results. Specific operations include:
[0748] The sentiment scores and topic distribution for each source are summarized in a comparison table.
[0749] Generate summaries that highlight key perspectives and reporting styles, such as classifying source A as focusing on economic impacts and source B as focusing on medical impacts.
[0750] Step 5:
[0751] The server sends the generated comparison and summary to the user's device. At this time, the data is formatted in JSON format or other formats to suit the device's UI. The device application receives this data and displays it on the screen.
[0752] Step 6:
[0753] The device uses an emotion engine to recognize the user's emotions as they browse articles. For example, it uses a camera and microphone to analyze the user's facial expressions and tone of voice to obtain emotion data. The emotion data captures the user's reactions in real time as they browse articles.
[0754] Step 7:
[0755] The user views the information provided on the device and provides feedback. They select a feedback option (e.g., "trustworthy" or "biased") and send the information from the device to the server. Emotion data collected by the emotion engine is also sent at the same time.
[0756] Step 8:
[0757] The server collects user feedback and emotion data and reflects it in the next data analysis and evaluation. For example, if a particular article stresses a user, the algorithm will be adjusted to reduce the frequency of such articles from the next time. The server integrates the feedback and emotion data to further improve the analysis algorithm and evaluation criteria.
[0758] Example 2
[0759] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0760] In today's information society, users are required to efficiently collect a large number of news articles from a variety of sources and understand the reporting stance of each source. However, evaluating the reliability and balance of information is difficult, and there are few systems that provide information that suits the user's emotional state. Therefore, there is a need for a system that allows users to obtain reliable and balanced news information without feeling excessive stress.
[0761] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for acquiring articles from multiple information sources, a means for analyzing the acquired articles using natural language processing technology, a means for evaluating the reporting stance of each information source, a means for generating a comparison and summary for each information source based on the evaluation results, a means for providing the generated comparison and summary to a user terminal, and a terminal equipped with an emotion engine that recognizes the user's emotions. This allows the user to efficiently obtain accurate and balanced information and further allows the user to receive news content that is tailored to the user's emotional state.
[0762] "Multiple sources" refers to a collection of information provided from a variety of sources and media.
[0763] An "article" is a piece of writing or a report written to convey news or information.
[0764] "Means of collection" refers to the methods and technologies used to collect data from websites and APIs.
[0765] "Natural language processing technology" refers to computer technology for analyzing and processing human language, including tokenization, topic modeling, sentiment analysis, and keyword extraction.
[0766] "Means of analysis" refers to the techniques and methods used to break down and analyze collected information and extract useful data and patterns.
[0767] "News tone" refers to the tone or perspective from which a source reports the news, and includes positive, negative, or neutral emotional assessments.
[0768] "Means of evaluation" refers to techniques and methods for measuring and judging based on specific criteria, based on data and information.
[0769] "Comparison and summary generation methods" refers to techniques and methods for comparing data from multiple sources and providing a concise summary of the main points.
[0770] A "user terminal" is a device or equipment through which a user accesses information.
[0771] "Means of providing" refers to the technology and methods used to deliver the generated information to users.
[0772] An "emotion engine" is a system or software that recognizes and analyzes a user's emotional state.
[0773] "Feedback" refers to the opinions and reactions that users provide to the system.
[0774] A "topic" is the subject or theme of a news article or piece of information.
[0775] "Keywords" are important words or phrases within the text data.
[0776] "Tone" refers to the emotional tone or mood of a piece of writing or an article.
[0777] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[0778] System Configuration
[0779] 1. Data Collection
[0780] The server uses Python libraries such as BeautifulSoup and requests to collect news articles from multiple sources. Sources include websites (e.g., general news sites) and news APIs (e.g., NewsAPI). Specifically, at a set time each day, the server checks a configured list of websites and API endpoints and retrieves the latest articles from RSS feeds and APIs.
[0781] 2. Data Analysis
[0782] The server analyzes the collected news articles using natural language processing (NLP) techniques, using libraries such as NLTK and SpaCy. It can perform the following operations:
[0783] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[0784] Topic modeling: Uses LDA (Latent Dirichlet Allocation) to extract major themes.
[0785] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[0786] Keyword extraction: Extract important words and phrases using the TF-IDF method.
[0787] 3. Reporting Stance Evaluation
[0788] The server evaluates the reporting stance of each source based on the analysis results. The sentiment scores are combined to calculate the overall trend of the source. For example, if source A is 75% positive, 15% negative, and 10% neutral, the source is evaluated as having a strong positive reporting stance.
[0789] 4. Comparison and Summary
[0790] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on the same topic. It also summarizes the main points of view and differences in tone in a summary.
[0791] 5. Information provision
[0792] The server provides the generated comparison table and summary in JSON format to the user's device, where the device application parses the JSON data and displays it in an appropriate user interface.
[0793] 6. Emotion Engine
[0794] The device is equipped with an emotion engine that recognizes the user's emotions. It uses the camera and microphone to analyze the user's facial expressions and tone of voice to determine their emotional state. For example, OpenCV and Affdex SDK are used to analyze facial expressions, and a voice analysis library (e.g., praat, librosa) is used to analyze the voice recorded from the microphone.
[0795] 7. User Interaction
[0796] Users view the information provided on their devices and provide feedback on the content. Feedback is in the form of "This article is reliable" or "This article is biased," and the server collects this feedback and reflects it in the next data analysis and evaluation. This improves the accuracy and reliability of the system.
[0797] Specific examples
[0798] For example, to collect and analyze news articles about a new virus, it works like this:
[0799] 1. The server collects articles about the "new virus" from multiple sources.
[0800] 2. The server analyzes each article using natural language processing technology (NLTK or Spacy) to extract key topics and sentiment.
[0801] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table and summary.
[0802] 4. The server summarizes the differences between articles from each source and provides them to the user's device. The data is sent in JSON format, and the device application parses and displays it.
[0803] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[0804] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotion data.
[0805] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[0806] Example prompts for generative AI models
[0807] This system collects news articles from multiple sources and analyzes them using natural language processing technology. It also recognizes the user's emotions and optimizes the information provided. For example, it has a function that collects the latest news articles about the new coronavirus, determines the user's current emotional state using an emotion engine, and then displays articles with relaxing content. Please provide a detailed explanation of the system based on this example.
[0808] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0809] Step 1: Data collection
[0810] The server retrieves articles from multiple sources. Specifically, it uses Python libraries such as BeautifulSoup and requests to gather data from websites and news APIs. A pre-configured list of source URLs and API endpoints is provided as input. Based on these inputs, the server retrieves the latest article URLs and extracts the article text from those URLs. The output is data containing the article text and associated metadata.
[0811] Specific behavior:
[0812] It checks a set list of websites and API endpoints at a set time each day.
[0813] Get new article URLs and metadata from RSS feeds or APIs.
[0814] Extract article text from a web page using BeautifulSoup.
[0815] Step 2: Data analysis
[0816] The server analyzes the retrieved articles using natural language processing technology. The article text retrieved in the data collection step is provided as input. Based on this input, the server performs the following data processing and calculations, and obtains the analysis results as output:
[0817] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[0818] Topic modeling: Extract major themes using LDA (Latent Dirichlet Allocation).
[0819] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[0820] Keyword extraction: Identify important words and phrases using the TF-IDF method.
[0821] Specific behavior:
[0822] Use NLTK's word_tokenize function to break down the article text into words.
[0823] Run LDA to extract major topics.
[0824] Analyzes sentiment using VADER or TextBlob and calculates a sentiment score.
[0825] Extract important keywords using the TF-IDF method.
[0826] Step 3: Reporting Stance Assessment
[0827] The server evaluates the reporting stance of each source based on the analysis results. The input is the sentiment score obtained in the data analysis step. Based on this input, the sentiment scores are combined to evaluate the reporting stance of each source. The output is the reporting tendency (positive, negative, neutral) of each source.
[0828] Specific behavior:
[0829] The sentiment scores for each article are tallied to calculate the percentage of positive, negative, and neutral opinions for each source.
[0830] Analyze the trends of each source and evaluate their reporting stance.
[0831] Step 4: Compare and summarize
[0832] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The evaluation results of each source obtained in the reporting stance evaluation step are provided as input. Data comparison is performed based on this input, and a summary and comparison table are generated as output.
[0833] Specific behavior:
[0834] The evaluation results are obtained using an SQL query and organized in a comparison table format.
[0835] Write a summary that highlights the differences in perspective and tone of each source.
[0836] Step 5: Provide information
[0837] The server provides the generated comparison table and summary to the user terminal. The summary and comparison table generated in the comparison and summary step are provided as input. Based on this input, data is obtained as output in JSON format and converted into a displayable state according to the user interface specifications.
[0838] Specific behavior:
[0839] The server's API endpoint receives the summary and comparison table and outputs the data in JSON format.
[0840] The application on the user's device parses the JSON data and displays it in the user interface.
[0841] Step 6: Emotion Engine
[0842] The device is equipped with an emotion engine that recognizes the user's emotions. The user's facial expressions and tone of voice are provided as input. Analysis is performed based on this input, and the user's emotional state (positive, negative, neutral) is obtained as output.
[0843] Specific behavior:
[0844] The user's facial expressions are captured using the device's camera and analyzed using OpenCV and Affdex SDK.
[0845] The voice recorded by the microphone is analyzed using a voice analysis library (praat or librosa) to determine the emotional state.
[0846] Step 7: User Interaction
[0847] Users browse the information provided on their devices and provide feedback on the content. The input is the provided news summary or comparison table, and by submitting feedback based on this content, feedback data is obtained as output. The server reflects this feedback data in the next data analysis and evaluation.
[0848] Specific behavior:
[0849] A feedback form is displayed in the device application, and the user enters their opinion, such as "This article is trustworthy" or "This article is biased."
[0850] The feedback data is sent to a server and stored in a database.
[0851] This process allows users to efficiently obtain reliable and balanced news information and provides emotionally relevant news content. Furthermore, collecting user feedback improves the accuracy and reliability of the system.
[0852] (Application example 2)
[0853] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0854] When collecting and analyzing news articles, it is difficult to provide information based on the individual emotions and interests of users. Furthermore, displaying appropriate advertisements requires taking into account both the user's emotions and the article content, but achieving this in real time with conventional technology has been difficult. Furthermore, a method is needed to continuously learn from user feedback and improve the accuracy of the system.
[0855] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for recognizing the user's emotional state, and means for selecting and displaying optimal advertisements based on the user's emotional state and the emotional evaluation of the article. This makes it possible to provide appropriate information and advertisements based on the user's emotions and the content of the article in real time.
[0856] "Source" refers to the source material or platform from which data is obtained, including websites, APIs, feeds, etc. that provide news articles and data.
[0857] "Natural language processing technology" refers to computational techniques for analyzing, understanding, and generating language data, and includes techniques such as tokenization, topic modeling, and sentiment analysis.
[0858] "News tone" refers to the way information is presented and the emotional assessment in news articles and sources, and evaluates whether the article is biased towards the positive, negative, or neutral.
[0859] "Comparison" refers to a method of evaluating data obtained from multiple sources using uniform criteria and clarifying the differences.
[0860] A "summary" is a concise, easy-to-understand summary of detailed information, providing a brief summary of the main points and perspectives of a news article from a source.
[0861] "User terminal" refers to a device through which a user receives information, and includes smartphones, tablets, computers, etc.
[0862] "Emotional state" refers to the internal feelings a user shows while browsing information, and is analyzed from facial expressions such as joy, sadness, surprise, and language.
[0863] "Advertisement" refers to information intended to promote the sale of products or services, and is selected and displayed based on the user's interests and emotions.
[0864] A system for implementing this invention collects news articles from multiple sources, analyzes them using natural language processing techniques, and displays optimal advertisements based on the user's emotional state.
[0865] First, the server retrieves news articles from multiple sources, including websites, news APIs, RSS feeds, etc.
[0866] The server then analyzes the retrieved news articles using natural language processing (NLP) techniques, such as tokenization, topic modeling, sentiment analysis, and keyword extraction. This allows the server to extract major topics, sentiment scores, and important keywords from the article text. Specific software used includes TextBlob and spaCy.
[0867] The server then rates each source's reporting stance using an algorithm that combines the sentiment scores of each article and calculates the overall trend of the source, so for example, a source might be classified as 75% positive, 15% negative, or 10% neutral.
[0868] The server then compares each source and generates a summary based on the evaluation results. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on a single topic. The generated summary is sent to the user's device in JSON format or similar.
[0869] On the user device, an emotion engine recognizes the user's emotional state. It uses a camera and microphone to analyze the user's facial expressions and tone of voice to determine the user's current emotional state. The specific software used is the FER (Face Emotion Recognition) library.
[0870] The server then applies an algorithm to select the most appropriate advertisement based on the user's current emotional state and the emotional score of the news article. If the user's emotional state matches the emotional rating of the article, the corresponding advertisement is selected and displayed on the user's device at the appropriate time.
[0871] Users can view these news articles and advertisements and provide feedback, which is collected by the server and reflected in the next data analysis and evaluation.
[0872] A specific example is a news article about the new coronavirus. The server collects articles about the new coronavirus from multiple sources and analyzes them using natural language processing technology, extracting key topics and emotion scores. While the user is browsing the article, the device's camera analyzes the user's facial expressions to recognize, for example, a positive emotional state. Based on this information, the server selects advertisements for health-related products and displays them on the user's device.
[0873] An example of a prompt is:
[0874] "A new COVID-19 vaccine has been developed. A positive reaction can be detected from the user's facial expressions."
[0875] Based on this prompt, the system will carry out the appropriate processing.
[0876] This makes it possible to provide appropriate information and advertisements in real time based on the user's emotions and article content.
[0877] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0878] Step 1:
[0879] The server retrieves news articles from multiple sources. It collects the latest articles from websites, news APIs, and RSS feeds, and extracts the article text from each source. The input is the URL or API endpoint of the source, and the output is the text data of the retrieved news article.
[0880] Step 2:
[0881] The server analyzes the retrieved news articles using natural language processing technology. Specifically, it tokenizes the article text, applies topic modeling (e.g., LDA), and performs sentiment analysis. It also extracts important keywords. The input is the text data of the news articles, and the output is each article's topic, sentiment score, and extracted keywords.
[0882] Step 3:
[0883] The server evaluates the reporting stance of each source based on the analysis results. It aggregates the sentiment scores of each article and calculates the overall positive, negative, or neutral tendency of the source. The input is the result of sentiment analysis, and the output is an evaluation of the reporting stance of each source.
[0884] Step 4:
[0885] The server generates a comparison and summary for each source based on the evaluation results. The analysis results are organized in a comparison table format to visualize the coverage of different sources on a single topic. It also summarizes important differences in perspective and tone in a summary. The input is the evaluated reporting data, and the output is a comparison table and a summary.
[0886] Step 5:
[0887] The server provides the generated comparison and summary to the user's device. It converts the data into an appropriate format (e.g., JSON format) and makes it displayable according to the user interface specifications. The input is the comparison table and summary text, and the output is the data sent to the user's device.
[0888] Step 6:
[0889] The device uses an emotion engine to recognize the user's emotional state. The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice, and determines the user's emotions. The input is the user's facial image and voice data, and the output is the user's emotional state (e.g., positive, negative, neutral).
[0890] Step 7:
[0891] The server selects and displays the optimal advertisement based on the user's emotional state and the emotional rating of the news article. For example, if the user is in a positive emotional state, it selects an advertisement related to an article with a positive emotional rating. The input is the user's emotional state data and the emotional rating data of the news article, and the output is the selected advertisement URL.
[0892] Step 8:
[0893] Users view news articles or displayed advertisements on their devices and provide feedback. Feedback is collected in the form of statements such as "This article is trustworthy" or "This article is biased." The input is user feedback, and the output is feedback data.
[0894] Step 9:
[0895] The server reflects the collected feedback data in the next data analysis and evaluation, thereby improving the accuracy of the analysis and evaluation algorithms. The input is the feedback data, and the output is an updated analysis model and evaluation algorithm.
[0896] The above processing steps make it possible to provide appropriate information and advertisements in real time based on the user's emotions and the content of news articles.
[0897] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0898] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0899] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0900] [Third embodiment]
[0901] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0902] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0903] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0904] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0905] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0906] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0907] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0908] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0909] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0910] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0911] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0912] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0913] This invention relates to a system that enables users to obtain accurate and balanced information in the modern internet environment where fake news and biased reporting are rampant. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it generates comparisons and summaries based on the evaluation results and provides them to the user's device.
[0914] System Configuration
[0915] 1. Data Collection
[0916] The server collects articles from a pre-defined list of news sites and sources, using news APIs and web scraping techniques, for example, by retrieving the latest article URLs from RSS feeds or API endpoints and extracting the article text accordingly.
[0917] 2. Data Analysis
[0918] The server uses natural language processing (NLP) techniques to analyze the retrieved articles. Specifically, it performs the following tasks:
[0919] Tokenization: Breaking text into meaningful units.
[0920] Topic modeling: Extracting major themes.
[0921] Sentiment analysis: Evaluate the positive, negative, or neutral tone of an article.
[0922] Keyword extraction: Identifying important words and phrases that appear frequently in articles.
[0923] 3. Reporting Stance Evaluation
[0924] The server then evaluates the reporting stance of each source based on the analysis results, for example, quantifying the tone of each article based on a sentiment score and calculating the overall bias and impartiality of the source, thereby formalizing the degree to which a particular source is positive, negative, or neutral.
[0925] 4. Comparison and Summary
[0926] The server then compares the reporting stance of each source based on the evaluation results and generates a summary. For example, it can comprehensively compare multiple articles on the same topic and summarize the perspective and content of each source. This summary is then provided to the user in a format that can be quickly digested.
[0927] 5. Information provision
[0928] The server sends the generated summary and comparison results to the user terminal, a process that includes converting them into an appropriate data format and preparing them for display in the user's interface.
[0929] 6. User Interaction
[0930] Users can use their devices to view the information provided and provide feedback on the content, such as "This article is reliable" or "This article is biased." The server collects this feedback and reflects it in the next data analysis and evaluation.
[0931] Specific examples
[0932] For example, here's how it works for news about the coronavirus:
[0933] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0934] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[0935] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[0936] 4. The server summarizes the differences between articles from each source and provides them to the user.
[0937] 5. Users view the summary on their devices and provide feedback.
[0938] 6. The server will incorporate the collected feedback into the next analysis.
[0939] The above system and method allow users to efficiently obtain multifaceted and reliable information, enabling them to form unbiased opinions. Furthermore, by continuously improving the system through feedback, the provision of more accurate and reliable information is realized.
[0940] The processing flow will be explained below.
[0941] Step 1:
[0942] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles. In this case, it queries an RSS feed or API endpoint to get the article URL. It then uses the URL to extract the article text.
[0943] Step 2:
[0944] The server analyzes the retrieved articles using natural language processing technology. Specifically, it performs the following operations:
[0945] Tokenization: Breaking down the article text into grammatically meaningful units.
[0946] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[0947] Sentiment analysis: Evaluates the tone of an article and calculates a sentiment score: positive, negative, or neutral.
[0948] Keyword extraction: Identifying important, frequently occurring words and phrases.
[0949] Step 3:
[0950] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if source A contains articles that are 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning toward positive.
[0951] Step 4:
[0952] The server compares and summarises each source based on the evaluation results. Specifically, it performs the following operations:
[0953] Organize the resulting data in a comparative table format to visualize how different sources report on a single topic.
[0954] Write a summary statement highlighting the main points of view and tone of each source, for example, Source A focuses on economics, Source B focuses on health.
[0955] Step 5:
[0956] The server provides the generated comparison and summary to the user's device. When providing the data, it converts it into an appropriate data format and makes it displayable on the device according to the user interface specifications. For example, the data is sent in JSON format, and the device application parses it and displays it on the screen.
[0957] Step 6:
[0958] The user views the provided information on their device. The user interface presents the information in an easy-to-read format, provides summaries and comparison tables, and provides links to view the article in more detail.
[0959] Step 7:
[0960] The user provides feedback by selecting a feedback option (e.g., "trustworthy" or "biased") and sending the information from the device to the server.
[0961] Step 8:
[0962] The server collects user feedback and reflects it in the next data analysis and evaluation. Based on the new feedback, the analysis algorithm and evaluation criteria are adjusted to improve the accuracy and reliability of the system.
[0963] Example 1
[0964] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0965] In today's internet environment, fake news and biased reporting are commonplace, making it difficult for users to obtain accurate and balanced information. This increases the risk that users will make incorrect decisions based on biased information. Furthermore, scrutinizing all articles provided by numerous sources takes time and effort, making it difficult to effectively gather information.
[0966] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0967] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for collecting feedback from users, and means for reflecting the collected feedback in the next data analysis and evaluation. This allows users to quickly obtain multifaceted and reliable information and form opinions with less bias. Furthermore, the system is continuously improved through feedback, enabling the provision of even more accurate and reliable information.
[0968] "Sources" are websites or platforms such as news sites, blogs, and social media that provide news articles and information content.
[0969] An "article" is text content written to convey news or information and published on a news site, blog, or other source.
[0970] "Natural language processing technology" is a technology that enables computers to understand, analyze, and generate human language, and includes processes such as tokenization, topic modeling, sentiment analysis, and keyword extraction.
[0971] "Tone" is an indicator of the tone and perspective a particular source uses to report a news story, and includes a positive, negative, or neutral sentiment score and bias.
[0972] A "Comparison and Summary" is a concise explanation based on articles from multiple sources that summarizes the main points and differences in perspective, and is provided to help users quickly understand the information.
[0973] "User terminal" means a device used by a user to view information and provide feedback, including a smartphone, tablet, or PC.
[0974] "Feedback" refers to a user's opinion or evaluation of the information provided, including comments on reliability, bias, etc., and an evaluation score.
[0975] A "generative AI model" is an artificial intelligence model used for text generation and summary generation, which includes a neural network trained on a large dataset.
[0976] This invention relates to a system that enables users to efficiently obtain accurate and balanced information. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it compares the articles based on the evaluation results, generates summaries, and provides them to the user's terminal.
[0977] 1. Data Collection
[0978] The server collects articles from pre-defined news sites and sources. This collection is done using web scraping libraries such as Python's BeautifulSoup and Scrapy. It is also possible to obtain the URLs of the latest articles using a news API. For example, the server can use the News API to obtain the URLs of articles related to the "new coronavirus" and then scrape the articles to store them in a database.
[0979] 2. Data Analysis
[0980] The server analyzes the retrieved articles using natural language processing (NLP) techniques. Specifically, it tokenizes them using NLTK or spaCy, performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts keywords using TF-IDF or RAKE.
[0981] 3. Reporting Stance Evaluation
[0982] Based on the analysis results, the server evaluates the reporting stance of each source. This evaluation involves quantifying the sentiment score of the article and calculating the proportion of positive, negative, and neutral opinions for each source. This allows the server to assess the degree of bias of a particular source.
[0983] 4. Comparison and Summary
[0984] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it generates a comparative summary of multiple articles on the same topic. This summary is provided to users in a format that can be quickly understood.
[0985] 5. Information provision
[0986] The server sends the generated summary and comparison results to the user's device. This process involves transferring the data in JSON format using an HTTP request and preparing it for display in a user interface, where the data is displayed in an easy-to-read format.
[0987] 6. User Interaction
[0988] Users use their devices to view the information provided and provide feedback on its content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation. This allows the system to continuously improve and provide more accurate and reliable information.
[0989] Specific examples
[0990] For example, here's how it works for news about the coronavirus:
[0991] 1. The server collects articles about the "new coronavirus" from multiple sources.
[0992] 2. The server analyzes each article using natural language processing techniques to extract key topics and sentiment (e.g., using VADER to assess positive / negative tone).
[0993] 3. The server evaluates the reporting stance based on the sentiment score of each article and calculates the bias and fairness of each source.
[0994] 4. The server summarizes the differences between articles from different sources, using a generative AI model to generate coherent text.
[0995] 5. The user views the summary on their device and provides feedback.
[0996] 6. The server will incorporate the collected feedback into the next data analysis.
[0997] Examples of prompts for generative AI models include:
[0998] "Collect the latest articles about COVID-19 and analyze each article for topic and sentiment."
[0999] "Evaluate differences in reporting stances and generate summaries based on articles from multiple sources."
[1000] "Collect user feedback and incorporate it into your next analysis."
[1001] This system allows users to quickly obtain multifaceted, reliable information, enabling them to form unbiased opinions. Furthermore, the system is continuously improved based on collected feedback, providing more accurate and reliable information.
[1002] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1003] Step 1:
[1004] The server collects articles from pre-configured news sites and information sources. This collection process uses web scraping libraries such as Python's BeautifulSoup and Scrapy. It also obtains the URLs of the latest articles using the News API. For example, if a user specifies that articles related to the "new coronavirus" be collected, the server uses the News API to obtain the URLs of related articles, scrapes the article text based on those URLs, and stores it in the database.
[1005] Input: News API endpoint, search query (e.g., "coronavirus")
[1006] Output: Article body data (stored in database)
[1007] Specific behavior:
[1008] The server calls the NewsAPI to get the article URL.
[1009] The server uses BeautifulSoup to extract the article text from the obtained URL and save it in the database.
[1010] Step 2:
[1011] The server analyzes the retrieved articles using natural language processing (NLP) techniques. First, it tokenizes them using NLTK or spaCy, then performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts important keywords using TF-IDF or RAKE.
[1012] Input: Article body data (retrieved from database)
[1013] Output: Analysis results (topics, sentiment scores, keywords)
[1014] Specific behavior:
[1015] The server tokenizes the article text using NLTK.
[1016] The server uses LDA to perform topic modeling and extract major themes.
[1017] The server uses VADER to calculate the sentiment score for the article.
[1018] The server uses TF-IDF to extract important keywords.
[1019] Step 3:
[1020] The server evaluates the reporting stance of each source based on the analysis results. To do this, it quantifies the sentiment score of the article and calculates the proportion of positive, negative, and neutral opinions for each source. Based on these results, it quantitatively evaluates the bias of a specific source.
[1021] Input: Analysis results (topics, sentiment scores, keywords)
[1022] Output: Reporting attitude evaluation results (proportion of positive, negative, and neutral)
[1023] Specific behavior:
[1024] The server aggregates the sentiment scores for each article and calculates the percentage of positive, negative, and neutral sentiment.
[1025] The server evaluates the bias of each source and stores the results in a database.
[1026] Step 4:
[1027] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it compares multiple articles on the same topic and generates a coherent summary. This summary is then provided to the user for quick understanding.
[1028] Input: Reporting attitude evaluation results
[1029] Output: Generated summary
[1030] Specific behavior:
[1031] The server inputs a prompt sentence into the generative AI model and generates a summary.
[1032] The server stores the generated summaries in a database.
[1033] Step 5:
[1034] The server sends the generated summary and comparison results to the user device, using an HTTP request to transfer the data in JSON format, preparing it for display in a format suitable for the user interface.
[1035] Input: Generated summary, reporting attitude evaluation results
[1036] Output: Summary and evaluation results displayed on the user's terminal
[1037] Specific behavior:
[1038] The server converts the summary and evaluation results into JSON format.
[1039] The server sends data to the user terminal using an HTTP request.
[1040] The server adapts the display format of the data to suit the user interface.
[1041] Step 6:
[1042] Users use their devices to view the information provided and provide feedback on the content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation.
[1043] Input: User feedback
[1044] Output: Improved analysis and evaluation algorithms
[1045] Specific behavior:
[1046] The user views the provided summary at the terminal.
[1047] Users provide feedback on confidence and bias.
[1048] The server stores the user feedback in a database and reflects it in the next data analysis.
[1049] (Application example 1)
[1050] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1051] In today's internet environment, fake news and biased reporting are widespread, making it difficult for users to obtain accurate and balanced information. Furthermore, there are limited means to objectively evaluate the reliability and bias of information, making it difficult for users to understand the degree of bias in each source. Furthermore, while users need to be able to quickly digest collected news information and comprehensively understand reports from different perspectives, there is a lack of efficient ways to do this.
[1052] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1053] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a mobile information terminal, means for collecting news related to a topic selected by a user, means for displaying the sentiment scores and main topics of the analyzed articles, means for visualizing the bias and sentiment score for each article, and means for comparing multiple articles and generating summaries. This allows users to efficiently acquire diversified and less biased information.
[1054] A "source" is a source such as a website or API that provides news articles or information content.
[1055] "Means of obtaining articles" refers to methods of collecting news articles from multiple sources using news APIs and web scraping technology.
[1056] "Natural language processing technology" is a general term for algorithms and techniques for understanding and analyzing text, including tokenization, sentiment analysis, and topic modeling.
[1057] The "means for assessing reporting stance" is a method that uses natural language processing technology to calculate an emotional score for each article and then evaluates the bias and fairness of each source based on that score.
[1058] The "comparison and summary generation method" is a method for comparing the content and tone of articles collected from multiple sources and generating a comprehensive summary.
[1059] A "mobile information terminal" is an information processing device capable of mobile communication, such as a smartphone or tablet terminal.
[1060] The "sentiment score" is a numerical evaluation value that indicates whether the content of an article is positive, negative, or neutral.
[1061] A "topic" refers to the main theme or subject of a news article.
[1062] "Tokenization" is the process of dividing text into meaningful units called tokens.
[1063] "Keyword extraction" is a technique for identifying important words and phrases that appear frequently in a text.
[1064] "Feedback" refers to the act of a user providing feedback on the quality and reliability of an article.
[1065] This invention is a system that allows users to obtain accurate and balanced information. It collects news articles from multiple sources and analyzes them using natural language processing technology. It also evaluates the reporting stance of each source, and based on the results, generates comparisons and summaries and provides them to the user's terminal. This system uses the following hardware and software.
[1066] Hardware and Software
[1067] Server: A central processing unit for acquiring, analyzing, evaluating, comparing, summarizing, and providing news articles. Specific servers can be cloud-based services (e.g., AWS, Google Cloud).
[1068] Smartphone: A mobile information device that allows users to view news information and provide feedback.
[1069] Natural language processing library: used to analyze the retrieved articles. Examples: NLTK, spaCy.
[1070] Machine learning frameworks: used to perform article sentiment scoring and topic modeling. Examples: TensorFlow, PyTorch.
[1071] Web scraping tools: Used to gather articles from news sites. Example: BeautifulSoup.
[1072] Database: Used to store news articles and user feedback. Examples: SQLite, PostgreSQL.
[1073] Operation explanation
[1074] 1. News gathering
[1075] The server retrieves news articles related to the user's selected topic from multiple sources using pre-configured news APIs and web scraping tools, and stores the retrieved articles in a database.
[1076] 2. Natural Language Processing Analysis
[1077] The server analyzes the collected articles using a natural language processing library, which includes the following steps:
[1078] Tokenization: Breaking text into meaningful units (tokens).
[1079] Keyword extraction: Extract important words and phrases.
[1080] Sentiment analysis: Classifies the tone of an article as positive, negative, or neutral and calculates a sentiment score.
[1081] Topic modeling: Extracting major themes.
[1082] 3. Reporting Stance Evaluation
[1083] The server evaluates the sentiment score of each article based on the results of natural language processing analysis, quantifying the reporting stance of each source, and using this to evaluate the bias and fairness of each source.
[1084] 4. Comparison and Summary
[1085] The server compares multiple articles and generates summaries based on the results of the reporting assessment, allowing users to understand the reporting content from different sources at a glance.
[1086] 5. Information provision
[1087] The server provides the generated summaries and evaluation results to a smartphone, where users can view the summaries and provide feedback on specific articles.
[1088] 6. Feedback
[1089] The smartphone application collects user feedback and sends it to the server, which then incorporates it into the next data analysis and evaluation.
[1090] Specific examples
[1091] For example, consider the case where a user who wants to find news about the new coronavirus uses an app called "News Balancer."
[1092] 1. A user enters the topic "COVID-19" into the app.
[1093] 2. The server uses news APIs and web scraping tools to collect relevant articles from multiple sources.
[1094] 3. The server analyzes the article using natural language processing technology and extracts sentiment scores and major topics.
[1095] 4. The server evaluates the reporting stance based on the article's sentiment score and main topics, and quantifies the bias.
[1096] 5. The server compares multiple articles based on the evaluation results and generates a summary.
[1097] 6. The summary and evaluation results are sent to the user's smartphone and displayed.
[1098] 7. Users view the article and provide feedback.
[1099] Example prompts to input to the generative AI model
[1100] "Collect news articles about COVID-19 and use natural language processing to analyze the sentiment scores and main themes. Compare the reporting stances of multiple sources and provide a user-friendly summary."
[1101] This system allows users to efficiently obtain multifaceted and unbiased information.
[1102] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1103] Step 1:
[1104] The server retrieves news articles from multiple sources using news APIs and web scraping tools based on the topics selected by the user.
[1105] Input: User-defined topic
[1106] Output: A list of retrieved news articles
[1107] Specific operation: The server sends a request to the pre-configured news API endpoint to obtain relevant news article data and store it in the database. It also uses a web scraping tool to scrape articles from each news site and store the content in the database.
[1108] Step 2:
[1109] The server analyzes the retrieved news articles using natural language processing libraries (e.g., NLTK, spaCy).
[1110] Input: A list of retrieved news articles
[1111] Output: Parsed article data (tokens, keywords, sentiment scores, topics, etc.)
[1112] What it does: The server passes the news article text data to a natural language processing library for tokenization, keyword extraction, sentiment analysis, and topic modeling, for example, to calculate the article's sentiment score and classify it into a positive, negative, or neutral category.
[1113] Step 3:
[1114] The server evaluates the reporting stance of each source based on the results of natural language processing analysis.
[1115] Input: Parsed article data (sentiment scores, topics, etc.)
[1116] Output: Reporting attitude evaluation results for each source (bias score)
[1117] What it does: The server aggregates the sentiment scores of articles and calculates a bias score for each source, which is a numerical value of how positive, negative, or neutral each source is.
[1118] Step 4:
[1119] The server compares multiple articles and generates summaries based on the results of the reporting stance evaluation.
[1120] Input: Reporting attitude evaluation results for each source, analyzed article data
[1121] Output: Compared and summarized article data
[1122] How it works: The server compares multiple articles on the same topic based on the evaluation results, extracts key points and different perspectives, and creates a summary that is presented to the user in a format that is easy to understand.
[1123] Step 5:
[1124] The server sends the generated summary and evaluation results to the smartphone device.
[1125] Input: Comparison and summarized article data
[1126] Output: Summary and evaluation results displayed on smartphone
[1127] Specific operation: The server formats the data and provides users with summarized information and reporting stance evaluation results in cooperation with a smartphone application.
[1128] Step 6:
[1129] Users can view the provided summary and evaluation results on their smartphone and provide feedback if necessary.
[1130] Input: User feedback (trust rating, etc.)
[1131] Output: Feedback data
[1132] How it works: Users can enter their opinions about each article in the smartphone app, including their assessment of the article's reliability, bias, etc.
[1133] Step 7:
[1134] The server collects feedback from users and reflects it in the next data analysis and evaluation.
[1135] Input: User feedback data
[1136] Output: Updated evaluation model, data reflected in next analysis
[1137] How it works: The server stores the feedback data in a database and uses it to train machine learning models, which improves the accuracy of the next news analysis and reporting stance evaluation.
[1138] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1139] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[1140] System Configuration
[1141] 1. Data Collection
[1142] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles, for example by getting the URL of the latest article from an RSS feed or API endpoint and extracting the article text from that URL.
[1143] 2. Data Analysis
[1144] The server analyzes the retrieved articles using natural language processing technology. The specific tasks are as follows:
[1145] Tokenization: Breaking down the article text into grammatically meaningful units.
[1146] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[1147] Sentiment Analysis: Evaluate the sentiment of an article. Calculate a positive, negative, or neutral sentiment score.
[1148] Keyword extraction: Identifying important, frequently occurring words and phrases.
[1149] 3. Reporting Stance Evaluation
[1150] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if Source A is 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning more toward the positive side.
[1151] 4. Comparison and Summary
[1152] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The specific work is as follows:
[1153] Organize the resulting data in comparative tables, for example to visualize how different sources report on a single topic.
[1154] Write a summary that highlights the main perspective and tone of each source, for example, Source A focuses on economic issues, while Source B focuses on health issues.
[1155] 5. Information provision
[1156] The server provides the generated comparison and summary to the user's device, converting them into an appropriate data format and making them displayable according to the user interface specifications. For example, the data can be sent in JSON format, and the device application can parse it and display it on the screen.
[1157] 6. Emotion Engine
[1158] The device is equipped with an emotion engine that recognizes the user's emotions. When the user browses information, emotion data is acquired from their facial expressions and actions. Specifically, the emotion engine uses a camera and microphone to analyze facial expressions and tone of voice, and determines the user's current emotional state.
[1159] 7. User Interaction
[1160] Users view the information provided on their devices and provide feedback on the content. Emotional data recognized by the emotion engine is also collected. Feedback is in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next data analysis and evaluation.
[1161] Specific examples
[1162] For example, here's how it works for news about the coronavirus:
[1163] 1. The server collects articles about the "new coronavirus" from multiple sources.
[1164] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[1165] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[1166] 4. The server summarizes the differences between articles from each source and provides them to the user's terminal.
[1167] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[1168] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotional state data.
[1169] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[1170] This system allows users to efficiently obtain multifaceted, reliable information and receive content tailored to their emotions. Furthermore, the system is continuously improved through feedback, enabling the provision of more accurate and reliable information.
[1171] The processing flow will be explained below.
[1172] Step 1:
[1173] The server collects news articles from multiple sources, periodically queries a pre-defined list of news sites and APIs to retrieve the latest article URLs, and then parses the HTML pages from the URLs to extract information such as the article title, body text, and publication date.
[1174] Step 2:
[1175] The server analyzes the retrieved articles using natural language processing (NLP) technology. Specifically, it performs the following operations:
[1176] Tokenization: Breaking text down into words and phrases.
[1177] Topic modeling: Extract major topics using LDA (Latent Dirichlet Allocation) and other methods.
[1178] Sentiment analysis: Calculates a sentiment score (positive, negative, neutral).
[1179] Keyword extraction: Analyze the frequency of important words and phrases.
[1180] Step 3:
[1181] The server evaluates the reporting stance of each source based on the analysis results. Evaluation criteria include a positive, negative, or neutral sentiment score, topic diversity, and the number of cited sources. For example, the server evaluates whether the reporting stance of source A is generally positive or negative.
[1182] Step 4:
[1183] The server generates a comparison and summary for each source based on the evaluation results. Specific operations include:
[1184] The sentiment scores and topic distribution for each source are summarized in a comparison table.
[1185] Generate summaries that highlight key perspectives and reporting styles, such as classifying source A as focusing on economic impacts and source B as focusing on medical impacts.
[1186] Step 5:
[1187] The server sends the generated comparison and summary to the user's device. At this time, the data is formatted in JSON format or other formats to suit the device's UI. The device application receives this data and displays it on the screen.
[1188] Step 6:
[1189] The device uses an emotion engine to recognize the user's emotions as they browse articles. For example, it uses a camera and microphone to analyze the user's facial expressions and tone of voice to obtain emotion data. The emotion data captures the user's reactions in real time as they browse articles.
[1190] Step 7:
[1191] The user views the information provided on the device and provides feedback. They select a feedback option (e.g., "trustworthy" or "biased") and send the information from the device to the server. Emotion data collected by the emotion engine is also sent at the same time.
[1192] Step 8:
[1193] The server collects user feedback and emotion data and reflects it in the next data analysis and evaluation. For example, if a particular article stresses a user, the algorithm will be adjusted to reduce the frequency of such articles from the next time. The server integrates the feedback and emotion data to further improve the analysis algorithm and evaluation criteria.
[1194] Example 2
[1195] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1196] In today's information society, users are required to efficiently collect a large number of news articles from a variety of sources and understand the reporting stance of each source. However, evaluating the reliability and balance of information is difficult, and there are few systems that provide information that suits the user's emotional state. Therefore, there is a need for a system that allows users to obtain reliable and balanced news information without feeling excessive stress.
[1197] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for acquiring articles from multiple information sources, a means for analyzing the acquired articles using natural language processing technology, a means for evaluating the reporting stance of each information source, a means for generating a comparison and summary for each information source based on the evaluation results, a means for providing the generated comparison and summary to a user terminal, and a terminal equipped with an emotion engine that recognizes the user's emotions. This allows the user to efficiently obtain accurate and balanced information and further allows the user to receive news content that is tailored to the user's emotional state.
[1198] "Multiple sources" refers to a collection of information provided from a variety of sources and media.
[1199] An "article" is a piece of writing or a report written to convey news or information.
[1200] "Means of collection" refers to the methods and technologies used to collect data from websites and APIs.
[1201] "Natural language processing technology" refers to computer technology for analyzing and processing human language, including tokenization, topic modeling, sentiment analysis, and keyword extraction.
[1202] "Means of analysis" refers to the techniques and methods used to break down and analyze collected information and extract useful data and patterns.
[1203] "News tone" refers to the tone or perspective from which a source reports the news, and includes positive, negative, or neutral emotional assessments.
[1204] "Means of evaluation" refers to techniques and methods for measuring and judging based on specific criteria, based on data and information.
[1205] "Comparison and summary generation methods" refers to techniques and methods for comparing data from multiple sources and providing a concise summary of the main points.
[1206] A "user terminal" is a device or equipment through which a user accesses information.
[1207] "Means of providing" refers to the technology and methods used to deliver the generated information to users.
[1208] An "emotion engine" is a system or software that recognizes and analyzes a user's emotional state.
[1209] "Feedback" refers to the opinions and reactions that users provide to the system.
[1210] A "topic" is the subject or theme of a news article or piece of information.
[1211] "Keywords" are important words or phrases within the text data.
[1212] "Tone" refers to the emotional tone or mood of a piece of writing or an article.
[1213] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[1214] System Configuration
[1215] 1. Data Collection
[1216] The server uses Python libraries such as BeautifulSoup and requests to collect news articles from multiple sources. Sources include websites (e.g., general news sites) and news APIs (e.g., NewsAPI). Specifically, at a set time each day, the server checks a configured list of websites and API endpoints and retrieves the latest articles from RSS feeds and APIs.
[1217] 2. Data Analysis
[1218] The server analyzes the collected news articles using natural language processing (NLP) techniques, using libraries such as NLTK and SpaCy. It can perform the following operations:
[1219] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[1220] Topic modeling: Uses LDA (Latent Dirichlet Allocation) to extract major themes.
[1221] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[1222] Keyword extraction: Extract important words and phrases using the TF-IDF method.
[1223] 3. Reporting Stance Evaluation
[1224] The server evaluates the reporting stance of each source based on the analysis results. The sentiment scores are combined to calculate the overall trend of the source. For example, if source A is 75% positive, 15% negative, and 10% neutral, the source is evaluated as having a strong positive reporting stance.
[1225] 4. Comparison and Summary
[1226] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on the same topic. It also summarizes the main points of view and differences in tone in a summary.
[1227] 5. Information provision
[1228] The server provides the generated comparison table and summary in JSON format to the user's device, where the device application parses the JSON data and displays it in an appropriate user interface.
[1229] 6. Emotion Engine
[1230] The device is equipped with an emotion engine that recognizes the user's emotions. It uses the camera and microphone to analyze the user's facial expressions and tone of voice to determine their emotional state. For example, OpenCV and Affdex SDK are used to analyze facial expressions, and a voice analysis library (e.g., praat, librosa) is used to analyze the voice recorded from the microphone.
[1231] 7. User Interaction
[1232] Users view the information provided on their devices and provide feedback on the content. Feedback is in the form of "This article is reliable" or "This article is biased," and the server collects this feedback and reflects it in the next data analysis and evaluation. This improves the accuracy and reliability of the system.
[1233] Specific examples
[1234] For example, to collect and analyze news articles about a new virus, it works like this:
[1235] 1. The server collects articles about the "new virus" from multiple sources.
[1236] 2. The server analyzes each article using natural language processing technology (NLTK or Spacy) to extract key topics and sentiment.
[1237] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table and summary.
[1238] 4. The server summarizes the differences between articles from each source and provides them to the user's device. The data is sent in JSON format, and the device application parses and displays it.
[1239] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[1240] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotion data.
[1241] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[1242] Example prompts for generative AI models
[1243] This system collects news articles from multiple sources and analyzes them using natural language processing technology. It also recognizes the user's emotions and optimizes the information provided. For example, it has a function that collects the latest news articles about the new coronavirus, determines the user's current emotional state using an emotion engine, and then displays articles with relaxing content. Please provide a detailed explanation of the system based on this example.
[1244] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1245] Step 1: Data collection
[1246] The server retrieves articles from multiple sources. Specifically, it uses Python libraries such as BeautifulSoup and requests to gather data from websites and news APIs. A pre-configured list of source URLs and API endpoints is provided as input. Based on these inputs, the server retrieves the latest article URLs and extracts the article text from those URLs. The output is data containing the article text and associated metadata.
[1247] Specific behavior:
[1248] It checks a set list of websites and API endpoints at a set time each day.
[1249] Get new article URLs and metadata from RSS feeds or APIs.
[1250] Extract article text from a web page using BeautifulSoup.
[1251] Step 2: Data analysis
[1252] The server analyzes the retrieved articles using natural language processing technology. The article text retrieved in the data collection step is provided as input. Based on this input, the server performs the following data processing and calculations, and obtains the analysis results as output:
[1253] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[1254] Topic modeling: Extract major themes using LDA (Latent Dirichlet Allocation).
[1255] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[1256] Keyword extraction: Identify important words and phrases using the TF-IDF method.
[1257] Specific behavior:
[1258] Use NLTK's word_tokenize function to break down the article text into words.
[1259] Run LDA to extract major topics.
[1260] Analyzes sentiment using VADER or TextBlob and calculates a sentiment score.
[1261] Extract important keywords using the TF-IDF method.
[1262] Step 3: Reporting Stance Assessment
[1263] The server evaluates the reporting stance of each source based on the analysis results. The input is the sentiment score obtained in the data analysis step. Based on this input, the sentiment scores are combined to evaluate the reporting stance of each source. The output is the reporting tendency (positive, negative, neutral) of each source.
[1264] Specific behavior:
[1265] The sentiment scores for each article are tallied to calculate the percentage of positive, negative, and neutral opinions for each source.
[1266] Analyze the trends of each source and evaluate their reporting stance.
[1267] Step 4: Compare and summarize
[1268] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The evaluation results of each source obtained in the reporting stance evaluation step are provided as input. Data comparison is performed based on this input, and a summary and comparison table are generated as output.
[1269] Specific behavior:
[1270] The evaluation results are obtained using an SQL query and organized in a comparison table format.
[1271] Write a summary that highlights the differences in perspective and tone of each source.
[1272] Step 5: Provide information
[1273] The server provides the generated comparison table and summary to the user terminal. The summary and comparison table generated in the comparison and summary step are provided as input. Based on this input, data is obtained as output in JSON format and converted into a displayable state according to the user interface specifications.
[1274] Specific behavior:
[1275] The server's API endpoint receives the summary and comparison table and outputs the data in JSON format.
[1276] The application on the user's device parses the JSON data and displays it in the user interface.
[1277] Step 6: Emotion Engine
[1278] The device is equipped with an emotion engine that recognizes the user's emotions. The user's facial expressions and tone of voice are provided as input. Analysis is performed based on this input, and the user's emotional state (positive, negative, neutral) is obtained as output.
[1279] Specific behavior:
[1280] The user's facial expressions are captured using the device's camera and analyzed using OpenCV and Affdex SDK.
[1281] The voice recorded by the microphone is analyzed using a voice analysis library (praat or librosa) to determine the emotional state.
[1282] Step 7: User Interaction
[1283] Users browse the information provided on their devices and provide feedback on the content. The input is the provided news summary or comparison table, and by submitting feedback based on this content, feedback data is obtained as output. The server reflects this feedback data in the next data analysis and evaluation.
[1284] Specific behavior:
[1285] A feedback form is displayed in the device application, and the user enters their opinion, such as "This article is trustworthy" or "This article is biased."
[1286] The feedback data is sent to a server and stored in a database.
[1287] This process allows users to efficiently obtain reliable and balanced news information and provides emotionally relevant news content. Furthermore, collecting user feedback improves the accuracy and reliability of the system.
[1288] (Application example 2)
[1289] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1290] When collecting and analyzing news articles, it is difficult to provide information based on the individual emotions and interests of users. Furthermore, displaying appropriate advertisements requires taking into account both the user's emotions and the article content, but achieving this in real time with conventional technology has been difficult. Furthermore, a method is needed to continuously learn from user feedback and improve the accuracy of the system.
[1291] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for recognizing the user's emotional state, and means for selecting and displaying optimal advertisements based on the user's emotional state and the emotional evaluation of the article. This makes it possible to provide appropriate information and advertisements based on the user's emotions and the content of the article in real time.
[1292] "Source" refers to the source material or platform from which data is obtained, including websites, APIs, feeds, etc. that provide news articles and data.
[1293] "Natural language processing technology" refers to computational techniques for analyzing, understanding, and generating language data, and includes techniques such as tokenization, topic modeling, and sentiment analysis.
[1294] "News tone" refers to the way information is presented and the emotional assessment in news articles and sources, and evaluates whether the article is biased towards the positive, negative, or neutral.
[1295] "Comparison" refers to a method of evaluating data obtained from multiple sources using uniform criteria and clarifying the differences.
[1296] A "summary" is a concise, easy-to-understand summary of detailed information, providing a brief summary of the main points and perspectives of a news article from a source.
[1297] "User terminal" refers to a device through which a user receives information, and includes smartphones, tablets, computers, etc.
[1298] "Emotional state" refers to the internal feelings a user shows while browsing information, and is analyzed from facial expressions such as joy, sadness, surprise, and language.
[1299] "Advertisement" refers to information intended to promote the sale of products or services, and is selected and displayed based on the user's interests and emotions.
[1300] A system for implementing this invention collects news articles from multiple sources, analyzes them using natural language processing techniques, and displays optimal advertisements based on the user's emotional state.
[1301] First, the server retrieves news articles from multiple sources, including websites, news APIs, RSS feeds, etc.
[1302] The server then analyzes the retrieved news articles using natural language processing (NLP) techniques, such as tokenization, topic modeling, sentiment analysis, and keyword extraction. This allows the server to extract major topics, sentiment scores, and important keywords from the article text. Specific software used includes TextBlob and spaCy.
[1303] The server then rates each source's reporting stance using an algorithm that combines the sentiment scores of each article and calculates the overall trend of the source, so for example, a source might be classified as 75% positive, 15% negative, or 10% neutral.
[1304] The server then compares each source and generates a summary based on the evaluation results. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on a single topic. The generated summary is sent to the user's device in JSON format or similar.
[1305] On the user device, an emotion engine recognizes the user's emotional state. It uses a camera and microphone to analyze the user's facial expressions and tone of voice to determine the user's current emotional state. The specific software used is the FER (Face Emotion Recognition) library.
[1306] The server then applies an algorithm to select the most appropriate advertisement based on the user's current emotional state and the emotional score of the news article. If the user's emotional state matches the emotional rating of the article, the corresponding advertisement is selected and displayed on the user's device at the appropriate time.
[1307] Users can view these news articles and advertisements and provide feedback, which is collected by the server and reflected in the next data analysis and evaluation.
[1308] A specific example is a news article about the new coronavirus. The server collects articles about the new coronavirus from multiple sources and analyzes them using natural language processing technology, extracting key topics and emotion scores. While the user is browsing the article, the device's camera analyzes the user's facial expressions to recognize, for example, a positive emotional state. Based on this information, the server selects advertisements for health-related products and displays them on the user's device.
[1309] An example of a prompt is:
[1310] "A new COVID-19 vaccine has been developed. A positive reaction can be detected from the user's facial expressions."
[1311] Based on this prompt, the system will carry out the appropriate processing.
[1312] This makes it possible to provide appropriate information and advertisements in real time based on the user's emotions and article content.
[1313] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1314] Step 1:
[1315] The server retrieves news articles from multiple sources. It collects the latest articles from websites, news APIs, and RSS feeds, and extracts the article text from each source. The input is the URL or API endpoint of the source, and the output is the text data of the retrieved news article.
[1316] Step 2:
[1317] The server analyzes the retrieved news articles using natural language processing technology. Specifically, it tokenizes the article text, applies topic modeling (e.g., LDA), and performs sentiment analysis. It also extracts important keywords. The input is the text data of the news articles, and the output is each article's topic, sentiment score, and extracted keywords.
[1318] Step 3:
[1319] The server evaluates the reporting stance of each source based on the analysis results. It aggregates the sentiment scores of each article and calculates the overall positive, negative, or neutral tendency of the source. The input is the result of sentiment analysis, and the output is an evaluation of the reporting stance of each source.
[1320] Step 4:
[1321] The server generates a comparison and summary for each source based on the evaluation results. The analysis results are organized in a comparison table format to visualize the coverage of different sources on a single topic. It also summarizes important differences in perspective and tone in a summary. The input is the evaluated reporting data, and the output is a comparison table and a summary.
[1322] Step 5:
[1323] The server provides the generated comparison and summary to the user's device. It converts the data into an appropriate format (e.g., JSON format) and makes it displayable according to the user interface specifications. The input is the comparison table and summary text, and the output is the data sent to the user's device.
[1324] Step 6:
[1325] The device uses an emotion engine to recognize the user's emotional state. The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice, and determines the user's emotions. The input is the user's facial image and voice data, and the output is the user's emotional state (e.g., positive, negative, neutral).
[1326] Step 7:
[1327] The server selects and displays the optimal advertisement based on the user's emotional state and the emotional rating of the news article. For example, if the user is in a positive emotional state, it selects an advertisement related to an article with a positive emotional rating. The input is the user's emotional state data and the emotional rating data of the news article, and the output is the selected advertisement URL.
[1328] Step 8:
[1329] Users view news articles or displayed advertisements on their devices and provide feedback. Feedback is collected in the form of statements such as "This article is trustworthy" or "This article is biased." The input is user feedback, and the output is feedback data.
[1330] Step 9:
[1331] The server reflects the collected feedback data in the next data analysis and evaluation, thereby improving the accuracy of the analysis and evaluation algorithms. The input is the feedback data, and the output is an updated analysis model and evaluation algorithm.
[1332] The above processing steps make it possible to provide appropriate information and advertisements in real time based on the user's emotions and the content of news articles.
[1333] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1334] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1335] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1336] [Fourth embodiment]
[1337] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1338] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1339] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1340] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1341] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1342] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1343] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1344] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1345] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1346] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1347] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1348] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1349] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1350] This invention relates to a system that enables users to obtain accurate and balanced information in the modern internet environment where fake news and biased reporting are rampant. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it generates comparisons and summaries based on the evaluation results and provides them to the user's device.
[1351] System Configuration
[1352] 1. Data Collection
[1353] The server collects articles from a pre-defined list of news sites and sources, using news APIs and web scraping techniques, for example, by retrieving the latest article URLs from RSS feeds or API endpoints and extracting the article text accordingly.
[1354] 2. Data Analysis
[1355] The server uses natural language processing (NLP) techniques to analyze the retrieved articles. Specifically, it performs the following tasks:
[1356] Tokenization: Breaking text into meaningful units.
[1357] Topic modeling: Extracting major themes.
[1358] Sentiment analysis: Evaluate the positive, negative, or neutral tone of an article.
[1359] Keyword extraction: Identifying important words and phrases that appear frequently in articles.
[1360] 3. Reporting Stance Evaluation
[1361] The server then evaluates the reporting stance of each source based on the analysis results, for example, quantifying the tone of each article based on a sentiment score and calculating the overall bias and impartiality of the source, thereby formalizing the degree to which a particular source is positive, negative, or neutral.
[1362] 4. Comparison and Summary
[1363] The server then compares the reporting stance of each source based on the evaluation results and generates a summary. For example, it can comprehensively compare multiple articles on the same topic and summarize the perspective and content of each source. This summary is then provided to the user in a format that can be quickly digested.
[1364] 5. Information provision
[1365] The server sends the generated summary and comparison results to the user terminal, a process that includes converting them into an appropriate data format and preparing them for display in the user's interface.
[1366] 6. User Interaction
[1367] Users can use their devices to view the information provided and provide feedback on the content, such as "This article is reliable" or "This article is biased." The server collects this feedback and reflects it in the next data analysis and evaluation.
[1368] Specific examples
[1369] For example, here's how it works for news about the coronavirus:
[1370] 1. The server collects articles about the "new coronavirus" from multiple sources.
[1371] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[1372] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[1373] 4. The server summarizes the differences between articles from each source and provides them to the user.
[1374] 5. Users view the summary on their devices and provide feedback.
[1375] 6. The server will incorporate the collected feedback into the next analysis.
[1376] The above system and method allow users to efficiently obtain multifaceted and reliable information, enabling them to form unbiased opinions. Furthermore, by continuously improving the system through feedback, the provision of more accurate and reliable information is realized.
[1377] The processing flow will be explained below.
[1378] Step 1:
[1379] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles. In this case, it queries an RSS feed or API endpoint to get the article URL. It then uses the URL to extract the article text.
[1380] Step 2:
[1381] The server analyzes the retrieved articles using natural language processing technology. Specifically, it performs the following operations:
[1382] Tokenization: Breaking down the article text into grammatically meaningful units.
[1383] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[1384] Sentiment analysis: Evaluates the tone of an article and calculates a sentiment score: positive, negative, or neutral.
[1385] Keyword extraction: Identifying important, frequently occurring words and phrases.
[1386] Step 3:
[1387] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if source A contains articles that are 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning toward positive.
[1388] Step 4:
[1389] The server compares and summarises each source based on the evaluation results. Specifically, it performs the following operations:
[1390] Organize the resulting data in a comparative table format to visualize how different sources report on a single topic.
[1391] Write a summary statement highlighting the main points of view and tone of each source, for example, Source A focuses on economics, Source B focuses on health.
[1392] Step 5:
[1393] The server provides the generated comparison and summary to the user's device. When providing the data, it converts it into an appropriate data format and makes it displayable on the device according to the user interface specifications. For example, the data is sent in JSON format, and the device application parses it and displays it on the screen.
[1394] Step 6:
[1395] The user views the provided information on their device. The user interface presents the information in an easy-to-read format, provides summaries and comparison tables, and provides links to view the article in more detail.
[1396] Step 7:
[1397] The user provides feedback by selecting a feedback option (e.g., "trustworthy" or "biased") and sending the information from the device to the server.
[1398] Step 8:
[1399] The server collects user feedback and reflects it in the next data analysis and evaluation. Based on the new feedback, the analysis algorithm and evaluation criteria are adjusted to improve the accuracy and reliability of the system.
[1400] Example 1
[1401] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1402] In today's internet environment, fake news and biased reporting are commonplace, making it difficult for users to obtain accurate and balanced information. This increases the risk that users will make incorrect decisions based on biased information. Furthermore, scrutinizing all articles provided by numerous sources takes time and effort, making it difficult to effectively gather information.
[1403] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1404] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for collecting feedback from users, and means for reflecting the collected feedback in the next data analysis and evaluation. This allows users to quickly obtain multifaceted and reliable information and form opinions with less bias. Furthermore, the system is continuously improved through feedback, enabling the provision of even more accurate and reliable information.
[1405] "Sources" are websites or platforms such as news sites, blogs, and social media that provide news articles and information content.
[1406] An "article" is text content written to convey news or information and published on a news site, blog, or other source.
[1407] "Natural language processing technology" is a technology that enables computers to understand, analyze, and generate human language, and includes processes such as tokenization, topic modeling, sentiment analysis, and keyword extraction.
[1408] "Tone" is an indicator of the tone and perspective a particular source uses to report a news story, and includes a positive, negative, or neutral sentiment score and bias.
[1409] A "Comparison and Summary" is a concise explanation based on articles from multiple sources that summarizes the main points and differences in perspective, and is provided to help users quickly understand the information.
[1410] "User terminal" means a device used by a user to view information and provide feedback, including a smartphone, tablet, or PC.
[1411] "Feedback" refers to a user's opinion or evaluation of the information provided, including comments on reliability, bias, etc., and an evaluation score.
[1412] A "generative AI model" is an artificial intelligence model used for text generation and summary generation, which includes a neural network trained on a large dataset.
[1413] This invention relates to a system that enables users to efficiently obtain accurate and balanced information. This system acquires articles from multiple sources, analyzes them using natural language processing technology, and evaluates the reporting stance of each source. Furthermore, it compares the articles based on the evaluation results, generates summaries, and provides them to the user's terminal.
[1414] 1. Data Collection
[1415] The server collects articles from pre-defined news sites and sources. This collection is done using web scraping libraries such as Python's BeautifulSoup and Scrapy. It is also possible to obtain the URLs of the latest articles using a news API. For example, the server can use the News API to obtain the URLs of articles related to the "new coronavirus" and then scrape the articles to store them in a database.
[1416] 2. Data Analysis
[1417] The server analyzes the retrieved articles using natural language processing (NLP) techniques. Specifically, it tokenizes them using NLTK or spaCy, performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts keywords using TF-IDF or RAKE.
[1418] 3. Reporting Stance Evaluation
[1419] Based on the analysis results, the server evaluates the reporting stance of each source. This evaluation involves quantifying the sentiment score of the article and calculating the proportion of positive, negative, and neutral opinions for each source. This allows the server to assess the degree of bias of a particular source.
[1420] 4. Comparison and Summary
[1421] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it generates a comparative summary of multiple articles on the same topic. This summary is provided to users in a format that can be quickly understood.
[1422] 5. Information provision
[1423] The server sends the generated summary and comparison results to the user's device. This process involves transferring the data in JSON format using an HTTP request and preparing it for display in a user interface, where the data is displayed in an easy-to-read format.
[1424] 6. User Interaction
[1425] Users use their devices to view the information provided and provide feedback on its content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation. This allows the system to continuously improve and provide more accurate and reliable information.
[1426] Specific examples
[1427] For example, here's how it works for news about the coronavirus:
[1428] 1. The server collects articles about the "new coronavirus" from multiple sources.
[1429] 2. The server analyzes each article using natural language processing techniques to extract key topics and sentiment (e.g., using VADER to assess positive / negative tone).
[1430] 3. The server evaluates the reporting stance based on the sentiment score of each article and calculates the bias and fairness of each source.
[1431] 4. The server summarizes the differences between articles from different sources, using a generative AI model to generate coherent text.
[1432] 5. The user views the summary on their device and provides feedback.
[1433] 6. The server will incorporate the collected feedback into the next data analysis.
[1434] Examples of prompts for generative AI models include:
[1435] "Collect the latest articles about COVID-19 and analyze each article for topic and sentiment."
[1436] "Evaluate differences in reporting stances and generate summaries based on articles from multiple sources."
[1437] "Collect user feedback and incorporate it into your next analysis."
[1438] This system allows users to quickly obtain multifaceted, reliable information, enabling them to form unbiased opinions. Furthermore, the system is continuously improved based on collected feedback, providing more accurate and reliable information.
[1439] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1440] Step 1:
[1441] The server collects articles from pre-configured news sites and information sources. This collection process uses web scraping libraries such as Python's BeautifulSoup and Scrapy. It also obtains the URLs of the latest articles using the News API. For example, if a user specifies that articles related to the "new coronavirus" be collected, the server uses the News API to obtain the URLs of related articles, scrapes the article text based on those URLs, and stores it in the database.
[1442] Input: News API endpoint, search query (e.g., "coronavirus")
[1443] Output: Article body data (stored in database)
[1444] Specific behavior:
[1445] The server calls the NewsAPI to get the article URL.
[1446] The server uses BeautifulSoup to extract the article text from the obtained URL and save it in the database.
[1447] Step 2:
[1448] The server analyzes the retrieved articles using natural language processing (NLP) techniques. First, it tokenizes them using NLTK or spaCy, then performs topic modeling using LDA (Latent Dirichlet Allocation), evaluates the article's sentiment (positive, negative, neutral) using VADER or TextBlob, and extracts important keywords using TF-IDF or RAKE.
[1449] Input: Article body data (retrieved from database)
[1450] Output: Analysis results (topics, sentiment scores, keywords)
[1451] Specific behavior:
[1452] The server tokenizes the article text using NLTK.
[1453] The server uses LDA to perform topic modeling and extract major themes.
[1454] The server uses VADER to calculate the sentiment score for the article.
[1455] The server uses TF-IDF to extract important keywords.
[1456] Step 3:
[1457] The server evaluates the reporting stance of each source based on the analysis results. To do this, it quantifies the sentiment score of the article and calculates the proportion of positive, negative, and neutral opinions for each source. Based on these results, it quantitatively evaluates the bias of a specific source.
[1458] Input: Analysis results (topics, sentiment scores, keywords)
[1459] Output: Reporting attitude evaluation results (proportion of positive, negative, and neutral)
[1460] Specific behavior:
[1461] The server aggregates the sentiment scores for each article and calculates the percentage of positive, negative, and neutral sentiment.
[1462] The server evaluates the bias of each source and stores the results in a database.
[1463] Step 4:
[1464] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Using a generative AI model (e.g., GPT-3), it compares multiple articles on the same topic and generates a coherent summary. This summary is then provided to the user for quick understanding.
[1465] Input: Reporting attitude evaluation results
[1466] Output: Generated summary
[1467] Specific behavior:
[1468] The server inputs a prompt sentence into the generative AI model and generates a summary.
[1469] The server stores the generated summaries in a database.
[1470] Step 5:
[1471] The server sends the generated summary and comparison results to the user device, using an HTTP request to transfer the data in JSON format, preparing it for display in a format suitable for the user interface.
[1472] Input: Generated summary, reporting attitude evaluation results
[1473] Output: Summary and evaluation results displayed on the user's terminal
[1474] Specific behavior:
[1475] The server converts the summary and evaluation results into JSON format.
[1476] The server sends data to the user terminal using an HTTP request.
[1477] The server adapts the display format of the data to suit the user interface.
[1478] Step 6:
[1479] Users use their devices to view the information provided and provide feedback on the content. Feedback is entered in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next analysis and evaluation.
[1480] Input: User feedback
[1481] Output: Improved analysis and evaluation algorithms
[1482] Specific behavior:
[1483] The user views the provided summary at the terminal.
[1484] Users provide feedback on confidence and bias.
[1485] The server stores the user feedback in a database and reflects it in the next data analysis.
[1486] (Application example 1)
[1487] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1488] In today's internet environment, fake news and biased reporting are widespread, making it difficult for users to obtain accurate and balanced information. Furthermore, there are limited means to objectively evaluate the reliability and bias of information, making it difficult for users to understand the degree of bias in each source. Furthermore, while users need to be able to quickly digest collected news information and comprehensively understand reports from different perspectives, there is a lack of efficient ways to do this.
[1489] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1490] In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a mobile information terminal, means for collecting news related to a topic selected by a user, means for displaying the sentiment scores and main topics of the analyzed articles, means for visualizing the bias and sentiment score for each article, and means for comparing multiple articles and generating summaries. This allows users to efficiently acquire diversified and less biased information.
[1491] A "source" is a source such as a website or API that provides news articles or information content.
[1492] "Means of obtaining articles" refers to methods of collecting news articles from multiple sources using news APIs and web scraping technology.
[1493] "Natural language processing technology" is a general term for algorithms and techniques for understanding and analyzing text, including tokenization, sentiment analysis, and topic modeling.
[1494] The "means for assessing reporting stance" is a method that uses natural language processing technology to calculate an emotional score for each article and then evaluates the bias and fairness of each source based on that score.
[1495] The "comparison and summary generation method" is a method for comparing the content and tone of articles collected from multiple sources and generating a comprehensive summary.
[1496] A "mobile information terminal" is an information processing device capable of mobile communication, such as a smartphone or tablet terminal.
[1497] The "sentiment score" is a numerical evaluation value that indicates whether the content of an article is positive, negative, or neutral.
[1498] A "topic" refers to the main theme or subject of a news article.
[1499] "Tokenization" is the process of dividing text into meaningful units called tokens.
[1500] "Keyword extraction" is a technique for identifying important words and phrases that appear frequently in a text.
[1501] "Feedback" refers to the act of a user providing feedback on the quality and reliability of an article.
[1502] This invention is a system that allows users to obtain accurate and balanced information. It collects news articles from multiple sources and analyzes them using natural language processing technology. It also evaluates the reporting stance of each source, and based on the results, generates comparisons and summaries and provides them to the user's terminal. This system uses the following hardware and software.
[1503] Hardware and Software
[1504] Server: A central processing unit for acquiring, analyzing, evaluating, comparing, summarizing, and providing news articles. Specific servers can be cloud-based services (e.g., AWS, Google Cloud).
[1505] Smartphone: A mobile information device that allows users to view news information and provide feedback.
[1506] Natural language processing library: used to analyze the retrieved articles. Examples: NLTK, spaCy.
[1507] Machine learning frameworks: used to perform article sentiment scoring and topic modeling. Examples: TensorFlow, PyTorch.
[1508] Web scraping tools: Used to gather articles from news sites. Example: BeautifulSoup.
[1509] Database: Used to store news articles and user feedback. Examples: SQLite, PostgreSQL.
[1510] Operation explanation
[1511] 1. News gathering
[1512] The server retrieves news articles related to the user's selected topic from multiple sources using pre-configured news APIs and web scraping tools, and stores the retrieved articles in a database.
[1513] 2. Natural Language Processing Analysis
[1514] The server analyzes the collected articles using a natural language processing library, which includes the following steps:
[1515] Tokenization: Breaking text into meaningful units (tokens).
[1516] Keyword extraction: Extract important words and phrases.
[1517] Sentiment analysis: Classifies the tone of an article as positive, negative, or neutral and calculates a sentiment score.
[1518] Topic modeling: Extracting major themes.
[1519] 3. Reporting Stance Evaluation
[1520] The server evaluates the sentiment score of each article based on the results of natural language processing analysis, quantifying the reporting stance of each source, and using this to evaluate the bias and fairness of each source.
[1521] 4. Comparison and Summary
[1522] The server compares multiple articles and generates summaries based on the results of the reporting assessment, allowing users to understand the reporting content from different sources at a glance.
[1523] 5. Information provision
[1524] The server provides the generated summaries and evaluation results to a smartphone, where users can view the summaries and provide feedback on specific articles.
[1525] 6. Feedback
[1526] The smartphone application collects user feedback and sends it to the server, which then incorporates it into the next data analysis and evaluation.
[1527] Specific examples
[1528] For example, consider the case where a user who wants to find news about the new coronavirus uses an app called "News Balancer."
[1529] 1. A user enters the topic "COVID-19" into the app.
[1530] 2. The server uses news APIs and web scraping tools to collect relevant articles from multiple sources.
[1531] 3. The server analyzes the article using natural language processing technology and extracts sentiment scores and major topics.
[1532] 4. The server evaluates the reporting stance based on the article's sentiment score and main topics, and quantifies the bias.
[1533] 5. The server compares multiple articles based on the evaluation results and generates a summary.
[1534] 6. The summary and evaluation results are sent to the user's smartphone and displayed.
[1535] 7. Users view the article and provide feedback.
[1536] Example prompts to input to the generative AI model
[1537] "Collect news articles about COVID-19 and use natural language processing to analyze the sentiment scores and main themes. Compare the reporting stances of multiple sources and provide a user-friendly summary."
[1538] This system allows users to efficiently obtain multifaceted and unbiased information.
[1539] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1540] Step 1:
[1541] The server retrieves news articles from multiple sources using news APIs and web scraping tools based on the topics selected by the user.
[1542] Input: User-defined topic
[1543] Output: A list of retrieved news articles
[1544] Specific operation: The server sends a request to the pre-configured news API endpoint to obtain relevant news article data and store it in the database. It also uses a web scraping tool to scrape articles from each news site and store the content in the database.
[1545] Step 2:
[1546] The server analyzes the retrieved news articles using natural language processing libraries (e.g., NLTK, spaCy).
[1547] Input: A list of retrieved news articles
[1548] Output: Parsed article data (tokens, keywords, sentiment scores, topics, etc.)
[1549] What it does: The server passes the news article text data to a natural language processing library for tokenization, keyword extraction, sentiment analysis, and topic modeling, for example, to calculate the article's sentiment score and classify it into a positive, negative, or neutral category.
[1550] Step 3:
[1551] The server evaluates the reporting stance of each source based on the results of natural language processing analysis.
[1552] Input: Parsed article data (sentiment scores, topics, etc.)
[1553] Output: Reporting attitude evaluation results for each source (bias score)
[1554] What it does: The server aggregates the sentiment scores of articles and calculates a bias score for each source, which is a numerical value of how positive, negative, or neutral each source is.
[1555] Step 4:
[1556] The server compares multiple articles and generates summaries based on the results of the reporting stance evaluation.
[1557] Input: Reporting attitude evaluation results for each source, analyzed article data
[1558] Output: Compared and summarized article data
[1559] How it works: The server compares multiple articles on the same topic based on the evaluation results, extracts key points and different perspectives, and creates a summary that is presented to the user in a format that is easy to understand.
[1560] Step 5:
[1561] The server sends the generated summary and evaluation results to the smartphone device.
[1562] Input: Comparison and summarized article data
[1563] Output: Summary and evaluation results displayed on smartphone
[1564] Specific operation: The server formats the data and provides users with summarized information and reporting stance evaluation results in cooperation with a smartphone application.
[1565] Step 6:
[1566] Users can view the provided summary and evaluation results on their smartphone and provide feedback if necessary.
[1567] Input: User feedback (trust rating, etc.)
[1568] Output: Feedback data
[1569] How it works: Users can enter their opinions about each article in the smartphone app, including their assessment of the article's reliability, bias, etc.
[1570] Step 7:
[1571] The server collects feedback from users and reflects it in the next data analysis and evaluation.
[1572] Input: User feedback data
[1573] Output: Updated evaluation model, data reflected in next analysis
[1574] How it works: The server stores the feedback data in a database and uses it to train machine learning models, which improves the accuracy of the next news analysis and reporting stance evaluation.
[1575] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1576] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[1577] System Configuration
[1578] 1. Data Collection
[1579] The server collects news articles from multiple sources, using a pre-configured list of websites and news APIs to retrieve the latest articles, for example by getting the URL of the latest article from an RSS feed or API endpoint and extracting the article text from that URL.
[1580] 2. Data Analysis
[1581] The server analyzes the retrieved articles using natural language processing technology. The specific tasks are as follows:
[1582] Tokenization: Breaking down the article text into grammatically meaningful units.
[1583] Topic modeling: Extracting the main themes of an article, for example using LDA (Latent Dirichlet Allocation).
[1584] Sentiment Analysis: Evaluate the sentiment of an article. Calculate a positive, negative, or neutral sentiment score.
[1585] Keyword extraction: Identifying important, frequently occurring words and phrases.
[1586] 3. Reporting Stance Evaluation
[1587] The server evaluates the reporting stance of each source based on the analysis results. Using an evaluation algorithm, it combines the sentiment scores of each article to calculate the overall tendency of the source. For example, if Source A is 75% positive, 15% negative, and 10% neutral, it is evaluated as leaning more toward the positive side.
[1588] 4. Comparison and Summary
[1589] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The specific work is as follows:
[1590] Organize the resulting data in comparative tables, for example to visualize how different sources report on a single topic.
[1591] Write a summary that highlights the main perspective and tone of each source, for example, Source A focuses on economic issues, while Source B focuses on health issues.
[1592] 5. Information provision
[1593] The server provides the generated comparison and summary to the user's device, converting them into an appropriate data format and making them displayable according to the user interface specifications. For example, the data can be sent in JSON format, and the device application can parse it and display it on the screen.
[1594] 6. Emotion Engine
[1595] The device is equipped with an emotion engine that recognizes the user's emotions. When the user browses information, emotion data is acquired from their facial expressions and actions. Specifically, the emotion engine uses a camera and microphone to analyze facial expressions and tone of voice, and determines the user's current emotional state.
[1596] 7. User Interaction
[1597] Users view the information provided on their devices and provide feedback on the content. Emotional data recognized by the emotion engine is also collected. Feedback is in the form of "This article is trustworthy" or "This article is biased," and the server collects this information and reflects it in the next data analysis and evaluation.
[1598] Specific examples
[1599] For example, here's how it works for news about the coronavirus:
[1600] 1. The server collects articles about the "new coronavirus" from multiple sources.
[1601] 2. The server analyzes each article using natural language processing technology to extract key topics and sentiment.
[1602] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table.
[1603] 4. The server summarizes the differences between articles from each source and provides them to the user's terminal.
[1604] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[1605] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotional state data.
[1606] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[1607] This system allows users to efficiently obtain multifaceted, reliable information and receive content tailored to their emotions. Furthermore, the system is continuously improved through feedback, enabling the provision of more accurate and reliable information.
[1608] The processing flow will be explained below.
[1609] Step 1:
[1610] The server collects news articles from multiple sources, periodically queries a pre-defined list of news sites and APIs to retrieve the latest article URLs, and then parses the HTML pages from the URLs to extract information such as the article title, body text, and publication date.
[1611] Step 2:
[1612] The server analyzes the retrieved articles using natural language processing (NLP) technology. Specifically, it performs the following operations:
[1613] Tokenization: Breaking text down into words and phrases.
[1614] Topic modeling: Extract major topics using LDA (Latent Dirichlet Allocation) and other methods.
[1615] Sentiment analysis: Calculates a sentiment score (positive, negative, neutral).
[1616] Keyword extraction: Analyze the frequency of important words and phrases.
[1617] Step 3:
[1618] The server evaluates the reporting stance of each source based on the analysis results. Evaluation criteria include a positive, negative, or neutral sentiment score, topic diversity, and the number of cited sources. For example, the server evaluates whether the reporting stance of source A is generally positive or negative.
[1619] Step 4:
[1620] The server generates a comparison and summary for each source based on the evaluation results. Specific operations include:
[1621] The sentiment scores and topic distribution for each source are summarized in a comparison table.
[1622] Generate summaries that highlight key perspectives and reporting styles, such as classifying source A as focusing on economic impacts and source B as focusing on medical impacts.
[1623] Step 5:
[1624] The server sends the generated comparison and summary to the user's device. At this time, the data is formatted in JSON format or other formats to suit the device's UI. The device application receives this data and displays it on the screen.
[1625] Step 6:
[1626] The device uses an emotion engine to recognize the user's emotions as they browse articles. For example, it uses a camera and microphone to analyze the user's facial expressions and tone of voice to obtain emotion data. The emotion data captures the user's reactions in real time as they browse articles.
[1627] Step 7:
[1628] The user views the information provided on the device and provides feedback. They select a feedback option (e.g., "trustworthy" or "biased") and send the information from the device to the server. Emotion data collected by the emotion engine is also sent at the same time.
[1629] Step 8:
[1630] The server collects user feedback and emotion data and reflects it in the next data analysis and evaluation. For example, if a particular article stresses a user, the algorithm will be adjusted to reduce the frequency of such articles from the next time. The server integrates the feedback and emotion data to further improve the analysis algorithm and evaluation criteria.
[1631] Example 2
[1632] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1633] In today's information society, users are required to efficiently collect a large number of news articles from a variety of sources and understand the reporting stance of each source. However, evaluating the reliability and balance of information is difficult, and there are few systems that provide information that suits the user's emotional state. Therefore, there is a need for a system that allows users to obtain reliable and balanced news information without feeling excessive stress.
[1634] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for acquiring articles from multiple information sources, a means for analyzing the acquired articles using natural language processing technology, a means for evaluating the reporting stance of each information source, a means for generating a comparison and summary for each information source based on the evaluation results, a means for providing the generated comparison and summary to a user terminal, and a terminal equipped with an emotion engine that recognizes the user's emotions. This allows the user to efficiently obtain accurate and balanced information and further allows the user to receive news content that is tailored to the user's emotional state.
[1635] "Multiple sources" refers to a collection of information provided from a variety of sources and media.
[1636] An "article" is a piece of writing or a report written to convey news or information.
[1637] "Means of collection" refers to the methods and technologies used to collect data from websites and APIs.
[1638] "Natural language processing technology" refers to computer technology for analyzing and processing human language, including tokenization, topic modeling, sentiment analysis, and keyword extraction.
[1639] "Means of analysis" refers to the techniques and methods used to break down and analyze collected information and extract useful data and patterns.
[1640] "News tone" refers to the tone or perspective from which a source reports the news, and includes positive, negative, or neutral emotional assessments.
[1641] "Means of evaluation" refers to techniques and methods for measuring and judging based on specific criteria, based on data and information.
[1642] "Comparison and summary generation methods" refers to techniques and methods for comparing data from multiple sources and providing a concise summary of the main points.
[1643] A "user terminal" is a device or equipment through which a user accesses information.
[1644] "Means of providing" refers to the technology and methods used to deliver the generated information to users.
[1645] An "emotion engine" is a system or software that recognizes and analyzes a user's emotional state.
[1646] "Feedback" refers to the opinions and reactions that users provide to the system.
[1647] A "topic" is the subject or theme of a news article or piece of information.
[1648] "Keywords" are important words or phrases within the text data.
[1649] "Tone" refers to the emotional tone or mood of a piece of writing or an article.
[1650] This invention is a system that collects news articles from multiple sources and analyzes them using natural language processing technology. Furthermore, by combining it with an emotion engine that recognizes user emotions, it is possible to provide information based on the user's emotions. This allows us to provide accurate and balanced information to users, and by taking the user's emotions into consideration, we can provide more appropriate news content.
[1651] System Configuration
[1652] 1. Data Collection
[1653] The server uses Python libraries such as BeautifulSoup and requests to collect news articles from multiple sources. Sources include websites (e.g., general news sites) and news APIs (e.g., NewsAPI). Specifically, at a set time each day, the server checks a configured list of websites and API endpoints and retrieves the latest articles from RSS feeds and APIs.
[1654] 2. Data Analysis
[1655] The server analyzes the collected news articles using natural language processing (NLP) techniques, using libraries such as NLTK and SpaCy. It can perform the following operations:
[1656] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[1657] Topic modeling: Uses LDA (Latent Dirichlet Allocation) to extract major themes.
[1658] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[1659] Keyword extraction: Extract important words and phrases using the TF-IDF method.
[1660] 3. Reporting Stance Evaluation
[1661] The server evaluates the reporting stance of each source based on the analysis results. The sentiment scores are combined to calculate the overall trend of the source. For example, if source A is 75% positive, 15% negative, and 10% neutral, the source is evaluated as having a strong positive reporting stance.
[1662] 4. Comparison and Summary
[1663] The server compares the reporting stance of each source based on the evaluation results and generates a summary. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on the same topic. It also summarizes the main points of view and differences in tone in a summary.
[1664] 5. Information provision
[1665] The server provides the generated comparison table and summary in JSON format to the user's device, where the device application parses the JSON data and displays it in an appropriate user interface.
[1666] 6. Emotion Engine
[1667] The device is equipped with an emotion engine that recognizes the user's emotions. It uses the camera and microphone to analyze the user's facial expressions and tone of voice to determine their emotional state. For example, OpenCV and Affdex SDK are used to analyze facial expressions, and a voice analysis library (e.g., praat, librosa) is used to analyze the voice recorded from the microphone.
[1668] 7. User Interaction
[1669] Users view the information provided on their devices and provide feedback on the content. Feedback is in the form of "This article is reliable" or "This article is biased," and the server collects this feedback and reflects it in the next data analysis and evaluation. This improves the accuracy and reliability of the system.
[1670] Specific examples
[1671] For example, to collect and analyze news articles about a new virus, it works like this:
[1672] 1. The server collects articles about the "new virus" from multiple sources.
[1673] 2. The server analyzes each article using natural language processing technology (NLTK or Spacy) to extract key topics and sentiment.
[1674] 3. The server evaluates the reporting stance based on the sentiment score of each article and creates a comparison table and summary.
[1675] 4. The server summarizes the differences between articles from each source and provides them to the user's device. The data is sent in JSON format, and the device application parses and displays it.
[1676] 5. The device uses an emotion engine to recognize the user's emotions and customize the content of the articles it provides. For example, if the user is feeling stressed, it will display articles with relaxing content.
[1677] 6. The user views the summary on their device and provides feedback. The emotion engine also collects the user's emotion data.
[1678] 7. The server will use the collected feedback and sentiment data in the next analysis and evaluation to improve the accuracy and reliability of the system.
[1679] Example prompts for generative AI models
[1680] This system collects news articles from multiple sources and analyzes them using natural language processing technology. It also recognizes the user's emotions and optimizes the information provided. For example, it has a function that collects the latest news articles about the new coronavirus, determines the user's current emotional state using an emotion engine, and then displays articles with relaxing content. Please provide a detailed explanation of the system based on this example.
[1681] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1682] Step 1: Data collection
[1683] The server retrieves articles from multiple sources. Specifically, it uses Python libraries such as BeautifulSoup and requests to gather data from websites and news APIs. A pre-configured list of source URLs and API endpoints is provided as input. Based on these inputs, the server retrieves the latest article URLs and extracts the article text from those URLs. The output is data containing the article text and associated metadata.
[1684] Specific behavior:
[1685] It checks a set list of websites and API endpoints at a set time each day.
[1686] Get new article URLs and metadata from RSS feeds or APIs.
[1687] Extract article text from a web page using BeautifulSoup.
[1688] Step 2: Data analysis
[1689] The server analyzes the retrieved articles using natural language processing technology. The article text retrieved in the data collection step is provided as input. Based on this input, the server performs the following data processing and calculations, and obtains the analysis results as output:
[1690] Tokenization: Use NLTK's word_tokenize function to break down the article text into words and grammatical units.
[1691] Topic modeling: Extract major themes using LDA (Latent Dirichlet Allocation).
[1692] Sentiment Analysis: Uses VADER or TextBlob to calculate the sentiment score (positive, negative, neutral) of an article.
[1693] Keyword extraction: Identify important words and phrases using the TF-IDF method.
[1694] Specific behavior:
[1695] Use NLTK's word_tokenize function to break down the article text into words.
[1696] Run LDA to extract major topics.
[1697] Analyzes sentiment using VADER or TextBlob and calculates a sentiment score.
[1698] Extract important keywords using the TF-IDF method.
[1699] Step 3: Reporting Stance Assessment
[1700] The server evaluates the reporting stance of each source based on the analysis results. The input is the sentiment score obtained in the data analysis step. Based on this input, the sentiment scores are combined to evaluate the reporting stance of each source. The output is the reporting tendency (positive, negative, neutral) of each source.
[1701] Specific behavior:
[1702] The sentiment scores for each article are tallied to calculate the percentage of positive, negative, and neutral opinions for each source.
[1703] Analyze the trends of each source and evaluate their reporting stance.
[1704] Step 4: Compare and summarize
[1705] The server compares the reporting stance of each source based on the evaluation results and generates a summary. The evaluation results of each source obtained in the reporting stance evaluation step are provided as input. Data comparison is performed based on this input, and a summary and comparison table are generated as output.
[1706] Specific behavior:
[1707] The evaluation results are obtained using an SQL query and organized in a comparison table format.
[1708] Write a summary that highlights the differences in perspective and tone of each source.
[1709] Step 5: Provide information
[1710] The server provides the generated comparison table and summary to the user terminal. The summary and comparison table generated in the comparison and summary step are provided as input. Based on this input, data is obtained as output in JSON format and converted into a displayable state according to the user interface specifications.
[1711] Specific behavior:
[1712] The server's API endpoint receives the summary and comparison table and outputs the data in JSON format.
[1713] The application on the user's device parses the JSON data and displays it in the user interface.
[1714] Step 6: Emotion Engine
[1715] The device is equipped with an emotion engine that recognizes the user's emotions. The user's facial expressions and tone of voice are provided as input. Analysis is performed based on this input, and the user's emotional state (positive, negative, neutral) is obtained as output.
[1716] Specific behavior:
[1717] The user's facial expressions are captured using the device's camera and analyzed using OpenCV and Affdex SDK.
[1718] The voice recorded by the microphone is analyzed using a voice analysis library (praat or librosa) to determine the emotional state.
[1719] Step 7: User Interaction
[1720] Users browse the information provided on their devices and provide feedback on the content. The input is the provided news summary or comparison table, and by submitting feedback based on this content, feedback data is obtained as output. The server reflects this feedback data in the next data analysis and evaluation.
[1721] Specific behavior:
[1722] A feedback form is displayed in the device application, and the user enters their opinion, such as "This article is trustworthy" or "This article is biased."
[1723] The feedback data is sent to a server and stored in a database.
[1724] This process allows users to efficiently obtain reliable and balanced news information and provides emotionally relevant news content. Furthermore, collecting user feedback improves the accuracy and reliability of the system.
[1725] (Application example 2)
[1726] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1727] When collecting and analyzing news articles, it is difficult to provide information based on the individual emotions and interests of users. Furthermore, displaying appropriate advertisements requires taking into account both the user's emotions and the article content, but achieving this in real time with conventional technology has been difficult. Furthermore, a method is needed to continuously learn from user feedback and improve the accuracy of the system.
[1728] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring articles from multiple information sources, means for analyzing the acquired articles using natural language processing technology, means for evaluating the reporting stance of each information source, means for generating a comparison and summary for each information source based on the evaluation results, means for providing the generated comparison and summary to a user terminal, means for recognizing the user's emotional state, and means for selecting and displaying optimal advertisements based on the user's emotional state and the emotional evaluation of the article. This makes it possible to provide appropriate information and advertisements based on the user's emotions and the content of the article in real time.
[1729] "Source" refers to the source material or platform from which data is obtained, including websites, APIs, feeds, etc. that provide news articles and data.
[1730] "Natural language processing technology" refers to computational techniques for analyzing, understanding, and generating language data, and includes techniques such as tokenization, topic modeling, and sentiment analysis.
[1731] "News tone" refers to the way information is presented and the emotional assessment in news articles and sources, and evaluates whether the article is biased towards the positive, negative, or neutral.
[1732] "Comparison" refers to a method of evaluating data obtained from multiple sources using uniform criteria and clarifying the differences.
[1733] A "summary" is a concise, easy-to-understand summary of detailed information, providing a brief summary of the main points and perspectives of a news article from a source.
[1734] "User terminal" refers to a device through which a user receives information, and includes smartphones, tablets, computers, etc.
[1735] "Emotional state" refers to the internal feelings a user shows while browsing information, and is analyzed from facial expressions such as joy, sadness, surprise, and language.
[1736] "Advertisement" refers to information intended to promote the sale of products or services, and is selected and displayed based on the user's interests and emotions.
[1737] A system for implementing this invention collects news articles from multiple sources, analyzes them using natural language processing techniques, and displays optimal advertisements based on the user's emotional state.
[1738] First, the server retrieves news articles from multiple sources, including websites, news APIs, RSS feeds, etc.
[1739] The server then analyzes the retrieved news articles using natural language processing (NLP) techniques, such as tokenization, topic modeling, sentiment analysis, and keyword extraction. This allows the server to extract major topics, sentiment scores, and important keywords from the article text. Specific software used includes TextBlob and spaCy.
[1740] The server then rates each source's reporting stance using an algorithm that combines the sentiment scores of each article and calculates the overall trend of the source, so for example, a source might be classified as 75% positive, 15% negative, or 10% neutral.
[1741] The server then compares each source and generates a summary based on the evaluation results. Specifically, it organizes the analysis results in a comparison table to visualize how different sources report on a single topic. The generated summary is sent to the user's device in JSON format or similar.
[1742] On the user device, an emotion engine recognizes the user's emotional state. It uses a camera and microphone to analyze the user's facial expressions and tone of voice to determine the user's current emotional state. The specific software used is the FER (Face Emotion Recognition) library.
[1743] The server then applies an algorithm to select the most appropriate advertisement based on the user's current emotional state and the emotional score of the news article. If the user's emotional state matches the emotional rating of the article, the corresponding advertisement is selected and displayed on the user's device at the appropriate time.
[1744] Users can view these news articles and advertisements and provide feedback, which is collected by the server and reflected in the next data analysis and evaluation.
[1745] A specific example is a news article about the new coronavirus. The server collects articles about the new coronavirus from multiple sources and analyzes them using natural language processing technology, extracting key topics and emotion scores. While the user is browsing the article, the device's camera analyzes the user's facial expressions to recognize, for example, a positive emotional state. Based on this information, the server selects advertisements for health-related products and displays them on the user's device.
[1746] An example of a prompt is:
[1747] "A new COVID-19 vaccine has been developed. A positive reaction can be detected from the user's facial expressions."
[1748] Based on this prompt, the system will carry out the appropriate processing.
[1749] This makes it possible to provide appropriate information and advertisements in real time based on the user's emotions and article content.
[1750] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1751] Step 1:
[1752] The server retrieves news articles from multiple sources. It collects the latest articles from websites, news APIs, and RSS feeds, and extracts the article text from each source. The input is the URL or API endpoint of the source, and the output is the text data of the retrieved news article.
[1753] Step 2:
[1754] The server analyzes the retrieved news articles using natural language processing technology. Specifically, it tokenizes the article text, applies topic modeling (e.g., LDA), and performs sentiment analysis. It also extracts important keywords. The input is the text data of the news articles, and the output is each article's topic, sentiment score, and extracted keywords.
[1755] Step 3:
[1756] The server evaluates the reporting stance of each source based on the analysis results. It aggregates the sentiment scores of each article and calculates the overall positive, negative, or neutral tendency of the source. The input is the result of sentiment analysis, and the output is an evaluation of the reporting stance of each source.
[1757] Step 4:
[1758] The server generates a comparison and summary for each source based on the evaluation results. The analysis results are organized in a comparison table format to visualize the coverage of different sources on a single topic. It also summarizes important differences in perspective and tone in a summary. The input is the evaluated reporting data, and the output is a comparison table and a summary.
[1759] Step 5:
[1760] The server provides the generated comparison and summary to the user's device. It converts the data into an appropriate format (e.g., JSON format) and makes it displayable according to the user interface specifications. The input is the comparison table and summary text, and the output is the data sent to the user's device.
[1761] Step 6:
[1762] The device uses an emotion engine to recognize the user's emotional state. The emotion engine uses a camera and microphone to analyze the user's facial expressions and tone of voice, and determines the user's emotions. The input is the user's facial image and voice data, and the output is the user's emotional state (e.g., positive, negative, neutral).
[1763] Step 7:
[1764] The server selects and displays the optimal advertisement based on the user's emotional state and the emotional rating of the news article. For example, if the user is in a positive emotional state, it selects an advertisement related to an article with a positive emotional rating. The input is the user's emotional state data and the emotional rating data of the news article, and the output is the selected advertisement URL.
[1765] Step 8:
[1766] Users view news articles or displayed advertisements on their devices and provide feedback. Feedback is collected in the form of statements such as "This article is trustworthy" or "This article is biased." The input is user feedback, and the output is feedback data.
[1767] Step 9:
[1768] The server reflects the collected feedback data in the next data analysis and evaluation, thereby improving the accuracy of the analysis and evaluation algorithms. The input is the feedback data, and the output is an updated analysis model and evaluation algorithm.
[1769] The above processing steps make it possible to provide appropriate information and advertisements in real time based on the user's emotions and the content of news articles.
[1770] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1771] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1772] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1773] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1774] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1775] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1776] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1777] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1778] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1779] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1780] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1781] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1782] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1783] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1784] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1785] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1786] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1787] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1788] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1789] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1790] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1791] The following is further disclosed regarding the above embodiment.
[1792] (Claim 1)
[1793] A means of retrieving articles from multiple sources;
[1794] A means for analyzing the acquired articles using natural language processing technology;
[1795] A means of assessing the reporting stance of each source, and
[1796] A means of generating comparisons and summaries for each source based on the evaluation results;
[1797] means for providing the generated comparison and summary to a user terminal;
[1798] A system including:
[1799] (Claim 2)
[1800] a means for collecting feedback from users;
[1801] A means to incorporate the collected feedback into the next data analysis and evaluation;
[1802] The system of claim 1 further comprising:
[1803] (Claim 3)
[1804] A means for extracting topics and keywords for the articles to be retrieved;
[1805] a means of assessing the sentiment of an article;
[1806] a means to assess the tone of each source based on the sentiment rating of the article;
[1807] The system of claim 1 further comprising:
[1808] "Example 1"
[1809] (Claim 1)
[1810] A means of retrieving articles from multiple sources;
[1811] A means for analyzing the acquired articles using natural language processing technology;
[1812] A means of assessing the reporting stance of each source, and
[1813] A means of generating comparisons and summaries for each source based on the evaluation results;
[1814] means for providing the generated comparison and summary to a user terminal;
[1815] a means for collecting feedback from users;
[1816] A means to incorporate the collected feedback into the next data analysis and evaluation;
[1817] A system including:
[1818] (Claim 2)
[1819] A means for extracting topics and keywords for the articles to be retrieved;
[1820] a means of assessing the sentiment of an article;
[1821] a means to assess the tone of each source based on the sentiment rating of the article;
[1822] a means for generating a summary using a generative AI model based on the evaluation; and
[1823] a means for storing the generated summaries in a database;
[1824] The system of claim 1 further comprising:
[1825] (Claim 3)
[1826] Obtain data from the user's device via an HTTP request,
[1827] 10. The system of claim 1, wherein the acquired data is provided to the user in JSON format.
[1828] "Application Example 1"
[1829] (Claim 1)
[1830] A means of retrieving articles from multiple sources;
[1831] A means for analyzing the acquired articles using natural language processing technology;
[1832] A means of assessing the reporting stance of each source, and
[1833] A means of generating comparisons and summaries for each source based on the evaluation results;
[1834] means for providing the generated comparison and summary to a mobile information device;
[1835] means for collecting news related to a user-selected topic;
[1836] A means to display the sentiment scores and main topics of the analyzed articles,
[1837] A way to visualize bias and sentiment scores for each article,
[1838] a means of comparing multiple articles and generating summaries;
[1839] A system including:
[1840] (Claim 2)
[1841] a means for collecting feedback from users;
[1842] A means to incorporate the collected feedback into the next data analysis and evaluation;
[1843] The system of claim 1 further comprising:
[1844] ...
Claims
1. A means of retrieving articles from multiple sources; A means for analyzing the acquired articles using natural language processing technology; A means of assessing the reporting stance of each source, and A means of generating comparisons and summaries for each source based on the evaluation results; means for providing the generated comparison and summary to a user terminal; A system including:
2. a means for collecting feedback from users; A means to incorporate the collected feedback into the next data analysis and evaluation; The system of claim 1 further comprising:
3. A means for extracting topics and keywords for the articles to be retrieved; a means of assessing the sentiment of an article; a means to assess the tone of each source based on the sentiment rating of the article; The system of claim 1 further comprising:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A