STEP 1:自然言語処理とは何か

🤖 STEP 1: 自然言語処理とは何か

NLPの定義、歴史、主要なタスクと応用分野を理解します

📋 このステップで学ぶこと

  • NLPの定義と応用分野
  • NLPの歴史(ルールベース→統計→深層学習)
  • NLPの課題(曖昧性、文脈依存性)
  • 主要なNLPタスク(分類、NER、翻訳、QA、生成、要約)
  • 実務事例(ChatGPT、Google翻訳、Siri)

練習問題: 3問

🎯 1. 自然言語処理(NLP)とは?

まず最初に、「自然言語処理」とは何かを理解しましょう。

1-1. 「自然言語」の意味

「自然言語」という言葉は、プログラミングを学ぶ人には少し不思議に聞こえるかもしれません。 これは「人間が自然に使っている言語」という意味です。

🗣️ 自然言語の例

私たちが毎日使っている言語のことです:

  • 日本語:「今日はいい天気ですね」
  • 英語:“How are you today?”
  • 中国語:“你好吗?”
  • 韓国語:“안녕하세요?”

では、なぜ「自然」言語と呼ぶのでしょうか? それは「人工言語」と区別するためです。

💻 人工言語との違い

人工言語(形式言語)は、人間が特定の目的のために作った言語です:

  • プログラミング言語:Python、JavaScript、Java など
  • 数学の記号:x + y = z など

これらはルールが厳密に決まっているため、コンピュータが解釈しやすいです。 一方、自然言語は曖昧さや例外が多く、コンピュータには難しいのです。

1-2. NLPの定義

自然言語処理の正式名称と定義を確認しましょう。

📖 NLP(Natural Language Processing)の定義

自然言語処理(NLP)とは、
人間が普段使っている言葉(自然言語)を
コンピュータに理解・処理させる技術
のことです。

NLPを日本語に分解すると以下のようになります:

📝 名前の意味
  • Natural(自然な)→ 人間が自然に使う
  • Language(言語)→ 日本語や英語などの言葉
  • Processing(処理)→ コンピュータで処理する

つまり「人間の言葉をコンピュータで処理する技術」という意味です。

1-3. なぜNLPが必要なのか?

コンピュータは計算が得意ですが、言葉の理解は苦手です。 なぜ苦手なのか、具体例で見てみましょう。

⚠️ コンピュータが苦手なこと

人間には簡単でも、コンピュータには難しいことがあります:

例1:似た表現の理解

【人間の場合】 「リンゴが好き」と「リンゴは好き」 → どちらもほぼ同じ意味だと瞬時にわかる 【コンピュータの場合】 「リンゴが好き」と「リンゴは好き」 → 「が」と「は」の文字が違う → 異なる文字列として認識してしまう

例2:同じ言葉の複数の意味

【人間の場合】 「銀行に行く」 → 文脈から「お金を預ける場所」だとわかる 「川の銀行に座る」 → 文脈から「川の土手」だとわかる 【コンピュータの場合】 「銀行」という単語だけ見ても → どちらの意味か判断できない

例3:常識的な推論

【人間の場合】 「彼女は泣いていた。嬉しかったからだ。」 → 喜びの涙だとすぐにわかる 【コンピュータの場合】 「泣く」= 悲しいこと、という単純なルールだと → 「嬉しいのになぜ泣くの?」と混乱する
💡 NLPが解決すること

NLP技術により、コンピュータが以下のことをできるようになります:

  • ✅ テキストを読んで意味を理解する
  • ✅ ユーザーの質問に答える
  • 文章を自動生成する
  • 言語を翻訳する
  • ✅ 文章の感情を分析する
  • ✅ 文章から重要な情報を抽出する

📚 2. NLPの歴史と進化

NLPは約70年の歴史があります。どのように進化してきたかを理解することで、 現在の技術がなぜ優れているかがわかります。

NLPは3つの大きな時代を経て進化してきました。

2-1. 第1世代:ルールベースアプローチ(1950年代〜1980年代)

📖 ルールベースアプローチとは?

人間の専門家が言語のルールを1つずつプログラムに書き込む方法です。

言語学者がルールを考え、プログラマーがそれをコードにしていました。

具体的にどのようなルールを書いていたか、例を見てみましょう:

