Every now and then I look at visitor logs on the various personal and professional sites/blogs that I administer. It makes for a fascinating experience to see the many places worldwide that visitors come from. I have often wondered about non English speakers and how I could make my writing more accessible to them. While some professional and company web sites have translated versions available, in many user forums and communities across the web there have been requests for a translated version of the pages/posts. Today, on many sites, I have to copy the text on the site, paste it into a translator and look at the translation. It is cumbersome and not very seamless in an otherwise smooth navigation experience.
I am very pleased to say Windows Live Translator solved this problem with the latest feature addition that rolled out this week. Now on the Live Translator home page you will find a new link "Add the web page Translator to your site". By clicking on this link you go to a page that offers snippets of code that can be added to individual web pages for which you wish to offer translations.
The code generator will create the appropriate widget depending on the source language of your site. Refer to the Live Translator introduction post where Andrea listed the language pairs that we currently support.
So here is what you do to have a link on your web page to translate it:
Step 1: Click on the Add the web page Translator to your site link
Step 2: Select the language your web page is written in (source language)
For example: Since all the articles on my blog are in English, I choose English as the source language
Step 3: The code that you need to copy and paste into your web page's HTML is generated in the box
For example: Since I chose English, the code that is generated looks like this
Step 4: Copy that code and paste it into the page that should offer translation.
For example: On my blog say I want the blog post I wrote about Live Translator to be translated, I go into the blog editor and paste it like so:
If the blog or web page uses templates, one could also paste the code into a template - thereby providing the Translate This Page widget on all pages
Step 5: Enjoy an expanded (and hopefully more appreciative) audience!
The end result on my blog looks like this in the case of a single post translation:
The end result looks like this if I put it in the template (this allows for translation of every post):
For the more technically minded here is some more information on the parameters that the Live Translator accepts:
where lp is the language pair (such as en_fr for english to french) for source and target languages. a is the URL you want translated.
where lp is the language pair (such as en_fr for english to french) for source and target languages. a is the URL you want translated.
The Windows Live focused community site ViaWindowsLive is making creative use of the Live Translator to make their site available in multiple languages (look on the left bottom of the page). I would love to check out how you might be utilize this new feature. Feel free to post a link to your site in the comments.
Edit: Updating the parameters link
Will Lewis is a program manager on the Microsoft Translator team, working on language quality and data acquisition. Today's guest blog is a high level explanation of how the engine works:
As many of you know, under the hood Microsoft Translator is powered by a Statistical Machine Translation (SMT) engine. Statistical systems are different than rule-based ones in that the “rules” mapping words and phrases from one language to another are learned by the system rather than being hand-coded. Training an SMT requires amassing a large amount of parallel training data—hopefully of good quality and from heterogeneous sources—and training the engine on that data. (By parallel, we mean a source of data where the content for one language is the same as the content for the other.) The engine learns the correspondences between words and phrases in one language and those in another, which are often reinforced by repeated occurrences of the same words and phrases throughout the input. For instance, in training the English-German system let’s say, if the engine sees the phrase All rights reserved on the English side and also notices Alle Rechte vorbehalten on the German side, it may align these two phrases, and assign some probability to this alignment. Repeated occurrences of the source and target phrases in the training data will only reinforce this alignment.
Generally, having parallel data for a language pair means we can train engines in both directions (i.e., both the English-German and the German-English systems can be trained on the same input sentences). Some of you had some questions regarding why it was that we released the English-Spanish system before we released Spanish-English. There were really two reasons. First, English-Spanish was the first general domain language pair we released. Releasing one language pair allowed us to test the infrastructure before we started releasing more. Second, the technology for Spanish-English was slightly different than that used for English-Spanish, and we need some additional time to do the necessary infrastructural changes to accommodate. In the future, we plan to release new translation systems in pairs (with a couple of exceptions). I can’t reveal what languages we have planned next, but do expect some new ones soon!
For those of you interested in technical discussions regarding our engines and how they work, please refer to some of the papers by the researchers who developed them. Three recent papers of note are:
Chris Quirk, Arul Menezes. Do we need phrases? Challenging the conventional wisdom in Statistical Machine Translation May 2006 New York, New York, USA Proceedings of HLT-NAACL 2006
Chris Quirk, Arul Menezes. Dependency Treelet Translation: The convergence of statistical and example-based machine translation? March 2006 Machine Translation 43-65 (Attached file)
Chris Quirk, Arul Menezes. Using Dependency Order Templates to Improve Generality in Translation July 2007 Association for Computational Linguistics
There has been some great coverage recently on the beta release of our new online translation service. In this post I would like to provide you with information regarding Microsoft’s entry into the free online machine translation field – straight from the horse’s mouth, figuratively speaking.
The URL of the translation home page is http://www.microsofttranslator.com, where you can issue requests for text and web page translations:
Note that a check box option labeled Computer-related content allows you to get better-adapted translations for (computer-) technical text, provided by Microsoft Research’s own statistical machine translation engine. This service is available for the following language pairs:
English - Chinese Simplified English - Chinese Traditional English - French English - German English - Italian English - Japanese English - Portuguese English - Spanish
English - Chinese Simplified
English - Chinese Traditional
English - French
English - German
English - Italian
English - Japanese
English - Portuguese
English - Spanish
Non-technical translations and additional language pairs are currently provided by the latest version of Systran. The additional language pairs available are:
Arabic - English Chinese Simplified - English Chinese Traditional - English Dutch - English English - Arabic English - Dutch English - Korean French - English French - German German - English German - French Italian - English Japanese - English Korean - English Portuguese - English Russian - English Spanish - English
Arabic - English
Chinese Simplified - English
Chinese Traditional - English
Dutch - English
English - Arabic
English - Dutch
English - Korean
French - English
French - German
German - English
German - French
Italian - English
Japanese - English
Korean - English
Portuguese - English
Russian - English
Spanish - English
Our innovative approach to web page translation includes a user interface we refer to as the Bilingual Viewer. It offers 4 types of bilingual views from which users may choose depending on their preference or screen size. The side-by-side and top/bottom views offer synchronized scrolling, highlighting, and navigation (and yes, we still have some wrinkles to iron out there). In the two single language views, you can hover your mouse pointer over a sentence in one language and the corresponding passage in the other language is automatically displayed nearby for ease of reference. Finally, we render the translated text progressively on a web page in order to make it more quickly available for the user to read, while other page elements are still being translated in the background.
Original with hover translation view:
Translation with hover original view:
Live Search will soon be exposing “Translate this page” links on the results page for search results which are in a language that is different from the user’s system language (provided that the required language pair is available from our service). When you click on a “Translate this page” link, the web page will be opened in the Bilingual Viewer (in side-by-side view or the view you selected during your last viewing session).
Language translation is extremely difficult, as the meaning of words and phrases often depends on the context and specialized knowledge of the domain area or culture. Sentence structures and grammatical rules vary significantly between two languages, adding to the complexity of the translation challenge. Currently, it still requires human skills to translate sentences without errors. The quality of today's most advanced translation software is well below the accuracy and fluency of a professional translator, and many sentences are simply not understandable. Researchers are continuously working on improvements, but it may be many years before high quality translation can be consistently offered by a computer. For this reason, we display both the original text and its translation, anticipating that you will find it easier to understand the translation, comparing it with the original content if needed. Some of our translation results (usually for computer-related content) are based on training our translation system on large amounts of bilingual text. The more bilingual or multilingual text we can train our system on, the better our translation quality will become. If you have large amounts of translated text in any subject domain, which you would be willing to share with us, please click here to let us know.
Please refer to our FAQ section for more answers to questions that have reached us, and please do make use of the option to send us Feedback. We have released our first version of this translation service as a Beta, so we can listen to and learn from you how to best meet your needs. Expect to see continuous improvements to the Windows Live Translator Beta.
The Translator team is excited to announce the availability of the English to Russian language pair on MicrosoftTranslator.com. This language pair is now available across all implementations of the translator technology, including Live Search and (in the next few days) the Windows Live Messenger TBot.
You have probably noticed that the Russian to English language pair has been available for some time on our site. As always, translation quality is a top focus for our team. Sometimes reaching quality takes longer for a particular direction – this can be for many reasons. For example, if you are translating between a simple language and a complex language, the translations will be better going to the simple language than they will be going to the complex language. If you are interested in learning more about the technology behind our machine translation engine, see Will Lewis’ blog post on statistical machine translation.
While machine translation is certainly never perfect, for this new language pair we have now hit our quality bar for release. How do we determine the quality bar? In general, when the translation can be considered “useful”. We consistently receive feedback from our users that imperfect translation which is useful is better than no translation. So we have to balance user demand with translation quality. With that in mind, we test our language pairs with human evaluations, until we have reached “useful” translation.
We are always open to your constructive feedback and help – please continue to help us so that we can keep improving quality! We are always very grateful for good feedback.
Some other updates in this release you may notice:
· We have officially migrated our domain to www.microsofttranslator.com
· Improved quality across several language pairs, due to improvements in training data quality
· Improvements in Japanese to English, due to an improved method of parsing the training data
In the current crisis in Haiti there are a number of initiatives to rapidly build software to assist in humanitarian aid. Responding to community requests for a machine translation (MT) system to translate between English and Haitian Creole, our team has been hard at work over the last few days. I am glad to announce that an experimental Haitian Creole MT system is now publicly available via several services and APIs powered by Microsoft Translator technologies. We will continue working on improving the system, but we hope meanwhile that in spite of the experimental nature – it will be of use in the relief efforts.
1) What is being announced today?
Responding to requests from the community involved in Haitian relief efforts, Microsoft Research is making available today an experimental machine translation system for translating to and from Haitian Creole. You can try it at http://translate.bing.com or http://www.microsofttranslator.com.
2) How is it significant?
With the devastating disaster that struck Haiti, we have all been individually pitching in to help the efforts. This is our effort, as a team, to respond to the needs of communities such as Crisis Commons by delivering a Haitian Creole translator which can be of help to individual users, as well as other technology projects that could use a scalable translation system in their relief endeavors. Further, the usage of our API is completely free and it can be built into any application or website for immediate use. We hope that this might help the many applications being developed (such as those on crisiscommons.org) to aid the humanitarian efforts.
3) How can I use this system?
The Haitian Creole translator is now part of the Microsoft Translator web service enabling many of the user scenarios powered by the service. Users can access the service through the Microsoft Translator web site. Developers would be interested in looking at our APIs – and choose from SOAP or HTTP (Support for Haitian in our AJAX API will be rolled out in the coming days).
4) How is it different from other efforts?
There have been some great efforts in quickly building dictionary and rule-based Haitian Creole translation tools. The statistical machine translation system behind Microsoft Translator allows for a continuous improvement in the quality of translations (by adding more training data). Also, by delivering this as part of our web service we can ensure scale and performance and open up the possibility of using our many scenarios (Bing Translator, Internet Explorer 8, Messenger Bot etc.) with Haitian Creole, as well as using our extensive API set to add such support to other software and web sites at no cost.
5) What was involved in getting this out of the door in record time?
The process involved identifying parallel (translated) data between English and Haitian Creole, and training the MT engine to create the requisite language models. We would also like to acknowledge the great work being done the Crisis Commons folks, the dictionary builders at haitisurf.com, the folks at CMU that made available parallel data and the Microsoft volunteers who challenged our team to action.
6) What should I expect in terms of quality?
This is an experimental system put together in record time. While our typical approach to adding new languages involves significantly larger amounts of training, a higher threshold for quality testing – we decided that the upside warranted making the system available to the community at the earliest, and continue improving it subsequently. We are working diligently to keep improving the quality, but bear with us if you encounter problems. You can always contact us at firstname.lastname@example.org with feedback. Our user and developer forums are also available to discuss any issues you encounter.
7) How can I help improve the system?
The best way you can help improve the system is by helping us find more training data. This is typically sentences or words translated between English and Haitian Creole. We intend to make available to the larger community (via tausdata.org) data that we collect (as license restrictions permit) for training purposes. If you know of dictionaries, translated sentences, or websites that have such translations we urge you to contribute it to TDA’s TAUS data sharing initiative. TDA is a non-profit organization providing a neutral and secure platform for sharing language data. If you have any concerns or questions feel free to contact us at email@example.com.
8) How can I help the broader Haiti relief efforts?
Go here to learn more about how you can help those devastated by the earthquake.
9) Where can I get more information?
Please stay tuned to our blog for further announcements. You can learn more about Microsoft Translator and the services we offer here.
10) What can we expect next?
In the coming days expect to see support for Haitian Creole added to even more of our scenarios (Translation Bot, Translator widget, Office etc) as well as the AJAX API. Known issues and announcements can also be found on our forums.
We hope that this contribution proves useful to the various humanitarian efforts underway, and please stay tuned to this blog for further news on the Haitian Creole language support. If you have any questions feel free to contact us at firstname.lastname@example.org.
Update (2:53 PM PST): The Messenger Translation Bot can now speak Haitian Creole. Add email@example.com to your messenger buddy list. Try the group conversation feature with a Kreyol speaker!
-Vikram Dendi, Senior Product Manager, Microsoft Translator