Program selection device and program selection program

JP2025034996APending Publication Date: 2025-03-13NIPPON HOSO KYOKAI
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2023141718
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-31
Publication Date
2025-03-13

AI Technical Summary

Benefits of technology

【0017】 本発明によれば、テレビ番組やオンデマンド動画で扱われている内容を直感的に理解し、操作可能なグラフィカルユーザインターフェースをユーザに提供することで、ユーザが容易な操作により番組や動画を選択することができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025034996000001_ABST
    Figure 2025034996000001_ABST
Patent Text Reader

Abstract

To select a program that is considered as dealing a topic that is near from a topic dealed in a program in viewing.SOLUTION: A program selection device 1 comprises: a program information memory 21 that stores program information; a key word dictionary 22 that stores a key word; a program information reception part 11 that stores the program information to the program information memory 21; a key word extraction part 12 that extracts the key word on the basis of the key word dictionary 22 from the program information, and corresponds a channel with the key word; a graph generation part 13 that uses the channel and the key word as node information on the basis of the key word extracted from the program information, and generates graph information expressing a channel node and a key word node by an edge; and a graph drawing part 14 that draws a graph on the basis of the graph information, and can select the channel node on the basis of the graph to be drawn.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a television viewing system for viewing television programs or a video distribution system for viewing videos via an Internet line, and to a program selection device, a program selection program, and a program selection system that provide a graphical user interface that enables a user to intuitively select a program or video to be viewed. [Background technology]

[0002] Conventionally, when a television program viewer selects a television program to watch, the user frequently switches channels using a remote control, or selects a channel or program to watch based on an electronic program guide (EPG). However, channel zapping is not an efficient channel selection method because it requires the user to constantly switch channels until he or she finds a program that the user is interested in. In addition, with the program selection method using EPG, although the user can check information on multiple channels at a glance, he or she can only check the program title and summary text, which may not provide enough information to select a program.

[0003] In addition, in recent years, the fusion of broadcasting and communication has progressed, and a viewing style using a smartphone or tablet terminal as a second screen has also attracted attention. For example, by using the method of Patent Document 1, a user can control the channel of a receiver using a smartphone or tablet terminal. By using such a technology, it is possible to select a program from an application on a smartphone or tablet terminal. However, although the method of Patent Document 1 allows program selection from an application on a smartphone or tablet terminal, the current situation is limited to program selection from a program guide displayed on the application, and it cannot be said that it is effectively used as a second screen. Patent Literature 2 proposes an electronic program guide display device that allows a user to select from an EPG screen not only currently airing programs but also recorded programs that the user has recorded. Patent Literature 3 proposes a device and method that automatically records reruns of programs that the user missed based on the user's viewing history in addition to a program guide based on an EPG. Patent Literature 4 proposes a device that provides an interface that allows a user to select on-demand videos in the same way as a TV program guide. However, the interfaces proposed in all of Patent Documents 1 to 4 are still based on the electronic program guide (EPG), and as a result, only the program title and summary are used as criteria for program selection, which does not provide an intuitive user interface.

[0004] In this regard, Patent Document 5 proposes a user interface that searches for programs based on keywords obtained from currently broadcast programs as a method that does not rely on a program guide. However, although this method also allows for efficient program searches, program information is presented in the form of text, just like the program guide-based method, and the user interface is not intuitively operable. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Patent No. 6381106 [Patent Document 2] JP 2013-85207 A [Patent Document 3] JP 2020-174340 A [Patent Document 4] Patent No. 5283229 [Patent Document 5] JP 2008-98793 A Summary of the Invention [Problem to be solved by the invention]

[0006] For this reason, there is a demand for a user interface that is easy to operate and that also utilizes smartphones and tablet terminals.The present invention aims to provide a program selection device and a program selection program that provide a user with a graphical user interface that allows the user to intuitively understand and operate the contents of television programs and on-demand videos, thereby allowing the user to select television program channels and videos with simple operations. [Means for solving the problem]

[0007] One aspect of the program selection device according to the present invention is to a program information memory for storing channels and program information including at least program titles, program summaries, and subtitle data of programs broadcast on the channels; a keyword dictionary for storing preregistered keywords; a program information receiving unit that stores the channel and the program information in the program information memory at least when the program on the channel is changed or when new subtitle data is received; a keyword extracting unit that extracts keywords from the program information of each channel stored in the program information memory based on the keyword dictionary; a graph generating unit which generates graph information expressing the keywords contained in each channel by expressing each channel extracted by the keyword extracting unit and the keywords contained in the program information of each channel as nodes and connecting each channel node with each keyword node by an edge; a graph drawing unit that draws a graph based on the graph information generated by the graph generating unit and enables a channel to be selected based on the drawn graph; Equipped with.

[0008] In the program selection device, The program is a television program broadcast on each channel received by a television receiver, The television may further include a receiver control unit that, when a channel is selected based on the graph drawn by the graph drawing unit, selects the television receiver based on the selected channel.

[0009] In the program selection device, The program is a television program distributed over the Internet, and a viewing application for viewing the television program distributed over the Internet; The display device may further include an application control unit that, when a channel is selected based on the graph drawn by the graph drawing unit, changes the channel of the viewing application based on the selected channel.

[0010] In the program selection device, The graph generating unit may calculate a similarity between each keyword and integrate nodes of similar keywords.

[0011] In the program selection device, a keyword rarity level storage unit in which the rarity level of each keyword registered in the keyword dictionary is registered in advance; The graph drawing unit may be configured to, based on the importance of the edges calculated from the frequency of occurrence of keywords in the nodes connected to each edge and the rarity of the keywords registered in the keyword rarity memory unit, reduce keyword nodes connected to edges with low importance until at least the number of keyword nodes reaches a number specified by the user, or reduce keyword nodes connected to edges whose importance is equal to or lower than a threshold value specified by the user.

[0012] One aspect of the program selection program according to the present invention is for causing a computer to function as the program selection device.

