Computer-implemented method for processing a set of numerical digits
The computer-implemented method addresses errors in numerical data from speech-to-text conversions by processing numerical digits within a defined validity interval, effectively correcting errors and ensuring accuracy in automated systems.
Patent Information
- Application Number
- PCT/FI2024/050456
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-13
- Filing Date
- 2024-09-02
- Publication Date
- 2025-03-20
AI Technical Summary
Speech-to-text conversion often introduces errors in numerical data, making it difficult to detect and correct errors, especially when processing years that fall outside a defined validity interval.
A computer-implemented method that processes a set of numerical digits by obtaining a minimum and maximum year to define a validity interval, and then corrects the digits by removing or adding zeros based on this interval, ensuring the processed digits correspond to a year within the validity interval.
The method efficiently corrects numerical digit errors by ensuring the processed digits fall within a valid year range, improving the accuracy of automated systems and user experience in speech-based services.
Smart Images

Figure FI2024050456_20032025_PF_FP_ABST
Abstract
Description
COMPUTER- IMPLEMENTED METHOD FOR PROCESSING A SET OFNUMERICAL DIGITSTECHNICAL FIELD
[0001] The present disclosure relates to language processing, and more particularly to a computer-implemented method for processing a set of numerical digits , a computing device , and a computer program product .BACKGROUND
[0002] As various speech-based services are automated, there is an increasing need to process data, such as numerical data, that has been converted into text form from audio data . Such a speech-to-text conversion can introduce errors that may be difficult to detect and / or to correct .SUMMARY
[0003] This summary is provided to introduce a selection of concepts in a s implif ied form that are further described below in the detailed description . This summary is not intended to identify key features or essential features of the claimed subj ect matter, nor is it intended to be used to limit the scope of the claimed subj ect matter .
[0004] It is an obj ective to provide a computer-implemented method for processing a set of numerical digits , a computing device , and a computer program product .The foregoing and other obj ectives are achieved by the features of the independent claims . Further implementation forms are apparent from the dependent claims , the description and the figures .
[0005] According to a first aspect, a computer-implemented method for processing a set of numerical digits comprises : obtaining a set of numerical digits to be processed; obtaining a minimum year and a maximum year, wherein the minimum year and the maximum year define a validity time interval for the set of numerical digits ; and processing the set of numerical digits based at least on the minimum year and the maximum year, thus obtaining a processed set of numerical digits , wherein the processed set of numerical digits corresponds to a year within the validity time interval ; wherein the processing the set of numerical digits comprises processing the set of numerical digits based at least on a number of zero digits in the set of numerical digits . The method can, for example , efficiently correct the set of numerical digits to correspond to a year within the validity time interval .
[0006] In an implementation form of the first aspect , the processing the set of numerical digits further comprises removing at least one zero digit from the set of numerical digits based at least on the minimum year and the maximum year . The method can, for example , efficiently correct the set of numerical digits to correspond to a year within the validity time interval byremoving at least one zero digit from the set of numerical digits .
[0007] In another implementation form of the first aspect , the processing the set of numerical digits further comprises removing at least one zero digit from the set of numerical digits in response to the set of numerical digits corresponding to a year greater than the maximum year . The method can, for example , efficiently correct the set of numerical digits to correspond to a year within the validity time interval when the set of numerical digits corresponds to a year greater than the maximum year .
[0008] In another implementation form of the first aspect , the processing the set of numerical digits further comprises : obtaining a threshold value for a maximum number of digits ; and in response to the set of numerical digits comprising more digits than the threshold value for the maximum number of digits and / or the set of numerical digits corresponding to a year greater than the maximum year, removing at least one zero digit from the set of numerical digits . The method can, for example , efficiently correct typical errors in the set of numerical digits by removing at least one zero digit from the set of numerical digits .
[0009] In another implementation form of the first aspect , the removing at least one zero digit from the set of numerical digits comprises : in response to the set of numerical digits comprising two sets of two consecutive zero digits and the set of numerical digitscomprising six digits , removing a first of the two sets of two consecutive zero digits ; and / or in response to the set of numerical digits not compris ing two sets of two consecutive zero digits and / or the set of numerical digits not comprising six digits , removing one zero digit from both of the two sets of two consecutive zero digits . The method can, for example , efficiently correct typical errors in the set of numerical digits by removing at least one zero digit from the set of numerical digits .
[0010] In another implementation form of the first aspect , the processing the set of numerical digits further comprises : after the removing the at least one zero digit from the set of numerical digits , in response to the set of numerical digits comprising two zero digits , forming a f irst candidate by removing a first digit of the two zero digits and a second candidate by removing a second digit of the two zero digits ; in response to one of : the first candidate and the second candidate , being within the validity time interval , selecting the candidate within the validity time interval ; in response to neither of : the f irst candidate and the second candidate , being within the validity time interval , removing the two zero digits . The method can, for example , efficiently correct typical errors in the set of numerical digits by forming the first candidate and the second candidate .
[0011] In another implementation form of the first aspect , the processing the set of numerical digits further comprises : in response to the set of numerical digits corresponding to a year less than the minimum year, adding at least one digit into the set of numerical digits . The method can, for example , efficiently correct typical errors in the set of numerical digits by adding at least one digit into the set of numerical digits .
[0012] In another implementation form of the first aspect , the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising one digit and the validity time interval comprising a first decade , obtaining the processed set of numerical digits by concatenating first two digits of the maximum year, a zero digit , and the set of numerical digits . The method can , for example, efficiently correct the set of numerical digits by adding the at least one digit into the set of numerical digits when the set of numerical digits comprises one digit and the val idity time interval comprises a first decade .
[0013] In another implementation form of the first aspect , the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising two digits and the set of numerical digits representing a numerical value less than or equal to a numerical value represented by last two digits of the maximum year, obtaining the processedset of numerical digits by concatenating first two digits of the maximum year and the set of numerical digits ; and / or in response to the set of numerical digits comprising two digits and the set of numerical digits not representing a numerical value less than or equal to a numerical value represented by the last two digits of the maximum year, obtaining the processed set of numerical digits by concatenating first two digits of the minimum year and the set of numerical digits . The method can, for example , efficiently correct the set of numerical digits by adding the at least one digit into the set of numerical digits when the set of numerical digits comprises two digits .
[0014] In another implementation form of the first aspect , the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits compri sing three digits and set of numerical digits representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, forming an intermediate result by concatenating a first digit of the maximum year and the set of numerical digits ; in response to the set of numerical digits comprising three digits and set of numerical digits not representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, forming the intermediate result by concatenating a first digit of the minimum year and the set of numerical digits ; in response to the intermediate result being less than the minimum year, obtaining the processed set of numericaldigits by removing zero digits from the intermediate result and concatenating first two digits of the minimum year and the intermediate result ; and in response to the intermediate result not being les s than the minimum year, providing the intermediate result as the processed set of numerical digits . The method can, for example , efficiently correct the set of numerical digits by adding the at least one digit into the set of numerical digits when the set of numerical digits comprises three digits .
[0015] In another implementation form of the first aspect , the obtaining the set of numerical digits comprises : obtaining a string of characters ; and converting the string of characters into the set of numerical digits . The method can, for example , efficiently correct errors in the set of numerical digits caused by the string of characters .
[0016] In another implementation form of the first aspect , the obtaining the string of characters comprises : obtaining an audio input comprising speech; and converting the audio input into the string of characters using a speech-to-text conversion . The method can, for example , efficiently correct errors in the set of numerical digits caused by the speech-to-text conversion .
[0017] According to a second aspect , a computing device compri ses at least one processor and at least one memory including computer program code , the at least one memory and the computer program code being configured to , with the at least one proces sor, cause the computingdevice to perform the method according to the first aspect .
[0018] According to a third aspect , a computer program product comprises program code configured to perform the method according to the first aspect when the computer program product is executed on a computer .
[0019] Many of the attendant features wil l be more readily appreciated as they become better understood by reference to the following detailed description considered in connection with the accompanying drawings .DESCRIPTION OF THE DRAWINGS
[0020] In the following, example embodiments are described in more detail with reference to the attached figures and drawings , in which :
[0021] Fig . 1 illustrates a flow chart representation of a method according to an embodiment ;
[0022] Fig . 2 illustrates a schematic representation of a computing device according to an embodiment ;
[0023] Fig . 3 illustrates a flow chart representation of a method according to another embodiment ; and
[0024] Fig . 4 illustrates a flow chart representation of a method according to another embodiment .
[0025] In the following, like reference numerals are used to des ignate li ke parts in the accompanying drawings .DETAILED DESCRIPTION
[0026] In the following description, reference is made to the accompanying drawings , which form part of the disclosure , and in which are shown, by way of illustration, specific aspects in which the present disclosure may be placed . It is understood that other aspects may be utilised, and structural or logical changes may be made without departing from the scope of the present disclosure . The following detailed description, therefore , is not to be taken in a limiting sense , as the scope of the present disclosure is defined by the appended claims .
[0027] For instance , it is understood that a disclosure in connection with a described method may also hold true for a corresponding device or system configured to perform the method and vice versa . For example , if a specific method step is described, a corresponding device may include a unit to perform the described method step, even if such unit is not explicitly described or il lustrated in the f igures . On the other hand, for example , if a specific apparatus is described based on functional units , a corresponding method may include a step performing the described functionality, even if such step is not explicitly described or illustrated in the figures . Further, it is understood that the features of the various example aspects described herein may be combined with each other, unless specifically noted otherwise .
[0028] Fig . 1 illustrates a flow chart representation of a method according to an embodiment .
[0029] According to an embodiment , a computer-implemented method 100 for processing a set of numerical digits comprises obtaining 101 a set of numerical digits to be processed .
[0030] The set of numerical digits may comprise , for example , a year that has been converted to the set of numerical digits from text . The conversion may have introduced, for example , errors or the text may be incomplete . Various examples of such situations are disclosed herein .
[0031] The set of numerical digits may also be referred to as a set of digits , a set , and / or similar .
[0032] The method 100 may further comprise obtaining102 a minimum year and a maximum year, wherein the minimum year and the maximum year define a validity time interval for the set of numerical digits .
[0033] The minimum year and the maximum year may be , for example , preconfigured values . For example , the minimum and maximum year may be preconfigured based on the application the method 100 is used in . For example , i f the set of numerical digits should correspond to a birth year, the minimum year can be set to 1900 and the maximum year can be set to the current year .
[0034] The method 100 may further comprise processing103 the set of numerical digits based at least on the minimum year and the maximum year, thus obtaining a processed set of numerical digits , wherein the processed set of numerical digits corresponds to a year within the validity time interval , wherein the processing the setof numerical digits comprises processing the set of numerical digits based at least on a number of zero digits in the set of numerical digits .
[0035] The validity time interval can define a time interval within which the year corresponding to the processed set of numerical digits should be .
[0036] The process ing 103 can correct the set of numerical digits into the processed set of numerical digits based on the minimum year and the maximum year .
[0037] According to an embodiment , the obtaining 101 the set of numerical digits comprises : obtaining a string of characters ; and converting the string of characters into the set of numerical digits .
[0038] The string of characters may also be referred to as text , text data, or similar .
[0039] According to an embodiment , the obtaining the string of characters comprises : obtaining an audio input comprising speech; and converting the audio input into the string of characters using a speech-to-text conversion .
[0040] The audio input may also be referred to as audio data, audio information, an audio file , or simi lar .
[0041] The audio input may comprise , for example , a batch of audio as an audio file or a continuous audio stream .
[0042] The method 100 can, for example , correct sets of numerical digits 900709 , 190079 , 190086 , 19607 , and407 into processed sets of numerical digits 1979, 1979, 1986, 1967, and 1947, respectively.
[0043] For example, when asked for a year, a user may give the year orally in a shortened form. For example, the user may respond "79" when meaning the year 1979.
[0044] Similarly, depending on the language the user is speaking, the speech-to-text conversion may be sensitive to pauses between words. For example, if the user gives the year 1979 in Finnish by saying "tuhat yhdeksansataa seitsemankymmenta yhdeksan" and there are long pauses between the words, this may be converted to "1000900709" by the speech-to-text conversion. In other contexts, this conversion may be correct, if the user is, for example giving a bank account number or a phone number. Thus, it can be difficult to correct such errors without knowing the context of the input.
[0045] The processing 103 the set of numerical digits based at least on a number of zero digits in the set of numerical digits may, for example, convert a set of numerical digits "190086" to "1986".
[0046] Other issue may also be introduced by, for example, the speech-to-text conversion. For example, the first digit of a year may be omitted. For example, a user my give the year 1982 and the speech-to-text conversion may convert this into "982".
[0047] The method 100 may correct at least some of these errors my utilizing the minimum and maximum year. Thus, the user experience of, for example, automated customer service can be improved, speed of such servicescan be improved, and automation of such services can be made easier .
[0048] Fig . 2 illustrates a schematic representation of a computing device according to an embodiment .
[0049] According to an embodiment , a computing device 200 comprises at least one processor 201 and at least one memory 202 including computer program code , the at least one memory 202 and the computer program code configured to , with the at least one processor 201 , cause the computing device 200 to perform the method 100 .
[0050] The computing device 200 may comprise at least one processor 201 . The at least one processor 201 may comprise , for example , one or more of various processing devices , such as a co-proces sor, a microprocessor, a digital signal processor ( DSP) , a processing circuitry with or without an accompanying DSP, or various other processing devices including integrated circuits such as , for example , an application specific integrated circuit (AS IC) , a field programmable gate array ( FPGA) , a microprocessor unit (MCU) , a hardware accelerator, a special-purpose computer chip, or the like .
[0051] The computing device 200 may further comprise a memory 202 . The memory 202 may be configured to store , for example , computer programs and the like . The memory 202 may comprise one or more volatile memory devices , one or more non-volati le memory devices , and / or a combination of one or more volatile memory devices and nonvolatile memory devices . For example , the memory 202 may be embodied as magnetic storage devices ( such as harddisk drives , magnetic tapes , etc . ) , optical magnetic storage devices , and semiconductor memories ( such as mask ROM, PROM (programmable ROM) , EPROM (erasable PROM) , flash ROM, RAM ( random access memory) , etc . ) .
[0052] The computing device 200 may further comprise other components not illustrated in the embodiment of Fig . 2 . The computing device 200 may comprise , for example , an input / output bus for connecting the computing device 200 to other devices . Further, a user may control the computing device 200 via the input / output bus .
[0053] When the computing device 200 is configured to implement some functionality, some component and / or components of the computing device 200 , such as the at least one processor 201 and / or the memory 202 , may be configured to implement this functionality . Furthermore , when the at least one processor 201 is configured to implement some functionality, this functionality may be implemented using program code comprised, for example , in the memory .
[0054] The computing device 200 may be implemented at least partially using, for example , a computer, some other computing device , or similar .
[0055] The method 100 and / or the computing device 200 may be utilised in, for example , automatic speech recognition (ASR) application such as in a so-called voice- bot . A voicebot may be configured to obtain information from users by, for example, phone and convert the voice information into text information using ASR . The method 100 may be used to correct years that have been, forexample, converted incorrectly by the ASR . The voicebot may further be configured to further process , such as classify, the text information . The voicebot can, for example, ask questions about, for example , basic information from a customer in a customer service situation over the phone , obtain the answers using ASR and the method 100 , and save the information in a system . Thus , the customer service situation can be made more efficient and user experience can be improved .
[0056] Fig . 3 illustrates a flow chart representation of a method according to another embodiment .
[0057] The embodiment of Fig . 3 only illustrates one possible implementation of at least some parts of the method 100 . The method 100 can also be implemented in various other ways .
[0058] In the embodiment of Fig . 3 , the obtaining 101 the set of numerical digits is performed by obtaining 302 a year and converting 303 the year to the set of numerical digits . Thus , the obtaining 102 the minimum year and the maximum year is performed before the obtaining 101 the set of numerical digits . In any embodiment , the operations 101 and 102 may be performed in any order .
[0059] The year obtained in operation 302 may comprise errors , such as those disclose herein . For example, the year may not be within the validity time interval .
[0060] Herein, a year may also be referred to as a numerical value or similar .
[0061] According to an embodiment , the processing the set of numerical digits further comprises removing at least one zero digit from the set of numerical digits based at least on the minimum year and the maximum year .
[0062] For example , the embodiment of Fig . 3 illustrates one example of how at least one zero digit can be removed from the set of numerical digits based at least on the minimum year and the maximum year as further discussed herein . In the embodiment of Fig . 3 , various conditions are used to determine whether at least one zero digit should be removed .
[0063] According to an embodiment , the processing the set of numerical digits further comprises removing at least one zero digit from the set of numerical digits in response to the set of numerical digits corresponding to a year greater than the maximum year .
[0064] For example , in the embodiment of Fig . 3 , in operation 304 , the year represented by the set of numerical digits can be compared to the maximum year . In response to the year represented by the set of numerical digits being greater than the maximum year, the procedure can move to operation 305 . Otherwise , the procedure can move to operation 318 . In operation 305 , a set of three consecutive zero digits " 000" in the set of numerical digits is replaced with a set of two consecutive zero digits " 00" . In response to the set of numerical digits not comprising a set of three consecutive zero digits , operation 305 can be omitted .
[0065] According to an embodiment , the processing the set of numerical digits further comprises : obtaining a threshold value for a maximum number of digits ; and in response to the set of numerical digits comprising more digits than the threshold value for the maximum number of digits and / or the set of numerical digits corresponding to a year greater than the maximum year, removing at least one zero digit from the set of numerical digits .
[0066] For example in the embodiment of Fig . 3 , in operation 306 , in response to the number of digits in the set of numerical digits being greater than four or the set of numerical digits corresponding to a year greater than the maximum year, the procedure can move to operation 307 . Otherwise , the procedure can move to operation 316 .
[0067] The number of digits in the set of numerical digits may also be referred to as a length of the set of numerical digits or similar .
[0068] According to an embodiment , the removing at least one zero digit from the set of numerical digits comprises : in response to the set of numerical digits comprising two sets of two consecutive zero digits and the set of numerical digits compri sing s ix digits , removing a first of the two sets of two consecutive zero digits ; and / or in response to the set of numerical digits not comprising two sets of two consecutive zero digits and / or the set of numerical digits not comprising six digits , removing one zero digit from both of the two sets of two consecutive zero digits .
[0069] For example, in the embodiment of Fig. 3, in operation 307, the procedure can move to operation 309 in response to the set of numerical digits comprising two sets of two consecutive zero digits and the set of numerical digits comprising six digits. Otherwise, the procedure can move to operation 308. In operation 309, a first of the two sets of two consecutive zero digits can be removed and the procedure can move to operation 310. In operation 308, one zero digit can be removed from at least one set of two consecutive zero digits and the procedure can move to operation 310.
[0070] Thus, operations 305 - 309 can, for example, correct a set of numerical digits "1000900" first into "100900" and then into "1900".
[0071] In the embodiment of Fig. 3, operations 305 - 309 can function as one example of removing the at least one zero digit from the set of numerical digits.
[0072] According to an embodiment, the processing the set of numerical digits further comprises: after the removing the at least one zero digit from the set of numerical digits, in response to the set of numerical digits comprising two zero digits, forming a first candidate by removing a first digit of the two zero digits and a second candidate by removing a second digit of the two zero digits; in response to one of: the first candidate and the second candidate, being within the validity time interval, selecting the candidate within the validity time interval; in response to neither of: the first candidate and the second candidate, being withinthe validity time interval , removing the two zero digits .
[0073] For example , in the embodiment of Fig . 3 , in operation 310 , in response to the set of numerical digits comprising more than four digits or the numerical digits corresponding year greater than the maximum year, the procedure can move to operation 311 . Otherwise , the procedure can move to operation 316 .
[0074] In operation, 311 , in response to the set of numerical digits comprising two zero digits , the procedure can move to operation 312 . Otherwise , the procedure can move to operation 316 .
[0075] In operation 312 , a first candidate can be formed by removing a first digit of the two zero digits and a second candidate can be formed by removing a second digit of the two zero digits .
[0076] In operation 313 , in response to one of : the first candidate and the second candidate , being within the validity time interval , the candidate within the validity time interval can be selected in operation 314 . Otherwise the two zero digits can be removed in operation 315 .
[0077] The selecting the candidate within the validity time interval in operation 314 can comprise using the selected candidate as the set of numerical digits for any further processing .
[0078] In operation 316 , in response to the set of numerical digits corresponding to a year less than theminimum year, the procedure can move to operation 317 . Otherwise the procedure can move to operation 319 .
[0079] In operation 318 , in response to the year corresponding to the set of numerical digits being less than the minimum year, the procedure can move to operation 317 . Otherwi se , the procedure can move to operation 319 .
[0080] In operation 317 , at least one digit can be added into the set of numerical digits . This can be also referred to as filling in at least one digit into the set of numerical digits . An embodiment of the adding at least one digit into the set of numerical digits is illustrated in Fig . 4 .
[0081] In operation 319 , the processed set of numerical digits can be provided as a result .
[0082] For example , if the procedure of Fig . 3 is implemented as a software function / method, operation 319 can comprise the function / method returning the processed set of numerical digits .
[0083] Fig . 4 illustrates a flow chart representation of a method according to another embodiment .
[0084] The embodiment of Fig . 4 only illustrates one possible implementation of at least some parts of the method 100 . The method 100 can also be implemented in various other ways .
[0085] According to an embodiment , the processing the set of numerical digits further comprises : in response to the set of numerical digits corresponding to a yearless than the minimum year, adding at least one digit into the set of numerical digits .
[0086] The embodiment of Fig . 4 illustrates one example of adding the at least one digit into the set of numerical digits .
[0087] In operation 401 , the set of numerical digits can be obtained .
[0088] According to an embodiment , the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising one digit and the validity time interval comprising a f irst decade , obtaining the processed set of numerical digits by concatenating first two digits of the maximum year, a zero digit , and the set of numerical digits .
[0089] For example , in the embodiment of Fig . 4 , in operation 402 , in response to the set of numerical digits compris ing one digit the procedure can move to operation 404 . In operation 404 , in response to the validity time interval comprising a first decade , the procedure can move to operation 405 .
[0090] Herein, a first decade may refer to the f irst ten years of any century . For example , the first decade of the 20th century may refer to years 1900 - 1909 and the first decade of the 21st century may refer to years 2000 - 2009 .
[0091] In operation 405 , a concatenation of the first two digits of the maximum year, a zero digit , and theset of numerical digits can be provided . Otherwise , in operation 404 , the procedure can move to operation 403 .
[0092] In Fig . 4 , concatenation is illustrated by the symbol | | .
[0093] In operation 402 , in response to the set of numerical digits comprising zero or more than three digits , the procedure can move to operation 403 . In operation 403 , the set of numerical digits can be provided .
[0094] According to an embodiment , the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising two digits and the set of numerical digits representing a numerical value less than or equal to a numerical value represented by last two digits of the maximum year, obtaining the processed set of numerical digits by concatenating first two digits of the maximum year and the set of numerical digits ; and / or in response to the set of numerical digits compri sing two digits and the set of numerical digits not representing a numerical value less than or equal to a numerical value represented by the last two digits of the maximum year, obtaining the processed set of numerical digits by concatenating first two digits of the minimum year and the set of numerical digits .
[0095] For example , in the embodiment of Fig . 4 , in operation 402 , in response to the set of numerical digits comprising two digits , the procedure can move to operation 406 . In operation 406 , in response to the set of numerical digits representing a numerical value les sthan or equal to a numerical value represented by last two digits of the maximum year, the procedure can move to operation 407 . Otherwise , the procedure can move to operation 408 . In operation 407 , a concatenation of first two digits of the maximum year and the set of numerical digits can be provided . In operation 408 , a concatenation of first two digits of the minimum year and the set of numerical digits can be provided .
[0096] According to an embodiment , the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising three digits and set of numerical digits representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, forming an intermediate result by concatenating a first digit of the maximum year and the set of numerical digits ; in response to the set of numerical digits comprising three digits and set of numerical digits not representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, forming the intermediate result by concatenating a first digit of the minimum year and the set of numerical digits ; in response to the intermediate result being less than the minimum year, obtaining the proces sed set of numerical digits by removing zero digits from the intermediate result and concatenating first two digits of the minimum year and the intermediate result ; and in response to the intermediate result not being les s than the minimum year, providingthe intermediate result as the processed set of numerical digits.
[0097] For example, in the embodiment of Fig. 4, in operation 402, in response to the set of numerical digits comprising three digits, the procedure can move to operation 409. In operation 409, in response to the set of numerical digits representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, the procedure can move to operation 410. Otherwise, the procedure can move to operation 411. In operation 410, an intermediate result can be formed by concatenating a first digit of the maximum year and the set of numerical digits. In operation 411, the intermediate result can be formed by concatenating a first digit of the minimum year and the set of numerical digits.
[0098] In operation 412, in response to the intermediate result formed in operation 410 or in operation 411 being less than the minimum year, the procedure can move to operation 413. Otherwise, the procedure can move to operation 414. In operation 413, zero digits can be removed from the intermediate result and a concatenation of first two digits of the minimum year and the intermediate result can be provided. In operation 414, the intermediate result can be provided.
[0099] If the procedure of Fig. 4 is implemented as a software function / method, operations 403, 405, 407, 408, 413, and / or 414 can comprise the function / method returning the corresponding data. The provided / returneddata can then be used by, for example , the procedure of Fig . 3 .
[0100] At least some embodiments disclosed herein can correct the set of numerical digits in the following manner when the minimum year is set to 1900 and the maximum year is set to 2023 . The set of numerical digits "1000900709" is corrected to "100900709" then to "1090709" and then to "1979" . The set of numerical digits "1900805" is corrected to "190805" and then to "1985" . The set of numerical digits " 976" is corrected to "1976" . The set of numerical digits "11" is corrected to "2011" . The set of numerical digits " 606" is corrected to "1606" and then to "1966" .
[0101] Any range or device value given herein may be extended or altered without losing the effect sought . Also any embodiment may be combined with another embodiment unless explicitly disallowed .
[0102] Although the subj ect matter has been described in language specific to structural features and / or acts , it is to be understood that the subj ect matter defined in the appended claims is not necessarily limited to the specific features or acts described above . Rather, the specific features and acts described above are disclosed as examples of implementing the claims and other equivalent features and acts are intended to be within the scope of the claims .
[0103] It will be understood that the benefits and advantages described above may relate to one embodiment or may relate to several embodiments . The embodimentsare not limited to those that solve any or all of the stated problems or those that have any or all of the stated benefits and advantages . It wil l further be understood that reference to ' an ' item may refer to one or more of those items .
[0104] The steps of the methods described herein may be carried out in any suitable order, or simultaneously where appropriate . Additionally, individual blocks may be deleted from any of the methods without departing from the spirit and scope of the subj ect matter described herein . Aspects of any of the embodiments described above may be combined with aspects of any of the other embodiments described to form further embodiments without losing the effect sought .
[0105] The term ' comprising ' is used herein to mean including the method, blocks or elements identified, but that such blocks or elements do not comprise an exclusive list and a method or apparatus may contain additional blocks or elements .
[0106] It will be understood that the above description is given by way of example only and that various modif ications may be made by those ski lled in the art . The above specification, examples and data provide a complete description of the structure and use of exemplary embodiments . Although various embodiments have been described above with a certain degree of particularity, or with reference to one or more individual embodiments , those skilled in the art could make numerous alterations to the disclosed embodiments withoutdeparting from the spirit or scope of this specification .
Claims
CLAIMS :1 . A computer-implemented method ( 100 ) for processing a set of numerical digits , the method ( 100 ) comprising : obtaining ( 101 ) a set of numerical digits to be processed by obtaining an audio input compri sing speech, converting the audio input into a string of characters using a speech-to-text conversion, and converting the string of characters into the set of numerical digits ; obtaining ( 102 ) a minimum year and a maximum year, wherein the minimum year and the maximum year define a validity time interval for the set of numerical digits ; and processing ( 103 ) the set of numerical digits based at least on the minimum year and the maximum year, thus obtaining a processed set of numerical digits , wherein the processed set of numerical digits corresponds to a year within the validity time interval ; and providing the processed set of numerical digits as a result ; wherein the processing the set of numerical digits comprises processing the set of numerical digits based at least on a number of zero digits in the set of numerical digits .2 . The computer-implemented method ( 100 ) according to claim 1 , wherein the processing ( 103 ) the set of numerical digits further comprises removing at leastone zero digit from the set of numerical digits based at least on the minimum year and the maximum year .3 . The computer-implemented method ( 100 ) according to claim 2 , wherein the proces sing ( 103 ) the set of numerical digits further comprises removing at least one zero digit from the set of numerical digits in response to the set of numerical digits corresponding to a year greater than the maximum year .4 . The computer-implemented method ( 100 ) according to any preceding claim, wherein the processing ( 103 ) the set of numerical digits further comprises : obtaining a threshold value for a maximum number of digits ; and in response to the set of numerical digits comprising more digits than the threshold value for the maximum number of digits and / or the set of numerical digits corresponding to a year greater than the maximum year, removing at least one zero digit from the set of numerical digits .5 . The computer-implemented method ( 100 ) according to claim 4 , wherein the removing at least one zero digit from the set of numerical digits comprises : in response to the set of numerical digits comprising two sets of two consecutive zero digits and the set of numerical digits compri sing s ix digits , removing a first of the two sets of two consecutive zero digits ; and / orin response to the set of numerical digits not comprising two sets of two consecutive zero digits and / or the set of numerical digits not comprising six digits , removing one zero digit from at least one set of two consecutive zero digits .6 . The computer-implemented method ( 100 ) according to claim 5 , wherein the processing ( 103 ) the set of numerical digits further comprises : after the removing the at least one zero digit from the set of numerical digits , in response to the set of numerical digits comprising two zero digits , forming a first candidate by removing a first digit of the two zero digits and a second candidate by removing a second digit of the two zero digits ; in response to one of : the first candidate and the second candidate , being within the validity time interval , selecting the candidate within the validity time interval ; in response to neither of : the first candidate and the second candidate , being within the validity time interval , removing the two zero digits .7 . The computer-implemented method ( 100 ) according to any preceding claim, wherein the processing ( 103 ) the set of numerical digits further comprises : in response to the set of numerical digits corresponding to a year less than the minimum year, adding at least one digit into the set of numerical digits .8 . The computer-implemented method ( 100 ) according to claim 7 , wherein the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising one digit and the validity time interval comprising a f irst decade , obtaining the processed set of numerical digits by concatenating first two digits of the maximum year, a zero digit , and the set of numerical digits .9 . The computer-implemented method ( 100 ) according to any of claims 7 - 8 , wherein the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising two digits and the set of numerical digits representing a numerical value less than or equal to a numerical value represented by last two digits of the maximum year, obtaining the processed set of numerical digits by concatenating first two digits of the maximum year and the set of numerical digits ; and / or in response to the set of numerical digits comprising two digits and the set of numerical digits not representing a numerical value less than or equal to a numerical value represented by the last two digits of the maximum year, obtaining the processed set of numerical digits by concatenating first two digits of the minimum year and the set of numerical digits .10 . The computer-implemented method ( 100 ) according to any of claims 7 - 9 , wherein the adding the at least one digit into the set of numerical digits comprises : in response to the set of numerical digits comprising three digits and set of numerical digits representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, forming an intermediate result by concatenating a first digit of the maximum year and the set of numerical digits ; in response to the set of numerical digits comprising three digits and set of numerical digits not representing a numerical value less than or equal to a numerical value represented by last three digits of the maximum year, forming the intermediate result by concatenating a first digit of the minimum year and the set of numerical digits ; in response to the intermediate result being less than the minimum year, obtaining the processed set of numerical digits by removing zero digits from the intermediate result and concatenating first two digits of the minimum year and the intermediate result ; and in response to the intermediate result not being less than the minimum year, providing the intermediate result as the processed set of numerical digits .11 . A computing device ( 200 ) , comprising at least one processor ( 201 ) and at least one memory ( 202 )including computer program code, the at least one memory (202) and the computer program code configured to, with the at least one processor (201) , cause the computing device (200) to perform the method (100) according to any preceding claim.
12. A computer program product comprising program code configured to perform the method (100) according to any of claims 1 - 10 when the computer program product is executed on a computer.
Citation Information
Patent Citations
Inverse Text Normalization
US20090157385A1
Tool and framework for creating consistent normalization maps and grammars
US20100191519A1