咱们先从一个日常场景说起:你跟朋友推荐电影,会说“《流浪地球2》特别好看,是科幻片,讲的是人类建行星发动机逃离太阳系的故事,里面的太空电梯特效绝了”。短短几句话里,藏着“电影名称、类型、核心剧情、亮点”这些知识,而且你说得条理清晰,朋友一听就懂。
这其实就是人类的“知识表示”——把脑子里的想法、信息,用别人能理解的方式(比如语言、文字、手势)表达出来。但如果换成电脑,情况就不一样了:它没有“脑子”,只有一堆代码和数据,怎么让它“看懂”《流浪地球2》的相关知识?怎么让它像人一样用这些知识回答问题、推荐电影?这就需要专门的“知识表示”技术,说白了就是一套“把人类知识翻译成电脑能懂的语言”的方法。
接下来咱们就彻底掰扯明白:知识表示到底是啥、人类和电脑的知识表示有啥不一样、电脑有哪些“翻译知识”的套路、这些套路有啥用,保证不用专业术语,全是家常话。
一、先搞懂:知识表示到底是“啥玩意儿”?
其实不管是人还是机器,知识表示的核心就一个:“怎么把知识存起来、说清楚、用得上”。咱们先拆解开,从最基础的概念说起,把地基打牢。
1. 知识是啥?—— 不是“死记硬背”,是“有用的信息+关系”
首先得明确:“知识”不是孤立的“知识点”,比如你知道“苹果是红的”,这只是个信息;但你知道“苹果是水果,能吃,富含维生素,成熟的苹果通常是红的或绿的,能用来做苹果派”,这些**“信息+信息之间的联系”** 才叫知识。
就像一本菜谱,单看“盐5克”是信息,单看“鸡蛋2个”也是信息,但把“先打鸡蛋、再放盐、然后炒”这些步骤和食材联系起来,才是“炒鸡蛋”的知识。知识的价值,恰恰藏在这些“联系”里。
2. 知识表示是啥?—— 给知识“找个合适的表达方式”
知道了知识是“信息+关系”,那知识表示就是“给这些知识找个能被理解、存储、使用的表达方式”。这事儿对人来说很自然,对电脑来说却得“刻意设计”。
咱们举个对比例子:
- 人类的知识表示:你想记住“李白是唐朝诗人,写过《静夜思》”,可能会在脑子里形成一个模糊的“人物卡片”,卡片上写着“李白”,旁边画个箭头指向“唐朝”,再画个箭头指向“《静夜思》”;跟别人说的时候,直接用语言讲出来,或者写在纸上,别人一看就懂。
- 电脑的知识表示:电脑没法理解“人物卡片”,也看不懂手写文字,得把这句话转换成它能处理的“数据结构”。比如用“(李白,朝代,唐朝)”“(李白,作品,《静夜思》)”这样的三元组,或者用节点和线组成的图(李白是节点,唐朝是节点,“朝代”是连接两者的线),这样电脑才能“读”懂谁和谁有关系。
所以简单说,知识表示就是“知识的表达方式”——对人而言,是语言、文字、图画;对电脑而言,是代码、符号、数据结构。而咱们常说的“知识表示技术”,主要就是研究怎么给电脑设计好用的“知识表达方式”。
3. 为啥要搞知识表示?—— 没有“好表达”,知识就是“废品”
你可能会问:“直接把文字输给电脑不行吗?为啥非要搞复杂的表示方法?”
还真不行。就像你给一个不懂中文的老外写“李白,唐,《静夜思》”,他虽然能看到字,但不知道“唐”是朝代、“《静夜思》”是作品,这些文字对他来说就是没用的符号。电脑也是一样,不经过“表示”的知识,对它来说就是一堆乱码。
知识表示的核心价值有三个,咱们用“查字典”的例子就能看懂:
1. 让知识“能被找到”:如果字典里的字是乱序的,你想查“李”字得翻遍整本书;但按拼音排序(这就是一种“表示方法”),几秒钟就能找到。电脑的知识表示也是如此,好的表示方法能让它快速搜到需要的知识。
2. 让知识“能被使用”:你查“李白”时,不仅想知道这个名字,还想知道他的朝代、作品。字典里把这些信息写在“李白”词条下(这也是“表示方法”),你才能把这些知识串起来用。电脑也是,只有把“李白、唐朝、《静夜思》”的关系表示清楚,它才能回答“《静夜思》的作者是哪个朝代的”。
3. 让知识“能被分享”:如果我按拼音查字典,你按部首查,咱们没法交流查书的经验;但大家都用统一的拼音排序,就能轻松分享“查‘李’字在第XX页”。电脑的知识表示也需要统一标准,比如不同AI系统都用“三元组”表示关系,它们之间就能互相“交流”知识。
二、对比看:人类和电脑的知识表示,差别到底在哪?
同样是“表示知识”,人和电脑的思路差得老远。咱们就从“记知识、用知识、更懂知识”三个维度对比,一下子就能看明白两者的核心区别。
本小章还未完,请点击下一页继续阅读后面精彩内容!