[0013] One aspect of the program selection device according to the present invention is to A video information storage unit in which video information including a video ID, a video title, a summary of a video, and subtitle data included in a video distributed by an on-demand video distribution service is stored in advance; a keyword dictionary for storing preregistered keywords; a keyword extraction unit that acquires video information from the video information storage unit, extracts keywords based on the keyword dictionary, associates the extracted keywords with the extracted video IDs, and stores (stores) them in a keyword DB, and associates the extracted keywords with video IDs containing the keywords, and stores (stores) them in a keyword reverse lookup DB; a graph generation unit that acquires a video ID of a video that a user is watching on an information processing terminal, adds the video as a video node of depth 0, and also acquires a keyword linked to the video ID from a keyword DB and adds it as a keyword node of depth 1, and generates graph information that represents the video node and the keyword node by edges as starting graph information, wherein after creating the starting graph information, the graph generation unit recursively generates graph information including keyword nodes or video nodes up to a preset depth threshold based on the keyword node of depth 1; A server comprising: A viewing app for viewing videos distributed through an on-demand video distribution service; a graph drawing unit that draws a graph based on the graph information generated by the graph generating unit and enables selection of a video node based on the drawn graph; and an application control unit that, when a video node is selected based on the graph drawn by the graph drawing unit, changes a video to be viewed of the viewing application to the selected video. An information processing terminal; Equipped with.

[0014] In the program selection device, The graph generation unit When the depth threshold is N (a natural number equal to or greater than 2), after the origin graph information is created, the parameter i is set to an initial value of 1, and the following is executed: When the parameter i is less than the depth threshold, a new video that is linked to the created keyword node of depth i and has no video node yet is obtained from the keyword reverse lookup DB, added as a video node of depth (i+1), and generated graph information by connecting the created keyword node of depth i with an edge; Furthermore, if (i+1) is less than the depth threshold, obtain a new keyword associated with the video node at depth (i+1) from the keyword DB, add it as a keyword node at depth (i+2), and generate graph information represented by edges; The process may be performed recursively by successively adding 2 to the parameter i within a range in which the depth (i+2) is less than the depth threshold value.

[0015] In the program selection device, The graph generating unit may calculate a similarity between each of the keywords, and add edges between nodes of similar keywords.

[0016] One aspect of the program selection program according to the present invention is for causing a computer to function as the program selection device. Effect of the Invention

[0017] According to the present invention, by providing a user with a graphical user interface that enables the user to intuitively understand and operate the content of television programs and on-demand videos, the user can select programs and videos with simple operations. [Brief description of the drawings]

[0018] [Figure 1] FIG. 2 is a diagram showing an operation image in the first embodiment. [Diagram 2] FIG. 2 is a diagram illustrating a functional configuration of a program selection device in the first embodiment. [Diagram 3] FIG. 4 is a diagram illustrating an example of processing by a keyword extracting unit in the first embodiment. [Figure 4]FIG. 4 is a diagram illustrating an example of processing by a graph generating unit in the first embodiment. [Diagram 5] FIG. 4 is a diagram illustrating an example of processing by a graph generating unit in the first embodiment. [Figure 6] FIG. 4 is a diagram illustrating an example of processing by a graph generating unit in the first embodiment. [Figure 7] FIG. 4 is a diagram illustrating an example of processing by a graph generating unit in the first embodiment. [Figure 8] FIG. 4 is a diagram showing an example of drawing a graph in the first embodiment. [Figure 9] FIG. 4 is a flowchart illustrating the flow of a program selection process in the first embodiment. [Figure 10] FIG. 11 is a diagram showing an operation image in the second embodiment. [Figure 11] FIG. 11 is a diagram showing a functional configuration of a program selection device in a second embodiment. [Figure 12] FIG. 11 is a flowchart illustrating the flow of a program selection process in the second embodiment. [Figure 13] FIG. 13 is a diagram showing an operation image in the third embodiment. [Figure 14] FIG. 11 is a diagram showing a functional configuration of a program selection device (program selection system) in a third embodiment. [Figure 15] FIG. 15 in the third embodiment is a diagram illustrating data stored in the keyword DB and the keyword reverse lookup DB. [Figure 16] FIG. 13 is a diagram illustrating an example of processing by a graph generating unit in the third embodiment. [Figure 17] FIG. 13 is a diagram illustrating an example of processing by a graph generating unit in the third embodiment. [Figure 18] FIG. 13 is a diagram illustrating an example of processing by a graph generating unit in the third embodiment. [Figure 19] FIG. 13 is a diagram illustrating an example of processing by a graph generating unit in the third embodiment. [Figure 20] FIG. 13 is a diagram showing an example of drawing a graph in the third embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0019] Hereinafter, a first embodiment, a second embodiment, and a third embodiment will be described as examples of the present invention. The first embodiment uses a television receiver that is in the same room as a program selection device (e.g., a personal computer, tablet terminal, smartphone, etc.) held by the user. Specifically, a graph showing television program channels and keywords extracted from the programs is displayed on a display of the program selection device (e.g., a personal computer, tablet terminal, smartphone, etc.) held by the user. This allows the user to check the topics and similar topics covered in the programs broadcast on each channel on this graph and select the channel (program) they want to watch, for example by tapping a channel node on the graph, to select the program on that channel on the television receiver.

[0020] The second embodiment is a form in which a user watches a television program distributed over the Internet using a program selection device (e.g., a personal computer, a tablet terminal, a smartphone, etc.) in hand. Specifically, a button is placed on a television program viewing application, and when the button is tapped, a graph is displayed showing channels of television programs distributed over the Internet and keywords extracted from the programs. This allows the user to select a channel that the user wants to watch from among television programs distributed over the Internet on this graph, and when the user taps a channel node on the graph, the program on that channel is selected on the program selection device in hand (e.g., a personal computer, a tablet terminal, a smartphone, etc.).

