Amazon Translate로 기계 번역
또, Rekognition에서는 인식하고 싶은 화상 파일을 프로그램 실행시의 인수로서 시험해 보았습니다만, Translate에 있어서는, 번역하고 싶은 문장을 프로그램 실행시의 인수로 하는 것은 다소 무리가 있으므로, 이번은 Flask 를 사용하여 간단한 UI를 만들었습니다.
Amazon Translate란?
Amazon Translate는 심층 학습 모델을 사용하는 기존의 통계 기반 및 규칙 기반 번역 알고리즘보다 정확하고 자연스러운 번역을 제공하는 언어 번역 서비스입니다. Amazon Translate를 사용하면 머신러닝의 깊은 기술 없이 머신러닝을 애플리케이션에 통합할 수 있으며, 데이터를 준비하는 것만으로 API에서 머신러닝을 이용할 수 있다는 특징이 있습니다.
실행 환경
OS: 우분투 16.04.2
언어: Python3.6.2
root/
|__translate.py
|__templates/
|__translate.html
사전 준비
AWS CLI(aws configure)에서 다음 자격 증명을 설정합니다.
AWS Access Key ID
AWS Secret Access Key
Default region name
Default output format
소스 코드 (translate.py)
translate.pyfrom 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():
# 翻訳元の日本語を取得
txt1 = request.form['txt1']
if txt1 == '':
return render_template('translate.html')
# Translateのクライアントを作成
translate = boto3.client('translate')
# translate_textを実行(翻訳元:日本語、翻訳先:英語)
result = translate.translate_text(Text=txt1, SourceLanguageCode='ja', TargetLanguageCode='en')
# 翻訳元の日本語と翻訳先の英語を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)
소스 코드 (translate.html)
translate.html<!DOCTYPE html>
<html>
<head>
<title>translate</title>
<meta charset="UTF-8">
</head>
<body>
日本語→英語に翻訳します。
<br>
<form action="/translate" method="post">
<!-- pythonからtxt1・txt2が連携されている場合はTextAreaにそれを表示-->
<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="実行">
</form>
</body>
</html>
간단한 해설
개략으로서는 이하와 같은 처리를 실시하고 있습니다.
①화면에서 입력된 번역원의 일본어를 취득한다.
② 상기 ①의 일본어를 인수로서 Translate의 translate_text를 실행한다. (번역원: 일본어, 번역처: 영어로 한다.)
③번역원의 일본어와 번역처의 영어를 html로 인도한다.
④상기③을 화면에 재표시한다.
실행 결과
명령
python translate.py
화면
참고 (google 번역)
Google 번역과 거의 비슷한 결과가 되었다고 생각합니다.
요약
Translate는 Rekognition과 마찬가지로 API에서 기계 학습을 이용할 수 있는 편리한 서비스입니다. 이번은 번역원을 일본어, 번역처를 영어로 고정했습니다만, 당연히, 언어 자체도 API의 인수가 되어 있어, 대응 언어는 50을 넘는 것 같습니다. 또, 유저 사례로서는 Hotels.com등이 있는 것 같습니다.
Reference
이 문제에 관하여(Amazon Translate로 기계 번역), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/i_12121226/items/bb29fb821af78b95b5e8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
OS: 우분투 16.04.2
언어: Python3.6.2
root/
|__translate.py
|__templates/
|__translate.html
사전 준비
AWS CLI(aws configure)에서 다음 자격 증명을 설정합니다.
AWS Access Key ID
AWS Secret Access Key
Default region name
Default output format
소스 코드 (translate.py)
translate.pyfrom 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():
# 翻訳元の日本語を取得
txt1 = request.form['txt1']
if txt1 == '':
return render_template('translate.html')
# Translateのクライアントを作成
translate = boto3.client('translate')
# translate_textを実行(翻訳元:日本語、翻訳先:英語)
result = translate.translate_text(Text=txt1, SourceLanguageCode='ja', TargetLanguageCode='en')
# 翻訳元の日本語と翻訳先の英語を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)
소스 코드 (translate.html)
translate.html<!DOCTYPE html>
<html>
<head>
<title>translate</title>
<meta charset="UTF-8">
</head>
<body>
日本語→英語に翻訳します。
<br>
<form action="/translate" method="post">
<!-- pythonからtxt1・txt2が連携されている場合はTextAreaにそれを表示-->
<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="実行">
</form>
</body>
</html>
간단한 해설
개략으로서는 이하와 같은 처리를 실시하고 있습니다.
①화면에서 입력된 번역원의 일본어를 취득한다.
② 상기 ①의 일본어를 인수로서 Translate의 translate_text를 실행한다. (번역원: 일본어, 번역처: 영어로 한다.)
③번역원의 일본어와 번역처의 영어를 html로 인도한다.
④상기③을 화면에 재표시한다.
실행 결과
명령
python translate.py
화면
참고 (google 번역)
Google 번역과 거의 비슷한 결과가 되었다고 생각합니다.
요약
Translate는 Rekognition과 마찬가지로 API에서 기계 학습을 이용할 수 있는 편리한 서비스입니다. 이번은 번역원을 일본어, 번역처를 영어로 고정했습니다만, 당연히, 언어 자체도 API의 인수가 되어 있어, 대응 언어는 50을 넘는 것 같습니다. 또, 유저 사례로서는 Hotels.com등이 있는 것 같습니다.
Reference
이 문제에 관하여(Amazon Translate로 기계 번역), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/i_12121226/items/bb29fb821af78b95b5e8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
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():
# 翻訳元の日本語を取得
txt1 = request.form['txt1']
if txt1 == '':
return render_template('translate.html')
# Translateのクライアントを作成
translate = boto3.client('translate')
# translate_textを実行(翻訳元:日本語、翻訳先:英語)
result = translate.translate_text(Text=txt1, SourceLanguageCode='ja', TargetLanguageCode='en')
# 翻訳元の日本語と翻訳先の英語を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)
소스 코드 (translate.html)
translate.html<!DOCTYPE html>
<html>
<head>
<title>translate</title>
<meta charset="UTF-8">
</head>
<body>
日本語→英語に翻訳します。
<br>
<form action="/translate" method="post">
<!-- pythonからtxt1・txt2が連携されている場合はTextAreaにそれを表示-->
<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="実行">
</form>
</body>
</html>
간단한 해설
개략으로서는 이하와 같은 처리를 실시하고 있습니다.
①화면에서 입력된 번역원의 일본어를 취득한다.
② 상기 ①의 일본어를 인수로서 Translate의 translate_text를 실행한다. (번역원: 일본어, 번역처: 영어로 한다.)
③번역원의 일본어와 번역처의 영어를 html로 인도한다.
④상기③을 화면에 재표시한다.
실행 결과
명령
python translate.py
화면
참고 (google 번역)
Google 번역과 거의 비슷한 결과가 되었다고 생각합니다.
요약
Translate는 Rekognition과 마찬가지로 API에서 기계 학습을 이용할 수 있는 편리한 서비스입니다. 이번은 번역원을 일본어, 번역처를 영어로 고정했습니다만, 당연히, 언어 자체도 API의 인수가 되어 있어, 대응 언어는 50을 넘는 것 같습니다. 또, 유저 사례로서는 Hotels.com등이 있는 것 같습니다.
Reference
이 문제에 관하여(Amazon Translate로 기계 번역), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/i_12121226/items/bb29fb821af78b95b5e8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
<!DOCTYPE html>
<html>
<head>
<title>translate</title>
<meta charset="UTF-8">
</head>
<body>
日本語→英語に翻訳します。
<br>
<form action="/translate" method="post">
<!-- pythonからtxt1・txt2が連携されている場合はTextAreaにそれを表示-->
<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="実行">
</form>
</body>
</html>
개략으로서는 이하와 같은 처리를 실시하고 있습니다.
①화면에서 입력된 번역원의 일본어를 취득한다.
② 상기 ①의 일본어를 인수로서 Translate의 translate_text를 실행한다. (번역원: 일본어, 번역처: 영어로 한다.)
③번역원의 일본어와 번역처의 영어를 html로 인도한다.
④상기③을 화면에 재표시한다.
실행 결과
명령
python translate.py
화면
참고 (google 번역)
Google 번역과 거의 비슷한 결과가 되었다고 생각합니다.
요약
Translate는 Rekognition과 마찬가지로 API에서 기계 학습을 이용할 수 있는 편리한 서비스입니다. 이번은 번역원을 일본어, 번역처를 영어로 고정했습니다만, 당연히, 언어 자체도 API의 인수가 되어 있어, 대응 언어는 50을 넘는 것 같습니다. 또, 유저 사례로서는 Hotels.com등이 있는 것 같습니다.
Reference
이 문제에 관하여(Amazon Translate로 기계 번역), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/i_12121226/items/bb29fb821af78b95b5e8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
python translate.py
Translate는 Rekognition과 마찬가지로 API에서 기계 학습을 이용할 수 있는 편리한 서비스입니다. 이번은 번역원을 일본어, 번역처를 영어로 고정했습니다만, 당연히, 언어 자체도 API의 인수가 되어 있어, 대응 언어는 50을 넘는 것 같습니다. 또, 유저 사례로서는 Hotels.com등이 있는 것 같습니다.
Reference
이 문제에 관하여(Amazon Translate로 기계 번역), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/i_12121226/items/bb29fb821af78b95b5e8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)