【例:英語→日本語の翻訳ルール】 入力: “I am a student” 出力: 「私は学生です」 ■ プログラマーが書くルール: ルール1: “I” → 「私」に変換 ルール2: “am” → 「です」に変換 ルール3: “a student” → 「学生」に変換 ルール4: 英語の語順(主語→動詞→目的語)を 日本語の語順(主語→目的語→動詞)に並べ替え ■ 処理の流れ: “I” + “am” + “a student” ↓ 「私」+「学生」+「です」 ↓ 「私は学生です」
⚠️ ルールベースの問題点

このアプローチには大きな問題がありました:

  • 例外が多すぎる:言語には無数の例外があり、全てをルール化できない
  • 保守が大変:新しい表現が出るたびにルールを追加する必要がある
  • スケールしない:複雑な文章に対応できない
  • 言語ごとに作り直し:英語と日本語では全く別のルールが必要
【ルールベースが失敗する例】 ■ 例外が多い問題: “I like apples” → 「私はリンゴが好きです」 ✓ OK “I am liking apples” → ??? → 「好きです」の進行形ルールがない! ■ 新しい表現の問題: “LOL”(Laughing Out Loud) “FOMO”(Fear Of Missing Out) → 新しいスラングにはルールがない! ■ 複雑な文の問題: “The man who saw the girl who was reading left” → 複数の関係代名詞が入ると処理が破綻

2-2. 第2世代:統計的アプローチ(1980年代〜2010年代前半)

📊 統計的アプローチとは?

大量のテキストデータから統計的なパターンを学習する方法です。

人間がルールを書く代わりに、コンピュータがデータから「よく出てくるパターン」を学習します。

統計的アプローチの考え方を例で見てみましょう:

【例:単語の共起確率を学習】 大量のテキストから、「銀行」の後に続く単語を調べる: 「銀行」の後に続く単語: ・「に行く」 → 80回出現(金融機関の意味) ・「に座る」 → 15回出現(川の土手の意味) ・その他 → 5回出現 → 「銀行に行く」と言われたら、 80%の確率で「金融機関」の意味と推測!
✅ 統計的アプローチの利点
  • データ駆動:ルールを手作業で書く必要がない
  • 柔軟性:新しいデータを追加すると自動的に改善される
  • 言語に依存しない:どの言語にも同じ手法を適用可能
📝 代表的な手法
  • n-gram:連続するn個の単語のパターンを学習
  • Hidden Markov Model(HMM):品詞タグ付けなどに使用
  • Naive Bayes:テキスト分類(スパムフィルターなど)

2-3. 第3世代:深層学習アプローチ(2010年代後半〜現在)

🧠 深層学習(ディープラーニング)アプローチとは?

ニューラルネットワークを使って、言葉の「意味」や「文脈」まで理解する方法です。

これまでの手法と違い、単語の意味を「ベクトル(数値の配列)」として表現し、 数学的に処理できるようにしました。

深層学習の登場により、NLPは革命的に進化しました。 主要な出来事を年表で確認しましょう:

【NLPの革命的な進化 – 年表】 ■ 2013年: Word2Vec(ワードツーベック) ・単語を数値ベクトルで表現 ・「king – man + woman = queen」のような計算が可能に ・単語の意味を数学的に扱えるようになった ■ 2017年: Transformer(トランスフォーマー) ・”Attention is All You Need”論文 ・長い文章の文脈を効率的に理解できる ・現在のNLPモデルのベースとなるアーキテクチャ ■ 2018年: BERT(バート) ・Bidirectional(双方向)で文脈を理解 ・多くのNLPタスクで人間を超える精度を達成 ・Googleが開発 ■ 2020年: GPT-3 ・1750億パラメータの超大規模モデル ・少ない例(Few-shot)だけで様々なタスクをこなせる ・OpenAIが開発 ■ 2022年: ChatGPT ・対話に特化したモデル ・一般ユーザーにもNLPが身近な存在に ・世界的な大ブーム ■ 2023年: GPT-4 ・マルチモーダル(テキスト+画像)対応 ・さらに高度な推論能力
🚀 深層学習がもたらした変化
  • 精度の飛躍的向上:多くのタスクで人間レベル以上の性能
  • 汎用性:1つのモデルで複数のタスク(翻訳、要約、QAなど)をこなせる
  • 事前学習+ファインチューニング:少ないデータでも高精度が出せる
  • エンドツーエンド学習:手作業での特徴量設計が不要