[0021] While the first and second embodiments are both embodiments in which a program is selected from among television programs, the third embodiment is a embodiment in which a user can freely select and watch a video from a large amount of video data from an on-demand video distribution service, etc. Specifically, videos that are thought to deal with topics similar to those covered in the video or television program being watched by the user are represented in a graph format, and the user can watch the video he or she wants to watch by, for example, tapping a video node on the graph.

[0022] [First embodiment] First, a detailed description will be given of the first embodiment. Fig. 1 is a diagram showing an operation image of the first embodiment. As shown in Figure 1, the program selection device of the first embodiment displays a graph showing television program channels and keywords extracted from those programs on a display of a program selection device (e.g., a personal computer, a tablet terminal, a smartphone, etc.) held by a user.

[0023] FIG. 2 is a diagram showing the functional configuration of the program selection device 1 in the first embodiment. The program selection device 1 is an information processing terminal (computer) equipped with various input / output interfaces in addition to a control unit 10 and a storage unit 20. Examples of the program selection device 1 include a personal computer, a tablet terminal, and a smartphone.

[0024] The control unit 10 is a part that controls the entire program selection device 1, and realizes each function in the first embodiment, for example, by appropriately reading and executing various programs stored in the storage unit 20. The control unit 10 may be a CPU. The control unit 10 includes a program information receiving unit 11, a keyword extracting unit 12, a graph generating unit 13, a graph drawing unit 14, and a receiver control unit 15. Details of these functional units will be described later.

[0025] The memory unit 20 is a storage area for various programs and various data for causing the hardware group to function as the program selection device 1, and may be a ROM, RAM, flash memory, hard disk drive (HDD), etc., and may be composed of multiple devices. The storage unit 20 includes a program information memory 21 and a keyword dictionary 22. In addition, the storage unit 20 may include a keyword rarity DB 23.

[0026] The program information memory 21 is a storage unit that stores the program titles and program summaries of the programs broadcast on each channel, and the subtitle data output from each channel, as program information for that channel. Here, the program titles and program summaries are obtained from an electronic program guide. Note that the program information for each channel stored in the program information memory 21 may be updated and stored as program information for that channel when the program on each channel changes or when new subtitle data is received by the program information receiving unit 11, which will be described later. In this way, the program information memory 21 stores information about the programs currently being broadcast on each channel.

[0027] The keyword dictionary 22 is dictionary data required when extracting keywords from program information of each channel, and is prepared in advance, mainly including proper nouns. For example, keywords related to topics of interest to the user may be prepared in advance. FIG. 3 is a diagram showing an example of processing by the keyword extraction unit 12, which will be described later. For example, referring to FIG. 3, keywords related to the novel coronavirus are prepared as the keyword dictionary 22.

[0028] The keyword rarity DB 23 is a DB in which the rarity of the keywords registered in the keyword dictionary 22 is registered in advance. As the rarity of the keyword, for example, the IDF (Inverse Document Frequency) score of each keyword registered in the keyword dictionary 22 may be calculated in advance using program information (program title, summary, subtitle data) of TV programs broadcast in the past, specifically, for example, in the last five years, and may be registered in the keyword rarity DB 23. Here, the IDF score represents the reciprocal of the proportion of documents (program information) containing a certain word (keyword) in a document set (in this embodiment, a set of program information of TV programs broadcast in the past). The more frequently a word (keyword) appears in other documents (program information), the smaller the IDF score, and conversely, the less frequently a word (keyword) appears in other documents (program information), the larger the IDF score. Above is a description of the storage unit 20. Next, the control unit 10 will be described.

[0029] The program information receiving unit 11 receives program titles and program summaries of programs being broadcast on each channel from an electronic program guide (EPG), for example, when the program on each channel switches, and also receives subtitle data when subtitle data is output from each channel, thereby storing program information (program titles, program summaries, and subtitle data) of each channel in the program information memory 21. In this manner, the program information memory 21 may be configured to always store information about programs being broadcast on each channel.

[0030] The keyword extraction unit 12 extracts keywords from program information (program title, summary, and subtitle data) stored in a program information memory 21 on the basis of a keyword dictionary 22 . As shown in FIG. 3, in this example, the keyword extraction unit 12 extracts four keywords, "Tokyo", "New Coronavirus", "Artificial Ventilator", and "Artificial Heart-Lung Machine", from the program information of channel A retrieved from the program information memory 21, based on the keyword dictionary 22. Similarly, for other channels, the keyword extraction unit 12 extracts keywords from the program information of the channel retrieved from the program information memory 21 based on the keyword dictionary 22. Furthermore, the keyword extraction unit 12 calculates a TF (Term Frequency) score indicating the frequency of occurrence of each keyword for each program (channel). Here, the TF score represents the ratio of the number of times a word (keyword) appears in a certain document (in this embodiment, the program information for each channel) to the sum of the number of times all words appear in the document. Therefore, the TF score is the frequency of occurrence of a word (keyword) in each document (program information for each channel), and even if the same keyword has a different frequency of occurrence in program A (channel A) and program B (channel B), the TF score of the keyword in each program will have a different value. The keyword extracting unit 12 may extract keywords relating to the program information of a channel every time the program information of the channel stored in the program information memory 21 is updated.

[0031] The graph generation unit 13 generates a graph from the keywords for each channel extracted by the keyword extraction unit 12. The graph generation unit 13 expresses the keywords contained in each channel and the programs of each channel as channel nodes and keyword nodes, respectively, in a graph. 4 to 7 are diagrams showing an example of processing by the graph generating unit 13. The process of graph generation by the graph generating unit 13 will be described with reference to FIGS.

[0032] As shown in FIG. 4, the graph generating unit 13 first generates node information related to the channel node of each channel. The node information is expressed by a node ID for uniquely identifying each node generated on the graph and a node name. As shown in FIG. 4, for example, a channel number (symbol) may be assigned as the node name of the channel node, and for example, a unique consecutive number may be assigned as the node ID of the channel node. In the example shown in FIG. 4, an ID is assigned to each of four channels (channels A, B, C, and D) using consecutive numbers from 1 to 4, and the node names are expressed as channel A, channel B, channel C, and channel D. The graph generating unit 13 may generate a channel node from a channel that the user is currently viewing.

