WO2015093656A1 - 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체 - Google Patents

전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체 Download PDF

Info

Publication number
WO2015093656A1
WO2015093656A1 PCT/KR2013/011872 KR2013011872W WO2015093656A1 WO 2015093656 A1 WO2015093656 A1 WO 2015093656A1 KR 2013011872 W KR2013011872 W KR 2013011872W WO 2015093656 A1 WO2015093656 A1 WO 2015093656A1
Authority
WO
WIPO (PCT)
Prior art keywords
charset
character
score
character set
typo
Prior art date
Application number
PCT/KR2013/011872
Other languages
English (en)
French (fr)
Inventor
김민철
Original Assignee
주식회사 큐키
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 큐키 filed Critical 주식회사 큐키
Priority to PCT/KR2013/011872 priority Critical patent/WO2015093656A1/ko
Publication of WO2015093656A1 publication Critical patent/WO2015093656A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation

Definitions

  • the present invention relates to a computer-readable recording medium including an electronic device, a method for correcting a typo, and a program for performing the same.
  • a typical typo correction method is a delete function such as Backspace. Either type a key to erase all words after the misspelled word and retype them, or move the cursor to the misspelled word and correct the word with the mouse (on a PC) or a finger touch (on a mobile device).
  • the automatic correction function was introduced to improve the above typo correction method. This function, when the user enters the word A, if it is determined to be a typo, automatically corrects the word B. Word B, which is automatically corrected, is already entered in the library and is not entered by the user.
  • the words that are corrected and input in the automatic correction function are words that the system assumes that the user actually inputs, not words that the user inputs with the intention of correction. The research on this is ongoing.
  • An object of the present invention is to provide an electronic device that accurately selects a character string to be corrected by a user and corrects it according to the intention of the user.
  • Another problem to be solved by the present invention is to provide a typo correcting method for correcting a string to be corrected by a user from among already inputted strings and correcting it in accordance with the intention of the user.
  • Another problem to be solved by the present invention is a computer-readable recording including a program for performing a typo correcting method for accurately selecting a character string to be corrected by the user from among already inputted strings and correcting the character string in accordance with the intention of the user. To provide a medium.
  • an input unit for receiving a first charset from a user and a third charset determined as a replacement target among a second charset located before the first charset are provided.
  • the second character set may include at least one of data regarding a probability of inputting the second character as a neighboring character of the first character.
  • the control unit includes a calculation module for calculating an association between the first character set and the second character set based on a typo correcting operation, a determination module for determining a third character set based on the association calculation result, and a third character. It may include a substitution module for replacing the set with the first character set.
  • the typo correcting operation has a typo correcting operation score
  • the correlation calculation may be performed by comparing a total of a typo correcting operation score assigned to the second character set with a predetermined threshold value.
  • the sum of the typo correcting operation scores assigned to the second charset may be calculated by adding up the typo correcting operation scores according to the typo correcting operation required to replace the second charset with the first charset.
  • the score adjusting element may be used to add or subtract a sum of a typo correcting operation score given to the second character set.
  • the storage unit may further include a user's error correction operation history, and may adjust the error correction operation score based on the error correction operation history.
  • the score adjusting element is a (a) element relating to the distance between the first charset and the second character set, and the input speed of the character set ( b) the element, and (c) the element when the third character set of the second character set is not extracted and re-search is necessary, and (d) the element when the combination of the combined character set is broken, and the second character set.
  • the second character enters as a neighboring character of the first character in the At least one of the (e) elements of the data relating to the probability of being output.
  • Step (b) includes the step (b) -1 of determining a user's intention to modify according to a user's correction command input immediately after the first charset, and calculating a correlation between the second charset and the first charset. Step (b) -2 to determine the third character set through, and (b) -3 step of replacing the third character set with the first character set.
  • Step (b) -2 includes: (b) -2a determining a typo correcting operation required to replace the second charset with the first charset, and adding up a typo correcting operation score according to the determined typo correcting operation ( b) comparing the final score determined by steps (b) -2c and (b) -2c, and (b) -2c, with the sum of the scores to the score control element, and comparing the third character set with a predetermined threshold. Determining (b) -2d.
  • step (b) -2d if it is determined that the final score determined by step (b) -2c is higher than the threshold value and the third character set is not determined, the final score is adjusted using the (c) factor.
  • the method may further include comparing again with a predetermined threshold.
  • the total sum of the scores assigned to the second charset may be determined when the sum of the correct typo correcting operations scores is minimized.
  • the typo correcting operation may include: (a) replacing a character in a character set with a character of a neighboring keyboard, (b) replacing a character in a character set with a character of a non-neighboring keyboard; At least one of (c) an operation of exchanging the positions of the two characters, an operation of inserting a mandatory character into the character set, and an operation of deleting unnecessary characters from the character set.
  • the element (a) may add or subtract the sum of scores by adding a higher score to a typo correcting operation score of the second charset as the distance between the first charset and the second charset increases.
  • the component (b) may add or subtract the sum of the scores by modifying a typo correcting operation score of the operation (c) and the operation (d) to be lower than the initial setting score.
  • the element (c) adjusts the sum of the typo correcting operation scores of the second charset to be low.
  • the total score can be added or subtracted.
  • the (d) element may add or subtract the sum of the scores by a method in which the total of the typos correction operation scores is reduced by a predetermined score.
  • the computer-readable recording medium of the present invention for solving the above another problem includes a program for performing the above-described error correction method.
  • the present invention is characterized in that the string to be corrected by the user can be accurately selected through the correlation calculation method to which the score control element is applied and modified according to the intention of the user.
  • FIG. 1 is a block diagram illustrating an electronic device according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating the controller of FIG. 1.
  • FIG. 3 is a flowchart illustrating a method for correcting a typo in the electronic device of FIG. 1.
  • FIG. 4 is a flowchart for explaining step (b) of FIG. 3.
  • FIG. 5 is a flowchart for explaining step (b) -2 of FIG. 4.
  • 6 to 10 are schematic diagrams illustrating a method for correcting a typo in FIG. 3.
  • first, second, etc. are used to describe various elements, components and / or sections, these elements, components and / or sections are of course not limited by these terms. These terms are only used to distinguish one element, component or section from another element, component or section. Therefore, the first device, the first component, or the first section mentioned below may be a second device, a second component, or a second section within the technical spirit of the present invention.
  • the term 'part' or 'module' refers to software or a hardware component such as an FPGA or an ASIC, and the 'part' or 'module' performs certain roles. However, 'part' or 'module' is not meant to be limited to software or hardware.
  • the 'unit' or 'module' may be configured to be in an addressable storage medium or may be configured to play one or more processors.
  • a "part” or “module” may be used to refer to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
  • Functions provided within components and 'parts' or 'modules' may be combined into a smaller number of components and 'parts' or 'modules' or into additional components and 'parts' or 'modules'. Can be further separated.
  • the electronic device may include, for example, a portable terminal, but is not limited thereto.
  • the character set may include, for example, an English character set, but is not limited thereto, and may also include Korean, Japanese, and Chinese character sets.
  • FIG. 1 is a block diagram illustrating an electronic device according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating the controller of FIG. 1.
  • an electronic device 1 includes an input unit 100, a storage unit 200, a control unit 300, and a display unit 400.
  • the input unit 100 may receive a first character set from a user.
  • the input unit 100 may receive not only the first charset but also a second charset located before the first charset, and the charset may be, for example, a word, a string in which a plurality of words are combined, a word. It may include some spelling of, but is not limited thereto.
  • the input unit 100 may receive a correction command from the user.
  • the correction command may be, for example, input by a correction command button separately formed in the electronic device 1, an operation of gently shaking the electronic device 1, and an up, down, left position of the keyboard region of the electronic device 1.
  • the touch input may be input by a right touch movement or a specific gesture movement, but is not limited thereto.
  • the input unit 100 may also provide the controller 300 with the first character set and the correction command input from the user.
  • the input unit 100 provides not only the first charset but also the second charset to the controller 300, but in the present invention, the second charset is already provided to the controller 300, and the first charset and The modification command is described as an example of a newly provided state.
  • the storage 200 may include a typo correcting operation, a history of a typo correcting operation, and a score adjusting element, and may provide the typo correcting operation and the score adjusting element to the controller 300.
  • the typo correcting operation included in the storage unit 200 may be provided to the calculation module 320 of the control unit 300, for example, replacing a character in a character set with a character of a neighboring keyboard (a ) (B) the operation, replacing characters in the character set with characters from non-neighboring keyboards, (c) the operation of exchanging positions of two consecutive characters in the character set, and (c) inserting the constituent characters into the character set. At least one of the operation (d) and the operation (e) of deleting unnecessary characters from the character set.
  • the operation (a) may be described by taking an example in which the user intends to input 'everyone' but actually inputs 'wvwryone'. If the user detects an error of 'wvwryone' and enters 'everyone' as the first charset to correct it, and then gives a corrective command, the first charset 'everyone' is entered before the first charset. The association with two charsets is calculated. At this time, the first character set 'everyone' and the second character set 'wveryone' differ only in whether the first and third characters are e or w.
  • the second character set 'wvwryone' is determined as a third character set highly related to the first character set 'everyone', and the character set in the character set is replaced by the characters of the neighboring keyboard. Can be modified to 1 character set 'everyone'.
  • the operation may be described by taking an example in which the user intends to input 'everyone' but the input is actually 'everione'.
  • the user finds an error of 'everione' and enters 'everyone' as the first charset to correct the error, and then issues a correction command, the first charset 'everyone' is inputted before the first charset.
  • the association with two charsets is calculated.
  • the first character set 'everyone' and the second character set 'everione' differ only in whether the fifth character is i or y. Since i and y are input keys that are not adjacent to each other on the keyboard,
  • the first character set 'everyone' may be modified by the operation (b) of replacing characters in the set with characters of non-neighboring keyboards.
  • (a) if it is determined that the character strings differently inputted in both character sets are adjacent to each other as shown in the operation example, the character strings are highly related to each other. If the characters are not adjacent to each other (i and y are not adjacent to each other), 'everione' may not be determined as the third character set, and thus may not be modified to the first character set 'everyone'.
  • a plurality of typo correcting actions are defined, and a typo correcting operation score is assigned to each of these typo correcting actions, and then a second character set is assigned.
  • the total number of typos correction operation scores of the typos correction operation required to correct the first charset may be compared with a predetermined threshold value to determine whether the second charset is a character set having a high correlation with the first charset. Specifically, in the present invention, it may be determined that a character set having a lower total sum of a typo correcting operation score than a predetermined threshold value among the second character sets has a high correlation with the first character set.
  • the present invention is not limited to the method for determining the correlation between the typo correcting operation score and the threshold. That is, according to the present invention, a typo correcting operation score may be set as opposed to the above description, and the threshold value and the typo correcting operation score may be compared in an opposite manner.
  • both the operations (a) and (b) have respective typo correcting operation scores.
  • the neighboring keyboard is more likely to have a typo than in the case of the keyboard not neighboring as shown in (b). Therefore, in order to reflect such occurrences in the correlation judgment, it is desirable to correct a typo correcting operation score higher than the (a) typo correcting operation score when the character is corrected by characters of non-neighboring keyboards such as (b) operation. .
  • five points may be given as a typo correcting operation score of the operation (a) and ten points may be given as a typo correcting operation score of the operation (b).
  • the threshold value which compares such a typo correction operation score is set to 15 points.
  • each typo correcting operation score and threshold are not limited to the above-described scores, but may vary according to a situation or a user.
  • the operation in order to modify 'wvwryone' to 'everyone' as the first character set, the operation of modifying the first and third letters w to the letters e of the adjacent keyboard is performed. need. Since five points are set in the operation of modifying the first letter w to e, and five points are set in the operation of modifying the third letter w to e, 10 points, the sum of these points, may be the sum of the typo correction operation scores.
  • the 10 typo correcting gesture score is smaller than the 15 typo correcting threshold, the two charsets are determined to be highly related charsets, and 'wvwryone' is the replacement target of the first charset 'everyone'. It may be determined as the third character set.
  • a single typo correcting operation of modifying the fourth character i to y is required.
  • i and y are characters of keyboards that do not neighbor each other.
  • a typo correcting operation score of 10 points may be given to the typo correcting operation.
  • the 10 typo correcting action score is smaller than the 15 typo correcting threshold, so the two sets of characters are considered to be highly related strings, and 'everione' is the third character to be substituted for the first set of letters 'everyone'. Three can be determined.
  • the operation may be described as an example in which the user intends to input a 'believe', but actually inputs the 'beleive'.
  • the user finds an error of 'beleive' and enters 'believe' as the first charset to correct the error, and then issues a correction command, the first charset 'believe' is inputted before the first charset.
  • the association with two charsets is calculated.
  • the difference between the first charset 'believe' and the second charset 'beleive' may be corrected by exchanging positions of the fourth character e and the fifth character i with each other. .
  • an operation of exchanging positions of two characters consecutively described in the character set with each other may be defined as an operation (c), and an operation error correction score of 8 points may be given to the operation (c).
  • 'beleive' can be modified to 'believe' as the first character set by (c) an operation of exchanging positions of the fourth character e and the fifth character i to each other. Since the error correction operation score of 8 points is smaller than the threshold value of 15, the two character sets are determined to be highly related charsets, and 'beleive' is the third character to be substituted for the first character set 'believe'. Three can be determined.
  • the operation may be described as an example in which the user intends to input 'good', but the input is actually 'god', and (e) the operation is intended to input 'god'.
  • the case where the input is actually 'good' may be described.
  • these typos can easily occur during the fast typing of characters.
  • an incorrectly described character set may be modified through an operation of inserting a missing 'o' or an operation of deleting an unnecessary 'o'.
  • operations (a) to (c) basically target a character set having the same length as the first character set, when an unnecessary character is inserted into the character set or a required character is missing from the character set, a typo occurs. It is impossible to determine these charsets as strings associated with the first charset.
  • the operation of inserting an essential character into the character set is defined as (d) operation
  • the operation of deleting unnecessary characters from the character set is defined as (e) operation
  • (d) operation the operation of deleting unnecessary characters from the character set
  • (e) operation the operation of deleting unnecessary characters from the character set
  • (e) operation the operation of deleting unnecessary characters from the character set
  • (e) operation the operation of deleting unnecessary characters from the character set
  • (e) operation A 10 typo correcting operation score may be assigned to each of the operations.
  • 'god' can be modified to 'good' by (d) adding an o between the first character g and the last character d, and the 'good' is the first character g and the last It can be modified to 'god' by (e) deleting one of the two o's entered between the letters d. Therefore, each corrective action may be given a typo corrective action score of 10 points. In addition, since a typo correcting operation score of 10 points is smaller than a threshold value of 15 points, 'god' and 'good' may be determined as a string that is highly related to the first character set and may be determined as a third character set.
  • the typo correcting operation may have a respective typo correcting operation score, and each typo correcting operation score may be directly set or corrected by the user.
  • the typo correcting operation score may be automatically adjusted according to the frequency of occurrence of the typo correcting operation. That is, the typos correction operation score may have a lower score as the occurrence frequency of the typos correction operation is higher, and a higher score as the occurrence frequency is lower, but is not limited thereto.
  • an additional score may be given to the typo correcting operation score of the typo correcting operation. Can be.
  • an additional score may be added to the typo correcting operation score of the typo correcting operation. have.
  • the user intends to input 'remember', but it may be described as an example in which 'renember' is actually input.
  • it is preferable to correct the typo by inputting only the substring including the character in which the typo occurred as the first charset, rather than newly inputting the entire character string of the first charset. Therefore, rather than inputting the entire string of 'remember', it may be preferable to input only the substring including the n (third character) that is an incorrectly input character into the first charset (for example, rem, eme, mem, etc.). ).
  • the user can enter the first charset as the first character, or the last character as the last character. , Can be entered as the first character set (for example, enter 'mem' or 'rem'). Therefore, when the typo correcting operation is performed on the first character or the last character of the second character set, it is necessary to give a weight to the typo correcting operation.
  • the characters before and after the correction of the second charset have a low probability of typos.
  • It can be set to add an additional five points to the typo correcting operation score.
  • the score control element may be provided to the calculation module 320 of the control unit 300, and may include, for example, an element (a) relating to a distance between the first charset and the second charset, and an input speed of the charset. (b) the element, (c) the element when the candidate of the third character set of the second character set is not extracted, and re-search is necessary, and (d) the element when the combination of the combined character set is broken, and It may include at least one of the (e) element on the data relating to the probability that the second character is input to the adjacent character of the first character in the two character set.
  • the sum of the scores can be added or subtracted by adding a score (eg, -1 is a score higher than -3). That is, in general, since a typo is mainly found at a location not far after the typo is input, it may be said that a character set close to the first charset of the second charset is likely to be a typo.
  • a lower score for example, -10 points
  • a high score for example, ⁇ 1 point
  • the element adds or subtracts the sum of the scores by modifying the scores of the (c) motion and the (d) typographical modifications of the motions lower than the initial score, for example, if the input speed is faster than the average speed of the user. can do.
  • the probability of a typographical error such as a reordering input or an abbreviated input increases, so that the input speed is the average speed of the user (for example, a user or the like of the electronic device 1). If it is determined that the average speed of the user of the device is faster than the average speed of the (c) operation and (d), the corrected operation score may be corrected, for example, by -3 points. If it is determined that the input speed is slower than the average speed of the user, the error correction operation scores of the operations (c) and (d) may not be lowered.
  • the element may be modified to lower the total sum of the typo correcting operation scores of the second charset, for example, when the sum of the typo correcting operation scores is higher than a predetermined threshold and the candidate of the third charset is not extracted. Can be added or subtracted from the total score.
  • the sum of the typo correcting operation scores of the second charset may be used. For example, by lowering the score by -5, the sum of scores can be added or subtracted and compared with the threshold once again.
  • the element may add or subtract the sum of the scores by lowering the total number of the typos correction operation scores by a predetermined score.
  • the predetermined score can be freely set by the user.
  • a combination type set such as Hangeul may be broken when the neutral or the finality is used without the initial consonant, or the initial consonant is used without the initial consonant (eg, ' ⁇ ⁇ ').
  • the total set of typo correcting behaviors of the broken charset among the set charset sets for example, -10 points. By application, it can be added or subtracted.
  • (e) element for example, when the probability that the second character is input as a neighboring character of the first character in the second character set, lowering the total sum of the typos correction operation score of the second character set by a predetermined score
  • the sum of the scores can be added or subtracted.
  • the element (e) if the probability that the second character is input to the neighboring characters of the first character in the second character set, the method of calculating by increasing the sum of the typo correction operation score of the second character set by a certain score You can add or subtract the total score.
  • the second character set is 'hwllo' and the probability that 'w' is input after 'h' is low, it is highly likely to be a typo.
  • the total of scores can be added or subtracted by applying -5 points.
  • the typo correcting operation history may include a history of the typo correcting operation determined when the correlation is calculated by the controller 300.
  • the storage unit 200 may adjust the error correction operation score according to the occurrence frequency of the error correction operation based on the history of the error correction operation. That is, as described above, the typo correcting operation score may have a lower score as the frequency of the typo correcting operation is higher, and a higher score as the frequency of the typo correcting operation is lower, but is not limited thereto.
  • the controller 300 may replace the third charset determined as a replacement target among the second charset positioned before the first charset with the first charset.
  • the controller 300 may include a calculation module 320, a determination module 340, and a substitution module 360.
  • the calculation module 320 may receive the first charset from the input unit 100, and calculate an association with the second charset.
  • the correction module 320 when the correction module 320 receives a user's correction command from the input unit 100, the calculation module 320 is based on a typo correcting operation provided from the storage unit 200 associating the first and second charsets. Can be calculated Here, the calculation module 320 adds a typo correcting operation score according to the typo correcting operation required to replace the first charset with the second charset for the association calculation, and stores the sum of the corrected typo correcting operation score in the storage unit ( The final score may be calculated by adding or subtracting the score control element provided from 200).
  • calculation module 320 may provide the result of the association calculation, that is, the final score of the second character set, to the determination module 340.
  • the determination module 340 may determine the third character set based on the result of the association calculation.
  • the determination module 340 compares the result of the association calculation provided from the calculation module 320, that is, the final score of the second charset with a predetermined threshold value, so that the final score of the second charset is predetermined.
  • the smaller character set may be determined as the third character set to be replaced.
  • the determination module 340 may be set to determine a character set whose final score is greater than a predetermined threshold value among the second character sets as the third character set, but is not limited thereto.
  • the determination module 340 may provide the determined third character set to the substitution module 360.
  • the substitution module 360 may be provided with a third character set to replace the first character set.
  • the substitution module 360 receives the third charset from the determination module 340, replaces the third charset with the first charset, and displays the third charset with the first charset. May be provided to the display unit 400.
  • the display unit 400 may display the third charset as the first charset according to the substitution command provided from the controller 300, that is, the substitution module 360 of the controller 300.
  • the electronic device 1 may accurately select a string to be corrected by a user through an association calculation method using a score control element, and modify the string to be modified according to the user's intention. .
  • FIG. 3 is a flowchart illustrating a method for correcting a typo in the electronic device of FIG. 1.
  • FIG. 4 is a flowchart for explaining step (b) of FIG. 3.
  • FIG. 5 is a flowchart for explaining step (b) -2 of FIG. 4.
  • 6 to 10 are schematic diagrams illustrating a method for correcting a typo in FIG. 3.
  • a first character set may be input (S500).
  • the first character set may be received from the user at the current cursor position.
  • the third charset may be replaced with the first charset (S510).
  • operation S510 begins with operation S515 of determining a user's intention of modification by a user's modification command.
  • the correction command is further input, so that the calculation module 320 may determine that the first character set is the character set input with the intention of modification.
  • the third character set may be determined through the correlation calculation (S525).
  • operation S525 starts with determining operation S530 in which a typo correcting operation required to replace the second charset with the first charset is performed.
  • the first charset is 'everyone' and the second charset includes the character set 'wvwryone'
  • 'everyone' and 'wvwryone' are the first and third characters e or w.
  • e and w are input keys arranged adjacent to each other on the keyboard, there is a high possibility that something that should have been entered by e is incorrectly entered as w, so that the second character set 'wvwryone' is used as the first character set.
  • a typo correcting operation required to replace 'everyone' is equivalent to (a) replacing a character in a character set with a character of a neighboring keyboard.
  • the typo correcting operation score is added (S535).
  • the typo correction operation scores corresponding thereto may be added. That is, (a) assuming that a typo correcting operation score is '5', in order to modify 'wvwryone' to 'everyone', the first character is changed to a character of a neighboring keyboard, and the third character is Since it is necessary to correct the letters of the keyboard, it can be seen that a total of 10 points are given. That is, it can be seen that when the typo correcting operation scores are added up, it becomes 10 points.
  • the total sum of the scores given to the second charset may be determined when the sum of the correcting typo correcting operations scores is minimized.
  • the second character set 'beleive' is the position of the fourth character e and the fifth character i of the second character set.
  • the fourth character e of 'beleive' is modified to i
  • the fifth character i is also modified to e to become the first charset 'believe'.
  • Selectable typo correcting operations may include two operations (c) and (b). In this case, the error correction operation score by operation (b) may be 20 points since the operation (b) is repeated twice, and the operation correction error score by operation (c) may be 8 points.
  • the total number of corrective typo scores by operation is 20 points
  • the total number of corrective typo scores by operation is 8 points.
  • the sum of the typo correcting operation scores of the operation may be determined as the sum of the typo correcting operation scores required to correct the second character set.
  • the controller 300 recognizes 'mem' as the first character set, and the first character set 'mem' and the second character input before the first character set. Calculate the association between the three.
  • the correlation calculation for the first input character set 'mem' and the second character set of the same length character set [ren, ene, nem, emb, mbe, ber] is started.
  • the typo correcting operation score for each character set is shown in Table 1 below. That is, as shown in Table 1 below, it is understood that the sum of the typo correcting operation scores among the character sets having the same length as the first character set is smaller than the threshold value (for example, 15 points) is 'nem'. Can be.
  • the above-described operation of inserting a mandatory character into the character set or an unnecessary character in the character set (E) can be considered.
  • a threshold value for example, 15 points.
  • only 'nem' may be determined as a character set having a high association with 'mem', that is, a third character set, through a comparison with a threshold which will be described later.
  • Table 1 String to compare Modification goal string Typo Correction Behavior Score ren mem (1) Modify the first character to the character of a non-neighboring keyboard: 10 points (2) Modify the third character to the character of a neighboring keyboard: 5 points Point correction action score: 20 points ene mem (1) Modify the first character to the character of the non-neighbors keyboard: 10 points (2) Modify the second character to the character of the non-neighbors keyboard: 10 points Point (4) Correct the start character to the character of a non-neighboring keyboard: 5 points for addition points (5) Modify the end character to the character of the non-neighbors keyboard: Amount of 5 points Typo Correction Action Points: 40 points nem mem (1) Correct the first letter to the letter of a neighboring keyboard: 5 points emb mem (1) Modify the first character to the character of the non-neighbors keyboard: 10 points (2) Modify the second character to the character of the non-neighbors keyboard: 10 points Point (4) Correct the start character to the character of a non-neig
  • the score is adjusted as a control element (S540).
  • the sum of the typo correcting operation scores may be added or subtracted by the score adjusting element provided from the storage unit 200.
  • Action 1 replacement of 'n' to ' ⁇ ', 'TT' to ' ⁇ ' and ' ⁇ ' to ' ⁇ ' 20 points.
  • the threshold value is 15 points or more, ' ⁇ ' is not determined as the third character set to be replaced.
  • the total of the score of the ' ⁇ ' is 10 points by subtracting the total of the first previous word ' ⁇ ' of the first character set 'silver' by 10 points, and the threshold 15 The score can be lower than the point.
  • the third character set is determined (S545).
  • the determination module 340 may determine the third character set based on the association calculation result provided from the calculation module 320.
  • ' ⁇ ' among 'the way home' may be determined as the third character set.
  • the character set having a lower typo correction operation score of the two charsets may be determined as the third character set.
  • the third charset is replaced with the first charset (S560).
  • the substitution module 360 may replace the third charset provided from the determination module 340 with the first charset.
  • the display unit 400 may provide a substitution command for replacing and displaying the third charset with the first charset.
  • the display unit 400 may receive a substitution command from the substitution module 360 to display the third character set as the first character set.
  • 6 to 10 are schematic diagrams illustrating a method for correcting a typo in FIG. 3.
  • FIG. 6 a method of correcting a typo when an element (a) is applied as a score control element is illustrated.
  • FIG. 7 a method of correcting a typo when an element (b) is used as a score control element is illustrated.
  • the input speed is faster than the average speed of the user.
  • a user wants to input ‘ ⁇ ’, but actually inputs ‘ ⁇ ⁇ ’, the user may enter ‘ ⁇ ’ after ‘ ⁇ ⁇ ’ to correct this. Thereafter, when a correction command is input, an association calculation between the first character set ' ⁇ ' and the second character set ' ⁇ ⁇ ' may be performed.
  • the user wants to modify ' ⁇ ' of the second charset to 'in' the first charset, and when calculating the total of the typo correcting operation scores of ' ⁇ ', adding ' ⁇ ' (d ) 15 points by operation 1 and by replacing (a) operation 1 (which requires adding ' ⁇ ' and modifying ' ⁇ ' to 'b') Able to know.
  • the third character set may not be determined.
  • the error correction operation score due to the operation becomes -3, so that the total score becomes 12 and lower than the threshold 15, so that ' ⁇ ' is the third. It is determined by the character set, and may be replaced with 'in' the first character set.
  • FIG. 8 a method of correcting a typo when an element (c) is applied as a score control element is illustrated.
  • the total number of typo correcting operation scores of ' ⁇ ' is 15 points.
  • the third character set may not be determined.
  • the total number of correcting typos of 'O' is -5, so the total score is 10 and the threshold value is lower than 15, so ' ⁇ ' is the third. It is determined by the character set, and may be replaced with 'in' the first character set.
  • FIG. 9 a method of correcting a typo when an element (d) is used as a score control element is illustrated.
  • the error correction operation score by the operation (d) becomes -10, so that the total score is 5 and lower than the threshold 15, so 3 may be determined by the character set, and may be replaced with 'hello' which is the first character set.
  • FIG. 10 a method of correcting a typo when an element (e) is applied as a score control element is illustrated.
  • the probability that the letter 't' is entered after the letter 'h' is low and the probability that the letter 'o' is entered after the 'l' is high.
  • the total number of typo correcting operation scores of 'htllo' in the second charset is 10 points ((b) operation 1 of replacing 't' with 'e', which is a non-neighbor character), and correcting a typo of 'helo'.
  • the total of the scores may be 10 points (the 'd' operation number 1 adding 'l').
  • the error correction method according to the embodiments of the present invention described above may also be embodied as computer readable codes or programs on a computer readable recording medium.
  • the computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. That is, the computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the recording medium may be those specially designed and constructed for the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, which are also implemented in the form of carrier waves (for example, transmission over the Internet). It also includes.
  • the computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체가 제공된다. 상기 전자 장치는, 제1 글자셋을 사용자로부터 입력받는 입력부, 제1 글자셋 이전에 위치하는 제2 글자셋 중 치환 대상으로 결정된 제3 글자셋을 제1 글자셋으로 치환하는 제어부, 치환의 기초가 되는 오타 수정 동작과 점수 조절 요소를 포함하는 저장부 및 제3 글자셋을 제1 글자셋으로 디스플레이하는 표시부를 포함하고, 점수 조절 요소는, 제1 글자셋과 제2 글자셋 간의 거리와, 글자셋의 입력 속도와, 제2 글자셋 중 제3 글자셋의 후보가 추출되지 않아 재검색이 필요한 경우와, 조합형 글자셋의 조합이 깨진 경우와, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률에 관한 데이터 중 적어도 하나를 포함할 수 있다.

