WO2020185110A1 - Способ и система поиска релевантных новостей - Google Patents

Способ и система поиска релевантных новостей Download PDF

Info

Publication number
WO2020185110A1
WO2020185110A1 PCT/RU2019/000162 RU2019000162W WO2020185110A1 WO 2020185110 A1 WO2020185110 A1 WO 2020185110A1 RU 2019000162 W RU2019000162 W RU 2019000162W WO 2020185110 A1 WO2020185110 A1 WO 2020185110A1
Authority
WO
WIPO (PCT)
Prior art keywords
news
lemmas
company
events
event
Prior art date
Application number
PCT/RU2019/000162
Other languages
English (en)
French (fr)
Inventor
Федор Борисович ФЕДОРОВ
Александра Евгеньевна ЛИПАЧЕВА
Владимир Алексеевич КУЗНЕЦОВ
Роман Владиславович ЧЕРКАСОВ
Original Assignee
Публичное Акционерное Общество "Сбербанк России"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Публичное Акционерное Общество "Сбербанк России" filed Critical Публичное Акционерное Общество "Сбербанк России"
Publication of WO2020185110A1 publication Critical patent/WO2020185110A1/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures

Definitions

  • the present technical solution generally relates to the field of information technology, and in particular to search engines designed to identify relevant information from heterogeneous data sources.
  • a common drawback of existing approaches is the lack of a method for identifying relevant news in relation to binding to a news object, for example, a company and a corresponding event associated with it, which does not allow efficient collection of relevant information from multiple data sources.
  • the technical problem or technical problem to be solved using the claimed approach is to provide a process for searching and generating a set of news with reference to a given set of company names as news objects and events about which information appears in open data sources.
  • the technical result achieved when solving the above technical problem is to provide the formation of a related set of information from news sources with a grouping by companies that are the object of news and given types of events.
  • An additional technical result is to improve the accuracy of identifying information about companies for a given type of event in publicly available information sources.
  • the filtering is performed by calculating the Jacquard measure between news signatures.
  • the assigned company news is stored in a database.
  • the news aggregator updates the news list using information channels.
  • the information channels are web sites on the Internet and / or messenger channels.
  • the ownership of the company mentioned in the news is determined using a decision tree algorithm.
  • a statistical measure is calculated for each lemma of the news text during lemmatization.
  • the machine learning algorithm is a logical regression, classifying the belonging of the news to the event based on the analysis of the statistical measure of the lemmas.
  • the machine learning algorithm is a gradient boosting trained to classify an event based on the number of sentences containing lemmas identifying an event from a search query.
  • a relevant news search system comprising at least one processor and at least one memory that contains machine-readable instructions that, when executed by at least one processor, perform the above method.
  • FIG. 1 illustrates the interaction of the elements included in the claimed solution.
  • FIG. 2 illustrates the general flow of the method.
  • FIG. 3 illustrates the processing of text data.
  • FIG. 4 shows an example of a graphical user interface when interacting with a service for the selection of relevant news.
  • FIG. 5 illustrates a general view of a computing device.
  • FIG. 1 shows the general computing architecture (100) of the presented solution.
  • Main functionality for collection and processing information is executed on a control server (ON), which, through a data transmission channel, receives information from a news aggregator server (120), which is connected via the Internet (150) to a plurality of news resources (130).
  • the server (software) provides interaction with users (10) to display data on the collected news information, as well as additional functionality, which will be disclosed later in the application materials.
  • the Internet or Intranet can be used as a data transmission channel between the management server (110) and the server of the news aggregator (120).
  • the server of the news aggregator (120) can represent several devices that are part of a different network environment, for example, a set of servers, routers, clusters, etc.
  • a data transmission channel can be organized using various types of known data transmission protocols, both wired and wireless, for example, TCP / IP, 802.11, Ethernet, FTP, etc., providing the formation of various network interactions, in particular LAN, WAN, PAN , WLAN, etc.
  • the Management server performs the main processing of information received from the server of the news aggregator (120), stores and generates data for display to users (10).
  • Information display can be formed using a specialized graphical user interface.
  • Users (10) can interact with the control server (110) using a web portal or other type of software application that provides access to aggregated news information. Access can be provided, for example, through an API.
  • the interaction of users (10) can be carried out using various electronic devices, which can be, for example, a computer, laptop, smartphone, tablet, game console, smart wearable electronic device, thin client, as well as devices of augmented, mixed or virtual reality and dr.
  • the server of the news aggregator (120) is connected via the Internet (150) with various information resources (130) or information channels providing news information.
  • Such resources (130) can be, for example, websites, messenger channels (Telegram TM, WatsApp TM, Viber TM, etc.), social networks (Facebook TM, V.e TM, etc.).
  • Saving the received information on the server (110) can be carried out in JSON format in a data store, for example, a database. In this case, the source of obtaining news information and the date of its placement on the corresponding resource can be taken into account (130).
  • FIG. 2 shows a general process for performing the claimed method of searching for relevant news information (200).
  • Information from news sources, collected and stored on the server of the news aggregator (120) is transmitted (201) to the control server (software).
  • Information from the server of the news aggregator (120) can be transmitted online or offline.
  • In online mode data from the Internet (150) is transmitted as soon as it appears on a web resource to which the news aggregator server has a connection (120).
  • news is stored on the news aggregator server (120), for example, in a database, and at a set time (for example, every hour, once a day, etc.) or upon request from the control server (software) are transmitted to it ...
  • Data from the news aggregator server (120) can be transmitted in various formats, for example, xml, html, txt, and the like.
  • the data format for transmission can also change depending on the mode of information transmission to the control server (1-10).
  • the news data contains information about the companies mentioned in the text.
  • the search for relevant information according to the data received from the server of the news aggregator (120) is carried out by processing (202) the obtained data array using a machine learning model, which is trained to search by company names (2021) and corresponding events (2022) in the array textual information and make judgments about the relevance of the relevant information.
  • Data processing at server (110) is performed upon receipt of a new data array from the news aggregator server (120), or according to a predetermined scenario.
  • An automatic script can be configured as a script, which at a set time activates a machine learning model for data processing (202).
  • an access is made to the information store of the management server (UE), which contains data received from the news aggregator server (120) from news sources (130).
  • UE management server
  • the information stored on the control server (HO) it is processed (202) to identify relevant data and bind data (203) from news to the corresponding types of events during information processing using a machine learning model.
  • FIG. 3 shows a process (300) for processing news data received from a news aggregator server (120), which is performed during steps (202) - (203).
  • the news text data received from the server of the news aggregator (120) is lemmatized, during which the text corpus of each news is divided into lemmas. From the received data, news text and metadata from files are extracted.
  • the body of the news is divided into words by all punctuation separators, and then reduced to normal form, for example, using the pymorphy2 library. Then the text is converted, in particular, the text is cleared of punctuation marks, stop words (prepositions, conjunctions, pronouns) and nominal entities. In this case, a nominal entity is considered to be any word that begins with a capital letter and is not the first word in a sentence. Also, the process of N-gramming (https://ru.wikipedia.org/wiki/N-rpaMMa) can be performed, in which the most frequent word combinations of length from 2 to 10 lemmas are highlighted in the text. The list of the most frequent phrases was obtained by automatic analysis of a large body of text and contains more than 9 million objects.
  • incoming news goes through a deduplication process, during which duplicate news is filtered out.
  • the MinHash signature is calculated for each news item (see. https://en.wikipedia.org/wiki/MinHash), after which, for each pair of news, the similarity of signatures is calculated according to the Jaccard measure (sometimes the Jaccard coefficient). If the similarity of a pair of news exceeds the specified threshold, for example, 0.7, then the shorter news from the pair of text corpuses is considered duplicate and is not subjected to further processing.
  • next step (302) after lemmatization of the news texts, processing of the normalized text is performed.
  • the text of the news is searched for the names of companies that do not have homonyms (for example, Sberbank TM). All phrases with a capital letter and in quotes are found, after which the lemmas of the found phrases are searched in the list of companies stored in the server database (110).
  • the classification threshold is 0.5.
  • the received lemmas from the news body are processed at step (303) using machine learning models.
  • logical regression can be applied by calculating the TF-IDF statistical measure for text lemmas (see https://ru.wikipedia.org/wiki/TF-IDF). For each lemma in the text, a statistical measure is calculated, after which a pre-trained logistic regression judgment is made on the obtained features.
  • a list of given lemmas is compiled, for example, a list may contain 30-40 lemmas that have most weight in logistic regression. The list is built for each event after the logistic regression learning process.
  • the weight of each lemma is determined, according to which the selection of lemmas for the list is carried out based on the values of their weights.
  • a set of lemmas can be specified, for example, 10-15 lemmas, which are most appropriate for the event, which are selected from a previously defined list of lemmas, and if the event was assigned to news at step (304), then all lemmas found in the text from mentioned set are highlighted in the text.
  • a second example of an application of the machine learning model is a gradient boosting classifying algorithm such as LightGBM (https://lightgbm.readthedocs.io). For each news text, the number of sentences containing pairs of lemmas characteristic of the event is counted. Pairs of characteristic lemmas are selected for each event during the training of the classifier. The characteristic lemmas (and their number) are selected automatically during training.
  • LightGBM https://lightgbm.readthedocs.io
  • FIG. 4 shows an example of a graphical user interface (400) for interacting with a service for the selection of relevant news information.
  • the interface (400) provides functionality for displaying and managing the content of the provided data.
  • the search query is formed using the name information input panel companies (401).
  • the main field (404) for displaying current or found information a list of companies is presented for which processing of identifying relevant information from the server database (110) is carried out.
  • Companies in field (404) can be displayed in a different hierarchical order, for example, alphabetically, by the number of news, and the like.
  • the information can be filtered by the time range, which is set in the date input field (402).
  • the interface (400) contains a control panel for setting parameters of search queries (403). Using the control panel (403), you can configure the detection of certain types of events, link companies, configure service parameters, etc.
  • the field (405) displays a list of identified news sources in accordance with the specified events for the companies.
  • Users (10) can also set an alert function for selected company names. Notifications about the arrival of new news can be sent via e-mail messages, PUSH notifications, SMS notifications, etc.
  • the user (10) can configure the required parameters, for example, the name of the company, the type of events related to companies.
  • the generated information on processed news can also be displayed using a filter customized with respect to the role of the user (10) interacting with the interface (400). Taking into account the parameter of the user account (10), only those news that contain the type of events associated with his role can be displayed to him.
  • FIG. 5 shows an example of a general view of the device (500), which provides the implementation of the presented solution.
  • a different range of computing devices can be implemented on the basis of the device (500), for example, a control server (110), a news aggregator server (120), user devices (10), etc.
  • the device (500) contains one or more processors (501) united by a common data exchange bus, memory means such as RAM (502) and ROM (503), input / output interfaces (504), input / output (505), and a device for networking (506).
  • the processor (501) (or multiple processors, multi-core processor, etc.) can be selected from a range of devices currently widely used, for example, manufacturers such as: Intel TM, AMD TM, Apple TM, Samsung Exynos TM, MediaTEK TM, Qualcomm Snapdragon TM, etc.
  • the graphics processor for example, NVIDIA GPU or Graphcore, the type of which is also suitable for full or partial execution of the method (200), and can also be used for training and applying machine models. training in various information systems.
  • RAM (502) is a random access memory and is intended for storing machine-readable instructions executed by the processor (501) for performing the necessary operations for logical data processing.
  • RAM (502) typically contains executable instructions of an operating system and associated software components (applications, software modules, etc.). In this case, the available memory of the graphics card or graphics processor can act as RAM (502).
  • ROM (503) is one or more means for permanent storage of data, for example, hard disk drive (HDD), solid state data storage device (SSD), flash memory (EEPROM, NAND, etc.), optical storage media (CD-R / RW, DVD-R / RW, BlueRay Disc, MD), etc.
  • I / O interfaces are used to organize the operation of the components of the device (500) and to organize the operation of external connected devices.
  • the choice of the appropriate interfaces depends on the specific version of the computing device, which can be, but are not limited to: PCI, AGP, PS / 2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS / Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232, etc.
  • I / O information are used, for example, a keyboard, display (monitor), touch display, touch-pad, joystick, mouse manipulator, light pen, stylus, touchpad, trackball, speakers, microphone, augmented reality, optical sensors, tablet, light indicators, projector, camera, biometric identification (retina scanner, fingerprint scanner, voice recognition module), etc.
  • the networking tool (506) provides data transmission via an internal or external computer network, for example, Intranet, Internet, LAN and the like.
  • One or more means (506) may be used, but not limited to: Ethernet card, GSM modem, GPRS modem, LTE modem, 5G modem, satellite communication module, NFC module, Bluetooth and / or BLE module, Wi-Fi module and dr.
  • satellite navigation aids can be used as part of the device (500), for example, GPS, GLONASS, BeiDou, Galileo.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Настоящее решение относится к области информационных технологий, в частности к поисковым механизмам, предназначенным для выявления релевантной информации из разнородных источников данных. Техническим результатом является обеспечение формирования связанного набора информации из новостных источников с группировкой по компаниям, являющимся объектом новостей и заданными типами событий. В первом предпочтительном варианте осуществления заявленного решения представлен компьютерно-реализуемый способ поиска релевантных новостей, в котором получают на управляющем сервере набор новостей от по меньшей мере одного сервера новостного агрегатора; осуществляют на управляющем сервере анализ полученного набора новостей, который включает в себя лемматизацию текстов каждой новости из упомянутого набора новостей; обработку полученных лемм текстов новостей с помощью модели машинного обучения, которая содержит установленный набор данных компаний и список событий, причем для каждого события в модели машинного обучения установлен заданный набор лемм; определение новостей, содержащих леммы, идентифицирующие заданные события и формирование связи выявленных событий с по меньшей мере одной компанией; после чего формируют список релевантных новостей на основании выполненного анализа.

Description

СПОСОБ И СИСТЕМА ПОИСКА РЕЛЕВАНТНЫХ НОВОСТЕЙ
ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее техническое решение в общем относится к области информационных технологий, а в частности к поисковым механизмам, предназначенным для выявления релевантной информации из разнородных источников данных.
УРОВЕНЬ ТЕХНИКИ
[0002] В настоящее время сбор данных (англ. «Data Mining») является важной составляющей для различных сфер бизнеса, в особенности в сферах аналитики и прогнозирования. Зачастую, источником данных об информации по интересующим темам являются общедоступные ресурсы в сети Интернет, например, новостные ресурсы (веб-сайты, каналы в мессенджерах и т.п.).
[0003] При анализе данных основной проблемой является агрегирование массива новостных источников, в частности привязка действительных событий к компаниям для целей последующего поиска. Как правило, на сегодняшний день нет эффективных средств для фильтрации собираемого новостного контента для создания агрегированных массивов информации с привязкой по объектам новостей, например, компаниям.
[0004] Из существующего уровня техники известны различные алгоритмы для сбора данных, например, решение, описанное в заявке WO 1999005614 (автор: Louis Gay et al., опубликовано: 04.02.1999), которое позволяет агрегировать данные из множества источников и отслеживать ретроспективную актуальность собираемых данных.
[0005] Из патента RU 2382401 (патентообладатель: МАЙКРОСОФТ КОРПОРЕЙШН, опубликовано: 20.02.2010) известен подход для анализа и сравнения совокупностей документов, в соответствии с чем документы могут быть предположительно организованы в группы по своему содержимому или источнику и проанализированы на предмет межгрупповых и внутригрупповых различий и общностей. Например, сопоставление двух групп документов, посвященных одной теме, но полученных из двух различных источников, к примеру, информационного обзора происшествия в различных частях мира, может показать интересные различия мнений и общих истолкований ситуаций. За счет перемещения содержимого из статичных совокупностей в наборы статей, генерируемых во времени, может быть рассмотрено его развитие. Например, поток новостных статей по общему описанию может быть рассмотрен во времени с целью выделения действительно информативных свежих новостей и фильтрования множества статей, которые в значительной степени передают «практически то же самое».
[0006] Общим недостатком существующих подходов является отсутствие способа выявления релевантных новостей относительно привязки к объекту новости, например, компании и соответствующему событию, связанного с ней, что не позволяет эффективно осуществить сбор релевантной информации из множества источников данных.
РАСКРЫТИЕ ИЗОБРЕТЕНИЕ
[0007] Решаемой технической проблемой или технической задачей с помощью заявленного подхода является обеспечение процесса поиска и формирования набора новостей с привязкой к заданному набору наименования компаний, как объектов новостей, и событий, о которых появляется информация в открытых источниках данных.
[0008] Техническим результатом, достигающимся при решении вышеуказанной технической задачи, является обеспечение формирования связанного набора информации из новостных источников с группировкой по компаниям, являющимся объектом новостей и заданными типами событий.
[0009] Дополнительным техническим результатом является повышение точности выявления информации о компаниях для заданного типа событий в общедоступных источниках информации.
[0010] Указанный технический результат достигается благодаря осуществлению компьютерно-реализуемого способа поиска релевантных новостей, в котором:
получают на управляющем сервере набор новостей от по меньшей мере одного сервера новостного агрегатора;
осуществляют на управляющем сервере анализ полученного набора новостей, который включает в себя лемматизацию текстов каждой новости из упомянутого набора новостей; обработку полученных лемм текстов новостей с помощью модели машинного обучения, которая содержит установленный набор данных компаний и список событий, причем для каждого события в модели машинного обучения установлен заданный набор лемм;
определение новостей, содержащих леммы, идентифицирующие заданные события и формирование связи выявленных событий с по меньшей мере одной компанией;
формируют список релевантных новостей на основании выполненного анализа. [ООП] В одном из частных примеров осуществления способа при получении набора новостей осуществляется фильтрация дублирующих новостей.
[0012] В другом частном примере осуществления способа фильтрация осуществляется с помощью вычисления меры Жаккарда между сигнатурами новостей.
[0013] В другом частном примере осуществления способа события присвоенные новости о компании сохраняют в базе данных.
[0014] В другом частном примере осуществления способа новостной агрегатор обновляет список новостей с помощью информационных каналов.
[0015] В другом частном примере осуществления способа информационные каналы представляют собой веб-сайты в сети Интернет и/или мессенджер-каналы.
[0016] В другом частном примере осуществления способа в ходе анализа новостей выполняется определение принадлежности события основной или дочерней компании.
[0017] В другом частном примере осуществления способа принадлежность компании, упоминаемой в новости, определяется с помощью алгоритма решающих деревьев.
[0018] В другом частном примере осуществления способа в ходе лемматизации текстов новостей осуществляется их очистка от знаков пунктуации, стоп-слов и именованных сущностей.
[0019] В другом частном примере осуществления способа в ходе лемматизации для каждой леммы текста новости рассчитывается статистическая мера.
[0020] В другом частном примере осуществления способа алгоритм машинного обучения представляет собой логическую регрессию, классифицирующий принадлежность новости событию на основании анализа статистической меры лемм.
[0021] В другом частном примере осуществления способа для каждого текста новости выполняется определение частотных словосочетаний длинной от 2 до 10 лемм.
[0022] В другом частном примере осуществления способа алгоритм машинного обучения представляет собой градиентный бустинг, обученный для классификации события на основе количества предложений, содержащих леммы, идентифицирующие событие из поискового запроса.
[0023] В другом частном примере осуществления способа после присвоения события из новости компании выполняется выделение лемм и/или предложений, содержащих леммы, идентифицирующее упомянутое событие.
[0024] В другом предпочтительном варианте осуществления заявленного решения представлена система поиска релевантных новостей, содержащая по меньшей мере один процессор и по меньшей мере одну память, которая содержит машиночитаемые инструкции, которые при их исполнении по меньшей мере одним процессором выполняют вышеуказанный способ.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0025] Признаки и преимущества настоящего технического решения станут очевидными из приводимого ниже подробного описания и прилагаемых чертежей, на которых:
[0026] Фиг. 1 иллюстрирует взаимодействие элементов, входящих в заявленное решение.
[0027] Фиг. 2 иллюстрирует общий процесс выполнения способа.
[0028] Фиг. 3 иллюстрирует процесс обработки текстовых данных.
[0029] Фиг. 4 представлен пример графического интерфейса пользователя при взаимодействии с сервисом по подбору релевантных новостей.
[0030] Фиг. 5 иллюстрирует общий вид вычислительного устройства.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[0031] На Фиг. 1 представлена общая вычислительная архитектура (100) представленного решения. Основной функционал по сбору и обработке информации выполняется на управляющем сервере (ПО), который посредством канала передачи данных получает информацию сервера (120) новостного агрегатора, который связан посредством сети Интернет (150) со множеством новостных ресурсов (130). Сервер (ПО) обеспечивает взаимодействие с пользователями (10) для отображения данных по собранной новостной информации, а также дополнительный функционал, который будет раскрыт далее в материалах заявки.
[0032] В качестве канала передачи данных между управляющем сервером (110) и сервером новостного агрегатора (120) может выступать Интернет или Интранет. При этом сервер новостного агрегатора (120) может представлять собой несколько устройств, входящих в состав различного сетевого окружения, например, совокупность серверов, маршрутизаторов, кластеров и т.п. Канал передачи данных может быть организован с помощью различного вида известных протоколов передачи данных, как проводных, так и беспроводных, например, TCP/IP, 802.11, Ethernet, FTP и др., обеспечивая формирование различного сетевого взаимодействия, в частности LAN, WAN, PAN, WLAN и т.п.
[0033] Управляющий сервер (ПО) выполняет основную обработку информации, получаемой от сервера новостного агрегатора (120), хранит и формирует данные для отображения пользователям (10). Отображение информации может формироваться с помощью специализированного графического интерфейса пользователя. Пользователи (10) могут взаимодействовать с управляющим сервером (110) с помощью веб-портала или иного типа программного приложения, обеспечивающего доступ к агрегированной новостной информации. Доступ может предоставляться, например, посредством API. Взаимодействие пользователей (10) может осуществляться с помощью различных электронных устройств, в качестве которых могут выступать, например, компьютер, ноутбук, смартфон, планшет, игровая приставка, умное носимое электронное устройство, тонкий клиент, а также устройства дополненной, смешанной или виртуальной реальности и др.
[0034] Сервер новостного агрегатора (120) связан посредством сети Интернет (150) с различными информационными ресурсами (130) или информационными каналами, предоставляющими новостную информацию. Такими ресурсами (130) могут выступать, например, веб-сайты, каналы мессенджеров (Telegram™, WatsApp™, Viber™ и др.), социальные сети (Facebook™, Вконтакте™ и т.п.). Сохранение полученной информации на сервере (110) может осуществляться в формате JSON в хранилище данных, например, базе данных. При этом может учитываться источник получения новостной информации и дата ее размещения на соответствующем ресурсе (130).
[0035] На Фиг. 2 представлен общий процесс выполнения заявленного способа поиска релевантной новостной информации (200). Информация из новостных источников, собранная и хранимая на сервере новостного агрегатора (120), передается (201) на управляющий сервер (ПО). Информация от сервера новостного агрегатора (120) может передаваться в режиме онлайн или офлайн. В онлайн режиме данные из сети Интернет (150) передаются по факту их появления на веб-ресурсе, к которому имеется подключение у сервера новостного агрегатора (120). В режиме офлайн новости сохраняются на сервере новостного агрегатора (120), например, в базе данных, и в установленное время (например, каждый час, раз в день и т.п.) или по запросу от управляющего сервера (ПО) передаются на него.
[0036] Данные от сервера новостного агрегатора (120) могут передаваться в различных форматах, например, xml, html, txt и т.п. Формат данных для передачи также может изменяться в зависимости от режима передачи информации на управляющий сервер (1 10). Помимо самого текста новости данные содержат информацию о компаниях, упомянутых в тексте.
[0037] На управляющем сервере (ПО) находится сформированный список, содержащий наименования компаний (2021) и событий (2022), на предмет которых осуществляется анализ входящей новостной информации от сервера новостного агрегатора (120). Указанные данные хранятся в базе данных управляющего сервера (ПО). В качестве событий могут выступать, например, арест/заморозка счетов компании, банкротство компании, наличие исков к компании, обвал/рост акций и т.п. Список событий (2022) и компаний (2021) может обновляться или изменяться в течение времени.
[0038] Поиск релевантной информации по данным полученным от сервера новостного агрегатора (120) осуществляется с помощью обработки (202) полученного массива данных с помощью модели машинного обучения, которая обучена осуществлять поиск по наименованиям компаний (2021) и соответствующих событий (2022) в массиве текстовой информации и выдавать суждение о релевантности соответствующей информации. Обработка данных на сервере (110), выполняется по факту получения нового массива данных от сервера новостного агрегатора (120), либо по заранее установленному сценарию. В качестве сценария может настраиваться автоматический скрипт, который в установленное время осуществляет активацию модели машинного обучения для обработки данных (202).
[0039] При выполнении этапа обработки (202) выполняется обращение к хранилищу информации управляющего сервера (ПО), которое содержит полученные от сервера новостного агрегатора (120) данные из новостных источников (130). При доступе к сохраненной на управляющем сервере (НО) информации осуществляется ее обработка (202) для выявления релевантных данных и привязки данных (203) из новостей к соответствующим типам событий в ходе обработки информации с помощью модели машинного обучения.
[0040] На Фиг. 3 представлен процесс (300) осуществления обработки новостных данных, полученных от сервера новостного агрегатора (120), которая осуществляется в процессе выполнения этапов (202) - (203). На первом шаге (301) новостные текстовые данные, полученные от сервера новостного агрегатора (120), проходят лемматизацию, в ходе которой выполняется разделение на леммы корпуса текста каждой новости. Из полученных данных извлекается текст новости и метаданные из файлов.
[0041] В ходе выполнения процесса лемматизации текстов (301) тело новости разделяется на слова по всем пунктуационным разделителям, после чего приводится к нормальной форме, например, с помощью библиотеки pymorphy2. Затем осуществляется преобразование текста, в частности выполняется очистка текста от знаков пунктуации, стоп-слов (предлоги, союзы, местоимения) и именных сущностей. Именной сущностью в данном случае считается любое слово, начинающееся с большой буквы и не являющееся при этом первым словом в предложении. Также, может выполняться процесс N-грамминга (https://ru.wikipedia.org/wiki/N-rpaMMa ), при котором в тексте выделяются наиболее частотные словосочетания длины от 2 до 10 лемм. Список наиболее частотных словосочетаний получен путем автоматического анализа большого корпуса текста и содержит более 9 млн. объектов.
[0042] Также, входящие новости проходят процедуру дедупликации, в ходе которой отфильтровываются повторяющиеся новости. В ходе выполнения процедуры дедупликации для каждой новости считается сигнатура MinHash (см. https://en.wikipedia.org/wiki/MinHash), после чего для каждой пары новостей вычисляется схожесть сигнатур по мере Жаккара (иногда - коэффициент Жаккара). Если схожесть пары новостей превышает заданный порог, например, 0.7, то более короткая новость из пары корпусов текстов считается дублирующей и не подвергается дальнейшей обработке.
[0043] На следующем шаге (302) после лемматизации текстов новостей выполняется обработка нормализованного текста. В тексте новости осуществляется поиск наименования компаний, не имеющих омонимов (например, «Сбербанк™»). Находятся все словосочетания с большой буквы и в кавычках, после чего проводится поиск лемм найденных словосочетаний в списке компаний, хранимого в базе данных сервера (110).
[0044] Найденные наименования компаний классифицируются по признаку «основная» или «дополнительная» компания (т.е. которая является косвенно упоминаемой в тексте новости). Компания считается «основной», если она является предметом новости, и «дополнительной», если наименование компании просто упоминается в теле новости. Классификация осуществляется с помощью модели машинного обучения, в частности алгоритма принятия решений, например, с помощью решающих деревьев. Список признаков решающего дерева выглядит следующим образом:
1) Номер предложения первого упоминания компании (0, если это заголовок);
2) Номер предложения первого упоминания компании, нормированный на число предложений;
3) Длина текста в символах;
Значение порога классификации - 0.5.
[0045] Для определения релевантности того или иного события для компаний, указываемых в теле новостей, осуществляется обработка полученных лемм из тела новости на шаге (303) с помощью моделей машинного обучения.
[0046] В качестве одного примера модели машинного обучения может применяться логическая регрессия с помощью расчета статистической меры TF- IDF для лемм текста (см. https://ru.wikipedia.org/wiki/TF-IDF). Для каждой леммы в тексте считается статистическая мера, после чего на полученных признаках делается суждение заранее обученной логистической регрессии. Помимо обработки с помощью модели машинного обучения составляется список заданных лемм, например, список может содержать 30-40 лемм, имеющих наибольший вес в логистической регрессии. Список строится для каждого события после процесса обучения логистической регрессии. На выходе модели определяется вес каждой леммы, по которым осуществляется отбор лемм для списка на основании значений их весов.
[0047] Если полученное значение вероятности суждения модели (303) выше заранее установленного порога и в тексте новости встречается хотя бы одна лемма из упомянутого списка, то по меньшей мере одно событие присваивается новости (304) для выявленного в тексте наименования компании.
[0048] Дополнительно для каждого события может задаваться набор лемм, например, 10-15 лемм, наиболее соответствующих событию, которые выделяются из ранее определённого списка лемм, и если событие было присвоено новости на этапе (304), то все найденные в тексте леммы из упомянутого набора выделяются в тексте.
[0049] Вторым примером применения модели машинного обучения является классифицирующий алгоритм в виде градиентного бустинга, например, LightGBM (https://lightgbm.readthedocs.io). Для каждого текста новости считается количество предложений, содержащих пары характерных для события лемм. Пары характерных лемм подбираются для каждого события в ходе обучения классификатора. Характерные леммы (и их количество) подбираются автоматически в ходе обучения.
[0050] На полученных таким образом признаках (парах лемм) делается суждение с помощью упомянутой модели машинного обучения (303). Если полученное значение вероятности выше заранее подобранного порога, то событие присваивается новости (304) для одной или нескольких компаний, указанных в новости. Дополнительно в каждом тексте могут выделяться предложения, содержащие пары характерных для события лемм.
[0051] Если в ходе обработки новостных данных не осуществляется выявление релевантных событий для указанных наименований компаний, то такая информация не учитывается (305).
[0052] На Фиг. 4 представлен пример графического интерфейса пользователя (400) для взаимодействия с сервисом по подбору релевантной новостной информации. Интерфейс (400) предоставляет функционал по отображению и управлению содержанием предоставляемых данных. Формирование поискового запроса выполняется с помощью панели ввода информации о наименовании компании (401). В основном поле (404) для отображения текущей или найденной информации представлен перечень компаний, для которых осуществляется обработка выявления релевантной информации из базы данных сервера (110).
[0053] Компании в поле (404) могут отображаться в различном иерархическом порядке, например, в алфавитном, по количеству новостей и т.п. Информация может отфильтровываться по временному диапазону, который устанавливается в поле ввода дат (402).
[0054] Также, интерфейс (400) содержит панель управления для настройки параметров поисковых запросов (403). С помощью панели управления (403) можно осуществляться настройку выявления тех или иных типов событий, осуществлять привязку компаний, конфигурировать параметры сервиса и т.п. В поле (405) отображается список выявленных новостных источников в соответствии с заданными событиями для компаний.
[0055] Пользователи (10) также могут устанавливать функцию оповещения для выбранных наименований компаний. Оповещения о поступлении новых новостей могут передаваться посредством сообщений электронной почты, PUSH уведомлений, SMS уведомлений и т.п. При настройке функции оповещения пользователь (10) может настраивать требуемые параметры, например, наименование компании, тип событий, связанных с компаниями.
[0056] Сформированная информация по обработанным новостям также может отображаться с применением фильтра, настроенному относительно роли пользователя (10), взаимодействующего с интерфейсом (400). С учетом параметром учетной записи пользователя (10) ему могут отображаться только те новости, которые содержат связанный с его ролью тип событий.
[0057] На Фиг. 5 представлен пример общего вида устройства (500), которое обеспечивает реализацию представленного решения. На базе устройства (500) может реализовываться различный спектр вычислительных устройств, например, управляющий сервер (110), сервер новостного агрегатора (120), устройства пользователей (10) и т.д.
[0058] В общем виде устройство (500) содержит объединенные общей шиной информационного обмена один или несколько процессоров (501), средства памяти, такие как ОЗУ (502) и ПЗУ (503), интерфейсы ввода/вывода (504), устройства ввода/вывода (505), и устройство для сетевого взаимодействия (506). [0059] Процессор (501) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в устройстве (500) также необходимо учитывать графический процессор, например, GPU NVIDIA или Graphcore, тип которых также является пригодным для полного или частичного выполнения способа (200), а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах.
[0060] ОЗУ (502) представляет собой оперативную память и предназначено для хранения исполняемых процессором (501) машиночитаемых инструкций для выполнение необходимых операций по логической обработке данных. ОЗУ (502), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом, в качестве ОЗУ (502) может выступать доступный объем памяти графической карты или графического процессора.
[0061] ПЗУ (503) представляет собой одно или более средств для постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.
[0062] Для организации работы компонентов устройства (500) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (504). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/ Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.
[0063] Для обеспечения взаимодействия пользователя с вычислительной системой (500) применяются различные средства (505) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.
[0064] Средство сетевого взаимодействия (506) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (506) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.
[0065] Дополнительно могут применяться также средства спутниковой навигации в составе устройства (500), например, GPS, ГЛОНАСС, BeiDou, Galileo.
[0066] Конкретный выбор элементов устройств (500) для реализации различных программно-аппаратных архитектурных решений может варьироваться с сохранением обеспечиваемого требуемого функционала от того или иного типа устройства.
[0067] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.

Claims

ФОРМУЛА
1. Компьютерно-реализуемый способ поиска релевантных новостей, содержащий этапы, на которых:
• получают на управляющем сервере набор новостей от по меньшей мере одного сервера новостного агрегатора;
• осуществляют на управляющем сервере анализ полученного набора новостей, который включает в себя
о лемматизацию текстов каждой новости из упомянутого набора новостей;
о обработку полученных лемм текстов новостей с помощью модели машинного обучения, которая содержит установленный набор данных компаний и список событий, причем для каждого события в модели машинного обучения установлен заданный набор лемм;
о определение новостей, содержащих леммы, идентифицирующие заданные события и формирование связи выявленных событий с по меньшей мере одной компанией;
• формируют список релевантных новостей на основании выполненного анализа набора новостей.
2. Способ по п.1, характеризующийся тем, что при получении набора новостей осуществляется фильтрация дублирующих новостей.
3. Способ по п.2, характеризующийся тем, что фильтрация осуществляется с помощью вычисления меры Жаккара между сигнатурами новостей.
4. Способ по п.1, характеризующийся тем, что события присвоенные новости о компании сохраняют в базе данных.
5. Способ по п.1, характеризующийся тем, что новостной агрегатор обновляет список новостей с помощью информационных каналов.
6. Способ по п.5, характеризующийся тем, что информационные каналы представляют собой веб-сайты в сети Интернет и/или каналы мессенджеров.
7. Способ по п.1, характеризующийся тем, что в ходе анализа новостей выполняется определение принадлежности события основной или дочерней компании.
8. Способ по п.7, характеризующийся тем, что принадлежность компании, упоминаемой в новости, определяется с помощью алгоритма решающих деревьев.
9. Способ по п.1, характеризующийся тем, что в ходе лемматизации текстов новостей осуществляется их очистка от знаков пунктуации, стоп-слов и именных сущностей.
10. Способ по п.1, характеризующийся тем, что в ходе лемматизации для каждой леммы текста новости рассчитывается статистическая мера.
11. Способ по п.10, характеризующийся тем, что алгоритм машинного обучения представляет собой логическую регрессию, классифицирующий принадлежность новости событию на основании анализа статистической меры лемм.
12. Способ по п.1, характеризующийся тем, что для каждого текста новости выполняется определение частотных словосочетаний длинной от 2 до 10 лемм.
13. Способ по п.1, характеризующийся тем, что алгоритм машинного обучения представляет собой градиентный бустинг, обученный для классификации события на основе количества предложений, содержащих леммы, идентифицирующие событие из поискового запроса.
14. Способ по п.1, характеризующийся тем, что после присвоения события из новости компании выполняется выделение лемм и/или предложений, содержащих леммы, идентифицирующее упомянутое событие.
15. Устройство для поиска релевантных новостей, содержащее по меньшей мере один процессор и по меньшей мере одну память, содержащую машиночитаемые инструкции, которые при их исполнении по меньшей мере одним процессором выполняют способ по любому из пп. 1-14.
16. Система поиска релевантных новостей, содержащая
по меньшей мере один управляющий сервер;
по меньшей мере один сервер новостного агрегатора, выполненный с возможность получения новостных данных от по меньшей мере одного новостного источника, причем управляющий сервер выполнен с возможностью получения новостных данных от по меньшей мере одного сервера новостного агрегатора; анализа полученных данных, в ходе которого выполняется: о лемматизация текстов каждой новости из упомянутого набора новостей;
о обработка полученных лемм текстов новостей с помощью модели машинного обучения, которая содержит установленный набор данных компаний и список событий, причем для каждого события в модели машинного обучения установлен заданный набор лемм;
о определение новостей, содержащих леммы, идентифицирующие заданные события и формирование связи выявленных событий с по меньшей мере одной компанией;
формирования списка релевантных новостей на основании выполненного анализа набора новостей.
PCT/RU2019/000162 2019-03-14 2019-03-14 Способ и система поиска релевантных новостей WO2020185110A1 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2019107328A RU2698916C1 (ru) 2019-03-14 2019-03-14 Способ и система поиска релевантных новостей
RU2019107328 2019-03-14

Publications (1)

Publication Number Publication Date
WO2020185110A1 true WO2020185110A1 (ru) 2020-09-17

Family

ID=67851403

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2019/000162 WO2020185110A1 (ru) 2019-03-14 2019-03-14 Способ и система поиска релевантных новостей

Country Status (3)

Country Link
EA (1) EA038241B1 (ru)
RU (1) RU2698916C1 (ru)
WO (1) WO2020185110A1 (ru)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055359A1 (en) * 2007-08-14 2009-02-26 John Nicholas Gross News Aggregator and Search Engine Using Temporal Decoding
US20120158711A1 (en) * 2003-09-16 2012-06-21 Google Inc. Systems and methods for improving the ranking of news articles
US20130097279A1 (en) * 2006-06-27 2013-04-18 Jared Polis Aggregator with managed content
US20160371344A1 (en) * 2014-03-11 2016-12-22 Baidu Online Network Technology (Beijing) Co., Ltd Search method, system and apparatus

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7762453B2 (en) * 1999-05-25 2010-07-27 Silverbrook Research Pty Ltd Method of providing information via a printed substrate with every interaction
US7293019B2 (en) * 2004-03-02 2007-11-06 Microsoft Corporation Principles and methods for personalizing newsfeeds via an analysis of information novelty and dynamics
US9384211B1 (en) * 2011-04-11 2016-07-05 Groupon, Inc. System, method, and computer program product for automated discovery, curation and editing of online local content
RU2629449C2 (ru) * 2014-05-07 2017-08-29 Общество С Ограниченной Ответственностью "Яндекс" Устройство, а также способ выбора и размещения целевых сообщений на странице результатов поиска
RU2608884C2 (ru) * 2014-06-30 2017-01-25 Общество С Ограниченной Ответственностью "Яндекс" Реализуемый компьютером способ обеспечения графического пользовательского интерфейса на экране дисплея электронного устройства браузерным контекстным помощником (варианты), сервер и электронное устройство, используемые в нем

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120158711A1 (en) * 2003-09-16 2012-06-21 Google Inc. Systems and methods for improving the ranking of news articles
US20130097279A1 (en) * 2006-06-27 2013-04-18 Jared Polis Aggregator with managed content
US20090055359A1 (en) * 2007-08-14 2009-02-26 John Nicholas Gross News Aggregator and Search Engine Using Temporal Decoding
US20160371344A1 (en) * 2014-03-11 2016-12-22 Baidu Online Network Technology (Beijing) Co., Ltd Search method, system and apparatus

Also Published As

Publication number Publication date
RU2698916C1 (ru) 2019-09-02
EA201990538A1 (ru) 2020-09-30
EA038241B1 (ru) 2021-07-29

Similar Documents

Publication Publication Date Title
US11663254B2 (en) System and engine for seeded clustering of news events
US10977447B2 (en) Method and device for identifying a user interest, and computer-readable storage medium
US11663405B2 (en) Machine learning applications for temporally-related events
US9229977B2 (en) Real-time and adaptive data mining
US9002848B1 (en) Automatic incremental labeling of document clusters
EP3358472A1 (en) User classification based on multimodal information
CN106886567B (zh) 基于语义扩展的微博突发事件检测方法及装置
US20170075983A1 (en) Subject-matter analysis of tabular data
US10002187B2 (en) Method and system for performing topic creation for social data
EP2695087A1 (en) Processing data in a mapreduce framework
US11755841B2 (en) Method for updating a knowledge base of a sentiment analysis system
Alami et al. Cybercrime profiling: Text mining techniques to detect and predict criminal activities in microblog posts
US10949418B2 (en) Method and system for retrieval of data
US20170109358A1 (en) Method and system of determining enterprise content specific taxonomies and surrogate tags
US20150081601A1 (en) Automatic generation of preferred views for personal content collections
WO2012096388A1 (ja) 意外性判定システム、意外性判定方法およびプログラム
US9996529B2 (en) Method and system for generating dynamic themes for social data
CA2956627A1 (en) System and engine for seeded clustering of news events
WO2015084757A1 (en) Systems and methods for processing data stored in a database
Loynes et al. The detection and location estimation of disasters using Twitter and the identification of Non-Governmental Organisations using crowdsourcing
Peng et al. Trending sentiment-topic detection on twitter
CN110019763B (zh) 文本过滤方法、***、设备及计算机可读存储介质
US20150154195A1 (en) Method for entity-driven alerts based on disambiguated features
CN111984797A (zh) 客户身份识别装置及方法
Alneyadi et al. A semantics-aware classification approach for data leakage prevention

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19919152

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19919152

Country of ref document: EP

Kind code of ref document: A1