実践 自然言語処理 ―実世界NLPアプリケーション開発のベストプラクティス
by Sowmya Vajjala, Bodhisattwa Majumder, Anuj Gupta, Harshit Surana, 中山 光樹
1章自然言語処理入門
言語は単なる言葉ではない。言語は文化であり、伝統であり、
地域社会を統一するものであり、
その地域社会を形成した歴史を語るものである。
それらすべてが言語の中で具現化されているのだ。
—— ノーム・チョムスキー
架空の人物、ジョン・ドウ(John Doe)を想像してみてください。彼は急成長しているテクノロジースタートアップのCTOです。忙しい日、ジョンは目を覚まし、デジタルアシスタントと次のように会話します。
ジョン:今日の天気は?
デジタルアシスタント:今日は摂氏37度で、雨は降りません。
ジョン:私のスケジュールはどうなってる?
デジタルアシスタント:午後4時に戦略会議、午後5時半に全社会議です。今日の交通状況を考えると、午前8時15分までに家を出たほうがよいでしょう。
服を着ている間、ジョンはアシスタントにファッションについて尋ねます。
ジョン:今日は何を着ればいいかな?
デジタルアシスタント:白い服がよさそうです。
Amazon Alexa、Google Home、Apple Siriなどのスマートアシスタントを使って、似たような会話をしたことがある方もいるでしょう。私たちはスマートアシスタントにプログラミング言語ではなく、人間がコミュニケーションに使う言語である自然言語で話しかけています。自然言語は、いつの時代も人間同士のコミュニケーションにおける主な伝達手段です。しかし、コンピュータはデータを2進数、つまり0と1でしか処理できません。言語データを2進数で表現することはできますが、コンピュータに言語を理解させるにはどうすればよいでしょうか。そこで登場するのが自然言語処理(Natural Language Processing:NLP)です。NLPは、人間の言語を分析し、モデル化し、理解する方法を扱うコンピュータサイエンスの一分野です。人間の言語が関係する知的なアプリケーションでは、その裏側で必ずNLPが使われています。本書では、NLPとは何か、そしてNLPを使って知的なアプリケーションを構築し、スケールする方法について説明します。NLPの問題は決まった解答がないので、与えられた問題を解決するために取ることができる選択肢は数十もあります。本書は、この選択肢の迷路を進むのに役立つとともに、問題に基づいて最適な選択をする方法を示します。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access