2-4. 3つの時代の比較

3つのアプローチの違いを表で整理してみましょう:

特徴 ルールベース 統計的 深層学習
時代 1950〜1980年代 1980〜2010年代前半 2010年代後半〜現在
学習方法 人間がルールを書く データから確率を計算 ニューラルネットで学習
精度 低い 中程度 高い(人間超え)
柔軟性 低い 中程度 高い
必要データ量 不要 中程度 大量

⚡ 3. NLPの主要なタスク

NLPには様々なタスク(解決すべき問題)があります。 それぞれのタスクを理解することで、このコースで何を学ぶのかが明確になります。

3-1. テキスト分類(Text Classification)

📝 テキスト分類とは?

テキストを事前に決められたカテゴリに分類するタスクです。

「この文章は〇〇か、△△か?」という判定を行います。

具体例1:感情分析(Sentiment Analysis)

【感情分析の例】 入力: “この映画は最高でした!主演の演技が素晴らしい!” 出力: ポジティブ(肯定的) ✓ 入力: “サービスが最悪だった…二度と行かない” 出力: ネガティブ(否定的) ✓ 入力: “普通でした” 出力: ニュートラル(中立) ✓

具体例2:スパムフィルター

【スパム判定の例】 入力: “当選おめでとうございます!今すぐこちらをクリック!” 出力: スパム ✓ 入力: “明日の会議について確認したいことがあります” 出力: 正常なメール ✓

具体例3:ニュース記事の分類

【ニュース分類の例】 入力: “日経平均株価が3万円を突破し、投資家の間で…” 出力: 経済カテゴリ ✓ 入力: “大谷翔平選手がホームランを放ち、チームの勝利に…” 出力: スポーツカテゴリ ✓ 入力: “新しいiPhoneが発表され、AI機能が大幅に…” 出力: テクノロジーカテゴリ ✓
💼 テキスト分類の実務応用
  • カスタマーレビュー分析:製品レビューが肯定的か否定的か自動判定
  • 問い合わせ自動振り分け:お問い合わせを適切な部署に自動転送
  • SNS監視:ブランドに関する投稿の感情をリアルタイム分析
  • コンテンツ管理:記事を自動でカテゴリ分け

3-2. 固有表現認識(Named Entity Recognition, NER)

🏷️ 固有表現認識とは?

テキストから人名、地名、組織名などの固有名詞を抽出するタスクです。

「この文章に出てくる人物名は?会社名は?」という情報抽出を行います。

【固有表現認識の例】 入力: “田中太郎さんは東京都のソニー株式会社で働いています” 出力: ・田中太郎 → 人名(PERSON) ・東京都 → 地名(LOCATION) ・ソニー株式会社 → 組織名(ORGANIZATION) — 入力: “2024年3月15日、アップルがニューヨークで新製品を発表” 出力: ・2024年3月15日 → 日付(DATE) ・アップル → 組織名(ORGANIZATION) ・ニューヨーク → 地名(LOCATION)
💼 固有表現認識の実務応用
  • ニュース分析:記事から企業名や人名を自動抽出して整理
  • 契約書分析:契約書から当事者名、日付、金額を自動抽出
  • 医療記録:カルテから病名、薬剤名、症状を抽出
  • 履歴書スクリーニング:応募者の学歴、職歴を自動抽出

3-3. 機械翻訳(Machine Translation)

🌐 機械翻訳とは?

ある言語のテキストを別の言語に翻訳するタスクです。

Google翻訳やDeepLなど、私たちが日常的に使っているサービスです。

【機械翻訳の例】 ■ 英語 → 日本語 入力: “Natural language processing is amazing” 出力: “自然言語処理は素晴らしい” ■ 日本語 → 英語 入力: “今日はいい天気ですね” 出力: “It’s nice weather today” ■ 日本語 → 中国語 入力: “ありがとうございます” 出力: “谢谢您”
💼 機械翻訳の実務応用
  • Google翻訳:100以上の言語に対応
  • Webサイトの多言語化:コンテンツを自動で多言語展開
  • 国際ビジネス:契約書や文書の翻訳支援
  • 旅行:リアルタイム通訳アプリ

