iT邦幫忙

DAY 1
7

明明整個網路中有成千上萬的資料,為什麼Google能在一秒內告訴我答案?搜尋引擎以及各網站的搜尋功能到底是怎麼運作的?為什麼我在搜尋列輸入一大串字之後,搜尋引擎能夠抽絲剝繭幫我找到我真正需要的東西?30天之後,當我知道世界上存在著這些技術,我可以怎麼將它們應用在我的生活中呢?

前言

自然語言處理(Natural Language Processing)是一門結合了人工智慧及語言學的學科。過去幾年曾有許多前輩探討過此學門,玩轉資料與機器學習-以自然語言處理為例大數據的世代需學會的幾件事等。

在墨爾本大學攻讀碩士的第一年,我接觸到了自然語言處理這個學門,從此愛上了它,之後的研究也因此朝這方向走下去。這一次系列文的主要對象是給不熟悉人工智慧、機器學習等領域,卻抱有一探究竟之念頭的朋友們。希望能藉著接下來三十天的文章,帶你們了解我是如何透過有趣的題材開發和應用,愛上自然語言處理的。不過,也因為我是在英語環境下接觸及研究這個學門,接下來的系列文中我也會以英文範例為主體來書寫。所幸在這篇中文自然語言處理基礎的文中,有提到如何以Python的Jieba Library來處理中文,盼大家能夠參考!

在這次系列文主題的前方,我悄悄加入了「深入淺出」幾個字,意思是我不打算在文中鑽進機器學習、神經網路之應用,畢竟過去就曾有許多作者寫過像Hidden Markov Model, RNN, LSTM, …等眾多可以應用在自然語言處理的技術,若有需要我會在文中提到或引用這些文章讓大家參考,盡量以不重複的主題來書寫這個系列文。說在前頭,學習NLP不一定需要了解深度學習,但不了解深度學習就沒有辦法真正了解NLP的強大,所以總有一天還是要學的,只是我不希望一開始就打擊樂於學習的朋友們的信心~

自然語言處理

在維基百科的人工智慧頁面中,針對自然語言處理他們寫道:「自然語言處理探討如何處理及運用自然語言,自然語言認知則是指讓電腦『懂』人類的語言。自然語言生成系統把電腦資料轉化為自然語言。自然語言理解系統把自然語言轉化為電腦程式更易於處理的形式。」

自然語言處理有以下幾個主要研究課題:

  1. 語音辨識 (Speech to Text) / 文字朗讀 (Text to Speech)
  2. 詞性標註 (Part-of-Speech Tagging, 簡稱POS Tagging)
  3. 自然語言生成 (Natural Language Generation)
  4. 主題模型 (Topic Model) / 文字分類 (Text Categorization)
  5. 資訊檢索 (Information Retrieval)
  6. 命名實體辨識 (Named Entity Recognition)
  7. 資訊抽取 (Information Extraction)
  8. 問答系統 (Question Answering)
  9. 機器翻譯 (Machine Translation)

在接下來的文章中,我會介紹這些課題在做什麼。了解這些課題之後,本文集將會進入兩大主題:資訊檢索(Information Retrieval)和自然語言生成(Natural Language Generation)。在資訊檢索這個主題中,我會以一個搜尋引擎開發的背景、概念、演算法及實作,帶大家認識我們常用的搜尋引擎背後的運作方式。在自然語言生成主題中,我則會以一個英文猜字遊戲為例,帶大家寫一個猜字AI,並通過平滑(smoothing)帶大家逐步改良這個AI。末了幾篇文章,我會在這兩大主題的基礎下,帶大家再深入一些了解自然語言處理主要課題的奇妙之處。

三十天架構安排

  • D02~06 自然語言處理主要課題1~4
  • D07~18 搜尋引擎技術與資訊檢索
  • D19~22 自然語言處理主要課題5~9
  • D23~27 語言模型
  • D28~29 文字相似度
  • D30 總結與未來發展

這一個九月,讓我們一起探索NLP吧:)


下一篇
Day 2: 語音辨識從何而來?電腦也懂名詞?關於語音辨識和詞性標注
系列文
深入淺出搜尋引擎和自然語言處理20

1 則留言

0
chifuh99
iT邦新手 5 級 ‧ 2019-09-07 07:09:25

我現在也在做NLP的研究,非常期待你的文章,希望能有更多人感興趣而投入中文自然語言處理工作

謝謝你的支持!

我要留言

立即登入留言