[0033] Next, as shown in Figures 5 and 6, the graph generation unit 13 generates keyword nodes based on the keywords of each channel, such that the channel node identification ID and the keyword node identification ID do not overlap. After that, the graph generation unit 13 creates edges that relate the channel node ID to the keyword node ID corresponding to the keyword included in the channel. Here, the graph generation unit 13 generates edge IDs for uniquely identifying each edge, such that there are no overlaps. Unique consecutive numbers may be assigned as edge IDs.

[0034] In the example of FIG. 5, the graph generation unit 13 processes the keyword "Tokyo" extracted from "Channel A". First, a node for the keyword "Tokyo" is generated and recorded in the node information. In this example, ID5 is assigned to the node for the keyword "Tokyo". Next, an edge is connected between the node for "Channel A" (ID1) and the node for "Tokyo" (ID5). The edge information is composed of four elements: edge ID, source (src), destination (dest), and score. The ID of the channel node is assigned to the source, and the ID of the keyword node is assigned to the destination, and the importance of the edge is recorded in the score. The importance of the edge is the importance of the keyword in the channel (program), and is assigned to the edge connecting each node of the channel and the keyword. The importance is calculated by multiplying the frequency of appearance (TF) of the keyword in the channel (program) by the rarity (IDF) of the keyword included in the keyword rarity DB 23, which is TF-IDF (Term Frequency-Inverse Document Frequency). As with the node information, a unique consecutive number is assigned to the ID of the edge information. In the example of Figure 5, an edge (ID 1) is recorded connecting node ID 1 (channel A) and node ID 5 (Tokyo). Similarly, extracted keywords are added as nodes in order, and edges are established between them and channel nodes, but new nodes are not added for keywords that have already been added as keyword nodes.

[0035] Referring to the example in Figure 6, the keyword "novel coronavirus" (extracted from channel A), which has already been added as a node with ID 6, is also extracted in channel C, but since "novel coronavirus" has already been added as a keyword node, no new keyword node is generated, and only an edge (ID 9) is added between the channel node "channel C" (ID 3) and the keyword node "novel coronavirus" (ID 6). Note that the TF-IDF score (importance) of node ID 6 (keyword "novel coronavirus") in node ID 1 (channel A) is 2.58, while the TF-IDF score (importance) of node ID 6 (keyword "novel coronavirus") in node ID 3 (channel C) is 1.11, which is different from the above. As described above, the graph generating unit 13 can generate graph information by processing all the keywords. Fig. 7 shows the result of processing all the keywords.

[0036] The graph generating unit 13 may integrate similar keyword nodes with respect to the keyword node. By integrating similar keywords, a graph can be created in which channel nodes connected to similar keyword nodes by different edges are directly connected to the integrated keyword node. In this way, by integrating nodes with similar keywords, the user can directly and intuitively understand the relationship between the similar keyword nodes and the channel nodes connected to them. When integrating nodes, the edges connected to the nodes are also integrated in the same way, and the score of the integrated edge is determined to be the maximum or average score of the edges to be integrated. The graph generating unit 13 may calculate the similarity between each keyword using, for example, the method described in the following document A, and integrate keyword nodes whose similarity is less than a set threshold value. Document A: Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S. Corrado and Jeff Dean, “Distributed Representations of Words and Phrases and their Compositionality,” Advances in Neural Information Processing Systems 26, 2013.

[0037] The graph drawing unit 14 draws a graph based on the graph information (node ​​information and edge information) generated by the graph generation unit 13. Although there are no particular limitations on the graph drawing algorithm, it is preferable to arrange channel nodes that share many keywords close to each other, so it is desirable to use a method using a dynamic model, for example. As a method using a dynamic model, for example, the method described in the following document B may be used for drawing. Document B: Thomas MJ Fruchterman and Edward M. Reingold, “Graph drawing by force-directed placement,” Software: Practice and Experience, vol. 21, no. 11, pp. 1129-1164, 1991.

[0038] Fig. 8 is a diagram showing an example of a graph drawn based on the graph information shown in Fig. 7. Although Fig. 8 shows a two-dimensional graph, it is also possible to similarly show a three-dimensional graph. Note that in Fig. 8, a value indicating importance is attached to the edge connecting the nodes, but it is possible that the value is not displayed in the graph actually drawn on the display device, or the thickness of the edge drawing is changed according to the importance.

[0039] In addition, if the number of keywords extracted from each channel is large, there may be many keyword nodes, resulting in a large-scale, complicated graph being drawn. In that case, it may be difficult for the user to understand the topics covered in the programs of each channel. Therefore, the graph drawing unit 14 may limit the number of keyword nodes that the user actively draws. When the graph drawing unit 14 reduces the number of keyword nodes, it is desirable to determine the importance of edges connected to each channel (program) and to preferentially reduce keyword nodes connected to edges with low importance. Therefore, the graph drawing unit 14 may refer to the TF-IDF score assigned to each edge and reduce edges starting from those with small scores, and may also reduce keyword nodes that are no longer connected to other nodes. In this case, the graph drawing unit 14 can reduce the number of keyword nodes in two ways. In the first method, the number of keywords to be reduced is specified, for example, by the user, and the graph generation unit 13 reduces the edges together with the connected keyword nodes, starting with the edges with the smallest TF-IDF scores, until the number specified by the user is reached. The second method is to specify a TF-IDF score threshold, for example, by the user, and to remove edges and keyword nodes connected to them whose TF-IDF scores are below the user-specified threshold.

[0040] Furthermore, when a channel node is specified by the user from a graph drawn on a display (not shown), graph drawing unit 14 outputs channel information corresponding to the specified channel node to receiver control unit 15. Here, when one channel node drawn by the user is tapped, graph drawing unit 14 may output channel information corresponding to the channel node to receiver control unit 15. Furthermore, for example, when a channel node ID or a channel node name is input by the user, graph drawing unit 14 may output channel information corresponding to the channel node input by the user to receiver control unit 15.