3-4. 質問応答(Question Answering, QA)

❓ 質問応答とは?

質問に対して適切な回答を生成または抽出するタスクです。

主に2種類あります:抽出型(文章から答えを見つける)と 生成型(答えを新しく作る)です。

抽出型QA(文章から答えを見つける)

【抽出型QAの例】 ■ 与えられた文章: “アルベルト・アインシュタインは1879年3月14日に ドイツのウルムで生まれました。 彼は物理学者として相対性理論を発表しました。” ■ 質問と回答: Q: アインシュタインはいつ生まれましたか? A: 1879年3月14日 ← 文章から抽出 Q: アインシュタインはどこで生まれましたか? A: ドイツのウルム ← 文章から抽出 Q: アインシュタインの職業は? A: 物理学者 ← 文章から抽出

生成型QA(答えを新しく作る)

【生成型QAの例】 Q: NLPとは何ですか? A: NLPとは、人間が使う自然言語をコンピュータに 理解・処理させる技術のことです。 ← 質問に対して新しく文章を生成 Q: なぜ空は青いのですか? A: 太陽光が大気中の分子に当たると、 青い光が散乱しやすいためです。 ← 知識から回答を生成
💼 質問応答の実務応用
  • チャットボット:カスタマーサポートでの自動応答
  • 検索エンジン:Googleの「強調スニペット」機能
  • 社内FAQ:社内文書から情報を自動検索・回答
  • 音声アシスタント:Siri、Alexaの質問応答機能

3-5. テキスト生成(Text Generation)

✍️ テキスト生成とは?

与えられた入力や文脈から、新しいテキストを自動生成するタスクです。

ChatGPTが最も有名な例です。

【テキスト生成の例】 ■ 文章の続きを生成: 入力: “昨日、公園を歩いていたら” 出力: “可愛い子犬に出会いました。白い毛並みで、 しっぽを振りながら近づいてきました。” ■ プロンプトから生成: 入力: “AIについての短いブログ記事を書いてください” 出力: (500文字程度の記事を自動生成) ■ コード生成: 入力: “Pythonでリストをソートする関数を書いて” 出力: def sort_list(items): return sorted(items)
💼 テキスト生成の実務応用
  • ChatGPT:対話型のテキスト生成
  • コンテンツ作成:記事の下書き、キャッチコピー生成
  • コード生成:GitHub Copilot
  • メール文作成:ビジネスメールの自動生成

3-6. 要約(Summarization)

📄 要約とは?

長い文章から重要な情報を抽出し、短くまとめるタスクです。

抽出型(元の文から重要な部分を選ぶ)と 生成型(新しく要約文を作る)があります。

【要約の例】 ■ 入力(長い記事・約500文字): “東京都は本日、新型感染症対策として 新たな方針を発表しました。主な内容として、 飲食店への時短営業要請を実施します。 対象期間は本日から2週間を予定しており、 協力金として1日あたり4万円を支給する 方針です。また、テレワークの推進として 出勤者の7割削減を目標に掲げました。 都知事は記者会見で「都民の皆様には ご不便をおかけしますが、ご協力を お願いします」と述べました。さらに…” ■ 出力(要約・約100文字): “東京都が新型感染症対策を発表。 主な内容は飲食店への時短営業要請(2週間)と 出勤7割削減。協力金として1日4万円を支給。”
💼 要約の実務応用
  • ニュース要約:長い記事を3行でまとめる
  • 会議議事録:長時間の会議内容を要点だけ抽出
  • レポート要約:長い報告書のエグゼクティブサマリー作成
  • 論文要約:学術論文のアブストラクト生成

3-7. タスクの関係性まとめ

🗺️ NLPタスクの全体像

これらのタスクは組み合わせて使われることも多いです:

  • チャットボット = 質問応答 + テキスト生成
  • 多言語対応システム = 機械翻訳 + テキスト分類
  • 情報抽出パイプライン = 固有表現認識 + 要約

🚧 4. NLPの課題

NLPは大きく進化しましたが、まだ完璧ではありません。 人間の言語には様々な難しさがあります。 これらの課題を理解することで、なぜNLPが難しいのかがわかります。

