[PYTHON] Maschinelle Übersetzung von Amazon Translate

Letztes MalLetztes Mal hat Amazon Rekognition (Bilderkennungsdienst) ausprobiert. Dieses Mal habe ich einen maschinellen Übersetzungsdienst namens Amazon Translate ausprobiert.

Außerdem habe ich in Rekognition versucht, die Bilddatei, die ich beim Ausführen des Programms als Argument erkennen möchte, zu verwenden. In Translate ist es jedoch etwas unmöglich, den Satz, den ich beim Ausführen des Programms übersetzen möchte, als Argument zu verwenden, also diesmal Flask Ich habe eine einfache Benutzeroberfläche mit erstellt.

Was ist Amazon Translate?

Amazon Translate ist ein sprachlicher Übersetzungsdienst, der Deep-Learning-Modelle verwendet, um genauere und natürlichere Übersetzungen bereitzustellen als herkömmliche statistische und regelbasierte Übersetzungsalgorithmen. Mit Amazon Translate können Sie maschinelles Lernen in Ihre Anwendung integrieren, ohne über umfassende Kenntnisse des maschinellen Lernens zu verfügen, und Sie können maschinelles Lernen aus der API verwenden, indem Sie einfach die Daten vorbereiten.

Ausführungsumgebung

OS:Ubuntu 16.04.2 Sprache: Python3.6.2

root/
|__translate.py
|__templates/
      |__translate.html

Vorbereitungen

Legen Sie die folgenden Anmeldeinformationen in AWS CLI fest (aws configure).

AWS Access Key ID AWS Secret Access Key Default region name Default output format

Quellcode (translate.py)

translate.py


from flask import *
import boto3

app = Flask(__name__)

@app.route('/',methods=['GET','POST'])
def index():
    return render_template('translate.html')

@app.route('/translate',methods=['POST'])
def translate():

    #Holen Sie sich die japanische Übersetzungsquelle
    txt1 = request.form['txt1']

    if txt1 == '':
        return render_template('translate.html')

    #Erstellen Sie einen Übersetzungsclient
    translate = boto3.client('translate')

    # translate_Führen Sie Text aus(Übersetzt von: Japanisch, Übersetzt von: Englisch)
    result = translate.translate_text(Text=txt1, SourceLanguageCode='ja', TargetLanguageCode='en')

    #Übergeben Sie das Quell-Japanisch und das Ziel-Englisch an HTML
    return render_template('translate.html',txt1=txt1,txt2=result['TranslatedText'])

if __name__ == "__main__":
    app.run(host='0.0.0.0',port=8888,debug=True)

Quellcode (translate.html)

translate.html


<!DOCTYPE html>
<html>
    <head>
        <title>translate</title>
        <meta charset="UTF-8">
    </head>
    <body>
Übersetzen Sie vom Japanischen ins Englische.
        <br>
        <form action="/translate" method="post">
            <!--Wenn txt1 und txt2 über Python verknüpft sind, zeigen Sie es in TextArea an-->
            <textarea name="txt1" rows="10" cols="50">{% if txt1 %}{{txt1}}{% endif %}</textarea>
            <textarea name="txt2" rows="10" cols="50">{% if txt2 %}{{txt2}}{% endif %}</textarea>
            <br>
            <input type="submit" value="Lauf">
        </form>
    </body>
</html>

Kurzer Kommentar

Der Umriss ist wie folgt.

① Rufen Sie die japanische Übersetzungsquelle auf dem Bildschirm auf. (2) Führen Sie Translate_text of Translate mit dem Japanisch von (1) oben als Argument aus. (Übersetzungsquelle: Japanisch, Übersetzungsziel: Englisch.) ③ Übergeben Sie die japanische Übersetzungsquelle und das englische Übersetzungsziel an HTML. ④ Zeigen Sie das Obige ③ erneut auf dem Bildschirm an.

Ausführungsergebnis

Befehl

python translate.py

Bildschirm

image.png

Referenz (Google Übersetzung)

image.png

Ich denke, das Ergebnis ist fast das gleiche wie bei der Google-Übersetzung.

Zusammenfassung

Übersetzen ist ein praktischer Dienst, mit dem Sie maschinelles Lernen über die API verwenden können, ähnlich wie bei Rekognition. Dieses Mal habe ich die Übersetzungsquelle auf Japanisch und das Übersetzungsziel auf Englisch festgelegt, aber natürlich ist die Sprache selbst auch ein Argument der API, und es scheint, dass die unterstützten Sprachen 50 überschreiten. Es scheint auch Hotels.com als User Case zu geben.

Recommended Posts

Maschinelle Übersetzung von Amazon Translate
Machine Sommelier von Keras-
Chainer, RNN und maschinelle Übersetzung
4 [/] Vier Arithmetik durch maschinelles Lernen
Erkennung derselben Person durch Amazon Rekognition
100 Sprachverarbeitung Knock 2020 Kapitel 10: Maschinelle Übersetzung (90-98)