[0041] The receiver control unit 15 selects the television receiver 5 to the channel based on the channel information input from the graph drawing unit 14. This allows the user to intuitively understand the content of the television program and select the program with a simple operation, thereby selecting the channel of the television receiver 5. The channel selection method of the television receiver 5 is not particularly limited, but may be the method described in Patent Document 1 cited above. The functional configuration of the program selection device in the first embodiment has been described above.

[0042] 9 is a flowchart illustrating the flow of a program selection process in the first embodiment. Here, the process of generating a graph and drawing the graph upon receiving a request from a user to display the graph is illustrated.

[0043] In step S1, the program information receiving unit 11 receives program titles and program summaries for programs broadcast on each channel from the electronic program guide (EPG), as well as subtitle data, and stores these in the program information memory 21 as program information (program title, summary, and subtitle data).

[0044] In step S2, the keyword extractor 12 extracts keywords from the program information (program title, summary, and subtitle data) stored in the program information memory 21 based on the keyword dictionary 22 in response to a graph display instruction from the user.

[0045] In step S3, the graph generation unit 13 generates channel node information. In step S4, the graph generating unit 13 judges whether or not there is an unprocessed keyword. If the judgment is YES, the process proceeds to step S5. If the judgment is NO, that is, if there is no unprocessed keyword, the process proceeds to step S9.

[0046] In step S5, the graph generating unit 13 extracts one unprocessed keyword. In step S6, the graph generating unit 13 judges whether or not a node for the keyword has already been created. If the judgment is YES, the process proceeds to step S8. If the judgment is NO, that is, if a node for the keyword has not been created, the process proceeds to step S7.

[0047] In step S7, the graph generating unit 13 generates a keyword node. In step S8, the graph generating unit 13 generates edges that relate the channel nodes to the keyword nodes, and then proceeds to step S4.

[0048] In step S9, the graph drawing unit 14 determines whether or not the number of keyword nodes to be drawn is limited, and if the determination is YES, the process proceeds to step S10. If there is no restriction, the process proceeds to step S11.

[0049] In step S10, the graph drawing unit 14 determines, for example, the importance of edges connected to each keyword node, and prioritizes reducing nodes with low importance until the number of keyword nodes satisfies the limiting condition.

[0050] In step S11, the graph drawing unit 14 draws a graph on, for example, a display device based on the generated graph information (node ​​information and edge information).

[0051] In step S12, when a channel node is specified by the user from the graph drawn on a display (not shown), the graph drawing unit 14 outputs channel information corresponding to the specified channel node to the receiver control unit 15. In step S13, the receiver control unit 15 tunes the television receiver 5 to the channel specified by the user based on the channel information. The flow of the program selection process in the first embodiment has been described above.

[0052] As described above, in the first embodiment, the graphical user interface displayed on a program selection device (e.g., a personal computer, a tablet terminal, a smartphone, etc.) held by the user depicts nodes (channel nodes) representing channels or program content, nodes (keyword nodes) representing keywords included in the program content, and edges representing the connections between them. An edge is constructed between a channel node and a keyword node, and indicates that the keyword is included in the summary text or subtitle data of that channel (program content). Therefore, it can be said that program contents that share many keyword nodes deal with similar topics, and program contents that share few keyword nodes have a weak relationship in content. Furthermore, by checking what keyword nodes program contents share, users can intuitively understand the relationship between them.

[0053] [Second embodiment] The second embodiment will be described below. Fig. 10 is a diagram showing an operation image of the second embodiment. The first embodiment is a form in which a user watches a television program provided by broadcast using a television receiver 5, whereas the second embodiment is a form in which a user watches a television program provided by communication (e.g., the Internet) using a program selection device 1A (e.g., a personal computer, a tablet terminal, a smartphone, etc.) in hand via a viewing application 5A, as shown in FIG. 10. The program selection device 1A in the second embodiment differs from the program selection device 1 in the first embodiment in that instead of selecting a channel for the television receiver 5 by the receiver control unit 15, the channel for the television program viewing application 5A is changed by the application control unit 16.

[0054] FIG. 11 is a diagram showing the functional configuration of a program selection device 1A in an embodiment of the present invention. In the second embodiment, unlike the first embodiment, there is no receiver control unit 15 that selects the channel of the television receiver 5, and instead there is an application control unit 16 that changes the channel of the television program viewing application 5A based on channel information input from the graph drawing unit 14. The other functional units are the same as in the first embodiment.

[0055] Fig. 12 is a flowchart illustrating the flow of a program selection process in the second embodiment. The process flow of the second embodiment is also the same as that of the first embodiment in the process up to graph drawing shown in Fig. 9 (from step S1 to step S11), but steps S12 and S13 are different as follows. In the second embodiment, in step S12, when a channel node is specified by the user from a graph drawn on a display (not shown), the graph drawing unit 14 outputs channel information corresponding to the specified channel node to the application control unit 16. In step S13, the application control unit 16 changes the channel of the viewing application 5A to the channel specified by the user based on the channel information. In the second embodiment, television programs are displayed on the display of the program selection device 1A by the viewing application 5A, but a button (not shown) for requesting the display of a graph, for example, may be displayed anywhere on the display screen, and when tapped by the user, the graph creation and drawing process may be started, as in the first embodiment. The second embodiment has been described above. As described above, in the second embodiment, as in the first embodiment, the graphical user interface displayed on a program selection device held by the user (e.g., a personal computer, a tablet terminal, a smartphone, etc.) depicts nodes representing channels or program content (channel nodes), nodes representing keywords included in the program content (keyword nodes), and edges representing the connections between them. An edge is constructed between a channel node and a keyword node, and indicates that the keyword is included in the summary text or subtitle data of that channel (program content). Therefore, it can be said that program contents that share many keyword nodes deal with similar topics, and program contents that share few keyword nodes have a weak relationship in content. Furthermore, by checking what keyword nodes program contents share, users can intuitively understand the relationship between them.

