polyglot에 의한 언어 검출의 정확성을 살펴보기

awesome-python 리스트를 확인하고 있으면(자), 자연언어 처리의 카테고리안에 polyglot라고 하는 라이브러리가 있어, 문서를 확인해 보면, 언어 검출을 할 수 있다는 것이므로 정밀도를 시험해 봅니다.

환경 준비



처음에는 mac상에서 환경 구축을 행하고 있었습니다만, iuc가 잘 들어가지 않았기 때문에, docker로 전환했습니다.
docker hub에서 검색을 걸면 좋을 것 같은 것이 있었으므로 이것을 사용합니다.

urbulent / polyglot-base 이미지 사용 · 컨테이너 시작



urbulent/polyglot-base 이미지를 사용하여 다음 명령으로 dokcer를 시작하고 컨테이너로 들어갑니다.
docker pull turbulent/polyglot-base    
docker run --rm -it turbulent/polyglot-base /bin/ash

일본어 모델 준비



올바르게 감지하려면 일본어 모델을 설치합니다. 여기의 작업은 dokcer 내에서 수행됩니다.

설치는 명령줄 에서 할 수 있기 때문에 레퍼런스를 참고로 이하의 커멘드로 인스톨을 실시합니다.
polyglot download LANG:ja

탐지하기



조금 잡지만 트위터에서 얻은 텍스트를 바탕으로 판정을 실시합니다.
echo "【速報でーす!】「進撃の巨人 Season3」7月から総合テレビで放送する予定です。▼くわしくはこちら(NHKアニメワールド)" | polyglot detect
echo "ハイアット リージェンシー 東京より、いちご尽くしの「いちごのアフタヌーンティー」が登場 -https://www.fashion-press.net/news/36750 " | polyglot detect
echo "【震度・震源速報 2018年1月24日】 24日19時51分頃、青森県東方沖を震源とする地震がありました。震源の深さは約30km、地震の規模はM6.2と推定されています。この地震による津波の心配はありません。" | polyglot detect
echo "HKT48のアルバム「092」。 パッと「買ってね!」と言える価格ではないので躊躇してたんですが(正直者)秋元さんからDVD特典に「いい!」とコメントが来たそうなので今更ですが。。素敵なアルバムです。学生さん、お年玉でぜひ!" | polyglot detect
echo "IN 熱海❤️10代の頃からお世話になっている方に昨日は旅館を用意していただいて、今日はその方の別荘にお母さんと泊まらせいただきます😌✨ステキな別荘で綺麗すぎるオーシャンビュー。私だけでなくていつもお母さんも気遣ってくださるんです‥😭本当に感謝しかない。私の第2のお父さん💕" | polyglot detect



조금 이해하기 어렵지만 일본어로 인식됩니다.
또한 일본어와 중국어를 판별할 수 있는지도 확인합니다.
echo “日本”   | polyglot detect
echo 你好 日本  | polyglot detect


日本 그냥 'WARNING base.py: 93 Detector is not able to detect the language reliably.'로 경고와 제대로 반환합니다. 你好 日本 에서는 제대로 중국어로 처리되고 있습니다.

요약



약간의 데이터로 시험했을 뿐입니다만, 일본어로서 올바르게 검출할 수 있어, 또 검출 언어에 자신이 없는 것은 경고를 돌려준다는 것을 알았습니다. 이 라이브러리를 사용하여 웹상의 데이터를 크롤링 할 때 일본어로만 좁힐 수 있으면 좋겠다고 생각합니다.

좋은 웹페이지 즐겨찾기