WO2011036755A1 - キーワード抽出装置、およびプログラム - Google Patents
キーワード抽出装置、およびプログラム Download PDFInfo
- Publication number
- WO2011036755A1 WO2011036755A1 PCT/JP2009/066561 JP2009066561W WO2011036755A1 WO 2011036755 A1 WO2011036755 A1 WO 2011036755A1 JP 2009066561 W JP2009066561 W JP 2009066561W WO 2011036755 A1 WO2011036755 A1 WO 2011036755A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- keyword
- area
- unit
- score
- display area
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
Definitions
- the present invention relates to a keyword extracting device and a program for extracting a keyword that can be used for searching or the like from a document being browsed.
- the present invention has been made in view of the above, and an object of the present invention is to allow a user to easily select a keyword in which he / she is interested.
- the keyword extraction device includes a display unit that displays a document, a display region calculation unit that calculates a partial region indicating the region of the document displayed on the display unit, and a region of the document outside the partial region.
- a scroll unit that performs scrolling on the display unit, position information of a first display region that is a partial region that was displayed before the scrolling, and a second display that is a partial region that is displayed after the scrolling is performed.
- a scroll information generating unit for generating scroll information including position information of the region, an extracting unit for extracting a keyword appearing in the document from the document, the first display region and the second display region from the scroll information
- a peripheral region calculation unit that calculates a peripheral region indicating a partial region including the keyword, and calculates a score of the keyword according to a region where the keyword appears in the document
- scoring unit that, in descending order of the score, characterized in that it comprises a a keyword selection screen generation unit which generates a screen for selecting at least one of the keywords from the keyword appearing in the peripheral region.
- the keyword extracting device and the program of the present invention it is possible to easily select a keyword in which the user is interested without excess or deficiency.
- the block diagram which shows the structure of the keyword extraction apparatus which concerns on 1st Embodiment.
- the figure which shows an example of the scoring method which concerns on 1st Embodiment. 6 is a flowchart showing an operation at the time of document reading of the keyword extracting device according to the first embodiment.
- the flowchart which shows the calculation process of the initial score which concerns on 1st Embodiment.
- the block diagram which shows the structure of the keyword extraction apparatus which concerns on 2nd Embodiment.
- the figure which shows an example of the scoring method which concerns on 2nd Embodiment. 9 is a flowchart showing an operation at the time of document reading of the keyword extracting device according to the second embodiment.
- the figure which shows an example of the keyword selection screen after the fixed time passes after scrolling concerning 2nd Embodiment.
- the keyword extraction device 100 includes a document display unit 101, a scroll unit 102, a keyword extraction unit 103, a display area calculation unit 104, a scroll information generation unit 105, a peripheral area calculation unit 106, a scoring unit 107, and a keyword selection.
- a screen generation unit 108 and a search unit 109 are included.
- the document display unit 101 acquires an external Web document or the like (not shown) and displays it on the screen.
- the scroll unit 102 scrolls the document according to the scroll amount given by the user when the document does not fit in the document display unit 101 when the document is browsed.
- the document display unit 101 and the scroll unit 102 are also collectively referred to as a user interface (UI). Note that scrolling may be performed by automatically giving a scroll amount to the scroll unit 102 from the outside.
- the keyword extraction unit 103 receives information related to the size of the display screen from the document display unit 101, and keyword information indicating information related to keywords such as keywords appearing in character strings in the document, keyword semantic attributes, and appearance positions for each keyword. To extract.
- the display area calculation unit 104 receives information about the size of the screen from the document display unit 101 and information about the size of the scroll bar displayed on the screen from the scroll unit 102, and the area displayed on the document display unit 101 is a document. A display area indicating which area is the whole is calculated. Specifically, the display area is obtained by calculating the coordinates of the area relative to the entire document. The display area will be described later with reference to FIG.
- the scroll information generation unit 105 receives the display area from the display area calculation unit 104 and the scroll amount from the scroll unit 102, and generates scroll information that combines the display area before scrolling and the current display area.
- the peripheral area calculation unit 106 receives the scroll information from the scroll information generation unit 105, and calculates a peripheral area that represents an appearance area of a keyword estimated to be of interest to the user outside the current display area.
- the scoring unit 107 receives the scroll information from the scroll information generation unit 105, the keyword information from the keyword extraction unit 103, and the peripheral region from the peripheral region calculation unit 106, and uses these information for the extracted keywords. Do scoring.
- the keyword selection screen generation unit 108 receives the score from the scoring unit 107, and generates a screen for the user to select a keyword from the scores assigned to the keywords appearing in the display area and the peripheral area.
- the search unit 109 receives a keyword from the keyword selection screen generation unit 108 and searches for information related to the keyword according to the user's operation.
- the keyword search may be performed on the Web using a search engine, for example, or an external database (not shown) may be searched.
- FIG. 2 shows an example in which a scroll bar 202 is displayed on the right side of the display screen 201.
- the scroll function of the scroll unit 102 may be operated up and down with buttons or the like provided in the apparatus with reference to the position of the knob 203 of the scroll bar 202 on the display screen 201. Or if it is an apparatus provided with a touch screen, you may move the knob 203 in the scroll bar 202 on the display screen 201 directly with a pen or a fingertip. Furthermore, not only on the scroll bar 202, it may be scrolled by touching a part of the screen and sliding it in either direction.
- Display region R of the document can be determined by the height R h width R w and the display screen 201 of the display screen 201 of the document display unit 101.
- the portion excluding the area of the scroll bar 202 is a display area R in the case where the scroll bar 202 is displayed as shown in FIG. 2, the width R w and height R h of the display area R becomes smaller.
- FIG. (A) shows a document browsing screen in the user interface
- (b) shows a character string to be subjected to keyword extraction
- (c) shows a table of keyword information as a result of keyword extraction processing.
- a keyword extracting means for example, a method of extracting a noun phrase using a technique such as existing morphological analysis may be used.
- a technique such as existing morphological analysis
- an existing specific expression extraction method using a dictionary or a rule may be used.
- a text character string excluding a character string for markup is extracted from the entire document of the Web document browsed by the user.
- character strings such as “search” and “menu” at the bottom of the display screen 201 shown in FIG. 3A are removed, and character strings shown in FIG. 3B are extracted.
- the keyword information table of the extraction result of FIG. 3C can be obtained from the text character string shown in FIG.
- a keyword notation 301, a semantic attribute 302, and an appearance position 303 are stored in association with each other.
- the meaning attribute 302 of the notation 301 “vegetable curry” is “cooking”, and the appearance position 303 is “0”.
- the meaning attribute 302 of the notation 301 “tomato” is “food”, and the appearance position 303 is “31”.
- the appearance position 303 is the number of characters from the beginning of the text character string, but any method can be used as long as the appearance position of the keyword can be specified, for example, an absolute position in the entire browsing document described later is used as the appearance position 303.
- the relative position (rx, ry) indicates a position from (R x , R y ), which is the upper left point of the display area R (hereinafter also referred to as a starting point position), to the center point of the rectangle surrounding the keyword.
- R x , R y the upper left point of the display area R
- a starting point position the position from the upper left point in the entire browsed document to the center point of the rectangle surrounding the keyword “science building” (hereinafter also referred to as absolute position)
- absolute position is (px, py)
- (rx, ry) ) (Px ⁇ R x , py ⁇ R y ).
- (px, py) can be obtained by using a DOM (Document Object Model) function, for example, if the viewed document is a Web document.
- DOM Document Object Model
- the display area calculation unit 104 updates the display area R every time the user performs a scroll operation.
- the scroll information generation unit 105 sets a display area R before indicating the coordinates of the display area before scrolling and a display area R indicating the coordinates of the current display area after scrolling as a set in accordance with the scrolling performed by the user.
- Scroll information U 501 that is information is generated.
- the display region R before is not in a state (Empty) because the scroll operation is not performed, and the display region R includes the current display calculated by the display region calculation unit 104.
- Region R (0, 0, 480, 640) is given.
- Each of the four parameters of the display area R where shown starting position R x and R y of the display region R, the width R W and height R h of the display area R. In the example shown in FIG. 5, the start point positions R x and R y are both 0 because it is immediately after reading the document.
- scroll information U 501 after scrolling down by 240 pixels is shown.
- the peripheral area D is composed of one rectangular area.
- the peripheral area D is the same area as the display area R at that time.
- the surrounding area calculation unit 106 refers to the scroll information U and updates the surrounding area D so as to include the display area R before and the current display area R before scrolling. Specifically, description will be made with reference to scroll information U 501 after scrolling shown in FIG.
- peripheral area D (0, 0, 480, 880).
- peripheral area D may be a single rectangle, a combination of a plurality of rectangles, or a non-rectangular area.
- the minimum convex polygon including the display area R before scroll and the current display area R may be used.
- the keyword base in the display area R is set to have a higher score base than the keyword in the peripheral area D. This is because it is considered that the user is paying attention to the text currently displayed in the display area R. Based on this score base, score addition is performed according to the relative position.
- the keyword score addition after the first reading is set so that the keyword located in the upper region of the display region R has a higher score, and the keyword outside the display region R is set to “0”. This is because at the beginning of reading the document, it is considered that the user reads the first part of the document first.
- the score addition after scrolling is set to a higher score for keywords located in the lower area of the display area R. This is because when the user scrolls, the user is considered to pay attention to the text newly displayed on the display screen.
- the score decreases in order from an area close to the display area R to an area far from the display area R. This is because the user's interest in the text away from the display area R is expected to fade as the document is read. Specific scoring will be described later with reference to the flowchart of FIG.
- step S ⁇ b> 701 the display area calculation unit 104 calculates the display area R.
- step S702 the scroll information generation unit 105 initializes the scroll information U.
- step S703 the keyword extraction unit 103 extracts keywords from the entire Web document, and calculates keyword information, that is, an absolute position (px, py) and a semantic attribute of the keyword in the browse document for each keyword.
- step S704 the peripheral area calculation unit 106 initializes the peripheral area D to be the same area as the display area R.
- the scoring unit 107 calculates the relative position (rx, ry) for the display area R for keyword w i.
- the scoring unit 107 calculates the initial score of the keyword w i based on the relative position of the calculated keyword w i (rx, ry). The initial score calculation process will be described later with reference to FIG.
- step S705 and step S706 are performed for all the extracted keywords.
- step S707 the keyword selection screen generation unit 108 generates a keyword selection screen. The processing at the time of reading a document is thus completed.
- step S801 it determines whether a keyword the keyword w i is within the display area R. If it is determined that the keyword is in the display area R, the process proceeds to step S802. If it is determined that the keyword is not in the display area R, the process proceeds to step S803.
- an initial score for the keyword w i is calculated.
- the initial score ws is calculated, for example, by performing a calculation as shown in Equation (1).
- ws wb R + f 0 (rx, ry)
- wb R is a base value of the score in the display area R
- f 0 (rx, ry) is a function that divides the display area R and assigns scores as shown in Expression (2).
- f 0 (rx, ry) may be calculated from an arbitrary expression using a relative position (rx, ry) such as expression (3).
- step S803 since the keyword w i is not in the display area R, the initial score of the keyword w i is set to “0”.
- step S901 the display area calculation unit 104 updates the display area R.
- step S902 the scroll information generation unit 105 updates the scroll information U.
- step S903 the peripheral area calculation unit 106 updates the peripheral area D.
- the scoring unit 107 calculates the relative position (rx, ry) for the display area R for keyword w i.
- step S905 the scoring unit 107 performs a score update process for the keyword w i . Then, the processing of step S904 and step S905 is performed for all the extracted keywords.
- the score update process will be described later with reference to FIG.
- step S906 the keyword selection screen generation unit 108 updates the keyword selection screen according to the updated score.
- step S1001 it is determined whether the keyword w i is a keyword in the display area R. If it is determined that the keyword is in the display area R, the process proceeds to step S1002. If it is determined that the keyword is not in the display area R, the process proceeds to step S1003.
- step S1002 to calculate the updated score of the keyword w i.
- the update score ws is calculated, for example, by performing a calculation such as Expression (4).
- ws wb R + f 1 (rx, ry) (4)
- f 1 (rx, ry) may be an expression similar to Expression (2) and Expression (3).
- the constant is adjusted to (0 ⁇ a ⁇ b ⁇ c) so that the score is higher in the region below the display region R.
- step S1003 but does not contain is in the keyword w i is the display area R, and determines whether the keyword is in the peripheral region D. If it is determined that the keyword w i is a keyword in the peripheral area D, the process proceeds to step S1004. If it is determined that the keyword w i is not a keyword in the peripheral area D, the process proceeds to step S1005.
- step S1004 as in step S1002, an update score for the keyword w i is calculated.
- the update score ws is calculated, for example, by performing a calculation such as Expression (5).
- ws wb D + g 1 (rx, ry) (5)
- wb D is a base value of the score in the peripheral region D
- g 1 (rx, ry) may be an expression similar to f 1 (rx, ry).
- step S1005 since the keyword w i is not in the display area R and is not in the peripheral area D, the update score of the keyword w i is set to “0”.
- FIGS. 11A and 11B An example of the selection screen generated by the keyword selection screen generation unit 108 is shown in FIGS. 11A and 11B.
- FIG. 11A at the time of document reading, keywords appearing in the display area R are highlighted on the document display unit 101.
- it may be displayed in the shape of a button so that it can be easily understood that the keyword can be selected.
- the highlight color may be changed according to the keyword score (such as making the keyword having a higher score stand out).
- FIG. 11B shows an example of the keyword selection screen after scrolling.
- the keywords appearing in the display area R are highlighted on the document display unit 101 as in FIG. 11A.
- a peripheral keyword display area 1101 is provided on at least one of the upper and lower sides of the document display unit 101 and displayed there. Not all peripheral keywords are displayed, but only the top N scores (N is an arbitrary natural number) of the score are displayed.
- the keywords may be arranged in a list such as one horizontal row, or may be arranged as close to the original positional relationship as possible, as shown in FIG. 11B.
- the peripheral keyword display area 1101 may not be displayed.
- the keyword highlighting may always be performed, but a button such as a “search” button may be prepared so that the user can switch between display and non-display by pressing the button.
- the user since the user may select a keyword by a direct operation by touching a button or a screen that moves in the up / down / left / right direction on the keyword selection screen, the menu may be selected by the user's action.
- FIG. 12 shows a display example in which a menu is selected by an action for a keyword.
- the menu item 1201 is generated according to the semantic attribute of the selected keyword.
- “hot water stripping” is a keyword of the semantic attribute “method”. Therefore, in addition to a menu for performing a simple Web search, a search menu for viewing a hot water stripping method with a movie may be displayed. Good.
- “vegetable curry” whose semantic attribute is “cooking” is selected, a search menu of a store where the vegetable curry can be eaten may be displayed.
- the present embodiment is different from the first embodiment in that an extraction process is performed on a necessary area from a document having a large file size. Further, in the present embodiment, time information is added to the scroll information corresponding to the user reading the text in the display area after the scroll operation, and the scroll amount and the time interval until the next scroll for each user are added. The point which updates the score of a keyword collectively differs from 1st Embodiment.
- the keyword extraction device 1300 further includes an extraction determination region calculation unit 1301, an extraction unit calculation unit 1302, an extraction target region determination unit 1303, and A keyword information storage unit 1304 is included.
- the scoring unit 107 includes an attractiveness calculation unit 1305 and a scroll characteristic management unit 1306.
- the extraction determination area calculation unit 1301 receives scroll information from the scroll information generation unit 105 and calculates the extraction determination area C.
- the extraction determination area C is an area for determining whether it is necessary to newly extract a keyword, and is set larger than the display area R.
- region C is required in order to extract in advance the keyword in the area
- the size of the extraction determination area C is determined when the document is read, and the position is updated as the user scrolls.
- the extraction unit calculation unit 1302 receives the extraction determination region C from the extraction determination region calculation unit 1301, and calculates an extraction unit region (hereinafter also referred to as an extraction unit) I i (i is an arbitrary positive integer) for performing keyword extraction. . All extraction units are calculated when the document is read.
- the extraction target region determination unit 1303 receives the extraction determination region C from the extraction determination region calculation unit 1301 and the unit region from the extraction unit calculation unit 1302, and the extraction determination region C depends on the extraction unit that has not yet been subjected to keyword extraction. Determine whether or not. If it depends on an extraction unit for which keyword extraction has not been performed, an instruction is sent to the keyword extraction unit 103 to perform keyword extraction for that extraction unit.
- the keyword information storage unit 1304 receives the keyword from the keyword extraction unit 103 and uses the extracted keyword ID, semantic attribute, absolute position in the document, relative position in the current display region R, and score as keyword information. Accumulate as.
- the extracted keywords may be stored in the keyword information storage unit 1304 every time the keyword extraction unit 103 extracts a keyword, or the extraction of the keywords in the extraction unit area is completed for each extraction unit. Then, the keyword information may be stored together in the keyword information storage unit 1304. The keyword information stored in the keyword information storage unit 1304 will be described later with reference to FIG.
- the attractiveness calculation unit 1305 calculates the attractiveness of the keyword from the design characteristics such as the character color, background color, and size of the keyword, and performs score addition.
- the attractiveness is an index indicating how conspicuous a keyword is. For example, the attractiveness can be obtained as a ⁇ V diff ⁇ Size ⁇ Length (a is a constant) from the brightness difference V diff between the keyword character color and the background color, the character size Size, and the character string length Length. Further, this attractiveness value may be added as keyword information.
- the scroll characteristic management unit 1306 performs keyword score addition based on the display position of the keyword selected during document browsing and the history of scroll information at that time. For example, the scroll speed v of the previous scroll information U is equal to or higher than a certain value v th and the y coordinate ry of the relative position of the selected keyword is an area below the display area (for example, 2 * R h / 3). If there are many, it is considered that the user is likely to be interested in the area below the display area when the scroll speed v is high. For this reason, when the scroll speed v is high, score addition is performed on the keyword located in the area below the display area.
- the scroll information generated by the scroll information generation unit 105 will be described in detail with reference to FIG.
- the scroll information U 1401 includes the display area R before before scroll, the current display area R after scroll, the time t when the scroll is finished, and the scroll speed v (the speed v x in the x direction and the speed v y in the y direction).
- the scroll speed v is a speed indicating how many pixel display areas are moved in the x or y direction per second. Note that the time t is the time when the document reading is completed when the document is read. Also.
- the scroll speed v since the speeds of the x component and the y component are calculated, not only the scroll speed when moving in the vertical direction can be calculated, but also the scroll speed when moving horizontally or diagonally is calculated. Can do.
- the display area R before before the scroll is empty (Empty).
- the display area R is an area (0, 0, 480, 640) currently displayed.
- the scroll time t is the time “2009-06-16T12: 34: 50” when the document reading is completed, and the scroll speed v is 0 in both the x-axis direction and the y-axis direction.
- the scroll speed v can be calculated from the time from the scroll start time (when the document is read, the time when the document reading is completed) to the end time, and the scrolled pixel amount.
- the scroll speed v is (0, 30) pixels / sec.
- the scroll information U 1401 may include the last scroll amount S instead of the display area R before before scrolling, and the scroll start time t start instead of the scroll speed v.
- each extraction unit I i can be defined by four parameters: start point positions I ix and I iy , extraction unit width I iw and height I ih .
- start point positions I ix and I iy the extraction unit width I iw and height I ih .
- the extraction determination area C may be set as an area larger than the display area R in order to pre-read the user's scroll and perform keyword extraction.
- the keyword information includes an ID of a keyword that does not change once extracted, a description 301, a semantic attribute 302 in the document, and an absolute position 1601 (px, py), and a display area R that is updated when the user scrolls.
- a notation 301 “vegetable curry” with ID “0” has a semantic attribute 302 of “cooking”, an absolute position 1601 (px, py) of “294, 69”, and these are extracted once. It is a field that does not change when it is done.
- the relative position 1602 (rx, ry) from the display area R which is a field that is updated every scroll, is “294, -11”, and the score 1603 (ws) that is periodically updated by the score update process is “5.0”.
- the y component of the relative position is a negative value because the display area R is scrolled downward by 80 pixels from the document reading position (the positive direction of the y axis shown in FIG. 5), and the keyword “ Since the character string “vegetable curry” is out of the display area R, the relative position is a negative value.
- the scrolling direction is only the vertical direction.
- the score base as in the first embodiment, the keyword in the display area R has a higher score base than the keyword in the peripheral area D but not in the display area R. Set high.
- the method of scoring keywords in the display area R at the time of reading a document or immediately after scrolling is the same as in the first embodiment, but when the time after reading or the time after scrolling has elapsed, the display area
- the score addition of keywords in R is set so as to be the same value in the entire area.
- the time of reading a document indicates that the document is within a certain period after being read.
- “immediately after scrolling” means within a certain period after scrolling.
- the score addition of keywords that are not in the display area R but are in the peripheral area D is set to be the same value for the entire area immediately after scrolling.
- the keyword is set such that the closer the keyword is to the display area R, the higher the score.
- the reason for this is that the keywords that are out of the display area R are areas that have been displayed in the display area R immediately after scrolling, so that the user has the same degree regardless of whether the keyword is near or far from the display area R. This is because it is considered that the keyword away from the display region R is less interested after a certain period of time.
- step S1801 the display area calculation unit 104 calculates the display area R.
- step S1802 the scroll information generation unit 105 initializes the scroll information U.
- the extraction determination area calculation unit 1301 calculates the extraction determination area C.
- k 0 w and k 0 h may be, for example, a multiple of the size of the display area R, or may be M scroll unit amounts.
- the extraction unit calculation unit 1302 calculates the extraction unit I i .
- Extraction Unit I 0 ⁇ I n for example, as shown in FIG. 15, the extraction unit of the same size as the extraction judgment region C is determined so as to be arranged like tiles. Instead a region partitioned into a rectangular if Web documents, analyzes the DOM tree structure of Web documents, may be used as the sampling unit I i for each chunk of HTML elements, sampling units I i for each page of the document It is good.
- the peripheral area calculation unit 106 initializes the peripheral area D.
- the peripheral area D is composed of two rectangular areas D 0 and D 1 . Further, as in the first embodiment, the peripheral area D 0 at the time of initialization is the same area as the display area R.
- the peripheral region D 1 is empty (Empty).
- step S1806 the extraction target area determination unit 1303 determines whether keyword extraction has been performed for each of the extraction units I i .
- the extraction target area check process in step S1806 will be described later with reference to FIG.
- step S1807 the scoring unit 107 updates the relative position (rx, ry) with respect to the display region R for each of the keywords w stored in the keyword information storage unit 1304.
- the same process as step S705 shown in FIG. 7 may be performed.
- step S1808 the keyword score is updated.
- the processing in step S1808 will be described later with reference to FIG.
- step S1901 the extraction target region determination unit 1303 determines whether or not the keyword extraction processing has not yet been executed for the extraction unit I i . If the keyword extraction process has not yet been executed, the process proceeds to step S1902. When the keyword extraction process is being executed, the process for the extraction unit I i is terminated, and the next extraction unit I i is processed. In step S1902, the extraction target region determination unit 1303 determines whether a partial region of the extraction unit I i and the extraction determination region C overlaps. If there is an overlapping area, the process proceeds to step S1903, and if there is no overlapping area, the process for the extraction unit I i is terminated and the process is performed for the next extraction unit I i .
- step S1903 the keyword extraction unit 103 performs keyword extraction processing on the extraction unit I i .
- the target character string may be extended to a good range. For example, it is possible to extend to sentence breaks, or to extend the entire element of a Web document.
- step S1904 the keyword extraction unit 103 stores the keyword extracted in step S1903 in the keyword information storage unit 1304. At this time, the relative position and the score of the keyword information are undefined because the extracted keyword is outside the display region R.
- step S2001 it is determined whether the scroll operation has been performed even once. This determination process is determined by the scoring unit 107 with reference to the scroll information from the scroll information generation unit 105. If the scroll operation has never been performed, the process proceeds to step S2002. If the scroll operation has been performed even once, the process proceeds to step S2003. Since no scrolling operation has been performed at the time of document reading, the process of step S2002 is performed.
- step S2002 the scoring unit 107 performs score update processing when not scrolled.
- step S2002 will be described later with reference to FIG.
- step S2003 the scoring unit 107 performs score update processing after scrolling.
- step S2003 will be described later with reference to FIG.
- step S2004 the keyword selection screen is updated based on the updated score of each keyword.
- the regular score update process is thus completed.
- step S2101 it is determined whether the keyword w i is included in the display area R. If the keyword w i is determined to be included in the display area R, the process proceeds to step S2102, if it is determined that the keyword w i is not included in the display area R, the process proceeds to step S2103.
- step S2102 a score is calculated for the keyword w i included in the display area R based on the equation (6).
- wb R is based score of the keyword w i appearing in the display area R
- (rx, ry) is the relative position of the keyword w i
- U is the scroll information. For example, when the elapsed time t d from the scroll time t in the scroll information U is smaller than the threshold value t th , f 0 (rx, ry, U) is about the keyword w i in the area above the display area R.
- Equation (7) is performed as shown in Equation (7).
- step S2103 to set the score of the keyword w i to 0. This completes the score update process when not scrolled.
- step S2201 the display area calculation unit 104 updates the display area R.
- step S2202 the scroll information generation unit 105 updates the scroll information U.
- the extraction determination area calculation unit 1301 updates the extraction determination area C.
- the size of the extraction determination area C may be the same as that at the time of initialization or may be updated according to the scroll information U.
- the width C w and a height C h of the extracted determination region C may be calculated as in equation (8).
- the extraction determination area C includes the display area R.
- the extraction determination area C can be updated as a rectangular area including the display area R and a display area R that is slightly ahead in the scroll direction.
- step S2204 the extraction target area check process is performed in the same manner as in step S1806 shown in FIG. 18, and if necessary, the keyword extraction unit 103 performs keyword extraction on the extraction unit to be newly extracted by scrolling. .
- step S2205 the peripheral area calculation unit 106 performs a process of updating the peripheral area D. Step S2205 will be described later with reference to FIG.
- step S2206 similar step S1807 shown in FIG. 8, is updated for each keyword w i stored in the keyword information storage unit 1304, the relative position scoring unit 107 to the display area R to (rx, ry) .
- step S2207 the keyword score is updated.
- the process of step S2207 will be described later with reference to FIG. The above is the operation after scrolling, and processing from step S2201 to step S2207 is performed each time scrolling is performed.
- the peripheral area D ignores the area during scrolling when the scroll speed v is fast, and includes the area slightly above the current display area R among the scrolled areas when the scroll speed is slow. Perform proper processing.
- step S2301 it is determined whether or not the absolute value of the scroll speed v held by the scroll information U is equal to or greater than a predetermined value vth . If the absolute value of the scroll speed v is a constant value v th or more, the process proceeds to step S2302, the absolute value of the scroll speed v is not constant value v th or more, that is less than the predetermined value v th, the process proceeds to step S2303.
- step S2302 if the absolute value of the scroll speed v included in the scroll information U is a constant value v th or more, D 0 is the display area to be R and the same region, D 1 before the scroll display region R before the same region And the region between R and R before is not included in the peripheral region D. Thereby, it is possible to prevent a keyword from a sentence not intentionally viewed by the user from being presented.
- step S2303 if the absolute value of the scroll speed v is less than v th, first determine the points dp as in equation (10).
- d is a diagonal length / 2 of d> R so that it is not included in the display region R.
- step S2304 to extend the display area R so as to include the point dp for the peripheral regions D 0, empty the D 1.
- the peripheral regions D 0 to include the point dp, of the scrolled area between was may include little area above the current display region R.
- the peripheral region D can be obtained by calculating D 0 and D 1 as in Expression (11).
- step S2003 The score update process after scrolling shown in step S2003 will be described in detail with reference to FIG. Note that the processing is the same as that from step S1001 to step S1005 shown in FIG. In the following, it is assumed that the process for calculating the score is scrolled only in the vertical direction for the sake of simplicity. However, this is not restrictive.
- the score can be calculated similarly by expanding.
- step S2401 it determines whether a keyword the keyword w i is within the display area R. If it is determined that the keyword is in the display area R, the process proceeds to step S2402. If it is determined that the keyword is not in the display area R, the process proceeds to step S2403.
- step S2402 to calculate the updated score of the keyword w i.
- the update score ws is calculated, for example, by performing a calculation such as Expression (12).
- ws wb R + f 1 (rx, ry, U) (12)
- f 1 (rx, ry, U) is calculated as in Expression (13) when the elapsed time t d from the scroll time t in the scroll information U is smaller than a certain threshold value t th .
- step S2403 but keyword w i is not in the display area R, and determines whether the keyword is in the peripheral region D. If it is determined that the keyword is in the peripheral area D, the process advances to step S2404. If it is determined that the keyword is not in the peripheral area D, the process advances to step S2405.
- step S2404 the update score ws of the keyword appearing in the peripheral area D is calculated from, for example, formula (14).
- ws wb D + g 1 (rx, ry, U) (14)
- g 1 (rx, ry, U) is calculated as in Expression (15) when, for example, the elapsed time t d from the scroll time t in the scroll information U is smaller than the threshold value t th .
- step S2405 not entered the keyword w i is the display area R, because it does not further contained even in the peripheral region D, the updated score of the keyword w i to "0". This completes the score update process after scrolling.
- the score is periodically updated using a timer.
- the update score ws of the keyword w i appearing in the peripheral area D has an elapsed time t d that increases as time elapses after scrolling for g 1 in Expression (13).
- the score of the keyword w i located close to is higher.
- FIG. 25A shows a state when reading a document.
- the keywords extracted in the display area R are highlighted.
- FIG. 25B shows a state immediately after the scroll operation is performed.
- “chopped”, “eggplant”, and “vegetable curry” are displayed as keywords.
- FIG. 25C shows a state in which a fixed time has elapsed since the last scroll operation.
- the extraction process is performed only on the necessary area, thereby reducing the time until the user can select a keyword even when viewing a large document. it can.
- information about time is added to the scroll information, the score of the keyword is changed as the time after scrolling elapses, and the keyword is extracted according to the scroll amount for each user, so that the user is sometimes viewing the document. You can make it easier to select the keywords you want.
- the instructions shown in the processing procedure shown in the above embodiment can be executed based on a program that is software.
- a general-purpose computer system stores this program in advance and reads this program, so that the same effect as that obtained by the keyword extracting device described above can be obtained.
- the instructions described in the above-described embodiments are, as programs that can be executed by a computer, magnetic disks (flexible disks, hard disks, etc.), optical disks (CD-ROM, CD-R, CD-RW, DVD-ROM, DVD). ⁇ R, DVD ⁇ RW, etc.), semiconductor memory, or a similar recording medium. As long as the recording medium is readable by the computer or the embedded system, the storage format may be any form.
- the computer reads the program from the recording medium and causes the CPU to execute instructions described in the program based on the program, the same operation as the keyword extracting device of the above-described embodiment can be realized.
- the computer acquires or reads the program, it may be acquired or read through a network.
- the OS operating system
- database management software database management software
- MW middleware
- a part of each process for performing may be executed.
- the recording medium in the present invention is not limited to a medium independent of a computer or an embedded system, but also includes a recording medium in which a program transmitted via a LAN or the Internet is downloaded and stored or temporarily stored.
- the number of recording media is not limited to one, and when the processing in the present embodiment is executed from a plurality of media, it is included in the recording media in the present invention, and the configuration of the media may be any configuration.
- the computer or the embedded system in the present invention is for executing each process in the present embodiment based on a program stored in a recording medium, and includes a single device such as a personal computer or a microcomputer, Any configuration such as a system in which apparatuses are connected to a network may be used.
- the computer in the embodiment of the present invention is not limited to a personal computer, but includes an arithmetic processing device, a microcomputer, and the like included in an information processing device, and a device capable of realizing the functions in the embodiment of the present invention by a program, The device is a general term.
- the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying constituent elements without departing from the scope of the invention in the implementation stage.
- various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment.
- constituent elements over different embodiments may be appropriately combined.
- the keyword extraction device is effective for searching for a keyword using, for example, a mobile phone capable of browsing a document having a scroll function, a PC, or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
文書を表示する表示部101と、前記表示部に表示される前記文書の領域を示す部分領域を算出する表示領域算出部104と、前記部分領域外の文書の領域を表示部でスクロールを行うスクロール部102と、前記スクロールを行う以前に表示されていた部分領域である第1表示領域の位置情報と、スクロールを行った後に表示される部分領域である第2表示領域の位置情報とを含むスクロール情報を生成するスクロール情報生成部105と、前記文書に出現するキーワードを文書中から抽出する抽出部103と、前記スクロール情報から前記第1表示領域と前記第2表示領域とを含む部分領域を示す周辺領域を算出する周辺領域算出部106と、前記文書中において、キーワードの出現する領域に応じてキーワードのスコアを算出するスコアリング部107と、前記スコアの高い順に、前記周辺領域内に出現するキーワードから少なくとも1つの前記キーワードを選択する画面を生成するキーワード選択画面生成部108と、を具備する。
Description
本発明は、本発明は閲覧中の文書から検索などに使用できるキーワードを抽出するキーワード抽出装置、およびプログラムに関する。
一般に、ユーザが文書を閲覧しているときに、ユーザの関心を引くキーワードに対して検索を行いたいという要求がある。しかし、モバイル機器のような小さな画面しか持たない機器では、マウスなどのポインティングデバイスを用いることができないため、ユーザが文字列を選択することが面倒であるという問題がある。この問題に対しては、閲覧文書中のキーワードを自動抽出し、ユーザにリストなどで提示することで、キーワードの選択またはキーワードに対する検索などのアクションを指定してWeb検索などを行う手法がある(例えば、特許文献1参照)。
しかし、閲覧文書全体からキーワードを抽出する場合は、ユーザが見ていない文章から関係のないキーワードが多数抽出されてしまうことがある。そのため、文書中から画面の表示領域のみに表示される文章を抽出対象とすることで、ユーザが見ているキーワードのみを抽出することが考えられる。しかし、表示領域のみを抽出する方法では、長い文書をスクロールしながら閲覧している場合、ユーザが実際に検索をしたいと思ったときには、そのキーワードが表示領域の外に出てしまいキーワードの検索をすることができないことがある。
本発明は、上記に鑑みてなされたものであり、ユーザが興味を持ったキーワードを過不足無く簡単に選択できるようにすることを目的とする。
本発明に係るキーワード抽出装置は、文書を表示する表示部と、前記表示部に表示される前記文書の領域を示す部分領域を算出する表示領域算出部と、前記部分領域外の文書の領域を該表示部でスクロールを行うスクロール部と、前記スクロールを行う以前に表示されていた部分領域である第1表示領域の位置情報と、該スクロールを行った後に表示される部分領域である第2表示領域の位置情報とを含むスクロール情報を生成するスクロール情報生成部と、前記文書に出現するキーワードを該文書中から抽出する抽出部と、前記スクロール情報から前記第1表示領域と前記第2表示領域とを含む部分領域を示す周辺領域を算出する周辺領域算出部と、前記文書中において、キーワードの出現する領域に応じて該キーワードのスコアを算出するスコアリング部と、前記スコアの高い順に、前記周辺領域内に出現するキーワードから少なくとも1つの前記キーワードを選択する画面を生成するキーワード選択画面生成部と、を具備することを特徴とする。
本発明のキーワード抽出装置、およびプログラムによれば、ユーザが興味を持ったキーワードを過不足無く簡単に選択できる。
以下、図面を参照しながら本発明の実施形態に係るキーワード抽出装置、およびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
本実施形態に係るキーワード抽出装置の構成について図1を参照して詳細に説明する。
本実施形態に係るキーワード抽出装置100は、文書表示部101、スクロール部102、キーワード抽出部103、表示領域算出部104、スクロール情報生成部105、周辺領域算出部106、スコアリング部107、キーワード選択画面生成部108、および検索部109を含む。
本実施形態に係るキーワード抽出装置100は、文書表示部101、スクロール部102、キーワード抽出部103、表示領域算出部104、スクロール情報生成部105、周辺領域算出部106、スコアリング部107、キーワード選択画面生成部108、および検索部109を含む。
文書表示部101は、外部にあるWeb文書など(図示せず)を取得して画面に表示する。
スクロール部102は、文書の閲覧時に文書表示部101に文書が文書表示部101に収まりきらない場合などに、ユーザから与えられるスクロール量に応じて文書のスクロールを行う。なお、文書表示部101とスクロール部102とを合わせてユーザインタフェース(UI)とも呼ぶ。なお、外部から自動的にスクロール量をスクロール部102へ与え、スクロールを行ってもよい。
スクロール部102は、文書の閲覧時に文書表示部101に文書が文書表示部101に収まりきらない場合などに、ユーザから与えられるスクロール量に応じて文書のスクロールを行う。なお、文書表示部101とスクロール部102とを合わせてユーザインタフェース(UI)とも呼ぶ。なお、外部から自動的にスクロール量をスクロール部102へ与え、スクロールを行ってもよい。
キーワード抽出部103は、文書表示部101から表示画面の大きさに関する情報を受け取り、文書中の文字列に出現するキーワード、キーワードの意味属性、および出現位置などキーワードに関する情報を示すキーワード情報をキーワードごとに抽出する。
表示領域算出部104は、文書表示部101から画面の大きさに関する情報を、スクロール部102から画面に表示するスクロールバーの大きさに関する情報を受け取り、文書表示部101に表示されている領域が文書全体のどの領域であるかを示す表示領域を算出する。具体的には、文書全体に対して、領域の座標を相対的に算出することで表示領域を得る。表示領域については図4を参照して後述する。
スクロール情報生成部105は、表示領域算出部104から表示領域を、スクロール部102からスクロール量をそれぞれ受け取り、スクロール前の表示領域と現在の表示領域とを一組にしたスクロール情報を生成する。
周辺領域算出部106は、スクロール情報生成部105からスクロール情報を受け取り、現在の表示領域の外でユーザが興味を持つと推測されるキーワードの出現領域を表す周辺領域を算出する。
スコアリング部107は、スクロール情報生成部105からスクロール情報を、キーワード抽出部103からキーワード情報を、周辺領域算出部106から周辺領域をそれぞれ受け取り、抽出済みのキーワードに対してこれらの情報をもとにスコアリングを行う。
キーワード選択画面生成部108は、スコアリング部107からスコアを受け取り、表示領域および周辺領域に出現するキーワードに付与されたスコアから、ユーザがキーワードを選択するための画面を生成する。
検索部109は、キーワード選択画面生成部108からキーワードを受け取り、ユーザの動作に応じてキーワードに関する情報の検索を行う。キーワードの検索は、例えば検索エンジンを用いてWeb上で検索してもよいし、外部にあるデータベース(図示せず)を検索してもよい。
ここで、ユーザインタフェースの一例について図2を参照して詳細に説明する。
図2は表示画面201の右側にスクロールバー202が表示されている例である。スクロール部102のスクロール機能は、表示画面201にあるスクロールバー202のノブ203の位置を参考に、装置に備え付けられたボタン等で上下に操作すればよい。または、タッチスクリーンを備える装置であれば、ペンや指先で直接表示画面201上のスクロールバー202にあるノブ203を動かしてもよい。さらに、スクロールバー202上に限らず、画面の一部をタッチしていずれかの方向にスライドすることでスクロールさせてもよい。
図2は表示画面201の右側にスクロールバー202が表示されている例である。スクロール部102のスクロール機能は、表示画面201にあるスクロールバー202のノブ203の位置を参考に、装置に備え付けられたボタン等で上下に操作すればよい。または、タッチスクリーンを備える装置であれば、ペンや指先で直接表示画面201上のスクロールバー202にあるノブ203を動かしてもよい。さらに、スクロールバー202上に限らず、画面の一部をタッチしていずれかの方向にスライドすることでスクロールさせてもよい。
文書の表示領域Rは、文書表示部101の表示画面201の幅Rwと表示画面201の高さRhとにより決定することができる。ただし、図2のようにスクロールバー202が表示される場合にはスクロールバー202の領域を除いた部分が表示領域Rとなるため、表示領域Rの幅Rwおよび高さRhは小さくなる。
次に、キーワード抽出部103におけるキーワード抽出処理、キーワードの意味属性の判定処理、およびキーワード出現位置の算出処理について図3を参照して詳細に説明する。(a)はユーザインタフェースにおける文書閲覧画面を示し、(b)はキーワード抽出の対象となる文字列を示し、(c)はキーワード抽出処理結果であるキーワード情報のテーブルを示す。
まず、キーワード抽出する手段としては、例えば、既存の形態素解析などの技術を利用して名詞句を取り出す方法を用いればよい。また、キーワードの意味属性を判定する手段としては、辞書やルールを用いる既存の固有表現抽出手法を用いればよい。
例えば、“ある文字列に「株式会社・・・」という表現が当てはまればその意味属性を「企業名」とする”というようなルールが用意されているものとする。得られたキーワードが「株式会社○○」という表現であれば、その意味属性は、キーワード意味属性の判定処理によって「企業名」と判定することができる。
本実施形態では、最初に文書が文書表示部101に読み込まれたときに、ユーザが閲覧するWeb文書の文書全体から、マークアップのための文字列を省いたテキスト文字列を抽出する。ここでは図3(a)に示す表示画面201下部にある「検索」や「メニュー」等の文字列が除かれ、図3(b)に示す文字列が抽出される。続いて図3(b)に示すテキスト文字列から上述した意味属性の判定処理によって、図3(c)の抽出結果のキーワード情報のテーブルを得ることができる。キーワード情報のテーブルにはキーワードの表記301、意味属性302、および出現位置303がそれぞれ対応付けられて格納される。具体的には、表記301「野菜カレー」の意味属性302は「料理」であり、出現位置303は「0」である。同様に、表記301「トマト」の意味属性302は「食材」であり、出現位置303は「31」である。ここで、出現位置303は、テキスト文字列の先頭からの文字数であるが、後述する閲覧文書全体における絶対位置を出現位置303とするなど、キーワードの出現位置が特定できる方法であれば何でもよい。
次に、表示領域Rの中にあるキーワードの相対位置の概念について図4を参照して詳細に説明する。
相対位置(rx,ry)は、表示領域Rの左上の点(以下、始点位置ともいう)である(Rx,Ry)からキーワードを囲む矩形の中心点までの位置を示す。例えば、図4の例では、閲覧文書全体における左上の点からキーワード「科学館」を囲む矩形の中心点までの位置(以下、絶対位置ともいう)が(px,py)だとすると、(rx,ry)=(px-Rx,py-Ry)のように表せる。なお、(px,py)は、例えば閲覧文書がWeb文書であれば、DOM(Document Object Model)の機能を利用することによって求めることができる。
相対位置(rx,ry)は、表示領域Rの左上の点(以下、始点位置ともいう)である(Rx,Ry)からキーワードを囲む矩形の中心点までの位置を示す。例えば、図4の例では、閲覧文書全体における左上の点からキーワード「科学館」を囲む矩形の中心点までの位置(以下、絶対位置ともいう)が(px,py)だとすると、(rx,ry)=(px-Rx,py-Ry)のように表せる。なお、(px,py)は、例えば閲覧文書がWeb文書であれば、DOM(Document Object Model)の機能を利用することによって求めることができる。
また、スクロールを行った後の表示領域Rの始点位置RxおよびRyは、スクロール部102によって定められるスクロール量によって決まる。例えば、1回のスクロール量を(Sx,Sy)で表す場合、現在のスクロール位置が文書の先頭から(Sx,Sy)であれば、表示領域Rの始点位置(Rx,Ry)は、(Rx,Ry)=(Sx,Sy)である。その後、もう1度スクロールすると、次の表示領域Rの始点位置(R’x,R’y)は、(R’x,R’y)=(Sx+Rx,Sy+Ry)となる。表示領域算出部104は、ユーザがスクロール操作を行うたびに表示領域Rを更新する。
次に、スクロール情報生成部105で生成されるスクロール情報の一例について図5を参照して詳細に説明する。
スクロール情報生成部105は、ユーザが行うスクロールに応じて、スクロール前の表示領域の座標を示す表示領域Rbeforeと、スクロール後の現在の表示領域の座標を示す表示領域Rとを1組にした情報であるスクロール情報U 501を生成する。
スクロール情報生成部105は、ユーザが行うスクロールに応じて、スクロール前の表示領域の座標を示す表示領域Rbeforeと、スクロール後の現在の表示領域の座標を示す表示領域Rとを1組にした情報であるスクロール情報U 501を生成する。
文書を読み込んだ時点では、スクロール操作が行われていないため表示領域Rbeforeには情報が入っていない状態(Empty)であり、表示領域Rには表示領域算出部104によって算出された現在の表示領域R=(0,0,480,640)が与えられる。ここで表示領域Rの4つのパラメータはそれぞれ、表示領域Rの始点位置RxおよびRy、表示領域Rの幅RWおよび高さRhを示す。図5に示す例では、文書を読み込んだ直後であるため始点位置Rx、Ryはともに0である。
次に、例として240pixelだけ下へスクロール(y軸の正の方向へ240pixel移動)した後のスクロール情報U 501を示す。このときのスクロール情報U 501は、表示領域Rbefore=(0,0,480,640)となり、表示領域R=(0,240,480,640)となる。よって、表示領域Rbeforeにはスクロール前の表示領域Rの情報が与えられる。すなわち、表示領域Rbeforeと表示領域Rとを比較することにより1回のスクロール量を計算することができる。
次に、周辺領域Dについて説明する。本実施形態では、周辺領域Dは1つの矩形領域で構成される。最初に文書が文書表示部101に読み込まれた時、周辺領域Dはその時の表示領域Rと同一の領域である。
ユーザがスクロールを行うと、周辺領域算出部106は、スクロール情報Uを参照してスクロール前の表示領域Rbeforeと現在の表示領域Rとを包含するように、周辺領域Dを更新する。具体的に、図5に示すスクロール後のスクロール情報U 501を参照して説明する。表示領域Rbefore=(0,0,480,640)と表示領域R=(0,240,480,640)とを比較すると、240pixelだけ下へスクロールしているので、表示領域の高さRh=640にスクロール量である「240」を加算した「880」が周辺領域Dの高さになる。よって周辺領域Dは、表示領域Rbeforeと表示領域Rとを包含するので、周辺領域D=(0,0,480,880)と表せる。
ユーザがスクロールを行うと、周辺領域算出部106は、スクロール情報Uを参照してスクロール前の表示領域Rbeforeと現在の表示領域Rとを包含するように、周辺領域Dを更新する。具体的に、図5に示すスクロール後のスクロール情報U 501を参照して説明する。表示領域Rbefore=(0,0,480,640)と表示領域R=(0,240,480,640)とを比較すると、240pixelだけ下へスクロールしているので、表示領域の高さRh=640にスクロール量である「240」を加算した「880」が周辺領域Dの高さになる。よって周辺領域Dは、表示領域Rbeforeと表示領域Rとを包含するので、周辺領域D=(0,0,480,880)と表せる。
なお、周辺領域Dは1つの矩形であってもよいし、複数の矩形が組み合わさった領域や矩形でない領域であってもよい。例えば、スクロール前の表示領域Rbeforeと現在の表示領域Rを包含する最小の凸多角形とすることもできる。
次に、スコアリング方法の一例について図6を参照して詳細に説明する。
図6では、簡単のためスクロールは縦方向のみとしているが、横、斜めにスクロールを行っても同様にスコアリングが可能である。
まず、表示領域Rの中にあるキーワードの方が、周辺領域Dの中にあるキーワードよりも、スコアのベースを高く設定する。これは、現在表示領域Rに表示されている文章にユーザは注目していると考えられるからである。このスコアのベースを基準にして、相対位置に応じてスコア加算を行う。
図6では、簡単のためスクロールは縦方向のみとしているが、横、斜めにスクロールを行っても同様にスコアリングが可能である。
まず、表示領域Rの中にあるキーワードの方が、周辺領域Dの中にあるキーワードよりも、スコアのベースを高く設定する。これは、現在表示領域Rに表示されている文章にユーザは注目していると考えられるからである。このスコアのベースを基準にして、相対位置に応じてスコア加算を行う。
最初に読み込んだ後のキーワードのスコア加算は、表示領域Rの上部の領域に位置するキーワードほど高いスコアにし、表示領域Rの外にあるキーワードについては「0」とする。これは、文書を読み込んだ当初は、ユーザは文書の先頭部分を最初に読むと考えられるためである。
スクロールを行った後のスコア加算は、表示領域Rの下部の領域に位置するキーワードほど高いスコアに設定する。これは、ユーザがスクロールをした際に、ユーザは新しく表示画面に表示された文章に注目すると考えられるためである。また、表示領域Rの外であるが、周辺領域Dの中にあるキーワードに対しては、表示領域Rに近い領域から遠い領域へ順にスコアが下がっていく。これは文書を読み進めるにつれ、表示領域Rから離れた文章に対してはユーザの関心が薄れていくと考えられるからである。具体的なスコアリングについては、図8のフローチャートを参照して後述する。
スクロールを行った後のスコア加算は、表示領域Rの下部の領域に位置するキーワードほど高いスコアに設定する。これは、ユーザがスクロールをした際に、ユーザは新しく表示画面に表示された文章に注目すると考えられるためである。また、表示領域Rの外であるが、周辺領域Dの中にあるキーワードに対しては、表示領域Rに近い領域から遠い領域へ順にスコアが下がっていく。これは文書を読み進めるにつれ、表示領域Rから離れた文章に対してはユーザの関心が薄れていくと考えられるからである。具体的なスコアリングについては、図8のフローチャートを参照して後述する。
ここで、本実施形態に係るキーワード抽出装置が最初に文書を読み込んだときの動作を図7のフローチャートを参照して詳細に説明する。
ステップS701では、表示領域算出部104が表示領域Rを算出する。
ステップS702では、スクロール情報生成部105がスクロール情報Uを初期化する。
ステップS701では、表示領域算出部104が表示領域Rを算出する。
ステップS702では、スクロール情報生成部105がスクロール情報Uを初期化する。
ステップS703では、キーワード抽出部103が、Web文書全体からキーワードの抽出を行い、キーワードごとにキーワード情報、すなわちキーワードの閲覧文書中での絶対位置(px,py)と意味属性とを算出する。
ステップS704では、周辺領域算出部106が周辺領域Dを表示領域Rと同一領域になるように初期化する。
ステップS705では、スコアリング部107が、キーワードwiについて表示領域Rに対する相対位置(rx,ry)を算出する。
ステップS706では、スコアリング部107が、算出したキーワードwiの相対位置(rx,ry)に基づいてキーワードwiの初期スコアを算出する。初期スコアの算出処理については図8を参照して後述する。
そして、ステップS705およびステップS706の処理を、抽出されたキーワード全てに対して行う。
ステップS707では、キーワード選択画面生成部108がキーワード選択画面を生成する。以上で文書読み込み時の処理を終了する。
次に、図7のステップS706における初期スコアの算出処理について図8のフローチャートを参照して詳細に説明する。
ステップS801では、キーワードwiが表示領域Rの中にあるキーワードであるかどうかを判定する。表示領域Rの中にあるキーワードであると判定された場合は、ステップS802へ進む。表示領域Rの中にあるキーワードでないと判定された場合は、ステップS803へ進む。
ステップS801では、キーワードwiが表示領域Rの中にあるキーワードであるかどうかを判定する。表示領域Rの中にあるキーワードであると判定された場合は、ステップS802へ進む。表示領域Rの中にあるキーワードでないと判定された場合は、ステップS803へ進む。
ステップS802では、キーワードwiの初期スコアを算出する。初期スコアwsは、例えば式(1)のような計算を行って算出する。
ws=wbR+f0(rx,ry) (1)
wbRは表示領域Rの中でのスコアのベース値であり、f0(rx,ry)は式(2)に示すように表示領域Rを分割してスコアを割り当てる関数である。
ws=wbR+f0(rx,ry) (1)
wbRは表示領域Rの中でのスコアのベース値であり、f0(rx,ry)は式(2)に示すように表示領域Rを分割してスコアを割り当てる関数である。
ステップS803では、キーワードwiが表示領域Rの中に入っていないため、キーワードwiの初期スコアを「0」とする。
次に、本実施形態に係るキーワード抽出装置のスクロール後の動作について図9のフローチャートを参照して詳細に説明する。
ステップS901では、表示領域算出部104が表示領域Rを更新する。
ステップS902では、スクロール情報生成部105がスクロール情報Uを更新する。
ステップS903では、周辺領域算出部106が周辺領域Dを更新する。
ステップS904では、スコアリング部107が、キーワードwiについて表示領域Rに対する相対位置(rx,ry)を算出する。
ステップS905では、スコアリング部107がキーワードwiのスコアの更新処理を行う。そして、ステップS904およびステップS905の処理を、抽出されたキーワード全てに対して行う。スコアの更新処理については図10を参照して後述する。
ステップS906では、キーワード選択画面生成部108が更新されたスコアに応じてキーワード選択画面を更新する。
次に、スコアの更新処理について図10のフローチャートを参照して詳細に説明する。以下ではスコア算出のための処理を、簡単のために縦方向にのみスクロールが行われると想定しているが、これに限らず、横方向または斜め方向にもスクロールが行われる場合は、これを拡張して同様にスコア算出を行うことができる。
ステップS1001では、キーワードwiが表示領域Rの中にあるキーワードであるかどうかを判定する。表示領域Rの中にあるキーワードであると判定された場合は、ステップS1002へ進む。表示領域Rの中にあるキーワードでないと判定された場合は、ステップS1003へ進む。
ステップS1001では、キーワードwiが表示領域Rの中にあるキーワードであるかどうかを判定する。表示領域Rの中にあるキーワードであると判定された場合は、ステップS1002へ進む。表示領域Rの中にあるキーワードでないと判定された場合は、ステップS1003へ進む。
ステップS1002では、キーワードwiの更新スコアを算出する。更新スコアwsは、例えば式(4)のような計算を行って算出する。
ws=wbR+f1(rx,ry) (4)
ここで、f1(rx,ry)は式(2)および式(3)と同様の式を用いればよい。但し、表示領域Rの下の領域ほどスコアが高くなるように定数を(0<a<b<c)と調整する。
ws=wbR+f1(rx,ry) (4)
ここで、f1(rx,ry)は式(2)および式(3)と同様の式を用いればよい。但し、表示領域Rの下の領域ほどスコアが高くなるように定数を(0<a<b<c)と調整する。
ステップS1003では、キーワードwiが表示領域Rの中には入っていないが、周辺領域Dの中にあるキーワードであるかどうかを判定する。キーワードwiが周辺領域Dの中にあるキーワードであると判定された場合は、ステップS1004へ進む。キーワードwiが周辺領域Dの中にあるキーワードでないと判定された場合は、ステップS1005へ進む。
ステップS1004では、ステップS1002同様、キーワードwiの更新スコアを算出する。更新スコアwsは、例えば式(5)のような計算を行って算出する。
ws=wbD+g1(rx,ry) (5)
ここで、wbDは周辺領域Dの中でのスコアのベース値であり、g1(rx,ry)はf1(rx,ry)と同様の式を用いればよい。
ws=wbD+g1(rx,ry) (5)
ここで、wbDは周辺領域Dの中でのスコアのベース値であり、g1(rx,ry)はf1(rx,ry)と同様の式を用いればよい。
ステップS1005では、キーワードwiが表示領域Rの中に入っておらず、さらに周辺領域Dの中にも入っていないため、キーワードwiの更新スコアを「0」とする。
キーワード選択画面生成部108が生成する選択画面の一例を図11Aおよび図11Bに示す。
図11Aに示すように、文書読み込み時では、表示領域Rの中に出現するキーワードについては文書表示部101上でハイライト表示する。なお、よりキーワードが選択可能であることがわかりやすいようにボタンのような形状にして表示してもよい。さらに、キーワードのスコアに応じてハイライトの色を変える(スコアが高いキーワードほど目立たせる等)ようにしてもよい。
図11Aに示すように、文書読み込み時では、表示領域Rの中に出現するキーワードについては文書表示部101上でハイライト表示する。なお、よりキーワードが選択可能であることがわかりやすいようにボタンのような形状にして表示してもよい。さらに、キーワードのスコアに応じてハイライトの色を変える(スコアが高いキーワードほど目立たせる等)ようにしてもよい。
図11Bにスクロール後のキーワード選択画面の例を示す。表示領域Rの中に出現するキーワードについては、図11Aと同様に文書表示部101上でハイライト表示する。一方、周辺領域Dに出現したキーワード(以下、周辺キーワードともいう)については、文書表示部101の上下の少なくとも一方に周辺キーワード表示領域1101を設け、そこに表示する。周辺キーワードはすべて表示するのではなく、スコアの上位N件(Nは任意の自然数)などに絞って表示する。このとき、キーワードは横1列などのリスト状に並べてもよいし、図11Bに示すように、できるだけ元の位置関係に近くなるような配置をしてもよい。
なお、文書読み込み時には周辺領域Dが表示領域Rと同一のため、周辺キーワード表示領域1101は表示しなくともよい。また、キーワードのハイライト表示は常に行っていてもよいが、「検索」ボタンのようなボタンを用意しておき、ユーザがそのボタンを押すことで表示または非表示を切り替えられるようにしてもよい。
さらに、ユーザはキーワード選択画面上で、上下左右方向へ移動させるボタンやスクリーンへのタッチによる直接操作でキーワードを選択することがあり得るため、ユーザのアクションによりメニューを選択できるようにしてもよい。
なお、文書読み込み時には周辺領域Dが表示領域Rと同一のため、周辺キーワード表示領域1101は表示しなくともよい。また、キーワードのハイライト表示は常に行っていてもよいが、「検索」ボタンのようなボタンを用意しておき、ユーザがそのボタンを押すことで表示または非表示を切り替えられるようにしてもよい。
さらに、ユーザはキーワード選択画面上で、上下左右方向へ移動させるボタンやスクリーンへのタッチによる直接操作でキーワードを選択することがあり得るため、ユーザのアクションによりメニューを選択できるようにしてもよい。
キーワードに対するアクションによりメニューを選択する表示例を図12に示す。
メニュー項目1201は、選択されたキーワードの意味属性によって生成される。図12の例では、「湯剥き」は意味属性「手法」のキーワードであるため、単なるWeb検索を行うメニューのほかに、動画で湯剥きのやり方を見るための検索メニューなどを表示してもよい。他には、意味属性が「料理」である「野菜カレー」が選択された場合は、野菜カレーを食べられる店の検索メニューなどを表示してもよい。
メニュー項目1201は、選択されたキーワードの意味属性によって生成される。図12の例では、「湯剥き」は意味属性「手法」のキーワードであるため、単なるWeb検索を行うメニューのほかに、動画で湯剥きのやり方を見るための検索メニューなどを表示してもよい。他には、意味属性が「料理」である「野菜カレー」が選択された場合は、野菜カレーを食べられる店の検索メニューなどを表示してもよい。
以上に示した第1の実施形態によれば、ユーザのスクロールを考慮して閲覧している表示領域のみでなく、表示領域外であるが未だユーザが興味を持っていると推測される領域からキーワード抽出を行い、ユーザに提示することで、ユーザが興味を持ったキーワードを過不足無く簡単に選択できるようにする。
(第2の実施形態)
第1の実施形態では、閲覧する文書全体に対してキーワード抽出を行うため、大きなファイルサイズの文書では抽出するキーワードの数が多くなる。そのため、文書を閲覧するときにユーザがキーワードを選択できるようになるまでに時間がかかってしまう。よって、本実施形態では、大きなファイルサイズの文書から必要となる領域に対して抽出処理を行う点が第1の実施形態と異なる。
また、本実施形態では、ユーザがスクロール操作後に表示領域内で文章を読み進めるのに対応させて、スクロール情報に時間情報を追加し、ユーザごとの、スクロール量および次のスクロールまでの時間間隔に合わせてキーワードのスコアを更新する点が第1の実施形態と異なる。
第1の実施形態では、閲覧する文書全体に対してキーワード抽出を行うため、大きなファイルサイズの文書では抽出するキーワードの数が多くなる。そのため、文書を閲覧するときにユーザがキーワードを選択できるようになるまでに時間がかかってしまう。よって、本実施形態では、大きなファイルサイズの文書から必要となる領域に対して抽出処理を行う点が第1の実施形態と異なる。
また、本実施形態では、ユーザがスクロール操作後に表示領域内で文章を読み進めるのに対応させて、スクロール情報に時間情報を追加し、ユーザごとの、スクロール量および次のスクロールまでの時間間隔に合わせてキーワードのスコアを更新する点が第1の実施形態と異なる。
本実施形態に係るキーワード抽出装置の構成について図13を参照して詳細に説明する。
本実施形態に係るキーワード抽出装置1300は、第1の実施形態に係るキーワード抽出装置100の構成に加え、さらに、抽出判定領域算出部1301、抽出単位算出部1302、抽出対象領域判定部1303、およびキーワード情報蓄積部1304を含む。また、スコアリング部107は、誘目性算出部1305、スクロール特性管理部1306を含む。
抽出判定領域算出部1301は、スクロール情報生成部105からスクロール情報を受け取り、抽出判定領域Cを算出する。抽出判定領域Cは、新しくキーワード抽出を行う必要があるかどうかを判定するための領域であり、表示領域Rよりも大きく設定する。そして、抽出判定領域Cは、次にユーザが閲覧すると予測される領域内にあるキーワードの抽出を前もって行うために必要である。抽出判定領域Cの大きさは文書読み込み時に決定し、ユーザがスクロールを行うとともにその位置が更新される。
抽出単位算出部1302は、抽出判定領域算出部1301から抽出判定領域Cを受け取り、キーワード抽出を行う抽出単位領域(以下、抽出単位ともいう)Ii(iは任意の正の整数)を算出する。抽出単位は文書読み込み時に全て算出される。
抽出対象領域判定部1303は、抽出判定領域算出部1301から抽出判定領域Cを、抽出単位算出部1302から単位領域をそれぞれ受け取り、抽出判定領域Cが、まだキーワード抽出を行っていない抽出単位にかかっているかどうかを判定する。キーワード抽出を行っていない抽出単位にかかっていれば、その抽出単位についてキーワード抽出を行うようにキーワード抽出部103へ指示を送る。
キーワード情報蓄積部1304は、キーワード抽出部103からキーワードを受け取り、抽出されたキーワードのID、意味属性、文書中での絶対位置と、現在の表示領域R中での相対位置、およびスコアをキーワード情報として蓄積する。なお、抽出されたキーワードは、キーワード抽出部103がキーワードを抽出するたびにキーワード情報蓄積部1304へ蓄積してもよいし、抽出単位ごとに、抽出単位の領域の中にあるキーワードを抽出し終えたら、まとめてキーワード情報蓄積部1304へ蓄積してもよい。キーワード情報蓄積部1304に蓄積されるキーワード情報については、図16を参照して後述する。
誘目性算出部1305は、キーワードの文字色、背景色、大きさ等、デザイン上の特性から、キーワードの誘目性を算出してスコア加算を行う。誘目性は、キーワードがどれほど目立つかを示す指標である。例えば、キーワードの文字色と背景色の明度差Vdiffと文字の大きさSize、文字列長Lengthから、誘目性をa×Vdiff×Size×Length(aは定数)などとして求めることができる。また、この誘目性の値をキーワード情報として追加してもよい。
スクロール特性管理部1306は、文書閲覧時に選択されたキーワードの表示位置と、そのときのスクロール情報の履歴からキーワードのスコア加算を行う。例えば、以前のスクロール情報Uのスクロール速度vがある一定値vth以上で、選択されたキーワードの相対位置のy座標ryが表示領域の下の領域(例えば2*Rh/3)のことが多いのであれば、スクロール速度vが大きなときは、ユーザは表示領域の下の領域に興味を持ちやすいと考えられる。このため、スクロール速度vが大きいときは表示領域の下の領域に位置するキーワードにスコア加算を行う。
本実施形態に係るスクロール情報生成部105が生成するスクロール情報について図14を参照して詳細に説明する。
スクロール情報U 1401として、スクロール前の表示領域Rbefore、スクロール後の現在の表示領域R、スクロールが終了した時刻t、スクロール速度v(x方向の速度vx,y方向の速度vy)を含む。スクロール速度vとは、1秒間にx方向またはy方向に何pixel表示領域が移動したかを示す速度である。なお、時刻tは、文書読み込み時には文書読み込みが完了した時刻とする。また。スクロール速度vについては、x成分およびy成分の速度を算出するので、縦方向に移動した場合のスクロール速度を算出できるのに限らず、横へまたは斜めに移動した場合のスクロール速度も算出することができる。
文書読み込み時には、まだスクロールを行っていないため、スクロール前の表示領域Rbeforeは空(Empty)である。表示領域Rは、現在表示される領域(0,0,480,640)である。また、スクロール時刻tは文書読み込みが完了した時刻「2009-06-16T12:34:50」とし、スクロール速度vはx軸方向、y軸方向共に0である。
スクロール情報U 1401として、スクロール前の表示領域Rbefore、スクロール後の現在の表示領域R、スクロールが終了した時刻t、スクロール速度v(x方向の速度vx,y方向の速度vy)を含む。スクロール速度vとは、1秒間にx方向またはy方向に何pixel表示領域が移動したかを示す速度である。なお、時刻tは、文書読み込み時には文書読み込みが完了した時刻とする。また。スクロール速度vについては、x成分およびy成分の速度を算出するので、縦方向に移動した場合のスクロール速度を算出できるのに限らず、横へまたは斜めに移動した場合のスクロール速度も算出することができる。
文書読み込み時には、まだスクロールを行っていないため、スクロール前の表示領域Rbeforeは空(Empty)である。表示領域Rは、現在表示される領域(0,0,480,640)である。また、スクロール時刻tは文書読み込みが完了した時刻「2009-06-16T12:34:50」とし、スクロール速度vはx軸方向、y軸方向共に0である。
次に、スクロール後の例として、8秒間で240pixel分下へスクロール(y軸の正の方向へ240pixel移動)を行った場合を考える。スクロール前の表示領域Rbeforeとしては、文書読み込み時の表示領域R(0,0,480,640)が与えられる。また現在の表示領域Rは、y軸の正の方向に240pixelスクロールしたため、表示領域Rの始点位置Ryが変化して、(0,240,480,640)となる。またスクロール時刻tは、スクロールが終了した時刻「2009-06-16T12:34:58」となる。スクロール速度vは、スクロールの開始時刻(文書読み込み時は文書の読み込みが完了した時刻)から終了時刻までの時間と、スクロールしたpixel量とによって算出することができる。ここでは、y軸の正の方向に240pixelを8秒間でスクロールしたので、スクロール速度vは、(0,30)pixel/secとなる。
なお、スクロール情報U 1401については、スクロール前の表示領域Rbeforeの代わりに最後のスクロール量S、スクロール速度vの代わりにスクロール開始時刻tstartを含んでもよい。
なお、スクロール情報U 1401については、スクロール前の表示領域Rbeforeの代わりに最後のスクロール量S、スクロール速度vの代わりにスクロール開始時刻tstartを含んでもよい。
ここで、抽出判定領域Cについて図15を参照して詳細に説明する。
文書全体Pの幅および高さを(Pw,Ph)とすると、文書全体を少なくとも1つ以上の抽出単位を含む単位領域に分割する。図15の例では、文書全体Pが4つの抽出単位Ii(n=0,1,2,4)に分割される。それぞれの抽出単位Iiは、表示領域Rと同様に、始点位置IixおよびIiy、抽出単位の幅Iiwおよび高さIih4つのパラメータで規定することができる。例えば、1つの抽出単位の幅および高さを(1000,1500)とすると、抽出単位I0は、(I0x,I0y,I0w,I0h)=(0,0,1000,1500)で表される。同様に、抽出単位I2は(I2x,I2y,I2w,I2h)=(0,1500,1000,1500)で表される。
文書全体Pの幅および高さを(Pw,Ph)とすると、文書全体を少なくとも1つ以上の抽出単位を含む単位領域に分割する。図15の例では、文書全体Pが4つの抽出単位Ii(n=0,1,2,4)に分割される。それぞれの抽出単位Iiは、表示領域Rと同様に、始点位置IixおよびIiy、抽出単位の幅Iiwおよび高さIih4つのパラメータで規定することができる。例えば、1つの抽出単位の幅および高さを(1000,1500)とすると、抽出単位I0は、(I0x,I0y,I0w,I0h)=(0,0,1000,1500)で表される。同様に、抽出単位I2は(I2x,I2y,I2w,I2h)=(0,1500,1000,1500)で表される。
抽出判定領域Cは、ユーザのスクロールを先読みしてキーワード抽出を行うために、表示領域Rより大きい領域として設定すればよい。
キーワード情報蓄積部1304に蓄積されるキーワード情報の一例について図16を参照して詳細に説明する。
キーワード情報は、1度抽出されたら変化しないキーワードのID、表記301、文書中での意味属性302、および絶対位置1601(px,py)と、ユーザがスクロールを行うことによって更新される表示領域Rからの相対位置1602(rx,ry)と、後述する定期スコア更新処理によって更新されるスコア1603(ws)とを含む。キーワード抽出部103によりキーワード抽出が行われ、それまでにキーワード情報蓄積部1304に蓄積されていないキーワードが抽出されたら、キーワードとこのキーワードに対応するキーワード情報とをキーワード情報蓄積部1304に追加して蓄積する。具体例としては、ID「0」の表記301「野菜カレー」は、意味属性302が「料理」であり、絶対位置1601(px,py)は「294,69」であり、これらは1度抽出されたら変化しないフィールドである。また、スクロールごとに更新されるフィールドである表示領域Rからの相対位置1602(rx,ry)は「294,-11」であり、定期的にスコア更新処理によって更新されるスコア1603(ws)は「5.0」である。相対位置のy成分がマイナスの値となっているのは、文書読み込み位置から表示領域Rが下方向(図5に示すy軸の正の方向)に80pixel分スクロールしており、キーワードである「野菜カレー」の文字列が表示領域Rから外れているため、相対位置がマイナスの値となっている。
キーワード情報は、1度抽出されたら変化しないキーワードのID、表記301、文書中での意味属性302、および絶対位置1601(px,py)と、ユーザがスクロールを行うことによって更新される表示領域Rからの相対位置1602(rx,ry)と、後述する定期スコア更新処理によって更新されるスコア1603(ws)とを含む。キーワード抽出部103によりキーワード抽出が行われ、それまでにキーワード情報蓄積部1304に蓄積されていないキーワードが抽出されたら、キーワードとこのキーワードに対応するキーワード情報とをキーワード情報蓄積部1304に追加して蓄積する。具体例としては、ID「0」の表記301「野菜カレー」は、意味属性302が「料理」であり、絶対位置1601(px,py)は「294,69」であり、これらは1度抽出されたら変化しないフィールドである。また、スクロールごとに更新されるフィールドである表示領域Rからの相対位置1602(rx,ry)は「294,-11」であり、定期的にスコア更新処理によって更新されるスコア1603(ws)は「5.0」である。相対位置のy成分がマイナスの値となっているのは、文書読み込み位置から表示領域Rが下方向(図5に示すy軸の正の方向)に80pixel分スクロールしており、キーワードである「野菜カレー」の文字列が表示領域Rから外れているため、相対位置がマイナスの値となっている。
本実施形態に係るスコアリング方法の一例について図17を参照して詳細に説明する。
図6と同様に、簡単のためスクロールの方向は縦方向のみとしている。また、スコアのベースについても第1の実施形態と同様に表示領域Rの中にあるキーワードの方が、表示領域Rの中にはないが周辺領域Dの中にあるキーワードよりもスコアのベースを高く設定する。
図6と同様に、簡単のためスクロールの方向は縦方向のみとしている。また、スコアのベースについても第1の実施形態と同様に表示領域Rの中にあるキーワードの方が、表示領域Rの中にはないが周辺領域Dの中にあるキーワードよりもスコアのベースを高く設定する。
文書読み込み時またはスクロール直後において、表示領域Rの中にあるキーワードのスコアリング方法は第1の実施形態と同様であるが、読み込み後時間が経過したときまたはスクロール後時間が経過したときには、表示領域Rの中にあるキーワードのスコア加算は、領域全体で同じ値となるように設定する。ここで、文書読み込み時とは、文書を読み込んだ後一定の期間内のことを示す。また同様に、スクロール直後とは、スクロール後一定の期間内のことを示す。
一方、表示領域Rの中にはないが周辺領域Dの中にあるキーワードのスコア加算は、スクロールを行った直後には領域全体で同じ値となるように設定する。そして、スクロール後一定の時間が経過すると、表示領域Rに近いキーワードほどスコアが高くなるように設定する。この理由としては、表示領域Rから外れたキーワードは、スクロール直後にはそれまで表示領域Rに表示されていた領域であるため、表示領域Rに近い領域か遠い領域かを問わずユーザが同じ程度に関心があると考えられるが、一定時間が経過すると表示領域Rから離れたキーワードは関心が薄れると考えられるためである。
一方、表示領域Rの中にはないが周辺領域Dの中にあるキーワードのスコア加算は、スクロールを行った直後には領域全体で同じ値となるように設定する。そして、スクロール後一定の時間が経過すると、表示領域Rに近いキーワードほどスコアが高くなるように設定する。この理由としては、表示領域Rから外れたキーワードは、スクロール直後にはそれまで表示領域Rに表示されていた領域であるため、表示領域Rに近い領域か遠い領域かを問わずユーザが同じ程度に関心があると考えられるが、一定時間が経過すると表示領域Rから離れたキーワードは関心が薄れると考えられるためである。
ここで、本実施形態に係るキーワード抽出装置が最初に文書を読み込んだときの動作を図18のフローチャートを参照して詳細に説明する。
ステップS1801では、表示領域算出部104が表示領域Rを算出する。
ステップS1802では、スクロール情報生成部105がスクロール情報Uを初期化する。
ステップS1801では、表示領域算出部104が表示領域Rを算出する。
ステップS1802では、スクロール情報生成部105がスクロール情報Uを初期化する。
ステップS1803では、抽出判定領域算出部1301が抽出判定領域Cを算出する。抽出判定領域Cの算出方法としては、例えば、抽出判定領域Cの幅Cwおよび高さChは、ある任意の定数で表される固定幅k0
wおよび固定高さk0
hを用いて(Cw=Rw+k0
w,Ch=Rh+k0
h)とすればよい。このとき、k0
wおよびk0
hは、例えば表示領域Rの大きさの倍数としてもよいし、M回のスクロール単位量としてもよい。スクロール単位量は予め定数で定めてもよいが、これまでのユーザのスクロール速度(または速度の平均値等)に応じて変化させて、(k0
w=a×vx_avg.,k0
h=b×vy_avg.)としてもよい。このように設定することで、普段スクロール速度が速いユーザについては、より大きな抽出判定領域Cを設けることができ、頻繁にキーワード抽出が行われないようにすることが可能である。
ステップS1804では、抽出単位算出部1302が抽出単位Iiを算出する。抽出単位I0~Inは例えば、図15に示すように、抽出判定領域Cと同じ大きさの抽出単位がタイル状に並ぶように定める。なお、Web文書であれば矩形に区切られた領域でなく、Web文書のDOMツリー構造を解析し、HTML要素の固まりごとに抽出単位Iiとしてもよいし、文書のページごとに抽出単位Iiとしてもよい。
ステップS1805では、周辺領域算出部106が周辺領域Dを初期化する。本実施形態においては、周辺領域Dは2つの矩形領域D0,D1から構成される。また、第1の実施形態と同様、初期化時の周辺領域D0は表示領域Rと同一領域とする。また、周辺領域D1は空(Empty)とする。
ステップS1805では、周辺領域算出部106が周辺領域Dを初期化する。本実施形態においては、周辺領域Dは2つの矩形領域D0,D1から構成される。また、第1の実施形態と同様、初期化時の周辺領域D0は表示領域Rと同一領域とする。また、周辺領域D1は空(Empty)とする。
ステップS1806では、抽出対象領域判定部1303が抽出単位Iiのそれぞれに対して、キーワード抽出が行われたかどうかを判定する。ステップS1806の抽出対象領域チェック処理については、図19を参照して後述する。
ステップS1807では、スコアリング部107が、キーワード情報蓄積部1304に蓄積されたキーワードwのそれぞれに対して、表示領域Rに対する相対位置(rx,ry)を更新する。相対位置の算出方法については図7に示すステップS705と同様の処理を行えばよい。
ステップS1808では、キーワードのスコアを更新する。ステップS1808の処理については図20を参照して後述する。
ステップS1807では、スコアリング部107が、キーワード情報蓄積部1304に蓄積されたキーワードwのそれぞれに対して、表示領域Rに対する相対位置(rx,ry)を更新する。相対位置の算出方法については図7に示すステップS705と同様の処理を行えばよい。
ステップS1808では、キーワードのスコアを更新する。ステップS1808の処理については図20を参照して後述する。
次に、ステップS1806の抽出対象チェック処理について図19のフローチャートを参照して詳細に説明する。
ステップS1901では、抽出対象領域判定部1303が、抽出単位Iiに対してキーワード抽出処理がまだ実行されていないかどうかを判定する。キーワード抽出処理がまだ実行されていない場合は、ステップS1902へ進む。キーワード抽出処理が実行されているときは、その抽出単位Iiに対しての処理を終了して、次の抽出単位Iiについて処理を行う。
ステップS1902では、抽出対象領域判定部1303が抽出単位Iiと抽出判定領域Cとの一部の領域が重なり合うかどうかを判定する。重なり合う領域がある場合は、ステップS1903へ進み、重なり合う領域がない場合は、その抽出単位Iiに対しての処理を終了して、次の抽出単位Iiについて処理を行う。
ステップS1901では、抽出対象領域判定部1303が、抽出単位Iiに対してキーワード抽出処理がまだ実行されていないかどうかを判定する。キーワード抽出処理がまだ実行されていない場合は、ステップS1902へ進む。キーワード抽出処理が実行されているときは、その抽出単位Iiに対しての処理を終了して、次の抽出単位Iiについて処理を行う。
ステップS1902では、抽出対象領域判定部1303が抽出単位Iiと抽出判定領域Cとの一部の領域が重なり合うかどうかを判定する。重なり合う領域がある場合は、ステップS1903へ進み、重なり合う領域がない場合は、その抽出単位Iiに対しての処理を終了して、次の抽出単位Iiについて処理を行う。
ステップS1903では、キーワード抽出部103が抽出単位Iiに対してキーワード抽出処理を実行する。なお抽出単位内の文字列が文章の途中で切れている場合は、対象文字列を切りのよい範囲まで拡張してもよい。例えば、文の切れ目まで拡張する、Web文書であればその要素全体まで拡張する等が考えられる。
ステップS1904では、キーワード抽出部103がステップS1903において抽出されたキーワードをキーワード情報蓄積部1304に蓄積する。このとき、キーワード情報の相対位置およびスコアについては、抽出されたキーワードが表示領域Rの外であるため未定義とする。以上に示したステップS1901からステップS1904までの処理を、各抽出単位Ii=I0…Inに対して同様に行う。このように、新しく抽出対象となった抽出単位に対するキーワード抽出処理が実行される。
次に、キーワードの定期スコア更新処理について図20のフローチャートを参照して詳細に説明する。
ステップS2001では、1度でもスクロール操作を行ったどうかを判定する。この判定処理は、スコアリング部107がスクロール情報生成部105からのスクロール情報を参照して判定する。1度もスクロール操作を行っていない場合には、ステップS2002へ進み、1度でもスクロール操作を行っていれば、ステップS2003へ進む。文書読み込み時には、1度もスクロール操作を行っていない状態のため、ステップS2002の処理が行われる。
ステップS2001では、1度でもスクロール操作を行ったどうかを判定する。この判定処理は、スコアリング部107がスクロール情報生成部105からのスクロール情報を参照して判定する。1度もスクロール操作を行っていない場合には、ステップS2002へ進み、1度でもスクロール操作を行っていれば、ステップS2003へ進む。文書読み込み時には、1度もスクロール操作を行っていない状態のため、ステップS2002の処理が行われる。
ステップS2002では、スコアリング部107が未スクロール時のスコア更新処理を行う。ステップS2002の処理については図21を参照して後述する。
ステップS2003では、スコアリング部107がスクロール後のスコア更新処理を行う。ステップS2003の処理については図24を参照して後述する。
上述したステップS2001からステップS2003までの処理を、各キーワードwiについて行う。
ステップS2003では、スコアリング部107がスクロール後のスコア更新処理を行う。ステップS2003の処理については図24を参照して後述する。
上述したステップS2001からステップS2003までの処理を、各キーワードwiについて行う。
ステップS2004では、更新した各キーワードのスコアをもとに、キーワード選択画面を更新する。以上で定期スコア更新処理を終了する。
ここで、ステップS2002におけるスコアリング部107の未スクロール時スコア更新処理について図21のフローチャートを参照して詳細に説明する。
ステップS2101では、キーワードwiが表示領域Rの中に含まれるかどうかを判定する。キーワードwiが表示領域Rの中に含まれると判定される場合は、ステップS2102へ進み、キーワードwiが表示領域Rの中に含まれないと判定される場合は、ステップS2103へ進む。
ステップS2101では、キーワードwiが表示領域Rの中に含まれるかどうかを判定する。キーワードwiが表示領域Rの中に含まれると判定される場合は、ステップS2102へ進み、キーワードwiが表示領域Rの中に含まれないと判定される場合は、ステップS2103へ進む。
ここで、wbRは表示領域R中に出現するキーワードwiのスコアのベース、(rx,ry)はキーワードwiの相対位置、Uはスクロール情報である。f0(rx,ry,U)は、例えば、スクロール情報Uの中のスクロール時刻tからの経過時間tdが閾値tthよりも小さい場合、表示領域Rの上の領域にあるキーワードwiほどスコアを高くするため、式(7)のように計算する。
また、経過時間tdが閾値tth以上である場合は、表示領域Rのどの領域でも同じスコアとするためf0=dとする。文書読み込み時には経過時間tdは「0」であるため、経過時間tdが閾値tthよりも小さいので、第1の実施形態と同じく表示領域Rの上部に位置するキーワードほど高いスコアとなる。
ステップS2103では、キーワードwiのスコアを0に設定する。以上で未スクロール時のスコア更新処理を終了する。
次に、本実施形態に係るキーワード抽出装置のスクロール後の動作について図22のフローチャートを参照して詳細に説明する。
ステップS2201では、表示領域算出部104が表示領域Rを更新する。
ステップS2201では、表示領域算出部104が表示領域Rを更新する。
ステップS2202では、スクロール情報生成部105がスクロール情報Uを更新する。
ステップS2203では、抽出判定領域算出部1301が抽出判定領域Cを更新する。抽出判定領域Cの大きさは初期化時のままでもよいし、スクロール情報Uに応じて更新してもよい。例えば、抽出判定領域Cの幅Cwおよび高さChを式(8)のように算出してもよい。
式(8)によれば、スクロール速度が速い時は抽出判定領域Cを大きく設定することができる。また抽出判定領域Cの位置は、その中心点(Ccx,Ccy)=(Cx+Cw/2,Cy+Ch/2)を式(9)により算出する。
但し、抽出判定領域Cが表示領域Rを包含するように調整する。これによって、抽出判定領域Cは表示領域Rのスクロール方向の少し先の領域と表示領域Rとを含む矩形領域として更新することができる。
ステップS2204では、抽出対象領域のチェック処理について図18に示すステップS1806と同様の処理を行い、必要であれば、キーワード抽出部103がスクロールによって新しく抽出対象となる抽出単位に対してキーワード抽出を行う。
ステップS2205では、周辺領域算出部106が周辺領域Dの更新処理を行う。ステップS2205については、図23を参照して後述する。
ステップS2206では、図8に示すステップS1807同様に、キーワード情報蓄積部1304に蓄積されたキーワードwiのそれぞれに対して、スコアリング部107が表示領域Rに対する相対位置(rx,ry)を更新する。
ステップS2207では、キーワードのスコアを更新する。ステップS2207の処理については図24を参照して後述する。以上がスクロール後の動作であり、スクロールが行われるたびに、ステップS2201からステップS2207までの処理が行われる。
次に、ステップS2205における周辺領域算出部106の周辺領域Dの更新処理について図23のフローチャートを参照して詳細に説明する。周辺領域Dは、スクロール速度vが速いときはスクロールされた間の領域を無視し、スクロール速度が遅い時はスクロールされた間の領域のうち、現在の表示領域Rの少し上の領域を含めるような処理を行う。
ステップS2301では、スクロール情報Uが保持するスクロール速度vの絶対値が一定値vth以上であるかどうかを判定する。スクロール速度vの絶対値が一定値vth以上である場合、ステップS2302に進み、スクロール速度vの絶対値が一定値vth以上でない、つまり一定値vth未満の場合、ステップS2303に進む。
ステップS2302では、スクロール情報Uに含まれるスクロール速度vの絶対値が一定値vth以上である場合、D0は表示領域Rと同一領域とし、D1はスクロール前の表示領域Rbeforeと同一領域とし、RとRbeforeとの間の領域は周辺領域Dに含めない。これにより、ユーザが意図的に見ていない文章からのキーワードを提示しないようにすることができる。
但し、ここでdは、表示領域Rに含まれないようにd>Rの対角線長/2とする。
ステップS2304では、周辺領域D0については点dpを含むように表示領域Rを拡張し、D1を空にする。点dpを含むように周辺領域D0を設定することで、スクロールされた間の領域のうち、現在の表示領域Rの少し上の領域を含めることができる。例えば、式(11)のようにD0およびD1を算出することで周辺領域Dを得ることができる。
以上で周辺領域Dの更新処理を終了する。
ステップS2003に示したスクロール後のスコア更新処理について図24を参照して詳細に説明する。なお、図10に示すステップS1001からステップS1005までと同様の処理である。以下ではスコア算出のための処理を、簡単のために縦方向にのみスクロールが行われると想定しているが、これに限らず、横方向または斜め方向にもスクロールが行われる場合は、これを拡張して同様にスコア算出を行うことができる。
ステップS2401では、キーワードwiが表示領域Rの中にあるキーワードであるかどうかを判定する。表示領域Rの中にあるキーワードであると判定された場合は、ステップS2402へ進む。表示領域Rの中にあるキーワードでないと判定された場合は、ステップS2403へ進む。
ステップS2401では、キーワードwiが表示領域Rの中にあるキーワードであるかどうかを判定する。表示領域Rの中にあるキーワードであると判定された場合は、ステップS2402へ進む。表示領域Rの中にあるキーワードでないと判定された場合は、ステップS2403へ進む。
ステップS2402では、キーワードwiの更新スコアを算出する。更新スコアwsは、例えば式(12)のような計算を行って算出する。
ws=wbR+f1(rx,ry,U) (12)
f1(rx,ry,U)は、例えばスクロール情報Uの中のスクロール時刻tからの経過時間tdがある閾値tthよりも小さい場合、式(13)のように計算する。
ws=wbR+f1(rx,ry,U) (12)
f1(rx,ry,U)は、例えばスクロール情報Uの中のスクロール時刻tからの経過時間tdがある閾値tthよりも小さい場合、式(13)のように計算する。
tthよりも大きい場合はf1=dとする。スクロール時にはtd=0であるため、第1の実施形態と同じく表示領域Rの下部の領域に位置するキーワードほど高いスコアとなる。
ステップS2403では、キーワードwiが表示領域Rには入っていないが、周辺領域Dの中にあるキーワードであるかどうかを判定する。周辺領域Dの中にあるキーワードであると判定された場合は、ステップS2404へ進む。周辺領域Dの中にあるキーワードでないと判定された場合は、ステップS2405へ進む。
ステップS2404では、周辺領域D中に出現するキーワードの更新スコアwsは、例えば式(14)から算出する。
ws=wbD+g1(rx,ry,U) (14)
g1(rx,ry,U)は、例えばスクロール情報Uの中のスクロール時刻tからの経過時間tdが閾値tthよりも小さい場合、式(15)のように計算する。
ws=wbD+g1(rx,ry,U) (14)
g1(rx,ry,U)は、例えばスクロール情報Uの中のスクロール時刻tからの経過時間tdが閾値tthよりも小さい場合、式(15)のように計算する。
なお、スクロール時にはtd=0であるため、周辺領域中の全体が同じスコア加算される。
ステップS2405では、キーワードwiが表示領域Rの中に入っておらず、さらに周辺領域Dの中にも入っていないため、キーワードwiの更新スコアを「0」とする。以上でスクロール後のスコア更新処理を終了する。
文書読み込み時、スクロール時のほかに、タイマーなどを利用して定期的にスコアの更新処理を行う。例えば、周辺領域D中に出現するキーワードwiの更新スコアwsは、式(13)中のg1についてスクロール後に時間が経つと経過時間tdが大きくなるので、周辺領域D中で表示領域Rに近い位置にあるキーワードwiのスコアが高くなる。
このように、本実施形態において、更新されたキーワードのスコアに基づいて生成されたキーワード選択画面の一例を図25Aから図25Cまでを参照して詳細に説明する。
ユーザが何も操作をしていなくても、周辺領域Dに表示されるキーワードは時間経過と共に変化する。具体的には、図25Aは文書読み込み時の状態を示す。表示領域Rの中で抽出されたキーワードがハイライト表示されている。
次に、図25Bはスクロール操作を行った直後の状態を示す。周辺キーワード表示領域1101にはキーワードとして、「みじん切り」、「ナス」、および「野菜カレー」が表示されている。
最後にスクロール操作後から一定の時間が経過した状態を図25Cに示す。表示領域Rからy軸方向に遠い位置にあるこれらのキーワード「みじん切り」、「ナス」、および「野菜カレー」はスコアが低くなる。よって、表示領域Rに近い位置にある周辺領域Dの中のキーワード「ニンジン」、「ジャガイモ」についてのスコアが高く更新されるので、周辺キーワード表示領域1101に表示される。
ユーザが何も操作をしていなくても、周辺領域Dに表示されるキーワードは時間経過と共に変化する。具体的には、図25Aは文書読み込み時の状態を示す。表示領域Rの中で抽出されたキーワードがハイライト表示されている。
次に、図25Bはスクロール操作を行った直後の状態を示す。周辺キーワード表示領域1101にはキーワードとして、「みじん切り」、「ナス」、および「野菜カレー」が表示されている。
最後にスクロール操作後から一定の時間が経過した状態を図25Cに示す。表示領域Rからy軸方向に遠い位置にあるこれらのキーワード「みじん切り」、「ナス」、および「野菜カレー」はスコアが低くなる。よって、表示領域Rに近い位置にある周辺領域Dの中のキーワード「ニンジン」、「ジャガイモ」についてのスコアが高く更新されるので、周辺キーワード表示領域1101に表示される。
以上に示した第2の実施形態によれば、必要となる領域に対してのみ抽出処理を行うことで、大きな文書を閲覧したときにもユーザがキーワードを選択できるようになるまでの時間を短縮できる。また、スクロール情報に時間に関する情報を追加し、スクロール後の時間が経過するのにつれてキーワードのスコアを変化させ、ユーザごとのスクロール量に合わせてキーワードを抽出することでユーザが文書閲覧中のその時々に欲しいキーワードを選択しやすくすることができる。
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述したキーワード抽出装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±RWなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態のキーワード抽出装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本願発明における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本発明における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本願発明における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本発明における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
なお、本願発明におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本願発明の実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の実施形態における機能を実現することが可能な機器、装置を総称している。
また、本願発明の実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の実施形態における機能を実現することが可能な機器、装置を総称している。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
本発明に係るキーワード抽出装置は、例えばスクロール機能を有する文書閲覧可能な携帯電話、PCなどでキーワードの検索を行うのに有効である。
100,1300・・・キーワード抽出装置、101・・・文書表示部、102・・・スクロール部、103・・・キーワード抽出部、104・・・表示領域算出部、105・・・スクロール情報生成部、106・・・周辺領域算出部、107・・・スコアリング部、108・・・キーワード選択画面生成部、109・・・検索部、201・・・表示画面、202・・・スクロールバー、203・・・ノブ、301・・・表記、302・・・意味属性、303・・・出現位置、501,1401・・・スクロール情報、1101・・・周辺キーワード表示領域、1201・・・メニュー項目、1301・・・抽出判定領域算出部、1302・・・抽出単位算出部、1303・・・抽出対象領域判定部、1304・・・キーワード情報蓄積部、1305・・・誘目性算出部、1306・・・スクロール特性管理部、1601・・・絶対位置、1602・・・相対位置、1603・・・スコア。
Claims (11)
- 文書を表示する表示部と、
前記表示部に表示される前記文書の領域を示す部分領域を算出する表示領域算出部と、
前記部分領域外の文書の領域を該表示部でスクロールを行うスクロール部と、
前記スクロールを行う以前に表示されていた部分領域である第1表示領域の位置情報と、該スクロールを行った後に表示される部分領域である第2表示領域の位置情報とを含むスクロール情報を生成するスクロール情報生成部と、
前記文書に出現するキーワードを該文書中から抽出する抽出部と、
前記スクロール情報から前記第1表示領域と前記第2表示領域とを含む部分領域を示す周辺領域を算出する周辺領域算出部と、
前記文書中において、キーワードの出現する領域に応じて該キーワードのスコアを算出するスコアリング部と、
前記スコアの高い順に、前記周辺領域内に出現するキーワードから少なくとも1つの前記キーワードを選択する画面を生成するキーワード選択画面生成部と、を具備することを特徴とするキーワード抽出装置。 - 前記キーワードについて外部の情報源から検索を行う検索部をさらに含むことを特徴とする請求項1に記載のキーワード抽出装置。
- 前記抽出部は、前記第1表示領域内および前記第2表示領域内に出現するキーワードを抽出することを特徴とする請求項1に記載のキーワード抽出装置。
- 前記スコアリング部は、前記第2表示領域内に出現する第1キーワードの初期値となる第1ベーススコアを、該第2表示領域外でありかつ前記周辺領域内に出現する第2キーワードの初期値となる第2ベーススコアよりも高く設定し、
前記文書の読み込み時は、前記第1キーワードについて前記第2表示領域の上部の領域内に出現するキーワードほどスコアを高く設定して前記第1ベーススコアに加算し、
前記文書のスクロール後は、前記第1キーワードについて前記第2表示領域の下部の領域内に出現するキーワードほどスコアを高く設定して前記第1ベーススコアに加算し、前記第2キーワードについて該第2表示領域に近い領域内に出現するキーワードほどスコアを高く設定して第2ベーススコアに加算することを特徴とする請求項1に記載のキーワード抽出装置。 - 前記文書を少なくとも2つ以上に分割する領域を示す抽出単位領域を算出する抽出単位算出部と、
前記第2表示領域よりも大きい領域を示す抽出判定領域を算出する抽出判定領域算出部と、
前記抽出判定領域と前記抽出単位領域との一部の領域が重なり合うかどうかを判定する抽出対象領域判定部と、をさらに具備し、
前記抽出部は、前記抽出対象領域判定部により一部の領域が重なり合うと判定された場合、前記抽出単位領域からキーワードの抽出が行われていなければ、該抽出単位領域からキーワードの抽出を行うことを特徴とする請求項1に記載のキーワード抽出装置。 - 前記スクロール情報は、スクロール後の時刻、およびスクロール速度をさらに含むことを特徴とする請求項5に記載のキーワード抽出装置。
- 前記スコアリング部は、前記第2表示領域内に出現する第1キーワードの第1ベーススコアを、該第2表示領域外でありかつ前記周辺領域内に出現する第2キーワードの第2ベーススコアよりも高く設定し、
前記文書の読み込み後一定の期間内では、前記第1キーワードについて前記第2表示領域の上部の領域内に出現するキーワードほどスコアを高く設定して前記第1ベーススコアに加算し、該文書読み込み後前記期間の経過後では、該第1キーワードのスコアを全て同一のスコアに設定して該第1ベーススコアに加算し、
前記文書のスクロール後前記期間内では、前記第1キーワードについて前記第2表示領域の下部の領域内に出現するキーワードほどスコアを高く設定して前記第1ベーススコアに加算し、前記第2キーワードのスコアを全て同一のスコアに設定して前記第2ベーススコアに加算し、該文書のスクロール後前記期間の経過後では、該第1キーワードのスコアを全て同一のスコアに設定して該第1ベーススコアに加算し、前記第2キーワードについて該第2表示領域に近い領域内に出現するキーワードほどスコアを高く設定して該第2ベーススコアに加算することを特徴とする請求項5に記載のキーワード抽出装置。 - 前記抽出判定領域算出部は、前記スクロール速度が早いほど前記抽出判定領域を大きくすることを特徴とする請求項6に記載のキーワード抽出装置。
- 前記キーワードの文字色、背景色、およびフォントの大きさを含むデザイン上の特性から、該キーワードがどれほど目立つかを示す指標である誘目性を該キーワードごとに算出する誘目性算出部をさらに具備し、
前記スコアリング部は、前記誘目性を前記第1ベーススコアまたは前記第2ベーススコアに加算することを特徴とする請求項7に記載のキーワード抽出装置。 - ユーザが選択したキーワードの前記第2表示領域内の位置情報と、該ユーザが該キーワードを選択するまでのスクロール速度とに基づいて、ユーザのスクロール特性を算出するスクロール特性管理部をさらに具備し、
前記スコアリング部は、該スクロール速度に応じて該第2表示領域内の領域ごとにスコアを設定して前記第1ベーススコアまたは前記第2ベーススコアに加算することを特徴とする請求項7に記載のキーワード抽出装置。 - コンピュータを、
文書を表示する表示手段と、
前記表示手段に表示される前記文書の領域を示す部分領域を算出する表示領域算出手段と、
前記部分領域外の文書の領域を該表示部でスクロールを行うスクロール手段と、
前記スクロールを行う以前に表示されていた部分領域である第1表示領域の位置情報と、該スクロールを行った後に表示される部分領域である第2表示領域の位置情報とを含むスクロール情報を生成するスクロール情報生成手段と、
前記文書に出現するキーワードを該文書中から抽出する抽出手段と、
前記スクロール情報から前記第1表示領域と前記第2表示領域とを含む部分領域を示す周辺領域を算出する周辺領域算出手段と、
前記文書中において、キーワードの出現する領域に応じて該キーワードのスコアを算出するスコアリング手段と、
前記スコアの高い順に、前記周辺領域内に出現するキーワードから少なくとも1つの前記キーワードを選択する画面を生成するキーワード選択画面生成手段として機能させるためのキーワード抽出プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011532834A JP5238886B2 (ja) | 2009-09-24 | 2009-09-24 | キーワード抽出装置、およびプログラム |
PCT/JP2009/066561 WO2011036755A1 (ja) | 2009-09-24 | 2009-09-24 | キーワード抽出装置、およびプログラム |
US13/428,170 US8904285B2 (en) | 2009-09-24 | 2012-03-23 | Keyword extraction apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/066561 WO2011036755A1 (ja) | 2009-09-24 | 2009-09-24 | キーワード抽出装置、およびプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/428,170 Continuation US8904285B2 (en) | 2009-09-24 | 2012-03-23 | Keyword extraction apparatus and program |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011036755A1 true WO2011036755A1 (ja) | 2011-03-31 |
Family
ID=43795526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/066561 WO2011036755A1 (ja) | 2009-09-24 | 2009-09-24 | キーワード抽出装置、およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US8904285B2 (ja) |
JP (1) | JP5238886B2 (ja) |
WO (1) | WO2011036755A1 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5025808B1 (ja) * | 2011-03-31 | 2012-09-12 | 株式会社東芝 | 情報処理装置及び情報処理プログラム |
JP2012243021A (ja) * | 2011-05-18 | 2012-12-10 | Toshiba Corp | 情報処理装置およびプログラム |
US20120323898A1 (en) * | 2011-06-16 | 2012-12-20 | Microsoft Corporation | Surfacing applications based on browsing activity |
US9569536B2 (en) | 2013-12-17 | 2017-02-14 | Microsoft Technology Licensing, Llc | Identifying similar applications |
CN108090057A (zh) * | 2016-11-21 | 2018-05-29 | 阿里巴巴集团控股有限公司 | 信息展示方法和装置 |
JP2018120440A (ja) * | 2017-01-25 | 2018-08-02 | 大日本印刷株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP2018205672A (ja) * | 2017-06-09 | 2018-12-27 | 楽天株式会社 | 表示装置、表示方法、ならびに、プログラム |
JP2020021207A (ja) * | 2018-07-31 | 2020-02-06 | 楽天株式会社 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150095378A1 (en) * | 2012-04-16 | 2015-04-02 | Genesisone, Inc. | Method for automated documentation of structured query language including workflow and data dependencies |
US9128994B2 (en) | 2013-03-14 | 2015-09-08 | Microsoft Technology Licensing, Llc | Visually representing queries of multi-source data |
US9934207B1 (en) * | 2014-05-02 | 2018-04-03 | Tribune Publishing Company, Llc | Online information system with continuous scrolling and previous section removal |
US11335080B2 (en) * | 2015-09-21 | 2022-05-17 | International Business Machines Corporation | System for suggesting search terms |
CN107615270B (zh) | 2016-04-28 | 2020-04-14 | 华为技术有限公司 | 一种人机交互方法及其装置 |
US11526521B2 (en) * | 2016-07-15 | 2022-12-13 | Microsoft Technology Licensing, Llc | Prefetching using dynamic user model to reduce latency |
JP7298248B2 (ja) * | 2019-04-05 | 2023-06-27 | 富士フイルムビジネスイノベーション株式会社 | 文書処理装置及びプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005063283A (ja) * | 2003-08-19 | 2005-03-10 | Ricoh Co Ltd | 文書ブラウズ装置、文書ブラウズ方法、プログラムおよび記録媒体 |
JP2006215681A (ja) * | 2005-02-02 | 2006-08-17 | Matsushita Electric Ind Co Ltd | 文書内容把握支援システム |
JP2009037454A (ja) * | 2007-08-02 | 2009-02-19 | Konica Minolta Holdings Inc | 電子表示装置、及び表示方法 |
JP2009211385A (ja) * | 2008-03-04 | 2009-09-17 | Nec Corp | 関連情報推薦装置、関連情報推薦方法、関連情報推薦システムおよび関連情報推薦プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4810469B2 (ja) | 2007-03-02 | 2011-11-09 | 株式会社東芝 | 検索支援装置、プログラム及び検索支援システム |
-
2009
- 2009-09-24 WO PCT/JP2009/066561 patent/WO2011036755A1/ja active Application Filing
- 2009-09-24 JP JP2011532834A patent/JP5238886B2/ja not_active Expired - Fee Related
-
2012
- 2012-03-23 US US13/428,170 patent/US8904285B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005063283A (ja) * | 2003-08-19 | 2005-03-10 | Ricoh Co Ltd | 文書ブラウズ装置、文書ブラウズ方法、プログラムおよび記録媒体 |
JP2006215681A (ja) * | 2005-02-02 | 2006-08-17 | Matsushita Electric Ind Co Ltd | 文書内容把握支援システム |
JP2009037454A (ja) * | 2007-08-02 | 2009-02-19 | Konica Minolta Holdings Inc | 電子表示装置、及び表示方法 |
JP2009211385A (ja) * | 2008-03-04 | 2009-09-17 | Nec Corp | 関連情報推薦装置、関連情報推薦方法、関連情報推薦システムおよび関連情報推薦プログラム |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5025808B1 (ja) * | 2011-03-31 | 2012-09-12 | 株式会社東芝 | 情報処理装置及び情報処理プログラム |
JP2012243021A (ja) * | 2011-05-18 | 2012-12-10 | Toshiba Corp | 情報処理装置およびプログラム |
US20120323898A1 (en) * | 2011-06-16 | 2012-12-20 | Microsoft Corporation | Surfacing applications based on browsing activity |
EP2721519A4 (en) * | 2011-06-16 | 2015-02-25 | Microsoft Corp | DISPLAY OF APPLICATIONS BASED ON A SEARCH ACTIVITY |
US9519726B2 (en) * | 2011-06-16 | 2016-12-13 | Amit Kumar | Surfacing applications based on browsing activity |
US9569536B2 (en) | 2013-12-17 | 2017-02-14 | Microsoft Technology Licensing, Llc | Identifying similar applications |
CN108090057A (zh) * | 2016-11-21 | 2018-05-29 | 阿里巴巴集团控股有限公司 | 信息展示方法和装置 |
JP2019537785A (ja) * | 2016-11-21 | 2019-12-26 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | 端末スクリーン上で情報がスクロールされる間に表示される情報 |
JP2018120440A (ja) * | 2017-01-25 | 2018-08-02 | 大日本印刷株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP2018205672A (ja) * | 2017-06-09 | 2018-12-27 | 楽天株式会社 | 表示装置、表示方法、ならびに、プログラム |
JP2020021207A (ja) * | 2018-07-31 | 2020-02-06 | 楽天株式会社 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
Also Published As
Publication number | Publication date |
---|---|
US20120210213A1 (en) | 2012-08-16 |
JP5238886B2 (ja) | 2013-07-17 |
JPWO2011036755A1 (ja) | 2013-02-14 |
US8904285B2 (en) | 2014-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5238886B2 (ja) | キーワード抽出装置、およびプログラム | |
US10185782B2 (en) | Mode identification for selective document content presentation | |
US9436419B2 (en) | Selectively printing portions of a web page based on user selection | |
US10318095B2 (en) | Reader mode presentation of web content | |
US8751953B2 (en) | Progress indicators for loading content | |
US20160292264A1 (en) | Information processing device, information processing method, and information processing program | |
US9152730B2 (en) | Extracting principal content from web pages | |
US8949109B2 (en) | Device, method, and program to display, obtain, and control electronic data based on user input | |
US8122347B2 (en) | Document editing support device, program, and storage medium | |
JP2003132074A (ja) | 文書表示方法 | |
US20120023398A1 (en) | Image processing device, information processing method, and information processing program | |
US8782049B2 (en) | Keyword presenting device | |
Ahmadi et al. | User-centric adaptation of Web information for small screens | |
US8122351B2 (en) | Document edit device and storage medium | |
JP2004054588A (ja) | 文書検索装置、文書検索方法およびその方法をコンピュータに実行させるプログラム | |
JP6679640B2 (ja) | 情報表示プログラム、情報表示装置、情報表示方法および配信装置 | |
Xiang et al. | Effective page segmentation combining pattern analysis and visual separators for browsing on small screens | |
KR101069278B1 (ko) | 청구항 시각화 장치 및 방법 | |
KR20130021482A (ko) | Html 테이블의 셀 단위 편집 방법 | |
JP2005084879A (ja) | 情報処理装置および情報処理方法およびプログラムおよび記録媒体 | |
JP5007405B2 (ja) | 情報処理装置、およびプログラム | |
JP3967230B2 (ja) | 画像情報表示システム | |
KR101355480B1 (ko) | 돔 트리 기반 마우스를 이용한 웹문서 내 영역선택방법 | |
JP2017068757A (ja) | 文献表示方法及び文献表示装置 | |
JP2008191879A (ja) | 情報表示装置、情報表示装置の表示方法、情報表示プログラム、および情報表示プログラムを記録した記録媒体 |
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: 09849786 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011532834 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09849786 Country of ref document: EP Kind code of ref document: A1 |