[0056] [Third embodiment] The third embodiment will be described below. Fig. 13 is a diagram showing an operation image of the third embodiment. While the first and second embodiments are both embodiments in which a program is selected from television programs, the third embodiment is an embodiment in which a user can freely view a video selected from a large amount of video data of an on-demand video distribution service or the like, as shown in Fig. 13. Specifically, when a user is viewing on-demand distributed videos or television programs (hereinafter simply referred to as "videos") provided by communication (e.g., the Internet) through a viewing application 5A on an information processing terminal 3 (e.g., a personal computer, a tablet terminal, a smartphone, etc.) at hand, videos that are thought to deal with topics similar to those covered in the video the user is viewing are displayed in a bird's-eye view graph format. For this reason, the third embodiment differs significantly from the second embodiment in that, instead of generating nodes from a finite number of channels, a graph including video nodes, keyword nodes, etc. is generated from large amounts of video data distributed by on-demand video distribution services, etc.

[0057] 14 is a diagram showing an example of a functional configuration of a program selection device 1B in the third embodiment. As shown in FIG. 14, the program selection device 1B may be a client-server system including a server 2 and an information processing terminal 3. Specifically, when the server 2 receives a user's graph display request from the information processing terminal 3, the server 2 generates graph information based on the ID of the video being viewed by the user, from video information (video title, video summary, and subtitle data) distributed by an on-demand video distribution service, for example, and includes video nodes representing videos that deal with topics similar to the video being viewed by the user, keyword nodes, and edges that relate the video nodes and keyword nodes, and provides the graph information to the information processing terminal 3. The information processing terminal 3 displays to the user, in a graphical form, an overview of videos dealing with topics related to the video currently being viewed by drawing a graph based on the graph information acquired from the server 2. This allows the user to select a video dealing with a topic related to the video currently being viewed.

[0058] The server 2 includes a control unit 10B and a storage unit 20B. The control unit 10B includes a keyword extraction unit 17 and a graph generation unit 18, and the storage unit 20B includes a keyword dictionary 22, a keyword rarity DB 23, a video information DB 24, a keyword DB 25, and a keyword reverse lookup DB 26.

[0059] The keyword dictionary 22 is dictionary data required for extracting keywords from video information of each video, and is prepared in advance, mainly consisting of proper nouns, similar to the keyword dictionary 22 in the first and second embodiments. For example, keywords related to topics in which the user is interested may be prepared in advance. The keyword rarity DB 23 is a DB in which the rarity of keywords registered in the keyword dictionary 22 is registered in advance. As the rarity of a keyword, for example, an IDF (Inverse Document Frequency) score of each keyword registered in the keyword dictionary 22 may be calculated in advance using video information (video title, summary, and subtitle data) of a video previously distributed, and registered in the keyword rarity DB 23 as in the first and second embodiments.

[0060] The video information DB 24 is a database that stores in advance video IDs, video titles, summary texts of videos, and subtitle data included in videos provided by on-demand video distribution services and the like. The keyword DB 25 and the keyword reverse lookup DB 26 are storage units that store keyword information extracted from the video information DB 24 by the keyword extraction unit 17 described later based on the keyword dictionary 22. Details will be described together with the keyword extraction unit 17 described later. Next, the control unit 10B will be described.

[0061] The keyword extraction unit 17 acquires video information (video ID, video title, summary text, and subtitle data) from the video information DB 24, and extracts keywords using the keyword dictionary 22. The keyword extraction unit 17 stores the extracted keywords together with the video ID in the keyword DB 25 and the keyword reverse lookup DB 26. Here, the keyword DB 25 is a DB that associates a video ID extracted from video information with a keyword extracted from the video information and stores (stores) the video ID. In contrast, the keyword reverse lookup DB 26 is a DB that associates a keyword extracted from video information with a video ID containing the keyword, in contrast to the keyword DB 25, and stores (stores) the keyword. FIG. 15 is a diagram illustrating data stored in the keyword DB 25 and the keyword reverse lookup DB 26. Referring to FIG. 15, the keyword DB 25 stores, for example, keywords (Tokyo, novel coronavirus, artificial respirator, artificial heart-lung machine) associated with video A (video ID). This makes it clear that the keywords contained in video A are Tokyo, novel coronavirus, artificial respirator, and artificial heart-lung machine. Conversely, the keyword reverse lookup DB 26 is linked to the video IDs (video A, video D) of videos that include the keyword "Tokyo", for example. By doing so, it is possible to know that the videos that include the keyword "Tokyo" are video A and video D.

[0062] The graph generating unit 18 generates a graph representing videos that deal with topics similar to the video the user is watching. In the first or second embodiment, the graph generating unit 13 generates a graph of channel nodes and keyword nodes related to television programs broadcast or distributed through a finite number of channels. In contrast, since a large amount of video data is distributed in the on-demand video distribution service that is the target of the third embodiment, it is expected that it will take a huge amount of time to generate a graph for all videos. Therefore, the graph generating unit 18 may set a maximum depth from the video the user is watching in advance and generate a graph limited to a range equal to or less than that depth. In addition, when there are a large number of keywords, the graph generating unit 18 may determine the importance of edges calculated based on the frequency of appearance of the keywords of nodes connected to each edge and the rarity of the keywords included in the keyword rarity DB 23, as in the first embodiment, and may preferentially reduce edges with low importance and keyword nodes connected thereto. 16 to 19 are diagrams showing an example of processing by the graph generating unit 18. The processing by the graph generating unit 18 will be described with reference to FIG. 16 to FIG. 19. It is assumed that the keywords extracted from the video information of each of the videos A, C, and D are linked and stored in the keyword DB 25 by the keyword extracting unit 17, and that the video ID is linked and stored in the keyword reverse lookup DB 26 for each keyword included in the videos A, C, and D. Also, in FIG. 16 to FIG. 19, the maximum depth from the video being viewed by the user is set to 3, but the maximum depth is not limited to 3. The user can set any natural number.

