Abstract:
In accordance with a first aspect of the invention, there is provided a method comprising receiving an input as part of a translation request from a requestor, performing a first translation of the input; wherein the first translation is a machine translation, returning the first translation to the requestor; and based on feedback on the first translation from the requestor performing the following (a) fragmenting the input into multiple translation jobs, (b) distributing the multiple translation jobs to a plurality of human translators; (c) generating a second translation of the input based on translations of the multiple jobs by the human translators; and (d) returning the second translation to the requestor.

Description:
[0001]    This application claims the benefit of priority to U.S. 61/052,558, filed May 12, 2008, the specification of which is hereby incorporated by reference. 
     
    
     FIELD 
       [0002]    Embodiments of the present invention relate to a method and system for cross-cultural communication. 
       BACKGROUND 
       [0003]    There are many contexts under which cross-cultural communication takes place. For example, when a person travels abroad, there is obviously a need for some cross-cultural communication. Immigration today is quite commonplace and provides another context for cross-cultural communication. Naturally, business provides yet a further context for cross-cultural communication. 
         [0004]    With regard the business context, in order to remain competitive, businesses today are forced to operate globally. This phenomenon is known as globalization. As a result of globalization, it is not uncommon for a business to have say a sales and marketing operation in one country, an engineering and development team in a second country, and a manufacturing team in a third country. Obviously globalization leads to fragmentation of a business. However, such fragmentation is justified by cheaper labor costs, low tax rates, government incentives, access to skilled labor, etc. However, globalization is being impeded by the language barrier inherent in cross-cultural communication as often the diverse teams that make up a global business each speak a different language. 
       SUMMARY 
       [0005]    In accordance with a first aspect of the invention, there is provided a method comprising receiving an input as part of a translation request from a requestor, performing a first translation of the input; wherein the first translation is a machine translation, returning the first translation to the requestor; and based on feedback on the first translation from the requestor performing the following (a) fragmenting the input into multiple translation jobs, (b) distributing the multiple translation jobs to a plurality of human translators; (c) generating a second translation of the input based on translations of the multiple jobs by the human translators; and (d) returning the second translation to the requestor. 
         [0006]    The method may be performed by a translation system. 
         [0007]    The translation request may be received from the requestor over a wide area network (WAN) such as the Internet. 
         [0008]    In one embodiment, the requestor may generate the request using a client device such as a mobile phone or personal computer (PC). 
         [0009]    Advantageously, the client device may be provisioned with software to facilitate creating and uploading the request to the translation system over the WAN. The request, in one embodiment, is to a web service implementing the method. In one embodiment, the translations may be requested via the web service using only a single click. The term “single click” is to be interpreted broadly to mean a single operation such as the selecting a “translation button” once only. 
         [0010]    The method may include adapting the algorithms used to perform the machine translation based on analysis of the translations of the multiple jobs by the human translators. 
         [0011]    In accordance with a second embodiment of the invention, there is provided a system comprising a request manager to receive a translation request from a requestor, the translation request comprising an input to be translated; and a translation manager comprising a machine translation server to generate a machine translation of the input based on a machine translation process; and a human translation server to generate a human translation of the input by (a) fragmenting the input into a plurality of individual translation jobs; (b) transmitting the individual translation jobs to a plurality of human translators, (c) receiving human translations of the individual translation jobs from the plurality of human translators; and (d) assembling the individual human translations into the human translation. 
         [0012]    The system may comprise an adaptation engine to adapt the machine translation process based on the human translations. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS  
         [0013]      FIG. 1  shows a network architecture within which embodiments of the invention may be practiced. 
           [0014]      FIG. 2  shows a user interface for a translation service, in accordance with one embodiment of the invention. 
           [0015]      FIG. 3  shows a flowchart of a translation method, in accordance with one embodiment of the invention. 
           [0016]      FIG. 4  shows hardware that may be used to implement a translation system, in accordance with one embodiment of the invention 
       
    
    
     DESCRIPTION 
       [0017]    In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art that the invention can be practiced without these specific details. 
         [0018]    Reference in this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not other embodiments. 
         [0019]    Broadly, embodiments of the invention disclose a translation system and method for translating input. Typically, the input may be in the form of text in one language embodied in a translation request to translate the text into a second language. Referring to  FIG. 1  of the drawings, a requestor/user (not shown) sends a translation request  100  to the translation system  102 . The translation request  100  is sent via communication network  104 . In accordance with embodiments of the invention, the communications network  104  may be a wide area network (WAN) such as the Internet. The request  100  is generated using a client system  106 . The client system may comprise a client device  108  coupled to a separate capture device  110 . For example the client device  108  may be a personal computer such as a desktop or laptop computer, and the capture device  110  may be a scanner. In this case the request  100  may comprise input in the form of a scanned image of a document to be translated. In some embodiments, the client device  108  and the capture device  110  may be integrated as in the case of a mobile phone where the capture device may be a camera of the mobile phone. In this case the request  100  may comprise input in the form of a photograph of a document to be translated. In some cases the translation request may include a photograph containing words to be translated, e.g. a photograph of a sign with the words to be translated. 
         [0020]    In  FIG. 1 , the translation system  102  is illustrated schematically in block diagram form only. In practice, one of ordinary skill in the art would understand how to architect the translation system  102  given the functionality to be described. An example of one implementation of the system  102  is shown in  FIG. 3  of the drawings and is described later. 
         [0021]    As will be seen, the translation system  102  comprises a request manager  112 , a translation manager  114 , a machine translation server  116 , and a human translation server  118 . The request manager  112  implements functionality whereby the request  100  may be received from the client device  108  and tracked within the translation system  102 . In one embodiment, the request manager may generate a user interface (UI) which is presented to the requestor to facilitate formation of the request  100 . An example of the UI is shown in  FIG. 2  of the drawings. As will be seen, via the UI the user is given an option to select the type of translation required. Choices for the type of translation include an online human translation, a standard business translation, and a top quality translation. Price and turnaround time for each of the translation types are indicated. The UI  200  has fields for inputting the requestor&#39;s e-mail address, name, telephone number and any comments that the requestor wishes to add. The UI  200  also includes a “submit” button. Activation or selection of the “submit” button causes the request  100  to be formulated and transmitted via the communications network  104  to the translation system  102 . Advantageously, only a single click of the “submit” button causes the request  100  to be transmitted to the translation system  102 . 
         [0022]    In one embodiment of the invention, the UI  200  is not generated by the translation system  102  as described above. Instead the UI  200  is generated by client software running on the client device  108 . In one embodiment, the client software is available as a download from the translation system  102 . 
         [0023]    Upon receipt of the request  100  from the client device  108 , the request manager  112  sends a request to the translation manager  114 . In one embodiment, the translation manager  114  implements functionality to achieve final translation of the input contained in the request  100 . There are several ways in which the translation manager  114  achieves translation of the input. For example, in one embodiment the translation manager  114  first sends the input to the machine translation server  116 . The machine translation server  116  implements a machine translation process to translate the input to produce a machine translation thereof. This machine translation may be sent to the client device  108  via the request manager  112 . The machine translation process may employ optical character recognition (OCR) techniques, in one embodiment. Since no human input was required to produce the machine translation, it will be appreciated that the cost of the machine translation is relatively cheap. Via the UI  200 , the requester may indicate that he/she is not satisfied with the machine translation. In this case, the translation manager  114  sends the input to the human translation server  118  which then partitions or fragments the input into individual jobs. These jobs are then handed or distributed to a plurality of human translators for human translation of the individual jobs. 
         [0024]    The translation workflow just described is illustrated in  FIG. 3  of the drawings. Referring to  FIG. 3  of the drawings, input  300  is subjected to primary translation by the machine translation server  116 . End-user  302  decides whether the translation quality is acceptable. If the translation quality is acceptable, then the translation process is terminated. Upon termination of the translation process a back-end machine translation server  116  executes an adaptation algorithm to adapt a translation engine used to perform the machine translation process based on the satisfactory machine translation just performed. 
         [0025]    In the case where the end-user  302  has indicated that the translation quality is unacceptable, the input  300  is fed to the human translation server  118 , as can be seen in  FIG. 3  of the drawings. The human translation server  118  partitions or fragments the input  300  into a plurality of individual jobs which are then distributed to human translators  304 . The human translators  304  perform a secondary translation comprising a human translation of the individual jobs. The human translations corresponding to each of the individual jobs are then assembled by the human translation server  118  into a single human translation. This single human translation is delivered to the end-user  302  via the request manager  112 . In one embodiment, the input  300  and the single human translation corresponding to the input  300  analyzed by the human translation server  118 , and based on said analysis the machine translation engine used to perform the machine translations as described above is adapted or optimized. 
         [0026]    It will be appreciated that the components of the translation system  102  may be implemented as a single server machine or a plurality of server machines at a single location or distributed over the WAN  104 .  FIG. 4  for drawings shows an example of hardware  400  that may be used to implement a translation system  102 , in accordance with one embodiment of the invention. The hardware  400  typically includes at least one processor  402  coupled to a memory  404 . The processor  402  may represent one or more processors (e.g., microprocessors), and the memory  404  may represent random access memory (RAM) devices comprising a main storage of the hardware  400 , as well as any supplemental levels of memory e.g., cache memories, non-volatile or back-up memories (e.g. programmable or flash memories), read-only memories, etc. In addition, the memory  404  may be considered to include memory storage physically located elsewhere in the hardware  400 , e.g. any cache memory in the processor  402 , as well as any storage capacity used as a virtual memory, e.g., as stored on a mass storage device  410 . 
         [0027]    The hardware  400  also typically receives a number of inputs and outputs for communicating information externally. For interface with a user or operator, the hardware  400  may include one or more user input devices  406  (e.g., a keyboard, a mouse, a scanner etc.) and a display  408  (e.g., a Liquid Crystal Display (LCD) panel). For additional storage, the hardware  400  may also include one or more mass storage devices  410 , e.g., a floppy or other removable disk drive, a hard disk drive, a Direct Access Storage Device (DASD), an optical drive (e.g. a Compact Disk (CD) drive, a Digital Versatile Disk (DVD) drive, etc.) and/or a tape drive, among others. Furthermore, the hardware  400  may include an interface with one or more networks  412  (e.g., a local area network (LAN), a wide area network (WAN), a wireless network, and/or the Internet among others) to permit the communication of information with other computers coupled to the networks. It should be appreciated that the hardware  400  typically includes suitable analog and/or digital interfaces between the processor  402  and each of the components  404 ,  406 ,  408  and  412  as is well known in the art. 
         [0028]    The hardware  400  operates under the control of an operating system  414 , and executes various computer software applications, components, programs, objects, modules, etc. indicated collectively by reference numeral  5416  to perform the translation described above 
         [0029]    In general, the routines executed to implement the embodiments of the invention, may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions referred to as “computer programs.” The computer programs typically comprise one or more instructions set at various times in various memory and storage devices in a computer, and that, when read and executed by one or more processors in a computer, cause the computer to perform operations necessary to execute elements involving the various aspects of the invention. Moreover, while the invention has been described in the context of fully functioning computers and computer systems, those skilled in the art will appreciate that the various embodiments of the invention are capable of being distributed as a program product in a variety of forms, and that the invention applies equally regardless of the particular type of machine or computer-readable media used to actually effect the distribution. Examples of computer-readable media include but are not limited to recordable type media such as volatile and non-volatile memory devices, floppy and other removable disks, hard disk drives, optical disks (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks, (DVDs), etc.), among others, and transmission type media such as digital and analog communication links. 
         [0030]    Although the present invention has been described with reference to specific exemplary embodiments, it will be evident that the various modification and changes can be made to these embodiments without departing from the broader spirit of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative sense rather than in a restrictive sense.