Author

▹ JungHwan Yun
▹ Master Student in Data-Science
▹ Seoul National University of Science & Technology(SeoulTech)
▹ E-mail : junghwan.yun@seoultech.ac.kr




1. Intro


▹ 2016년 후반 구글에서는 기계학습기반의 새로운 번역기를 출시했습니다. 기존 번역기의 성능을 극대화 시킨 새로운 번역기로 평가받고있습니다. 대학원 생활의 좋은 친구로 자리잡고 있죠 :D

헌데 한가지 번거로운 점이 있습니다. 이는 번역기를 한번에 사용할 수 있는 글자수에는 한계가 있다는 것입니다.

문제를 발견하면 또.. 해결하려고 노력하는것이 공학도의 참된 자세가 아닐까 싶어서 번역을 자동화 하고자하는 코드를 이번에는 만들어보고자 합니다.



2. TASK


▹ ToDo : 구글에서 제공하는 번역 API를 사용하여 입력값을 자동으로 번역해주는 함수를 만들어주세요
▹ DATA : 2가지 형태의 입력데이터에 대해서 함수를 만들어 보겠습니다.
- STEP 1 : csv형태로 되어있는 데이터셋
- STEP 2 : 일반 text형태로 되어있는 데이터셋

3. DUE DATE


▹ 1차 : 17.08.09(수) - csv형태의 데이터를 처리하는 STEP1에 대한 소스코드 작성
▹ 2차 : 17.08 - 일반 text형태의 데이터를 처리하는 STEP2에 대한 소스코드 작성

4. TUTORIAL

▹ API 사용방법에 대하여 간단하게 소개합니다. 일단 아래 구글 클라우드 플랫폼에 접속하여 개발자 계정을 신청합니다.



▹ API키를 발급받고 호출을 하게 되면 아래와 같이 그 상황을 대쉬보드를 통해 지속적으로 확인할 수 있다.



▹ 위와 같이 개발자 계정에 대한 등록이 완료되고 나면 구글에서 제공하는 API를 직접적으로 활용해보도록 하겠습니다. 파이썬의 경우는 아래와 같이 구글에서 제공하는 API소스가 있으므로 패키지 설치 이후에 바로 접근이 가능합니다.

▹ 따로 패키지로 만들어진 것도 있으니 편한걸로 해보시길 바랍니다.


EXAMPLE


▹ 구글클라우드 사이트에서 발급받은 API를 넣고 함수를 돌려보겠습니다

  • 사용할 예시문장은 심슴에서 호머가 아이들에게 했던 명언(?)으로 테스트해보겠습니다.
  • Kids, you tried your best and failed miserably. The lesson is, never try.
  • 해석을 한다면.. “얘들아 너희들은 최선을 다했지만 실패했지. 여기서 얻을 수 있는 교훈은 아예 시도를 하지 말라는 거야” 정도가 되겠네요


▹ 함수 작동

input.vec <- "Kids, you tried your best and failed miserably. The lesson is, never try."

google.vector.out <- translate(content.vec = input.vec,
                               google.api.key = user.api,
                               source.lang = 'en',
                               target.lang = 'ko')
google.vector.out
[1] "얘들 아, 너는 최선을 다했지만 비참하게 실패했다. 교훈은 결코 시도하지 마십시오."


5. 참고파일


▹ Input : “abstract_list.csv”