[0063] The graph generation unit 18 first receives the ID of the video that the user is watching and adds it as a video node. Referring to Fig. 16, since the user is watching video A, the graph generation unit 18 first adds "video A" as a video node. Next, the graph generation unit 18 obtains keywords contained in video A from the keyword DB 25, adds them as keyword nodes, and adds edges between them and the video nodes. With reference to Fig. 17, the graph generation unit 18 adds four keyword nodes, "Tokyo", "New coronavirus", "Artificial ventilator", and "Artificial heart-lung machine", and adds edges between them and the "Video A" node. At this time, the four newly added keyword nodes become nodes at a depth of 1 from the "Video A" node.

[0064] Next, the graph generation unit 18 acquires a video ID including the keyword of the newly added keyword node ("Tokyo", "Novel coronavirus", "Artificial ventilator", or "Artificial heart-lung machine") based on the keyword reverse lookup DB 26, and adds it as a video node. With reference to Fig. 18, the graph generation unit 18 adds "Video D" including "Tokyo" and "Video C" including "Novel coronavirus" as new video nodes, and adds edges between them. The "Video D" and "Video C" nodes are nodes at a depth of 2 from the "Video A" node.

[0065] After that, the graph generating unit 18 acquires keywords included in the newly added video nodes "video C" and "video D" from the keyword DB 25 and adds them as keyword nodes. Referring to FIG. 19, three keyword nodes, namely, the keyword "Narita Airport" included in "video C" and the keyword "Tokyo Governor" and "Solar Power Generation" included in "video D", are newly added, and edges are added between them. At this time, the depth of each of the three keyword nodes "Narita Airport", "Tokyo Governor", and "Solar Power Generation" is 3. In this processing example, since the maximum depth of the graph to be generated is set to 3, the graph generating unit 18 ends the processing here and outputs the node information and edge information to the graph drawing unit 14 as graph information. Note that when generating a graph with a deeper depth, the graph generating unit 18 can generate a deeper graph by recursively performing the processing shown in FIG. 16 to FIG. 19.

[0066] The graph generating unit 18 may also add edges between keyword nodes of similar keywords to construct a larger graph. The graph generating unit 18 may calculate the similarity between each keyword using, for example, the method described in the above-mentioned document A, and add edges between keyword nodes whose similarity is equal to or less than a set threshold. In this way, by adding edges between keyword nodes of similar keywords, the graph drawing unit 14 can display an overview of the graph, starting from the video currently being watched by the user, including the keywords contained in the video and keywords similar thereto. This allows the user to select videos dealing with topics more related to the video currently being watched, based on keywords including similar keywords.

[0067] 16 to 19, a graph is constructed using keywords obtained from a video of an on-demand video distribution service as a starting point by applying the video distributed by the on-demand video distribution service as a video currently being viewed by the user, but the present invention is not limited to this. A graph may be constructed using keywords obtained from a television program currently being viewed by the user as a starting point, and may be used to select on-demand videos closely related to the television program currently being viewed.

[0068] The information processing terminal 3 is, for example, a PC, a tablet terminal, or the like, and includes a control unit (not shown) and a storage unit (not shown). The control unit includes a graph drawing unit 14, an application control unit 16, and a viewing application 5A. The graph drawing unit 14 and the application control unit 16 have functions equivalent to those of the graph drawing unit 14 and the application control unit 16 in the second embodiment, respectively. Fig. 20 is a diagram showing an example of a graph drawn in the third embodiment. For example, the graph drawing unit 14 draws the graph shown in Fig. 20 based on the graph information generated by the graph generating unit exemplified in Fig. 19. Furthermore, the graph drawing unit 14 selects a moving image node in which the user is interested (wants to watch) from the graph illustrated in FIG. The application control unit 16 acquires the video to be viewed from the on-demand video distribution service based on the selected video ID, and outputs the video to the display device using the viewing application 5A.

[0069] In the third embodiment, the server 2 includes the keyword extractor 17 and the graph generator 18 as the control unit 10B, and the server 2 provides the graph to the information processing terminal 3; however, the present invention is not limited to this. For example, the server 2 may be a data server including the keyword dictionary 22, the keyword rarity DB 23, and the video information DB 24, and the information processing terminal 3 may be equipped with the graph generating unit 18. That is, instead of the server 2, the control unit 10B may be equipped with the keyword extracting unit 17, and the keyword DB 25 and the keyword reverse lookup DB 26 may be created and saved (stored) in advance based on the keyword dictionary 22 and the video information DB 24, and a database server 2A may be configured to store the keyword rarity DB 23, and the information processing terminal 3 may be equipped with the graph generating unit 18, and graph information may be created by searching and querying the keyword dictionary 22, the keyword rarity DB 23, the keyword DB 25, and the keyword reverse lookup DB 26 provided by the database server 2A. As described above, the third embodiment is a form in which a user can freely select and watch a video from a large amount of video data from an on-demand video distribution service, etc. The user can check videos that are thought to deal with topics similar to the topic of the video he or she is watching from a bird's-eye view using a graph representation, and can select a video based on keywords that appear. In addition, although the third embodiment shows an example of a case where a video is being viewed from an on-demand video distribution service, the present invention is not limited to this. By constructing a graph based on keywords obtained from the television program being viewed, it is also possible to use the graph to select on-demand videos that are closely related to the television program being currently viewed.

[0070] Although the first, second and third embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments.

[0071] In this embodiment, the configuration and operation of the program selection device 1, the program selection device 1A, or the program selection device 1B as a client-server system composed of the server 2 and the information processing terminal 3 have been mainly described, but the present invention is not limited to this and may be configured as a method or program for displaying an image on a display having each component.

[0072] Furthermore, the functions of the program selection device 1, the program selection device 1A, or the program selection device 1B as a client-server system composed of the server 2 and the information processing terminal 3 may be realized by recording a program on a computer-readable recording medium, and reading and executing the program recorded on the recording medium into a computer system.

