1. 知識圖譜概論
1. 引言與背景 什麼是知識圖譜? 知識圖譜(Knowledge Graph, KG)是一種能以圖狀結構表示現實世界中的「實體」及其「關係」的資料表示方式。 與只注重數值或文字欄位的傳統資料表不同,知識圖譜能更直觀地呈現「誰與誰之間有什麼關係」。 為什麼需要知識圖譜? 整合性:能統一不同來源(如企業內部、外部公開資料)的資訊。 易理解:圖狀結構更能幫助人們理解複雜關係。 語意推理:可透過定義好的規則或本體(Ontology)進行推理,進而得到隱含資訊。 發展背景與應用範圍 早期由 AI 與語意網(Semantic Web)概念所啟發,2012 年 Google 推出「Knowledge Graph」讓此名詞廣受矚目。 應用範圍:搜尋引擎、推薦系統、企業資料整合、虛擬助理與聊天機器人等。 2. 知識圖譜的核心組成 2.1 節點 (Node) 定義:代表現實世界中的「實體」或「概念」,如人物、公司、地點、物品等。 範例: 人物節點:馬斯克 (Elon Musk) 公司節點:IBM 概念節點:行銷 意義:節點是構成知識圖譜的基礎元素,每個節點皆可附帶屬性,如名稱、時間、地點等。 2.2 邊 (Edge) 定義:表現節點之間的「關係」,通常會有語意意義,如「僱用」、「屬於」、「合作」、「作者-作品」、「父母-子女」等。 範例: IBM → 僱用 → 馬斯克 馬斯克 → 創辦 → SpaceX 電影 A → 續作 → 電影 B 特性: 關係可具方向性(有向邊)或無方向性(無向邊)。 在某些圖資料庫或語意網標準中,也能對邊本身附加屬性(例如起始日期、權重等)。 2.3 屬性 (Property / Label) 定義:為節點或邊附加描述資訊。例如,人名、出生日期,或關係的起始時間等。 用途: 幫助搜尋與推理:可根據屬性值篩選節點或推論新關係。 提高查詢效率:如依「職稱 = 執行長」快速找到所有執行長節點。 舉例: 節點屬性:公司名稱、成立年份、地址。 邊屬性:合作合約日期、投資金額、合作範圍。 圖片來源:https://zhuanlan.zhihu.com/p/37057052 3. 知識圖譜與傳統資料庫比較 資料模型 關係型資料庫(RDB):以表格、行、列為核心;關係透過外鍵 (Foreign Key) 或多對多關聯表 (Join Table) 來表達。 知識圖譜(KG):以節點與邊為核心,更自然表達實體與關係。 圖片來源:https://vocus.cc/article/6496b466fd897800018a4515 可擴充性 RDB:結構變動需修改 Schema,牽涉到資料庫設計與系統改動。 KG:新增新類型的節點或關係,只需在圖結構中加入對應的節點及關係即可,彈性較高。 關係表達 RDB:需要撰寫複雜的 SQL Join 來查詢多表關係。 KG:直接使用圖查詢語言(如 Cypher、SPARQL),更直觀地表達實體關係。 推理能力 RDB:主要靠 SQL 與程式邏輯,缺乏語意層面的推理。 KG:可透過本體 (Ontology) 與推理規則產生隱含知識。 適用場景 RDB:適用在高度結構化且交易頻繁的系統,如銀行、電商交易。 KG:適用在強調資料關聯、需整合多樣數據來源並進行語意推理的場合,如知識管理、智慧搜尋、複雜推薦系統。 4. 應用範例與挑戰 4.1 應用範例 搜尋引擎 Google、Bing 等運用知識圖譜,對人名、地點、組織等提供結構化資訊及關聯搜索結果。 推薦系統 電商或影音平台根據使用者歷史行為以及商品/內容之間的圖狀關係,實現更準確的推薦。 企業資料整合 大型組織將 CRM、ERP、HR 等系統資料整合到同一知識圖譜中,跨部門查詢更容易。 聊天機器人與虛擬助理 透過圖結構進行語意理解,提高對使用者問題的正確解讀與回答。 4.2 面臨的主要挑戰 規模化 (Scalability) 隨著節點和關係不斷增加,圖查詢的效率、索引設計將成為關鍵議題。 資料品質 (Data Quality) 原始資料若有錯誤或不一致,會導致圖中資訊失真,必須進行持續的清洗與驗證。 動態更新 (Dynamic Nature) 新數據的加入、舊數據的修改都需要保持圖的完整性與正確性。 推理與本體設計 (Reasoning & Ontology) 不同行業、不同應用領域都需要自訂或擴充本體,推理規則也需隨需求而調整。 5. 總結與 Q&A 課程重點回顧 知識圖譜透過節點、邊、屬性來呈現實體與關係,結構靈活且能支援語意推理。 與關係型資料庫相比,知識圖譜在資料關係的可視化、彈性擴充、推理功能上更具優勢。 應用廣泛,但也需面對資料品質、規模化等挑戰。 未來發展方向 與大數據、人工智慧(特別是自然語言處理)的結合會更加緊密。 越來越多企業正在導入知識圖譜進行智慧搜尋、知識管理、決策支持。 開放問答 (Q&A) 鼓勵學生就任何不清楚的概念、實際應用疑問或技術細節提出問題。 參考資料(進階閱讀與學習資源) Knowledge Graph – Turing Institute What is a Knowledge Graph? – Ontotext Knowledge Graph (Wikipedia) What is a Knowledge Graph? – Neo4j Blog