4-1. 曖昧性(Ambiguity)

⚠️ 課題:言葉には複数の意味がある

同じ言葉でも、文脈によって全く違う意味になることがあります。 これを「曖昧性」と呼びます。

多義語の問題

【多義語の例】 ■ 「銀行」 ・「銀行に行って預金する」→ 金融機関 ・「川の銀行に座る」→ 川の土手 → 同じ漢字でも意味が全く違う! ■ 「とる」 ・「写真を撮る」→ 撮影する ・「免許を取る」→ 取得する ・「魚を捕る」→ 捕獲する ・「席を採る」→ 選ぶ → 同じ読みでも漢字も意味も違う! ■ “bank” (英語) ・”I went to the bank” → 銀行?川岸? → 文脈がないと判断できない

構文の曖昧性

【構文の曖昧性の例】 ■ “I saw a man with a telescope” 解釈1: 「望遠鏡を持っている男を見た」     (男が望遠鏡を持っている) 解釈2: 「望遠鏡で男を見た」     (私が望遠鏡を使った) → 文法的にはどちらも正しい! → どちらの意味かは文脈から推測する必要がある

指示語の曖昧性

【指示語の曖昧性の例】 ■ 「太郎と次郎が話していた。彼は笑っていた。」 → 「彼」は太郎?次郎? ■ 「田中さんは佐藤さんに本を渡した。それは面白かった。」 → 「それ」は本?渡したこと?

4-2. 文脈依存性(Context Dependency)

⚠️ 課題:同じ言葉でも文脈で意味が変わる

言葉の意味は、誰がどんな状況で言ったかによって変わります。

【文脈依存性の例】 ■ 「これヤバい」 友人との食事: “このラーメン、ヤバい!” → すごく美味しい(肯定的) 上司への報告: “プロジェクトの進捗がヤバいです” → まずい状況(否定的) → 同じ「ヤバい」でも正反対の意味になる! ■ 「いいです」 勧められて: “お茶いかがですか?” “いいです” → 「はい、ください」?「いいえ、結構です」? → 日本語特有の曖昧さ!

4-3. 暗黙の知識(Implicit Knowledge)

⚠️ 課題:人間は常識を前提に話す

人間は「言わなくてもわかること」を省略して話します。 コンピュータはこの常識を持っていません。

【暗黙の知識の例】 ■ 「彼女は氷を水に入れた。それは溶けた。」 人間: 「それ」= 氷(常識で瞬時にわかる) AI: 「それ」= 氷?水?(どちらか明示されていない) なぜ人間はわかるのか? → 「氷は水に入れると溶ける」という常識があるから → 「水が溶ける」という文は意味をなさないから ■ 「レストランに行って注文した」 人間が補完すること: ・メニューを見た ・席に座った ・料理が運ばれてきた ・お金を払った → 書いていなくても当然起こることを理解している ■ 「今日は傘を持っていこう」 人間: 雨が降りそうだから AI: なぜ傘?晴れているかもしれないのに?

4-4. 新語・造語への対応

⚠️ 課題:言語は常に進化している

新しい言葉やスラングは次々と生まれます。 訓練データに含まれていない言葉は理解が困難です。

【新語・造語の例】 ■ 最近の新語(日本語) ・「エモい」→ 感情的、情緒的 ・「チル」→ リラックスする ・「ガチャ」→ ランダム要素のあるもの ・「推し活」→ 好きなアイドルを応援する活動 ・「バズる」→ SNSで話題になる ■ 技術用語の新語 ・「メタバース」→ 仮想空間 ・「NFT」→ 非代替性トークン ・「プロンプトエンジニアリング」→ AIへの指示の設計 → 訓練データに含まれていない言葉は理解困難 → モデルを定期的に更新する必要がある
💡 課題への取り組み

これらの課題はまだ完全には解決されていませんが、 大規模言語モデル(LLM)の登場により、大きく改善されています。

  • ✅ 大量のデータで学習することで、多くの文脈を理解
  • ✅ 事前学習で常識的な知識を獲得
  • ✅ 定期的なモデル更新で新語に対応

このコースでは、これらの課題にどう取り組むかも学んでいきます。

🌟 5. NLPの実務事例

NLPは私たちの日常生活のあらゆるところで使われています。 代表的なサービスを見ていきましょう。