[0073] The term "computer system" here includes hardware such as the OS and peripheral devices. Additionally, "computer-readable recording media" refers to portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into computer systems.

[0074] Furthermore, the term "computer-readable recording medium" may include a recording medium that dynamically stores a program for a short period of time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line, and a recording medium that stores a program for a certain period of time, such as a volatile memory in a computer system that serves as a server or client in such a case. The above program may be a program for realizing part of the above-mentioned functions, or may be a program that can realize the above-mentioned functions in combination with a program already recorded in the computer system. [Explanation of symbols]

[0075] 1, 1A Program selection device 10 Control section 11 Program information receiving section 12 Keyword Extraction Section 13 Graph Generation Unit 14 Graph drawing section 15 Receiver control section 16 Application control section 20 Memory section 21 Program Information Memory 22 Keyword Dictionary 23 Keyword Rareness DB 5. Television receiver 5A Viewing App 1B Program selection device 2 Server 10B Control section 17 Keyword Extraction Section 18 Graph Generation Unit 20B Storage section 24 Video Information DB 25 Keyword Database 26 Keyword Reverse Lookup DB 3. Information processing terminal

Claims

1. a program information memory for storing channels and program information including at least program titles, program summaries, and subtitle data of programs broadcast on the channels; a keyword dictionary for storing preregistered keywords; a program information receiving unit that stores the channel and the program information in the program information memory at least when the program on the channel is changed or when new subtitle data is received; a keyword extracting unit that extracts keywords from the program information of each channel stored in the program information memory based on the keyword dictionary; a graph generating unit which generates graph information expressing the keywords contained in each channel by expressing each channel extracted by the keyword extracting unit and the keywords contained in the program information of each channel as nodes and connecting each channel node with each keyword node by an edge; a graph drawing unit that draws a graph based on the graph information generated by the graph generating unit and enables a channel to be selected based on the drawn graph; A program selection device comprising:

2. The program is a television program broadcast on each channel received by a television receiver, 2. The program selection device according to claim 1, further comprising a receiver control unit that, when a channel is selected based on the graph drawn by the graph drawing unit, selects the television receiver based on the selected channel.

3. The program is a television program distributed over the Internet, and a viewing application for viewing the television program distributed over the Internet; The program selection device according to claim 1 , further comprising: an application control unit that, when a channel is selected based on the graph drawn by the graph drawing unit, changes a channel of the viewing application based on the selected channel.

4. 4. The program selection device according to claim 1, wherein the graph generation section calculates a similarity between each of the keywords and integrates nodes of similar keywords.

5. a keyword rarity level storage unit in which the rarity level of each keyword registered in the keyword dictionary is registered in advance; A program selection device as described in any one of claims 1 to 3, wherein the graph drawing unit, based on the importance of the edges calculated from the frequency of occurrence of keywords in the nodes connected to each edge and the rarity of the keywords registered in the keyword rarity memory unit, removes keyword nodes connected to edges with low importance until at least the number of keyword nodes reaches a number specified by the user, or removes keyword nodes connected to edges whose importance is equal to or lower than a threshold value specified by the user.

6. A program selection program for causing a computer to function as the program selection device according to any one of claims 1 to 3.

7. A video information storage unit in which video information including a video ID, a video title, a summary of a video, and subtitle data included in a video distributed by an on-demand video distribution service is stored in advance; a keyword dictionary for storing preregistered keywords; a keyword extraction unit that acquires video information from the video information storage unit, extracts keywords based on the keyword dictionary, associates the extracted keywords with the extracted video IDs, and stores (stores) them in a keyword DB, and associates the extracted keywords with video IDs containing the keywords, and stores (stores) them in a keyword reverse DB; a graph generation unit that acquires a video ID of a video that a user is watching on an information processing terminal, adds the video as a video node of depth 0, and also acquires a keyword linked to the video ID from a keyword DB, adds it as a keyword node of depth 1, and generates graph information that represents the video node and the keyword node by edges as starting graph information, wherein after creating the starting graph information, the graph generation unit recursively generates graph information including keyword nodes or video nodes up to a preset depth threshold based on the keyword node of depth 1; A server comprising: A viewing app for viewing videos distributed through an on-demand video distribution service; a graph drawing unit that draws a graph based on the graph information generated by the graph generating unit and enables selection of a video node based on the drawn graph; and an application control unit that, when a video node is selected based on the graph drawn by the graph drawing unit, changes a video to be viewed of the viewing application to the selected video. An information processing terminal; A program selection device comprising:

8. The graph generation unit When the depth threshold is N (a natural number equal to or greater than 2), after the origin graph information is created, the parameter i starts from an initial value of 1, and the following is executed: When the parameter i is less than the depth threshold, a new video that is linked to the created keyword node of depth i and has no video node yet is obtained from the keyword reverse lookup DB, added as a video node of depth (i+1), and generated graph information by connecting the created keyword node of depth i with an edge; Furthermore, if (i+1) is less than the depth threshold, obtain a new keyword associated with the video node at depth (i+1) from the keyword DB, add it as a keyword node at depth (i+2), and generate graph information represented by edges; 8. The program selection device according to claim 7, wherein the process is performed recursively by successively adding 2 to the parameter i within a range in which the depth (i+2) is less than the depth threshold value.

9. 9. The program selection device according to claim 7, wherein the graph generation section calculates a similarity between each of the keywords and adds edges between nodes of similar keywords.

10. A program selection program for causing a computer to function as the program selection device according to any one of claims 7 to 9.

Citation Information

Patent Citations

  • Magnetic cleaning of electrophotographic copier

    JP1977083229A

  • Production of polymer having increased 1, 2-microstructure

    JP1988081106A

  • Receiving device

    JP2008098793A

  • Electronic program guide display unit and remote controller

    JP2013085207A

  • Program guide display program, device, and method based on electronic program guide

    JP2020174340A