Description

전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체
본 발명은 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체에 관한 것이다.
PC 상에서 문자(영문, 한글, 숫자, 특수 문자 등 입력 가능한 모든 형태 포괄하는 의미임)를 입력할 때 또는 모바일 기기에서 문자를 입력할 때, 전형적인 오타 수정 방식은 백스페이스(Backspace) 등의 삭제 기능키를 입력하여 오타가 난 단어 이후의 단어를 모두 지우고 다시 입력하거나, 마우스(PC의 경우) 또는 손가락 터치로(모바일 기기의 경우) 커서를 오타가 난 단어로 옮기고 그 단어를 수정하는 것이다.
위와 같은 오타 수정 방식을 개선하기 위해 등장한 것이 자동 수정 기능이다. 이 기능은 사용자가 A란 단어를 입력할 경우, 이를 오타로 판단하면 자동으로 B라는 단어로 고쳐주는 것이었다. 자동으로 수정 입력되는 B단어는 라이브러리에 이미 입력되어 있는 것으로서 사용자가 직접 입력하지 않은 것이다.
자동 수정 기능에서 수정 입력되는 단어는, 사용자가 수정 의도를 가지고 입력한 단어가 아닌 시스템이 사용자가 실제로 입력하였을 것으로 추정하는 단어에 해당하므로, 이러한 추정의 정확성을 위한 연구 및 보다 개선된 오타 수정 방법에 대한 연구가 지속적으로 이루어지고 있다.
본 발명이 해결하려는 과제는, 이미 입력되어 있는 문자열 중에서 사용자가 수정하고자 하는 문자열을 정확히 선정하여 사용자의 의도에 부합되게 수정하는 전자 장치를 제공하는 것이다.
본 발명이 해결하려는 다른 과제는, 이미 입력되어 있는 문자열 중에서 사용자가 수정하고자 하는 문자열을 정확히 선정하여 사용자의 의도에 부합되게 수정하는 오타 수정 방법을 제공하는 것이다.
본 발명이 해결하려는 또 다른 과제는, 이미 입력되어 있는 문자열 중에서 사용자가 수정하고자 하는 문자열을 정확히 선정하여 사용자의 의도에 부합되게 수정하는 오타 수정 방법을 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체를 제공하는 것이다.
본 발명이 해결하려는 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 본 발명의 전자 장치의 일 실시예는, 제1 글자셋을 사용자로부터 입력받는 입력부, 제1 글자셋 이전에 위치하는 제2 글자셋 중 치환 대상으로 결정된 제3 글자셋을 제1 글자셋으로 치환하는 제어부, 치환의 기초가 되는 오타 수정 동작과 점수 조절 요소를 포함하는 저장부 및 제3 글자셋을 제1 글자셋으로 디스플레이하는 표시부를 포함하고, 점수 조절 요소는, 제1 글자셋과 제2 글자셋 간의 거리와, 글자셋의 입력 속도와, 제2 글자셋 중 제3 글자셋의 후보가 추출되지 않아 재검색이 필요한 경우와, 조합형 글자셋의 조합이 깨진 경우와, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률에 관한 데이터 중 적어도 하나를 포함할 수 있다.
상기 제어부는, 제1 글자셋과 제2 글자셋 간의 연관성을, 오타 수정 동작을 기초로 계산하는 계산 모듈과, 연관성 계산 결과를 기초로, 제3 글자셋을 결정하는 결정 모듈과, 제3 글자셋을 제1 글자셋으로 치환하는 치환 모듈을 포함할 수 있다.
상기 오타 수정 동작은 오타 수정 동작 점수를 가지고, 연관성 계산은, 제2 글자셋에 부여된 오타 수정 동작 점수의 총합과 미리 정해진 임계값의 비교를 통해 수행될 수 있다.
상기 제2 글자셋에 부여된 오타 수정 동작 점수의 총합은, 제2 글자셋을 제1 글자셋으로 치환하는데 필요한 오타 수정 동작에 따른 오타 수정 동작 점수를 합산하는 방식으로 계산될 수 있다.
상기 점수 조절 요소는, 제2 글자셋에 부여된 오타 수정 동작 점수의 총합을 가감하는데 이용될 수 있다.
상기 저장부는, 사용자의 오타 수정 동작 히스토리를 더 포함하고, 오타 수정 동작 히스토리를 기초로 오타 수정 동작 점수를 조절할 수 있다.
상기 다른 과제를 해결하기 위한 본 발명의 오타 수정 방법의 일 실시예는, 현재의 커서 위치에서 제1 글자셋을 사용자로부터 입력받는 (a) 단계 및 커서 이전에 위치하는 제2 글자셋 중 치환 대상으로 결정된 제3 글자셋을 제1 글자셋으로 치환하는 (b) 단계를 포함하고, 치환은, 제2 글자셋을 제1 글자셋으로 치환하는데 필요한 오타 수정 동작에 따른 오타 수정 동작 점수의 총합을 기초로 수행되고, 점수의 총합은, 점수 조절 요소에 의해 가감되고, 점수 조절 요소는, 제1 글자셋과 제2 글자셋 간의 거리에 관한 (a) 요소와, 글자셋의 입력 속도에 관한 (b) 요소와, 제2 글자셋 중 제3 글자셋이 추출되지 않아 재검색이 필요한 경우에 관한 (c) 요소와, 조합형 글자셋의 조합이 깨진 경우에 관한 (d) 요소와, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률에 관한 데이터에 관한 (e) 요소 중 적어도 하나를 포함한다.
상기 (b) 단계는, 제1 글자셋 바로 다음에 입력된 사용자의 수정 명령에 의하여 사용자의 수정 의도를 판단하는 (b)-1 단계와, 제2 글자셋과 제1 글자셋 간의 연관성 계산을 통해 제3 글자셋을 결정하는 (b)-2 단계와, 제3 글자셋을 제1 글자셋으로 치환하는 (b)-3 단계를 포함할 수 있다.
상기 (b)-2 단계는, 제2 글자셋을 제1 글자셋으로 치환하는데 필요한 오타 수정 동작을 결정하는 (b)-2a 단계와, 결정된 오타 수정 동작에 따른 오타 수정 동작 점수를 합산하는 (b)-2b 단계와, 점수의 총합을 점수 조절 요소로 가감하는 (b)-2c 단계와, (b)-2c 단계에 의해 결정된 최종 점수를 미리 정해진 임계값과 비교하여, 제3 글자셋을 결정하는 (b)-2d 단계를 포함할 수 있다.
상기 (b)-2d 단계에서, (b)-2c 단계에 의해 결정된 최종 점수가 임계값 보다 높다고 판단되어 제3 글자셋이 결정되지 않는 경우, (c) 요소를 이용하여, 최종 점수를 조절 후, 미리 정해진 임계값과 다시 비교하는 단계를 더 포함할 수 있다.
상기 제2 글자셋의 선택 가능한 오타 수정 동작이 복수개인 경우, 제2 글자셋에 부여된 점수의 총합은 선택 가능한 오타 수정 동작 중 오타 수정 동작 점수의 총합이 최소로 되는 경우로 결정될 수 있다.
상기 오타 수정 동작은, 글자셋 내의 문자를 이웃하는 자판의 문자로 교체하는 (a) 동작, 글자셋 내의 문자를 이웃하지 않는 자판의 문자로 교체하는 (b) 동작, 글자셋 내에 연속적으로 기재된 2개의 문자의 위치를 서로 교환하는 (c) 동작, 글자셋에 필수구성 문자를 삽입하는 (d) 동작과, 글자셋에서 불필요한 문자를 삭제하는 (e) 동작 중 적어도 하나를 포함할 수 있다.
상기 (a) 요소는, 제1 글자셋과 제2 글자셋 간의 거리가 멀수록 제2 글자셋의 오타 수정 동작 점수에 높은 점수를 더하는 방식으로 점수의 총합을 가감할 수 있다.
상기 (b) 요소는, 입력 속도가 사용자의 평균 속도보다 빠른 경우, (c) 동작과 (d) 동작의 오타 수정 동작 점수를 초기 설정 점수보다 낮게 수정하는 방식으로 점수의 총합을 가감할 수 있다.
상기 (c) 요소는, 오타 수정 동작 점수의 총합이, 미리 정해진 임계값보다 높아서 제3 글자셋의 후보가 추출되지 않는 경우, 제2 글자셋의 오타 수정 동작 점수의 총합을 낮게 수정하는 방식으로 점수의 총합을 가감할 수 있다.
상기 (d) 요소는, 제2 글자셋 중 조합이 깨진 조합형 글자셋의 경우, 오타 수정 동작 점수의 총합을 일정 점수만큼 낮추어 계산하는 방식에 의해 점수의 총합을 가감할 수 있다.
상기 (e) 요소는, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률이 낮은 경우, 제2 글자셋의 오타 수정 동작 점수의 총합을 일정 점수만큼 낮춰서 계산하는 방식으로 점수의 총합을 가감할 수 있다.
상기 (e) 요소는, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력된 확률이 높은 경우, 제2 글자셋의 오타 수정 동작 점수의 총합을 일정 점수만큼 높여서 계산하는 방식에 의해 점수의 총합을 가감할 수 있다.
상기 또 다른 과제를 해결하기 위한 본 발명의 컴퓨터로 판독 가능한 기록매체는, 전술한 오타 수정 방법을 수행하기 위한 프로그램을 포함한다.
본 발명은, 이미 입력되어 있는 문자열 중에서 사용자가 수정하고자 하는 문자열을 점수 조절 요소를 적용한 연관성 계산 방법을 통해 정확하게 선정하여 사용자의 의도에 부합되게 수정할 수 있다는 특징이 있다.
도 1은 본 발명의 일 실시예에 따른 전자 장치를 설명하는 블록도이다.
도 2는 도 1의 제어부를 설명하는 블록도이다.
도 3은 도 1의 전자 장치의 오타 수정 방법을 설명하기 위한 순서도이다.
도 4는 도 3의 (b) 단계를 설명하기 위한 순서도이다.
도 5는 도 4의 (b)-2 단계를 설명하기 위한 순서도이다.
도 6 내지 도 10은 도 3의 오타 수정 방법을 설명하는 개략도들이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
비록 제1, 제2 등이 다양한 소자, 구성요소 및/또는 섹션들을 서술하기 위해서 사용되나, 이들 소자, 구성요소 및/또는 섹션들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자, 구성요소 또는 섹션들을 다른 소자, 구성요소 또는 섹션들과 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자, 제1 구성요소 또는 제1 섹션은 본 발명의 기술적 사상 내에서 제2 소자, 제2 구성요소 또는 제2 섹션일 수도 있음은 물론이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 실시예에서 사용되는 사용되는 '부' 또는 '모듈'이라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부' 또는 '모듈'은 어떤 역할들을 수행한다. 그렇지만 '부' 또는 '모듈'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부' 또는 '모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부' 또는 '모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함할 수 있다. 구성요소들과 '부' 또는 '모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부' 또는 '모듈'들로 결합되거나 추가적인 구성요소들과 '부' 또는 '모듈'들로 더 분리될 수 있다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하에서, 도 1 내지 도 3을 참조하여, 본 발명의 일 실시예에 따른 전자 장치에 대해 설명한다. 본 발명에서 전자 장치는 예를 들어, 휴대용 단말기를 포함할 수 있으나, 이에 한정되는 것은 아니다. 또한 본 발명에서, 글자셋은 예를 들어, 영문 글자셋을 포함할 수 있으나, 이에 한정되는 것은 아니며, 한글, 일본어, 중국어 글자셋 등도 포함될 수 있다.
도 1은 본 발명의 일 실시예에 따른 전자 장치를 설명하는 블록도이다. 도 2는 도 1의 제어부를 설명하는 블록도이다.
도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 전자 장치(1)는 입력부(100), 저장부(200), 제어부(300) 및 표시부(400)를 포함한다.
입력부(100)는 사용자로부터 제1 글자셋을 입력받을 수 있다.
구체적으로, 입력부(100)는 제1 글자셋 뿐만 아니라 제1 글자셋 이전에 위치하는 제2 글자셋도 입력받을 수 있고, 글자셋은 예를 들어, 단어, 복수의 단어가 결합된 문자열, 단어의 일부 철자를 포함할 수 있으나, 이에 한정되는 것은 아니다. 뿐만 아니라 입력부(100)는 사용자로부터 수정 명령을 입력받을 수 있다. 여기에서, 수정 명령은, 예를 들어, 전자 장치(1)에 별도로 형성된 수정 명령 버튼에 의한 입력, 전자 장치(1)를 살짝 흔드는 동작, 전자 장치(1)의 키보드 영역을 상, 하, 좌, 우로 이동시키는 터치 동작, 특정 제스쳐 동작 등에 의해 입력될 수도 있으나, 이에 한정되는 것은 아니다.
입력부(100)는 또한 사용자로부터 입력된 제1 글자셋과 수정 명령을 제어부(300)로 제공할 수 있다.
구체적으로, 입력부(100)는 제1 글자셋 뿐만 아니라 제2 글자셋도 제어부(300)로 제공하지만, 본 발명에서는 제2 글자셋은 이미 제어부(300)로 제공된 상태이고, 제1 글자셋 및 수정 명령은 새로 제공되는 상태임을 예로 들어 설명하기로 한다.
저장부(200)는 오타 수정 동작, 오타 수정 동작 히스토리 및 점수 조절 요소를 포함하고, 오타 수정 동작 및 점수 조절 요소를 제어부(300)로 제공할 수 있다.
구체적으로, 저장부(200)에 포함되는 오타 수정 동작은 제어부(300)의 계산 모듈(320)으로 제공될 수 있고, 예를 들어, 글자셋 내의 문자를 이웃하는 자판의 문자로 교체하는 (a) 동작, 글자셋 내의 문자를 이웃하지 않는 자판의 문자로 교체하는 (b) 동작, 글자셋 내에 연속적으로 기재된 2개의 문자의 위치를 서로 교환하는 (c) 동작, 글자셋에 필수구성 문자를 삽입하는 (d) 동작과, 글자셋에서 불필요한 문자를 삭제하는 (e) 동작 중 적어도 하나를 포함할 수 있다.
(a) 동작은, 사용자가 ‘everyone’의 입력을 의도하였으나, 실제로 입력된 것이 ‘wvwryone’인 경우를 예로 들어 설명할 수 있다. 사용자가 ‘wvwryone’의 오류를 발견하고 이를 수정하기 위해 제1 글자셋으로 ‘everyone’을 입력한 다음 수정 명령을 내리게 되면, 제1 글자셋인 ‘everyone’은 제1 글자셋 이전에 입력된 제2 글자셋들과 연관성이 계산된다. 이 때 제1 글자셋인 ‘everyone’과 제2 글자셋인 ‘wveryone’은 첫번째와 세번째 문자가 e인지 w인지에서만 차이가 있는바, e와 w는 자판에서 서로 이웃하여 배치된 입력키이므로 e로 입력되었어야 할 것이 w로 잘못 입력되었을 가능성이 높다. 따라서 제2 글자셋인 ‘wvwryone’은 제1 글자셋인 ‘everyone’과 연관성이 높은 제3 글자셋으로 결정되고, 글자셋 내의 문자를 이웃하는 자판의 문자로 교체하는 (a) 동작에 의해 제1 글자셋인 ‘everyone’으로 수정될 수 있다.
(b) 동작은, 사용자가 ‘everyone’의 입력을 의도하였으나, 실제로 입력된 것이 ‘everione’인 경우를 예로 들어 설명할 수 있다. 사용자가 ‘everione’의 오류를 발견하고 이를 수정하기 위해 제1 글자셋으로 ‘everyone’을 입력한 다음 수정 명령을 내리게 되면, 제1 글자셋인 ‘everyone’은 제1 글자셋 이전에 입력된 제2 글자셋들과 연관성이 계산된다. 이 때 제1 글자셋인 ‘everyone’과 제2 글자셋인 ‘everione’은 다섯번째 문자가 i인지 y인지에서만 차이가 있는바, i와 y는 자판에서 서로 이웃하지 않는 입력키이므로, ‘글자셋 내의 문자를 이웃하지 않는 자판의 문자로 교체하는 (b) 동작에 의해 제1 글자셋인 ‘everyone’으로 수정될 수 있다.
여기에서, (a) 동작 예시와 같이 양 글자셋에 상이하게 입력된 문자가 서로 이웃한 자판인 경우에만 연관성 높은 문자열로 판단된다면, (b) 동작 예시와 같이, 양 글자셋에 상이하게 입력된 문자가 서로 이웃하지 않은 자판인 경우(i와 y는 서로 이웃하지 않음)에는 ‘everione’이 제3 글자셋으로 결정되지 못하여, 제1 글자셋인 ‘everyone’으로 수정되지 못할 수도 있다.
따라서, 이웃하지 않은 자판의 문자가 잘못 입력된 경우에도 연관성 판단을 받을 수 있도록 하기 위해, 복수의 오타 수정 동작을 정의하고 이들 오타 수정 동작마다 각각 오타 수정 동작 점수를 부여한 다음, 제2 글자셋을 제1 글자셋으로 수정하는데 필요한 오타 수정 동작의 오타 수정 동작 점수의 총합을 미리 정해진 임계값과 비교해 제2 글자셋이 제1 글자셋과 연관성이 높은 글자셋인지를 판단받도록 구성할 수 있다. 구체적으로 본 발명에서, 제2 글자셋 중 미리 정해진 임계값보다 오타 수정 동작 점수의 총합이 낮은 글자셋이 제1 글자셋과 연관성이 높다고 판단될 수 있다. 물론, 본 발명은 앞서 설명한 오타 수정 동작 점수 및 임계값과의 연관성 판단 방법에 한정되는 것은 아니다. 즉, 본 발명은, 앞서 설명한 것과 반대로 오타 수정 동작 점수를 설정할 수 있고, 또한 반대 방식으로 임계값과 오타 수정 동작 점수를 비교할 수도 있다.
다시, (a) 및 (b) 동작에 대한 설명으로 돌아오면, (a) 및 (b) 동작 모두 각각의 오타 수정 동작 점수를 가지고 있다. 다만, (a) 동작과 같이, 이웃한 자판의 경우에는 (b)와 같이 이웃하지 않은 자판의 경우보다 오타가 발생할 가능성이 높다. 따라서 이러한 발생 가능성을 연관성 판단에 반영하기 위해 (b) 동작과 같이 이웃하지 않은 자판의 문자로 수정하는 경우에는 오타 수정 동작 점수가 (a) 동작의 오타 수정 동작 점수보다 높게 책정되는 것이 바람직할 것이다. 본 발명에서는 예를 들어, (a) 동작의 오타 수정 동작 점수로 5점을 부여하고, (b) 동작의 오타 수정 동작 점수로 10점을 부여할 수 있다. 또한, 본 발명에서는, 이러한 오타 수정 동작 점수를 비교하는 임계값을 15점으로 설정한다. 물론, 각각의 오타 수정 동작 점수 및 임계값이 앞서 설명한 점수로 한정되는 것은 아니며, 상황 또는 사용자에 따라 가변 가능하다.
이러한 설정 점수에 따라, (a) 동작의 예시와 같이, ‘wvwryone’을 제1 글자셋인 ‘everyone’으로 수정하기 위해서는 첫번째와 세번째 문자인 w를 이웃한 자판의 문자인 e로 수정하는 동작이 필요하다. 첫번째 문자인 w를 e로 수정하는 동작에 5점, 세번째 문자인 w를 e로 수정하는 동작에 5점이 설정되어 있으므로, 이들의 합인 10점이 오타 수정 동작 점수의 총합이 될 수 있다. 여기서 10점의 오타 수정 동작 점수는 오타 수정 동작 점수 임계값인 15점보다 작은 값이므로, 두 글자셋은 연관성이 높은 글자셋으로 판단되고 ‘wvwryone’은 제1 글자셋인 ‘everyone’의 치환 대상인 제3 글자셋으로 결정될 수 있다.
또한, (b) 동작의 예시와 같이, ‘everione’을 ‘everyone’으로 수정하기 위해서는 네번째 문자인 i를 y로 수정하는 단일의 오타 수정 동작이 필요하다. 이때, i와 y는 서로 이웃하지 않는 자판의 문자이므로 이러한 오타 수정 동작에는 10점의 오타 수정 동작 점수가 부여될 수 있다. 10점의 오타 수정 동작 점수는 오타 수정 동작 점수 임계값인 15점보다 작은 값이므로 두 글자셋은 연관성이 높은 문자열로 판단되어 ‘everione’은 제1 글자셋인 ‘everyone’의 치환 대상인 제3 글자셋으로 결정될 수 있다.
(c) 동작은, 사용자가 ‘believe’의 입력을 의도하였으나, 실제로 입력된 것은 ‘beleive’인 경우를 예로 들어 설명할 수 있다. 사용자가 ‘beleive’의 오류를 발견하고 이를 수정하기 위해 제1 글자셋으로 ‘believe’를 입력한 다음 수정 명령을 내리게 되면, 제1 글자셋인 ‘believe’는 제1 글자셋 이전에 입력된 제2 글자셋과 연관성이 계산된다. 이 때, 제1 글자셋인 ‘believe’와 제2 글자셋인 ‘beleive’의 차이는 제2 글자셋의 네번째 문자인 e와 다섯번째 문자인 i의 위치를 서로 교환하는 것에 의해 수정될 수 있다. 그러나 (a) 및 (b)의 동작에 따라 ‘beleive’를 ‘believe’로 수정하려면 네번째 문자인 e를 i로 변경하고 다섯번째 문자인 i를 e로 변경해야 하기 때문에, 서로 이웃하지 않는 자판의 문자를 2번 변경하게 되어 총 20점의 오타 수정 동작 점수가 부여되고, 20점의 오타 수정 동작 점수는 임계값인 15점보다 큰 값이므로 ‘beleive’는 제1 글자셋인 ‘believe’와 연관성이 없는 글자셋으로 판단되어 수정되지 않게 될 수 있다. 실제로 이와 같이 연속된 문자의 순서가 뒤바뀌어 입력되는 경우는 문자를 빠른 속도를 입력하는 과정에서 자주 발생하게 된다. 그럼에도 (a) 및 (b) 동작에 의해서만 문자열의 연관성을 판단하면, 연속된 문자의 순서가 뒤바뀌어 입력되는 것과 같이 빈번하게 발생할 수 있는 오타가 수정되지 못하는 문제가 발생할 수 있다.
따라서 이를 해결하기 위해 ‘글자셋 내에 연속적으로 기재된 2개의 문자의 위치를 서로 교환하는 동작’을 (c) 동작으로 정의하고, (c) 동작에 8점의 오타 수정 동작 점수를 부여할 수 있다. 이에 따라, ‘beleive’는 네번째 문자인 e와 다섯번째 문자인 i의 위치를 서로 교환하는 (c) 동작에 의해 제1 글자셋인 ‘believe’로 수정될 수 있으므로 8점의 오타 수정 동작 점수를 가지게 되고, 8점의 오타 수정 동작 점수는 임계값인 15보다 작은 값이므로 두 글자셋은 연관성이 높은 글자셋으로 판단되어, ‘beleive’는 제1 글자셋인 ‘believe’의 치환 대상인 제3 글자셋으로 결정될 수 있다.
(d) 동작은, 사용자가 ‘good’의 입력을 의도하였으나, 실제로 입력된 것이 ‘god’인 경우를 예로 들어 설명할 수 있고, (e) 동작은, 사용자가 ‘god’의 입력을 의도하였으나, 실제로 입력된 것이 ‘good’인 경우를 예로 들어 설명할 수 있다. 실제로 이러한 오타는 문자를 빠르게 입력하는 과정에서 쉽게 발생할 수 있다. 이 경우 잘못 기재된 글자셋은, 누락된 ‘o’를 삽입하는 (d) 동작을 통해 수정되거나, 불필요하게 삽입된 ‘o’를 삭제하는 (e) 동작을 통해 수정될 수 있다. 그러나, (a) 내지 (c) 동작은 기본적으로 제1 글자셋과 동일한 길이의 글자셋을 대상으로 하기 때문에, 불필요한 문자가 글자셋에 삽입되거나 필수구성 문자가 글자셋에서 누락되어 오타가 발생한 경우에는 이들 글자셋을 제1 글자셋과 연관성 있는 문자열로 판단하지 못하게 된다.
이를 해결하기 위해, 글자셋에 필수구성 문자를 삽입하는 동작을 (d) 동작으로 정의하고, 글자셋에서 불필요한 문자를 삭제하는 동작을 (e) 동작으로 정의하고, (d) 동작 및 (e) 동작에 각각 10점의 오타 수정 동작 점수를 부여할 수 있다.
앞서 설명한 예시에서, ‘god’는 첫번째 문자인 g와 마지막 문자인 d 사이에 o를 하나 추가하는 (d) 동작에 의해 ‘good’로 수정될 수 있고, ‘good’는 첫번째 문자인 g와 마지막 문자인 d 사이에 입력된 2개의 o 중에서 하나를 삭제하는 (e) 동작에 의해 ‘god’로 수정될 수 있다. 따라서 각각의 수정 동작에는 10점의 오타 수정 동작 점수가 부여될 수 있다. 또한 10점의 오타 수정 동작 점수는 15점의 임계값보다 작은 값이므로, ‘god’, ‘good’는 제1 글자셋과 연관성이 높은 문자열로 판단되어 제3 글자셋으로 결정될 수 있다.
앞서 설명한 바와 같이, 오타 수정 동작은 각각의 오타 수정 동작 점수를 가질 수 있고, 각각의 오타 수정 동작 점수는 사용자가 직접 설정 또는 수정할 수 있다.
또한, 오타 수정 동작 점수는 오타 수정 동작의 발생 빈도에 따라 자동으로 조절될 수 있다. 즉, 오타 수정 동작 점수는, 그에 해당하는 오타 수정 동작의 발생 빈도가 높을수록 낮은 점수를 가지고, 발생 빈도가 낮을수록 높은 점수를 가질 수 있으나, 이에 한정되는 것은 아니다.
추가적으로, 제1 글자셋과 비교되는 제2 글자셋의 첫번째 문자가 제1 글자셋의 첫번째 문자와 다르거나 또는 이웃하는 자판의 문자가 아닌 경우 오타 수정 동작의 오타 수정 동작 점수에 추가 점수가 부여될 수 있다. 또한 제1 글자셋과 비교되는 제2 글자셋의 마지막 문자가 제1 글자셋의 마지막 문자와 다르거나 이웃하는 자판의 문자가 아닌 경우에도 오타 수정 동작의 오타 수정 동작 점수에 추가 점수가 부여될 수 있다.
이에 대해, 사용자가 ‘remember’의 입력을 의도하였으나, 실제로는 ‘renember’가 입력된 것을 예로 들어 설명할 수 있다. 이 때, 빠르고 효율적으로 오타를 수정하려면, 제1 글자셋의 전체 문자열을 새로 입력하기보다는, 오타가 발생한 문자를 포함하는 부분 문자열만을 제1 글자셋으로 입력해서 오타를 수정하는 것이 바람직하다. 따라서, ‘remember’의 전체 문자열을 입력하기 보다 잘못 입력된 문자인 n(세번째 문자)을 포함하는 부분 문자열만 제1 글자셋으로 입력하는 것이 바람직할 것이다(예를 들어, rem, eme, mem 등). 이와 같이 글자셋 내의 일부 문자열만 제1 글자셋으로 입력해 오타를 수정하고자 할 때, 사용자는 잘못 입력된 문자를 첫 문자로 하여, 제1 글자셋을 입력하거나 잘못 입력된 문자를 마지막 문자로 하여, 제1 글자셋으로 입력할 수 있다(예를 들어, ‘mem’ 또는 ‘rem’을 입력). 따라서 오타 수정 동작이 제2 글자셋의 첫 문자 또는 마지막 문자에 수행되는 경우에는 오타 수정 동작에 가중치를 부여할 필요가 있다.
구체적으로, 예를 들어, 제2 글자셋의 첫 문자 또는 마지막 문자에 오타 수정 동작이 수행된다고 가정했을 때, 제2 글자셋의 수정 전후의 문자가 오타 발생 가능성이 낮은 '이웃하지 않는 자판의 문자'인 경우에는, 오타 수정 동작 점수에 5점의 가산점을 부가하도록 설정할 수 있다.
이러한 설정이 적용되면, 제2 글자셋을 제1 글자셋으로 수정하기 위해 제2 글자셋의 첫 문자 또는 마지막 문자를 수정할 필요가 있는 경우에는, (i) 수정 전후의 문자가 오타가 발생할 가능성이 낮은 '이웃하지 않는 자판의 문자'인 경우에는 오타 수정 동작 점수에 추가 가산점이 부여되게 되어 이러한 글자셋은 제3 글자셋의 후보에서 제외될 가능성이 높아지고, (ii) 오타가 발생할 가능성이 높은 '이웃한 자판의 문자'인 경우는 제3 글자셋의 후보가 될 확률이 높아질 수 있다.
점수 조절 요소는 제어부(300)의 계산 모듈(320)로 제공될 수 있고, 예를 들어, 제1 글자셋과 제2 글자셋 간의 거리에 관한 (a) 요소와, 글자셋의 입력 속도에 관한 (b) 요소와, 제2 글자셋 중 제3 글자셋의 후보가 추출되지 않아 재검색이 필요한 경우에 관한 (c) 요소와, 조합형 글자셋의 조합이 깨진 경우에 관한 (d) 요소와, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률에 관한 데이터에 관한 (e) 요소 중 적어도 하나를 포함할 수 있다.
(a) 요소는, 예를 들어, 제1 글자셋과 제2 글자셋 간의 거리가 멀수록 제2 글자셋의 오타 수정 동작 점수에 높은 점수(예를 들어, 플러스로 높은 점수가 아닌 마이너스 중 높은 점수(예를 들어, -1이 -3보다 높은 점수임))를 더하는 방식으로 점수의 총합을 가감할 수 있다. 즉, 일반적으로, 오타를 입력한 후 멀지 않은 위치에서 주로 오타를 발견하므로, 제2 글자셋 중 제1 글자셋과 가까운 글자셋이 오타일 확률이 높다고 할 수 있다. 따라서, 이를 반영하여, 제1 글자셋과 제2 글자셋 간의 거리가 가까울수록 제2 글자셋의 오타 수정 동작 점수의 총합에 마이너스 중 낮은 점수(예를 들어, -10점)를 더하고, 제1 글자셋과 제2 글자셋 간의 거리가 멀수록 제2 글자셋의 오타 수정 동작 점수의 총합에 마이너스 중 높은 점수(예를 들어, -1점)를 더할 수 있다.
(b) 요소는, 예를 들어, 입력 속도가 사용자의 평균 속도보다 빠른 경우, (c) 동작과 (d) 동작의 오타 수정 동작 점수를 초기 설정 점수보다 낮게 수정하는 방식으로 점수의 총합을 가감할 수 있다.
즉, 입력 속도가 사용자의 평균 속도보다 빠른 경우, 순서바꿈 입력 또는 생략입력과 같은 오타가 발생할 확률이 높아지므로, 입력 속도가 사용자의 평균 속도(예를 들어, 전자 장치(1)의 사용자 또는 동종 기기의 전체 사용자의 평균 속도)보다 빠르다고 판단되는 경우, (c) 동작과 (d) 동작의 오타 수정 동작 점수를 예를 들어, 각각 -3점씩 낮게 수정할 수 있다. 입력 속도가 사용자의 평균 속도보다 느리다고 판단되는 경우에는, (c) 동작과 (d) 동작의 오타 수정 동작 점수를 낮게 수정하지 않을 수도 있다.
(c) 요소는, 예를 들어, 오타 수정 동작 점수의 총합이, 미리 정해진 임계값보다 높아서 제3 글자셋의 후보가 추출되지 않는 경우, 제2 글자셋의 오타 수정 동작 점수의 총합을 낮게 수정하는 방식으로 점수의 총합을 가감할 수 있다.
즉, 제2 글자셋의 오타 수정 동작 점수의 총합이, 임계값 보다 높은 경우, 제3 글자셋의 후보가 추출되지 않을 수 있기에, 이런 경우에는 제2 글자셋의 오타 수정 동작 점수의 총합을 예를 들어, -5점 낮춤으로써, 점수의 총합을 가감하고, 다시 한번 임계값과 비교하도록 할 수 있다.
(d) 요소는, 예를 들어, 제2 글자셋 중 조합이 깨진 조합형 글자셋의 경우, 오타 수정 동작 점수의 총합을 일정 점수만큼 낮추어 계산하는 방식으로 점수의 총합을 가감할 수 있다. 여기에서 일정 점수는, 사용자에 의해 자유롭게 설정될 수 있다.
즉, 한글과 같은 조합형 글자셋은, 초성을 안쓰고 중성 또는 종성을 스거나, 초성을 쓰고 중성없이 종성을 쓰는 경우, 그 조합이 깨질 수 있다(예를 들어, ‘ㅏㄴ녕'). 그러나, 이러한 깨진 조합형 글자셋은 연관성 계산시 그 오타 수정 동작 점수의 총합이 임계값을 넘길 가능성이 크기에, 조합형 글자셋 중 깨진 글자셋의 오타 수정 동작의 총합에 예를 들어, -10점을 적용함으로써, 가감할 수 있다.
(e) 요소는, 예를 들어, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률이 낮은 경우, 제2 글자셋의 오타 수정 동작 점수의 총합을 일정 점수만큼 낮춰서 계산하는 방식으로, 점수의 총합을 가감할 수 있다.
또한 (e) 요소는, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력된 확률이 높은 경우, 제2 글자셋의 오타 수정 동작 점수의 총합을 일정 점수만큼 높여서 계산하는 방식으로 점수의 총합을 가감할 수 있다.
구체적으로, 예를 들어, 제2 글자셋이 ‘hwllo’이고, ‘h’ 다음에 ‘w’가 입력될 확률이 낮은 경우, 이는 오타일 가능성이 높으므로, ‘hwllo’의 오타 수정 동작 점수에 예를 들어, -5점을 적용함으로써, 점수의 총합을 가감할 수 있다.
점수 조절 요소 각각에 대한 구체적인 예시는 후술하도록 한다.
오타 수정 동작 히스토리는, 제어부(300)에서 연관성 계산시 결정된 오타 수정 동작에 대한 히스토리를 포함할 수 있다. 저장부(200)는 오타 수정 동작 히스토리를 기초로, 오타 수정 동작 점수를 오타 수정 동작의 발생 빈도에 맞게 조절할 수 있다. 즉, 앞서 설명한 바와 같이, 오타 수정 동작 점수는, 그에 해당하는 오타 수정 동작의 발생 빈도가 높을수록 낮은 점수를 가지고, 발생 빈도가 낮을수록 높은 점수를 가질 수 있으나, 이에 한정되는 것은 아니다.
제어부(300)는 제1 글자셋 이전에 위치하는 제2 글자셋 중 치환 대상으로 결정된 제3 글자셋을 제1 글자셋으로 치환할 수 있다.
예를 들어, 제어부(300)는 계산 모듈(320), 결정 모듈(340) 및 치환 모듈(360)을 포함할 수 있다.
계산 모듈(320)은, 입력부(100)로부터 제1 글자셋을 입력받아, 제2 글자셋과의 연관성을 계산할 수 있다.
구체적으로, 계산 모듈(320)은 입력부(100)로부터 사용자의 수정 명령을 제공받은 경우에, 제1 글자셋과 제2 글자셋의 연관성을 저장부(200)로부터 제공받은 오타 수정 동작을 기초로 계산할 수 있다. 여기에서, 계산 모듈(320)은 연관성 계산을 위해, 제1 글자셋을 제2 글자셋으로 치환하는데 필요한 오타 수정 동작에 따른 오타 수정 동작 점수를 합산하고, 합산된 오타 수정 동작 점수를 저장부(200)로부터 제공받은 점수 조절 요소로 가감하여, 최종 점수를 산출할 수 있다.
또한 계산 모듈(320)은 연관성 계산 결과 즉, 제2 글자셋의 최종 점수를 결정 모듈(340)로 제공할 수 있다.
결정 모듈(340)은 연관성 계산 결과를 기초로 제3 글자셋을 결정할 수 있다.
구체적으로, 결정 모듈(340)은 계산 모듈(320)로부터 제공받은 연관성 계산 결과 즉, 제2 글자셋의 최종 점수를 미리 정해진 임계값과 비교하여, 제2 글자셋 중 최종 점수가 미리 정해진 임계값보다 작은 글자셋을 치환 대상인 제3 글자셋으로 결정할 수 있다. 물론 제2 글자셋 중 최종 점수가 미리 정해진 임계값보다 큰 글자셋을 제3 글자셋으로 결정하도록 결정 모듈(340)이 설정될 수도 있으나, 이에 한정되는 것은 아니다.
또한 결정 모듈(340)은 결정된 제3 글자셋을 치환 모듈(360)로 제공할 수 있다.
치환 모듈(360)은 제3 글자셋을 제공받아, 제1 글자셋으로 치환할 수 있다.
구체적으로, 치환 모듈(360)은 결정 모듈(340)로부터 제3 글자셋을 제공받아, 제3 글자셋을 제1 글자셋으로 치환하고, 제3 글자셋을 제1 글자셋으로 디스플레이하라는 치환 명령을 표시부(400)로 제공할 수 있다.
표시부(400)는 제어부(300), 즉, 제어부(300)의 치환 모듈(360)로부터 제공받은 치환 명령에 따라 제3 글자셋을 제1 글자셋으로 디스플레이 할 수 있다.
본 발명의 일 실시예에 따른 전자 장치(1)는, 이미 입력되어 있는 문자열 중에서 사용자가 수정하고자 하는 문자열을 점수 조절 요소를 적용한 연관성 계산 방법을 통해 정확하게 선정하여 사용자의 의도에 부합되게 수정할 수 있다.
이하에서는, 도 3 내지 도 10을 참조하여, 도 1의 전자 장치(1)의 오타 수정 방법에 대해 설명한다. 앞서 설명한 내용과 중복되는 내용은 생략하도록 한다.
도 3은 도 1의 전자 장치의 오타 수정 방법을 설명하기 위한 순서도이다. 도 4는 도 3의 (b) 단계를 설명하기 위한 순서도이다. 도 5는 도 4의 (b)-2 단계를 설명하기 위한 순서도이다. 도 6 내지 도 10은 도 3의 오타 수정 방법을 설명하는 개략도들이다.
도 3 및 도 4를 참조하면, 도 1의 전자 장치의 오타 수정 방법은, 먼저, 제1 글자셋을 입력받을 수 있다(S500).
구체적으로, 현재의 커서 위치에서 제1 글자셋을 사용자로부터 입력받을 수 있다.
제3 글자셋을 제1 글자셋으로 치환할 수 있다(S510).
구체적으로, S510 단계는, 사용자의 수정 명령에 의하여 사용자의 수정 의도를 판단하는 단계(S515)로 시작한다.
즉, 사용자로부터 제1 글자셋을 입력받은 후, 수정 명령이 더 입력됨으로써, 제1 글자셋이 수정 의도로 입력된 글자셋임을 계산 모듈(320)이 판단할 수 있다.
연관성 계산을 통해 제3 글자셋을 결정할 수 있다(S525).
도 5를 참조하면, S525 단계는, 제2 글자셋을 제1 글자셋으로 치환하는데 필요한 오타 수정 동작을 결정하는 단계(S530)로 시작한다.
예를 들어, 앞서 설명한 바와 같이, 제1 글자셋이 ‘everyone’이고, 제2 글자셋 중에 ‘wvwryone’이라는 글자셋이 있는 경우, ‘everyone’과 ‘wvwryone’은 첫번째와 세번째 문자가 e인지 w인지에서만 차이가 있는데, e와 w는 자판에서 서로 이웃하여 배치된 입력키이므로 e로 입력되었어야 할 것이 w로 잘못 입력되었을 가능성이 높고, 따라서 제2 글자셋인 ‘wvwryone’을 제1 글자셋인 ‘everyone’로 치환하는데 필요한 오타 수정 동작은 글자셋 내의 문자를 이웃하는 자판의 문자로 교체하는 (a) 동작에 해당한다는 것을 알 수 있다.
오타 수정 동작 점수를 합산한다(S535).
예를 들어, 앞서 설명한 바와 같이, 제2 글자셋을 제1 글자셋으로 치환하는데 필요한 오타 수정 동작이 (a) 동작으로 결정된 경우, 이에 해당하는 오타 수정 동작 점수를 합산할 수 있다. 즉, (a) 동작의 오타 수정 동작 점수가 ‘5’점이라고 가정했을 때, ‘wvwryone’을 ‘everyone’으로 수정하기 위해서는, 첫번째 문자를 이웃한 자판의 문자로 수정하고, 세번째 문자를 이웃한 자판의 문자로 수정해야하기에, 총 ‘10’점의 점수가 부여된다는 것을 알 수 있다. 즉, 각 오타 수정 동작 점수를 합산하면, 10점이 된다는 것을 알 수 있다.
다만, 제2 글자셋의 선택 가능한 오타 수정 동작이 복수개인 경우, 제2 글자셋에 부여되는 점수의 총합은 선택 가능한 오타 수정 동작 중 오타 수정 동작 점수의 총합이 최소로 되는 경우로 결정될 수 있다.
예를 들어, 사용자가 ‘believe’를 입력하고자 하였으나, 실제로는 ‘beleive’가 입력된 경우, 제2 글자셋인 ‘beleive’는 제2 글자셋의 네번째 문자인 e와 다섯번째 문자인 i의 위치를 서로 교환하는 (c) 동작에 의해 수정될 수 있다. 그러나 (b) 동작에 의해 ‘beleive’의 네번째 문자인 e가 i로 수정되고, 다섯번째 문자인 i 역시 e로 수정되어 제1 글자셋 ‘believe’가 될 수 있는바, 제2 글자셋 ‘beleive’의 선택 가능한 오타 수정 동작이 (c) 동작 및 (b) 동작 2개를 포함할 수 있다. 이 경우에, (b) 동작에 의한 오타 수정 동작 점수는 (b) 동작이 2번 반복되었기에, 20점이고, (c) 동작에 의한 오타 수정 동작 점수는 8점일 수 있다. 즉, (b) 동작에 의한 오타 수정 동작 점수의 총합은 20점이고, (c) 동작에 의한 오타 수정 동작 점수의 총합은 8점이기에, 오타 수정 동작 점수의 총합이 최소로 되는 경우는 (c) 동작이고, 결과적으로, (c) 동작의 오타 수정 동작 점수의 총합이 제2 글자셋을 수정하는데 필요한 오타 수정 동작 점수의 총합으로 결정될 수 있다.
앞서 설명한 오타 수정 동작 결정 및 오타 수정 동작 점수 합산 방법에 대한 추가적인 설명은, 아래의 <표 1>를 참조하여 진행하도록 한다.
예를 들어, 사용자가 ‘remember’의 입력을 의도하였으나, 실제로는 ‘renember’로 잘못 입력된 경우, 사용자는 먼저 ‘renember’의 오류를 발견하고, 이를 수정하기 위하여 ‘renember’ 이후에 제1 글자셋으로 ‘mem’을 입력할 수 있다. ‘mem’을 입력 후 사용자가 수정 명령을 내리면, 제어부(300)는 ‘mem’을 제1 글자셋으로 인식하고, 제1 글자셋인 ‘mem’과 제1 글자셋 이전에 입력된 제2 글자셋 간의 연관성을 계산한다.
우선 새로 입력된 제1 글자셋인 ‘mem’과 제2 글자셋 중 동일한 길이의 글자셋인 [ren, ene, nem, emb, mbe, ber]에 대한 연관성 계산이 시작된다. 각각의 글자셋에 대한 오타 수정 동작 점수는 아래의 <표 1>와 같다. 즉, 아래의 <표 1>에 기재된 바와 같이, 제1 글자셋과 동일한 길이의 글자셋 가운데 오타 수정 동작 점수의 총합이 임계값(예를 들어, 15점) 보다 작은 것은 ‘nem’이라는 것을 알 수 있다.
다음으로 제1 글자셋과 다른 길이의 글자셋(예를 들어, re, rene 등)을 기준으로 전술한 '글자셋에 필수구성 문자를 삽입하는' (d) 동작 또는 '글자셋에서 불필요한 문자를 삭제하는' (e) 동작을 고려할 수 있다. 본 예시의 경우에는 (d) 또는 (e) 동작 중 오타 수정 동작 점수가 임계값(예를 들어, 15점) 이하인 오타 수정 동작은 존재하지 않는다. 결국, 본 예시에서는, ‘nem’만이 후술하는 임계값과의 비교 단계를 통해, 제1 글자셋인 ‘mem’과 연관성이 높은 글자셋 즉, 제3 글자셋으로 결정될 수 있다.
표 1
비교 대상 문자열 수정 목표 문자열 오타 수정 동작 점수
ren mem (1) 첫번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(2) 세번째 문자를 이웃한 자판의 문자로 수정: 5점(3) 시작 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점오타 수정 동작 점수: 20점
ene mem (1) 첫번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(2) 두번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(3) 세번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(4) 시작 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점(5) 끝 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점오타 수정 동작 점수: 40점
nem mem (1) 첫번째 문자를 이웃한 자판의 문자로 수정: 5점오타 수정 동작 점수: 5점
emb mem (1) 첫번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(2) 두번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(3) 세번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(4) 시작 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점(5) 끝 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점오타 수정 동작 점수: 40점
mbe mem (1) 두번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(2) 세번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(3) 끝 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점오타 수정 동작 점수: 25점
ber mem (1) 첫번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(2) 세번째 문자를 이웃하지 않은 자판의 문자로 수정: 10점(3) 시작 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점(4) 끝 문자를 이웃하지 않은 자판의 문자로 수정: 가산점 5점오타 수정 동작 점수: 30점
점수 조절 요소로 가감한다(S540).
구체적으로, 오타 수정 동작 점수의 총합은, 저장부(200)로부터 제공받은 점수 조절 요소에 의해 가감될 수 있다.
예를 들어, 사용자가 ‘집에 오는 길은’을 입력하고자 하였으나, 실제로는 ‘집에 오는 길눙’이라고 입력된 경우, 오타 수정 동작 점수의 총합은, 이웃하는 자판의 문자로 교체하는 (a) 동작 2번 및 이웃하지 않는 자판의 문자로 교체하는 (b) 동작 1번(‘ㄴ’을 ‘ㅇ’으로, ‘ㅜ’를 ‘ㅡ’로, ‘ㅇ’을 ‘ㄴ’으로 수정하는 동작을 필요로 함)에 의해 20점이라는 것을 알 수 있다. 이 경우, 임계값이 15점 이상이 되기에, ‘눙’이 치환 대상인 제3 글자셋으로 결정되지 않는바, 이러한 문제점을 해결하기 위해, 점수 조절 요소로써, 예를 들어, 제1 글자셋과 제2 글자셋 간의 거리를 반영하여, 제1 글자셋 ‘은’의 1번째 이전단어인 ‘눙’의 총합을 10점 마이너스 해줌으로써, ‘눙’의 점수의 총합은 10점이 되고, 임계값 15점보다 낮은 점수가 될 수 있다.
제3 글자셋을 결정한다(S545).
구체적으로, 결정 모듈(340)은 계산 모듈(320)로부터 제공받은 연관성 계산 결과를 기초로, 제3 글자셋을 결정할 수 있다.
앞서 예를 들어 설명한 바와 같이, ‘집에 오는 길눙’ 중 ‘눙’이 제3 글자셋으로 결정될 수 있다.
또한 만약 연관성 계산 결과, 제2 글자셋 중 2개의 글자셋의 점수가 임계값인 15점보다 낮은 경우, 2개의 글자셋 중 오타 수정 동작 점수가 더 낮은 글자셋을 제3 글자셋으로 결정할 수 있다.
다시 도 4를 참조하면, 제3 글자셋을 제1 글자셋으로 치환한다(S560).
구체적으로, 치환 모듈(360)은 결정 모듈(340)로부터 제공받은 제3 글자셋을 제1 글자셋으로 치환할 수 있다. 또한 제3 글자셋을 제1 글자셋으로 치환하여 디스플레이하라는 치환 명령을 표시부(400)로 제공할 수 있다.
표시부(400)는 치환 모듈(360)로부터 치환 명령을 제공받아, 제3 글자셋을 제1 글자셋으로 디스플레이할 수 있다.
이하에서, 도 6 내지 도 10을 참조하여, 도 1의 전자 장치의 오타 수정 방법에 대해 설명한다. 앞서 설명한 도 3 내지 도 5의 내용과 중복되는 내용은 생략하거나 간략하게 설명하도록 한다.
도 6 내지 도 10은 도 3의 오타 수정 방법을 설명하는 개략도들이다.
도 6을 참조하면, (a) 요소를 점수 조절 요소로 적용하였을 때의 오타 수정 방법이 도시되어 있다.
사용자가 ‘집에 오는 길은’을 입력하고자 하였으나, 실제로는 ‘집에 오는 길눙’을 입력한 경우, 이를 수정하고자 ‘은’을 ‘눙’ 뒤에 입력할 수 있다. 그 후 수정 명령을 입력하면, 제1 글자셋인 ‘은’과 제2 글자셋인 ‘집에 오는 길눙’ 간의 연관성 계산이 수행될 수 있다. 여기에서, 사용자는 제2 글자셋 중 ‘눙’을 제1 글자셋인 ‘은’으로 수정하고자 하는바, ‘눙’의 오타 수정 동작 점수의 총합을 계산해보면, 이웃하는 자판의 문자로 교체하는 (a) 동작 2번 및 이웃하지 않는 자판의 문자로 교체하는 (b) 동작 1번(‘ㄴ’을 ‘ㅇ’으로, ‘ㅜ’를 ‘ㅡ’로, ‘ㅇ’을 ‘ㄴ’으로 수정하는 동작을 필요로 함)에 의해 20점이라는 것을 알 수 있다. 이 경우, 임계값인 15점보다 높기에, ‘눙’은 제3 글자셋으로 수정될 수 없다. 이 때, (a) 요소가 적용되는 경우, 제1 글자셋 ‘은’의 1번째 이전단어는 ‘눙’이고, 여기에, (a) 요소에 의한 -10점이 적용된다면, ‘눙’의 점수의 총합은 10점이 되고, 임계값 15점보다 낮아지게 되기에, 제3 글자셋으로 결정되어, 제1 글자셋인 ‘은’으로 치환될 수 있다.
도 7을 참조하면, (b) 요소를 점수 조절 요소로 적용하였을 때의 오타 수정 방법이 도시되어 있다. 여기에서, 입력 속도가 사용자의 평균 속도보다 빠르다고 가정한다.
사용자가 ‘안녕’을 입력하고자 하였으나, 실제로는 ‘ㅇㅇ녕’을 입력한 경우, 이를 수정하고자 ‘안’을 ‘ㅇㅇ녕’ 뒤에 입력할 수 있다. 그 후 수정 명령을 입력하면, 제1 글자셋인 ‘안’과 제2 글자셋인 ‘ㅇㅇ녕’ 간의 연관성 계산이 수행될 수 있다. 여기에서, 사용자는 제2 글자셋 중 ‘ㅇㅇ’을 제1 글자셋인 ‘안’으로 수정하고자 하는바, ‘ㅇㅇ’의 오타 수정 동작 점수의 총합을 계산해보면, ‘ㅏ’를 추가하는 (d) 동작 1번 및 이웃하는 자판의 문자로 교체하는 (a) 동작 1번 (‘ㅏ’를 추가하는 동작 및 ‘ㅇ’을 ‘ㄴ’으로 수정하는 동작을 필요로 함)에 의해 15점이라는 것을 알 수 있다. 이 경우, 임계값인 15점과 같기에, 제3 글자셋으로 결정이 안될 수도 있다. 이 때, (b) 요소가 적용되는 경우, (d) 동작에 의한 오타 수정 동작 점수가 -3점이 되어, 총점이 12점이 되고, 임계값 15점보다 낮아지게 되기에, ‘ㅇㅇ’은 제3 글자셋으로 결정되어, 제1 글자셋인 ‘안’으로 치환될 수 있다.
도 8을 참조하면, (c) 요소를 점수 조절 요소로 적용하였을 때의 오타 수정 방법이 도시되어 있다.
사용자가 ‘반가워 안녕’을 입력하고자 하였으나, 실제로는 ‘반가워 ㅇㅇ녕’을 입력한 경우, 이를 수정하고자 ‘안’을 ‘ㅇㅇ녕’ 뒤에 입력할 수 있다. 이 경우 도 7에서 설명한 바와 같이, ‘ㅇㅇ’의 오타 수정 동작 점수의 총합은 15점이라는 것을 알 수 있다. 이 경우, 임계값인 15점과 같기에, 제3 글자셋으로 결정이 안될 수도 있다. 이 때, (c) 요소가 적용되는 경우, ‘ㅇㅇ’의 오타 수정 동작 점수의 총합이 -5점이 되어, 총점이 10점이 되고, 임계값 15점보다 낮아지게 되기에, ‘ㅇㅇ’은 제3 글자셋으로 결정되어, 제1 글자셋인 ‘안’으로 치환될 수 있다.
도 9를 참조하면, (d) 요소를 점수 조절 요소로 적용하였을 때의 오타 수정 방법이 도시되어 있다.
사용자가 ‘안녕’을 입력하고자 하였으나, 실제로는 ‘ㅓㄴ녕’을 입력한 경우, 이를 수정하고자 ‘안녕’을 ‘녕’ 뒤에 입력할 수 있다. 그 후 수정 명령을 입력하면, 제1 글자셋인 ‘안뇽’과 제2 글자셋인 ‘ㅓㄴ녕’ 간의 연관성 계산이 수행될 수 있다. 여기에서, 사용자는 제2 글자셋 중 ‘ㅓㄴ녕’을 제1 글자셋인 ‘안녕’으로 수정하고자 하는바, ‘ㅓㄴ녕’의 오타 수정 동작 점수의 총합을 계산해보면, ‘ㅇ’를 추가하는 (d) 동작 1번 및 이웃하는 자판의 문자로 교체하는 (a) 동작 1번 (‘ㅇ’를 추가하는 동작 및 ‘ㅓ’를 ‘ㅏ’로 수정하는 동작을 필요로 함)에 의해 15점이라는 것을 알 수 있다. 이 경우, 임계값인 15점과 같기에, 제3 글자셋으로 결정이 안될 수도 있다. 이 때, (d) 요소가 적용되는 경우, (d) 동작에 의한 오타 수정 동작 점수가 -10점이 되어, 총점이 5점이 되고, 임계값 15점보다 낮아지게 되기에, ‘ㅓㄴ녕’은 제3 글자셋으로 결정되어, 제1 글자셋인 ‘안녕’으로 치환될 수 있다.
도 10을 참조하면, (e) 요소를 점수 조절 요소로 적용하였을 때의 오타 수정 방법이 도시되어 있다. 여기에서, ‘h’ 다음에 ‘t’라는 문자가 입력될 확률은 낮고, ‘l’ 다음에 ‘o’라는 문자가 입력될 확률은 높다고 가정한다.
사용자가 ‘hello helo’을 입력하고자 하였으나, 실제로는 ‘htllo helo’을 입력한 경우, 이를 수정하고자 ‘hello’를 ‘helo’ 뒤에 입력할 수 있다. 그 후 수정 명령을 입력하면, 제1 글자셋인 ‘hello’와 제2 글자셋인 ‘htllo helo’ 간의 연관성 계산이 수행될 수 있다. 제2 글자셋 중 ‘htllo’의 오타 수정 동작 점수의 총합은 10점(‘t’를 이웃하지 않는 문자인 ‘e’로 교체하는 (b) 동작 1번)이고, ‘helo’의 오타 수정 동작 점수의 총합은 10점(‘l’을 추가하는 ‘d’ 동작 1번)이 될 수 있다. 여기에서, 사용자는 ‘helo’가 아닌 ‘htllo’를 수정하고자 하기에, (e) 요소가 적용된 경우, ‘htllo’의 ‘h’ 다음에 ‘t’가 나오기에 -5점이 적용될 수 있고, 이에 따라, ‘htllo’의 오타 수정 동작 점수의 총합이 5점이 되기에, ‘helo’보다 오타 수정 동작 점수의 총합이 더 낮은 ‘htllo’가 제3 글자셋으로 결정되어, 제1 글자셋인 ‘hello’로 치환될 수 있다.
이상 설명된 본 발명의 실시예들에 따른 오타 수정 방법은 또한 컴퓨터로 판독 가능한 기록매체에 컴퓨터가 판독할 수 있는 코드 또는 프로그램으로서 구현하는 것이 가능하다. 컴퓨터로 판독할 수 있는 기록매체는 컴퓨터 시스템에 의하여 판독될 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 즉, 컴퓨터로 판독 가능한 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터로 판독할 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 판독할 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 수행될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.

Claims (19)

  1. 제1 글자셋을 사용자로부터 입력받는 입력부;
    상기 제1 글자셋 이전에 위치하는 제2 글자셋 중 치환 대상으로 결정된 제3 글자셋을 상기 제1 글자셋으로 치환하는 제어부;
    상기 치환의 기초가 되는 오타 수정 동작과 점수 조절 요소를 포함하는 저장부; 및
    상기 제3 글자셋을 상기 제1 글자셋으로 디스플레이하는 표시부를 포함하고,
    상기 점수 조절 요소는, 상기 제1 글자셋과 상기 제2 글자셋 간의 거리와, 글자셋의 입력 속도와, 상기 제2 글자셋 중 상기 제3 글자셋의 후보가 추출되지 않아 재검색이 필요한 경우와, 조합형 글자셋의 조합이 깨진 경우와, 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률에 관한 데이터 중 적어도 하나를 포함하는 전자 장치.
  2. 제 1항에 있어서,
    상기 제어부는,
    상기 제1 글자셋과 상기 제2 글자셋 간의 연관성을, 상기 오타 수정 동작을 기초로 계산하는 계산 모듈과,
    상기 연관성 계산 결과를 기초로, 상기 제3 글자셋을 결정하는 결정 모듈과,
    상기 제3 글자셋을 상기 제1 글자셋으로 치환하는 치환 모듈을 포함하는 전자 장치.
  3. 제 2항에 있어서,
    상기 오타 수정 동작은 오타 수정 동작 점수를 가지고,
    상기 연관성 계산은, 상기 제2 글자셋에 부여된 오타 수정 동작 점수의 총합과 미리 정해진 임계값의 비교를 통해 수행되는 전자 장치.
  4. 제 3항에 있어서,
    상기 제2 글자셋에 부여된 오타 수정 동작 점수의 총합은, 상기 제2 글자셋을 상기 제1 글자셋으로 치환하는데 필요한 오타 수정 동작에 따른 오타 수정 동작 점수를 합산하는 방식으로 계산되는 전자 장치.
  5. 제 3항에 있어서,
    상기 점수 조절 요소는, 상기 제2 글자셋에 부여된 오타 수정 동작 점수의 총합을 가감하는데 이용되는 전자 장치.
  6. 제 3항에 있어서,
    상기 저장부는, 사용자의 오타 수정 동작 히스토리를 더 포함하고,
    상기 오타 수정 동작 히스토리를 기초로 상기 오타 수정 동작 점수를 조절하는 전자 장치.
  7. 현재의 커서 위치에서 제1 글자셋을 사용자로부터 입력받는 (a) 단계; 및
    상기 커서 이전에 위치하는 제2 글자셋 중 치환 대상으로 결정된 제3 글자셋을 상기 제1 글자셋으로 치환하는 (b) 단계를 포함하고,
    상기 치환은, 상기 제2 글자셋을 상기 제1 글자셋으로 치환하는데 필요한 오타 수정 동작에 따른 오타 수정 동작 점수의 총합을 기초로 수행되고,
    상기 점수의 총합은, 점수 조절 요소에 의해 가감되고,
    상기 점수 조절 요소는, 상기 제1 글자셋과 상기 제2 글자셋 간의 거리에 관한 (a) 요소와, 글자셋의 입력 속도에 관한 (b) 요소와, 상기 제2 글자셋 중 상기 제3 글자셋이 추출되지 않아 재검색이 필요한 경우에 관한 (c) 요소와, 조합형 글자셋의 조합이 깨진 경우에 관한 (d) 요소와, 상기 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률에 관한 데이터에 관한 (e) 요소 중 적어도 하나를 포함하는 오타 수정 방법.
  8. 제 7항에 있어서,
    상기 (b) 단계는,
    상기 제1 글자셋 바로 다음에 입력된 사용자의 수정 명령에 의하여 사용자의 수정 의도를 판단하는 (b)-1 단계와,
    상기 제2 글자셋과 상기 제1 글자셋 간의 상기 연관성 계산을 통해 상기 제3 글자셋을 결정하는 (b)-2 단계와,
    상기 제3 글자셋을 상기 제1 글자셋으로 치환하는 (b)-3 단계를 포함하는 오타 수정 방법.
  9. 제 8항에 있어서,
    상기 (b)-2 단계는,
    상기 제2 글자셋을 상기 제1 글자셋으로 치환하는데 필요한 오타 수정 동작을 결정하는 (b)-2a 단계와,
    상기 결정된 오타 수정 동작에 따른 오타 수정 동작 점수를 합산하는 (b)-2b 단계와,
    상기 점수의 총합을 상기 점수 조절 요소로 가감하는 (b)-2c 단계와,
    상기 (b)-2c 단계에 의해 결정된 최종 점수를 미리 정해진 임계값과 비교하여, 상기 제3 글자셋을 결정하는 (b)-2d 단계를 포함하는 오타 수정 방법.
  10. 제 9항에 있어서,
    상기 (b)-2d 단계에서, 상기 (b)-2c 단계에 의해 결정된 최종 점수가 상기 임계값 보다 높다고 판단되어 상기 제3 글자셋이 결정되지 않는 경우, 상기 (c) 요소를 이용하여, 상기 최종 점수를 조절 후, 상기 미리 정해진 임계값과 다시 비교하는 단계를 더 포함하는 오타 수정 방법.
  11. 제 9항에 있어서,
    상기 제2 글자셋의 선택 가능한 오타 수정 동작이 복수개인 경우, 상기 제2 글자셋에 부여된 점수의 총합은 상기 선택 가능한 오타 수정 동작 중 오타 수정 동작 점수의 총합이 최소로 되는 경우로 결정되는 전자 장치.
  12. 제 7항에 있어서,
    상기 오타 수정 동작은,
    글자셋 내의 문자를 이웃하는 자판의 문자로 교체하는 (a) 동작, 글자셋 내의 문자를 이웃하지 않는 자판의 문자로 교체하는 (b) 동작, 글자셋 내에 연속적으로 기재된 2개의 문자의 위치를 서로 교환하는 (c) 동작, 글자셋에 필수구성 문자를 삽입하는 (d) 동작과, 글자셋에서 불필요한 문자를 삭제하는 (e) 동작 중 적어도 하나를 포함하는 오타 수정 방법.
  13. 제 12항에 있어서,
    상기 (a) 요소는,
    상기 제1 글자셋과 상기 제2 글자셋 간의 거리가 멀수록 상기 제2 글자셋의 오타 수정 동작 점수에 높은 점수를 더하는 방식으로 상기 점수의 총합을 가감하는 오타 수정 방법.
  14. 제 12항에 있어서,
    상기 (b) 요소는,
    상기 입력 속도가 사용자의 평균 속도보다 빠른 경우, 상기 (c) 동작과 상기 (d) 동작의 오타 수정 동작 점수를 초기 설정 점수보다 낮게 수정하는 방식으로 상기 점수의 총합을 가감하는 오타 수정 방법.
  15. 제 12항에 있어서,
    상기 (c) 요소는,
    상기 오타 수정 동작 점수의 총합이, 미리 정해진 임계값보다 높아서 상기 제3 글자셋의 후보가 추출되지 않는 경우, 상기 제2 글자셋의 오타 수정 동작 점수의 총합을 낮게 수정하는 방식으로 상기 점수의 총합을 가감하는 오타 수정 방법.
  16. 제 12항에 있어서,
    상기 (d) 요소는,
    상기 제2 글자셋 중 조합이 깨진 조합형 글자셋의 경우, 오타 수정 동작 점수의 총합을 일정 점수만큼 낮추어 계산하는 방식에 의해 상기 점수의 총합을 가감하는 오타 수정 방법.
  17. 제 12항에 있어서,
    상기 (e) 요소는,
    상기 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력될 확률이 낮은 경우,
    상기 제2 글자셋의 오타 수정 동작 점수의 총합을 일정 점수만큼 낮춰서 계산하는 방식으로 상기 점수의 총합을 가감하는 오타 수정 방법.
  18. 제 12항에 있어서,
    상기 (e) 요소는,
    상기 제2 글자셋 내의 제1 문자의 이웃한 문자로 제2 문자가 입력된 확률이 높은 경우,
    상기 제2 글자셋의 오타 수정 동작 점수의 총합을 일정 점수만큼 높여서 계산하는 방식에 의해 상기 점수의 총합을 가감하는 오타 수정 방법.
  19. 상기 제7 항 내지 제 18항 중 어느 한 항의 오타 수정 방법을 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록 매체.
PCT/KR2013/011872 2013-12-19 2013-12-19 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체 WO2015093656A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2013/011872 WO2015093656A1 (ko) 2013-12-19 2013-12-19 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2013/011872 WO2015093656A1 (ko) 2013-12-19 2013-12-19 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체

Publications (1)

Publication Number Publication Date
WO2015093656A1 true WO2015093656A1 (ko) 2015-06-25

Family

ID=53402988

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/011872 WO2015093656A1 (ko) 2013-12-19 2013-12-19 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체

Country Status (1)

Country Link
WO (1) WO2015093656A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040046258A (ko) * 2002-11-26 2004-06-05 엘지전자 주식회사 휴대폰의 문자 메시지 전송방법
KR100734409B1 (ko) * 2002-10-29 2007-07-03 노키아 코포레이션 핸드헬드 전자 장치에서 텍스트를 편집하는 방법 및 시스템
US20100251086A1 (en) * 2009-03-27 2010-09-30 Serge Rene Haumont Method and apparatus for providing hyperlinking in text editing
US20120254744A1 (en) * 2007-02-01 2012-10-04 David Kay Spell-check for a keyboard system with automatic correction
KR101294558B1 (ko) * 2013-04-15 2013-08-07 김민철 오타 수정 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100734409B1 (ko) * 2002-10-29 2007-07-03 노키아 코포레이션 핸드헬드 전자 장치에서 텍스트를 편집하는 방법 및 시스템
KR20040046258A (ko) * 2002-11-26 2004-06-05 엘지전자 주식회사 휴대폰의 문자 메시지 전송방법
US20120254744A1 (en) * 2007-02-01 2012-10-04 David Kay Spell-check for a keyboard system with automatic correction
US20100251086A1 (en) * 2009-03-27 2010-09-30 Serge Rene Haumont Method and apparatus for providing hyperlinking in text editing
KR101294558B1 (ko) * 2013-04-15 2013-08-07 김민철 오타 수정 방법

Similar Documents

Publication Publication Date Title
JP5878674B2 (ja) 誤字修正方法
WO2018062580A1 (ko) 문자를 번역하는 방법 및 그 장치
WO2015072612A1 (ko) 문자열 사이의 연관성 판단을 통한 오타 수정 방법
US8612213B1 (en) Correction of errors in character strings that include a word delimiter
KR101753625B1 (ko) 휴대용 단말기에서 오입력을 방지하기 위한 방법 및 장치
KR101332757B1 (ko) 삭제키 입력 없이 단어 또는 문자열을 수정하는 방법 및 이를 구현한 장치
WO2019022567A2 (en) METHOD FOR AUTOMATICALLY PROVIDING AUTOMATIC COMPLETION SUGGESTIONS BASED ON GESTURES AND ASSOCIATED ELECTRONIC DEVICE
WO2015050321A1 (ko) 자율학습 정렬 기반의 정렬 코퍼스 생성 장치 및 그 방법과, 정렬 코퍼스를 사용한 파괴 표현 형태소 분석 장치 및 그 형태소 분석 방법
WO2015002386A1 (en) Method for restoring an autocorrected character and electronic device thereof
WO2015072803A1 (ko) 단말기 및 단말기의 제어 방법
WO2018030601A1 (ko) 오타 문자 수정 방법
WO2013022204A2 (en) System and method for inputting characters in touch-based electronic device
KR20070069674A (ko) 오타수정장치와 그 방법 및 이동통신단말기
WO2015093656A1 (ko) 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체
JP2014191355A (ja) 文字入力装置及び文字入力方法
WO2016117854A1 (ko) 음성 신호를 기초로 한 텍스트 편집 장치 및 텍스트 편집 방법
WO2015093632A1 (ko) 전자 장치, 오타 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체
WO2015093655A1 (ko) 전자 장치, 문자 수정 방법 및 이를 수행하기 위한 프로그램을 포함하는 컴퓨터로 판독 가능한 기록매체
JP5913771B2 (ja) タッチ式ディスプレイの入力システムおよび入力パネルの表示方法
WO2020022645A1 (en) Method and electronic device for configuring touch screen keyboard
KR101946545B1 (ko) 오타 수정 방법
KR101901744B1 (ko) 오타 수정 방법
WO2017082624A1 (ko) 문장 예측입력시스템
WO2022169123A1 (ko) 필기 데이터 문자 인식 방법 및 그 장치
WO2022197082A1 (en) Method and electronic device for predicting plurality of multi-modal drawings

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: 13899554

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 05.10.2016)

122 Ep: pct application non-entry in european phase

Ref document number: 13899554

Country of ref document: EP

Kind code of ref document: A1