5-1. ChatGPT(対話型AI)

🤖 ChatGPTとは?

OpenAIが開発した対話型AI。質問に答えたり、文章を書いたり、 コードを生成したりできます。2022年11月の公開以来、世界中で大ブームに。

【ChatGPTでできること】 ■ 質問への回答 ユーザー: 「量子コンピュータって何?」 ChatGPT: 「量子コンピュータは、量子力学の原理を 利用した新しいタイプのコンピュータです…」 ■ 文章の作成 ユーザー: 「お礼のメールを書いて」 ChatGPT: (丁寧なお礼メールを生成) ■ コードの生成 ユーザー: 「Pythonで素数を判定する関数を書いて」 ChatGPT: (Pythonコードを生成) ■ 翻訳・要約・添削 など、多様なタスクをこなせる
🛠️ 使われているNLP技術
  • GPT(Generative Pre-trained Transformer):大規模言語モデル
  • Transformerアーキテクチャ:長い文脈を理解
  • RLHF(人間のフィードバックによる強化学習):人間好みの回答を学習

5-2. Google翻訳(機械翻訳)

🌐 Google翻訳とは?

100以上の言語に対応した翻訳サービス。 テキストだけでなく、音声や画像内の文字も翻訳可能。

【Google翻訳の機能】 ■ テキスト翻訳 入力: “Hello, how are you?” 出力: “こんにちは、お元気ですか?” ■ 音声翻訳 マイクに向かって話す → リアルタイムで翻訳 ■ カメラ翻訳 看板をカメラで映す → 画像内の文字を翻訳 ■ ドキュメント翻訳 PDFやWordファイルをアップロード → 丸ごと翻訳
🛠️ 使われているNLP技術
  • ニューラル機械翻訳(NMT):ニューラルネットワークによる翻訳
  • Transformerモデル:文脈を考慮した高精度な翻訳
  • 多言語BERT:複数言語を同時に理解

5-3. Siri / Alexa(音声アシスタント)

🎤 音声アシスタントとは?

音声で指示を出すと、天気予報を教えてくれたり、 アラームをセットしてくれたりするサービス。

【音声アシスタントの処理の流れ】 ユーザー: 「明日の東京の天気を教えて」 1. 音声認識(Speech Recognition) 音声 → テキスト変換 “明日の東京の天気を教えて” 2. 意図理解(Intent Classification) 何をしたいのか? → 天気を知りたい 3. 固有表現認識(NER) いつ? → 明日 どこ? → 東京 4. 情報取得 天気APIから情報を取得 5. 応答生成(Text Generation) “明日の東京の天気は晴れ、最高気温25度です” 6. 音声合成 テキスト → 音声
🛠️ 使われているNLP技術
  • 音声認識(Speech Recognition):音声をテキストに変換
  • 意図理解(Intent Classification):ユーザーの目的を特定
  • 固有表現認識(NER):時間、場所などの情報を抽出
  • テキスト生成:応答文を作成

5-4. Gmail(スパムフィルター・スマートリプライ)

📧 GmailのNLP機能とは?

スパムメールを自動で検出したり、 返信候補を提案してくれる機能にNLPが使われています。

【GmailのNLP機能】 ■ スパムフィルター 入力: “【当選】おめでとうございます!今すぐクリック!” 判定: スパム → 迷惑メールフォルダへ ■ スマートリプライ(返信候補の提案) 受信: “明日の会議に参加できますか?” 提案: 「はい、参加します」 「申し訳ありませんが、参加できません」 「確認して返信します」 ■ スマートコンポーズ(文章の予測入力) 入力中: “お忙しいところ…” 予測: “恐れ入りますが”(自動で続きを提案)
🛠️ 使われているNLP技術
  • テキスト分類:スパム判定
  • テキスト生成:返信候補の作成
  • 感情分析:メールのトーンに合った返信を提案

5-5. あなたの仕事でのNLP活用例

💼 NLPはあらゆる業界で活用できます
  • カスタマーサポート:問い合わせの自動分類・自動応答
  • マーケティング:SNSやレビューの感情分析、トレンド分析
  • 人事:履歴書のスクリーニング、社員アンケートの分析
  • 法務:契約書からの情報抽出、リスク条項の検出
  • 医療:カルテからの症状抽出、医療文書の要約
  • 金融:ニュース分析による株価予測、詐欺検出
  • 教育:自動採点、学習内容の個別最適化

📝 練習問題

このステップで学んだ内容を確認しましょう。

問題1:NLPの定義

次のうち、自然言語処理(NLP)の説明として最も適切なものはどれですか?

  1. プログラミング言語をコンピュータに理解させる技術
  2. 人間が使う自然言語をコンピュータに理解・処理させる技術
  3. コンピュータ同士が通信するための言語技術
  4. 数式をコンピュータで計算する技術
正解:b

NLPはNatural Language Processing(自然言語処理)の略で、 人間が日常的に使っている言語(日本語、英語など)をコンピュータに理解させる技術です。

各選択肢の解説:

  • a. 不正解 – プログラミング言語は「形式言語」であり、自然言語ではありません。プログラミング言語はコンピュータが直接解釈できるように設計されています。
  • b. 正解 – NLPの正確な定義です。
  • c. 不正解 – コンピュータ間の通信は「ネットワークプロトコル」の分野です。
  • d. 不正解 – 数式の計算は「数値計算」や「科学計算」の分野です。

問題2:NLPの歴史

NLPの歴史において、深層学習アプローチが主流になったのはいつ頃からですか?

  1. 1950年代〜1980年代
  2. 1980年代〜2010年代前半
  3. 2010年代後半〜現在
  4. まだ主流ではない
正解:c

深層学習(ディープラーニング)がNLPで主流になったのは2010年代後半からです。

NLPの3つの時代:

  • 1950〜1980年代:ルールベースアプローチ – 人間がルールを書く
  • 1980〜2010年代前半:統計的アプローチ – データから確率を学習
  • 2010年代後半〜現在:深層学習アプローチ – ニューラルネットワークで学習

深層学習時代の主な出来事:

  • 2013年:Word2Vec登場
  • 2017年:Transformer登場
  • 2018年:BERT登場
  • 2020年:GPT-3登場
  • 2022年:ChatGPT登場

問題3:NLPのタスク

次のうち、テキスト分類タスクに該当するものはどれですか?(複数選択可)

  1. 映画レビューが肯定的か否定的か判定する
  2. 文章から人名や地名を抽出する
  3. メールがスパムか正常か判定する
  4. 日本語を英語に翻訳する
正解:a と c

テキスト分類は、テキストを事前に決められたカテゴリに分類するタスクです。

各選択肢の解説:

  • a. 正解(テキスト分類) – 感情分析は「ポジティブ/ネガティブ」に分類するテキスト分類タスクです
  • b. 不正解 – これは固有表現認識(NER)タスクです
  • c. 正解(テキスト分類) – スパムフィルターは「スパム/正常」に分類するテキスト分類タスクです
  • d. 不正解 – これは機械翻訳(Machine Translation)タスクです

テキスト分類の特徴:
「この文章は〇〇か、△△か?」というように、決められたカテゴリのどれかに分類する点がポイントです。

📝 STEP 1 のまとめ

✅ このステップで学んだこと
  • NLPとは、人間の言語をコンピュータに理解させる技術
  • NLPは3つの時代を経て進化(ルールベース→統計→深層学習)
  • 主要なタスク:テキスト分類、NER、機械翻訳、QA、テキスト生成、要約
  • NLPには曖昧性、文脈依存性、暗黙の知識などの課題がある
  • 実務事例:ChatGPT、Google翻訳、Siri/Alexa、Gmail
💡 重要ポイント

NLPは深層学習の登場で劇的に進化しました。 特にTransformer、BERT、GPTシリーズの登場により、 多くのタスクで人間レベル以上の性能を達成しています。

このコースでは、これらの最新技術を基礎から実装まで学んでいきます。

🎯 次のステップの準備

次のSTEP 2では、テキスト前処理の基礎を学びます。 NLPでは、テキストをそのまま使うのではなく、前処理を行ってから分析します。

トークン化、正規化、ストップワード除去など、 NLPの最初のステップとなる重要な技術を習得していきましょう!

📝

学習メモ

自然言語処理(NLP) - Step 1

📋 過去のメモ一覧
#artnasekai #学習メモ
LINE