對于ChatGPT來說,相信各位最近都被它鋪天蓋地的新聞報道所淹沒,肯定還有不少人已經體驗到了ChatGPT,大有人工智能已經高度進化之勢。ChatGPT的出現,好像已經對當今網際網路産生了巨大的影響,如果在這麼發展下去,甚至看到了在未來能代替不少職業的趨勢,比如客服、程式設計、廣告、秘書工作等等。
什麼是ChatGPT呢?ChatGPT,是美國OpenAI研發的聊天機器人程式,于2022年11月30日釋出。ChatGPT是人工智能技術驅動的自然語言處理工具,它能夠通過學習和了解人類的語言來進行對話,還能根據聊天的上下文進行互動,真正像人類一樣來聊天交流。
首先
筆者認為不要輕視ChatGPT的出現,它不僅僅是一個會陪你聊天的AI機器人,或是什麼新一代的AI搜尋引擎,現在的ChatGPT已經可以幫你程式設計,幫你搭建一個論文、文章架構。雖然,目前ChatGPT的回答多少還是能看出一些機器人的痕迹,但是随着全世界上億人對它不斷的問答訓練,它的疊代更新速度肯定也是十分驚人的。
其次
我們也不要過分神化ChatGPT,它現在離無所不能的狀态還差得很遠,目前的ChatGPT還是處在一種“很會唬人”的狀态,乍一看它給出的答案十分厲害,但是一旦深入閱讀就會發現,ChatGPT是一個給文章“注水”的高手,内容十分空洞,它隻會單純的填充内容,和我們人類的創作差距還有很大。
最後
合理使用ChatGPT确實可以幫助我們極大的減少工作量,比如讓它為論文搭一個架構,我們再在這個架構之上進行修改,就可以讓寫論文這件事輕松不少;甚至,還可以利用ChatGPT去編寫一些子產品化的代碼,程式員再做一些對應的修改,也會使得程式設計工作輕松不少。總之,合理使用ChatGPT可以讓機械式的工作輕松不少,但是目前依然不能代替人來進行一些工作。我們不要神話它,但也不要輕視它,ChatGPT背後的人工智能AI,确實是下一個時代發展的趨勢,我們一定要重視。本篇文章,筆者想重點聊一聊,AI中的自然語言處理。
自然語言處理
在于ChatGPT的交流之中,最令人印象深刻的就是它所給出的答案,對比于其它AI聊天軟體來說,更像人類一些,甚至可以聯系上下文進行流暢的交流,而做到這一切,就不得不提一項在人工智能中主要的領域——自然語言處理(NLP)。
對于自然語言處理而言,我們在了解這個概念的時候,不妨把這個詞拆開來看。所謂“自然語言”就是人類發展過程中形成的一種資訊交流的方式,包括口語及書面語,反映了人類的思維。比如,您現在在讀的這篇文章,我就是在用自然語言書寫,是以,世界上所有的人類使用的語言都是自然語言。我們為什麼要強調“自然”呢,因為它要差別于計算機語言,計算機畢竟不是人,無法像人一樣處理文本,需要有自己的處理方式,是以,所謂自然語言處理,簡單來說,就是讓計算機接受使用者自然語言形式的輸入,并在内部通過人類所定義的算法進行加工、計算等系列操作,以模拟人類對自然語言的了解,并傳回使用者所期望的結果。自然語言處理是人工智能下各個小領域的十字路口,是人工智能最重要的領域之一,被譽為“人工智能皇冠上的明珠”。
最早的自然語言處理需求源自美蘇冷戰時期,20世紀50年代,由于美蘇之間有大量的外文翻譯需求,而在美國精通俄語的人才數量有限,又趕上計算機剛剛開始發展,是以,使用計算機來翻譯檔案的項目就被提上了日程。但是,随着研究的開展,相關人員馬上就發現了讓計算機了解人類語言的困難極大。同一種語言下的句子都有不同的歧義,有着複雜豐富的文化因素,充斥着各種無規律的、約定俗成的俗語;再加上詞與詞之間、句與句之間都有複雜的邏輯關系,讓當時算力孱弱的計算機完成這種工作,無疑是天方夜譚,就更不用說還要在不同的語言之間進行翻譯了。是以最後,人們也隻搞出了一種隻能一詞一詞對應翻譯的機器,與其說是翻譯機,更不如說是早期的電子辭典。
直到90年代,IBM才提出了新一代的翻譯模型——基于統計的機器翻譯。簡單來說,就是通過大量的樣本資料,加以分析,統計詞與詞如何搭配機率最大,以此來找出詞與詞之間的關系。這樣做有一種好處,就是可以讓機器産生一種類似于人類的“語感”。比如,當統計了足夠大的句子之後,當“芒果”和“吃”一起出現的時候,計算機很可能就會知道,這句話指的是水果,這時語言的準确性就會大大提高。但是,這裡還有一個緻命的問題:這種模型對于句子的順序不敏感,也就是說它很可能給出你一個絲毫沒有文法邏輯的結果。比如“What’s your name?”所得到的翻譯結果很可能是“什麼是你的名字?”讀起來就十分怪異。
為了解決這個問題,那便要引入一個全新的AI算法——神經網絡。雖然,其底層本質還是統計機率,但是它可以讓計算機逐漸開始“了解”句子的含義。從此,自然語言處理将會逐漸跳出翻譯領域,開始逐漸擁有“智能”。具體的神經網絡算法我們在這篇文章就暫時不展開了,感興趣的各位可以移步這篇文章:
https://toutiao.le365.cc/127088.html
詞向量
在這裡,筆者隻想說明一個概念,那就是:詞向量。在人類眼中,當看到“蘋果”二字時,可能想到的是一種紅色或綠色的水果,也有可能是某科技公司;但是在計算機的世界中,它們隻是一串毫無意義的0和1,計算機不會記錄意義,它也不會了解意義,它隻需要讓操作它的人了解其中的意義就可以了。到了人工智能這裡,對于計算機有了新的要求,它需要“了解”意義。那計算機如何才能“了解“呢?答案就是:向量化。
如何向量化呢?打個比方,就是“蘋果”這個詞,形狀是球形的指數是0.9,味道是甜的指數是0.8,得到的坐标就是[0.9,0.8];“桃子”這個詞,形狀是球形的指數是0.8,味道是甜的指數是0.9,得到的坐标就是[0.8,0.9],那麼這樣它們就能在極坐标軸上被表示出來,就會很容易的看到,桃子和蘋果,在坐标軸上關系很近,那它們很可能就有某些直接聯系。當然了我們可以也可以添加更多元度的特征量,比如顔色、重量、體積等等,随着次元的增加,描述也會更加精确,計算機也就會逐漸“了解”一件事物,甚至能明白事物與事物之間可能的聯系。就如同馬克思所說:“人是一切社會關系的總和。”在計算機的世界裡,詞語也是一樣的,我們往往用其他的詞語來定義另一種詞語,當計算機精确的知道了詞與詞在坐标系中位置,它也就能确定每個詞之間的關系,那麼計算機就能知道每個詞之間的語義聯系,也就“了解”了語言。
現在,還有一個問題,那麼詞之間的位置怎麼确定呢?讓我們來看看著名的詞向量算法word2vec是怎麼做的。其實,答案十分簡單粗暴,就是通過大量的“完型填空”來訓練人工智能。比如,先給人工智能一句話“我喜歡吃蘋果”,然後隐藏掉“喜歡”,變成“我____吃蘋果”,讓人工智能去猜中間是什麼,這時詞向量的值都是随機生成的,人工智能自然猜不對,以此往複,直到猜中“喜歡”,這時随機出的詞向量的數值就更加接近正确的值,就這麼訓練上幾百、幾千億次,詞向量的數值就會逐漸正确,進而AI的回答就會越來越智能。這時一個詞就完成了詞的向量化,這一過程,還有一個專有名詞叫做“詞嵌入”。
而本次大火的ChatCPT,則是基于谷歌改良的自然語言處理算法Transformer的底層魔改的産物,簡單來講,就是通過算法模拟人類的“注意力”,進而極大的提升了AI了解語義的精準程度,就像谷歌自己論文的标題所說“Attention is all you need(注意力是你的全部所需)”,而具體的Transformer模型概述,各位可以移步這篇文章:
https://www.jianshu.com/p/b40deff0ca63
寫在最後
随着ChatGPT的讨論持續升溫,現在在網際網路上也出現了許多擔心未來自己的工作會被AI取代的聲音,就目前的情況來看,筆者認為還差得遠,但是一定會出現善于使用ChatGPT輔助自己工作,進而極大提升自己工作效率的情況。當然,發展AI是未來的趨勢,随着AI的疊代,一定會有大量從事瑣碎的、重複的、機械式工作的人将會被取代,這是未來的趨勢,我們任何人,都隻能去擁抱這樣一個時代趨勢,也隻能順勢而為。這樣的AI替代,必然是有争議的,但好不好,都不影響AI發展的趨勢。我們能做的隻有積極學習AI、接受AI,讓AI幫助自己更好地工作;同時努力提升自己,積極從事一些個人創造力占比大的職業。
祝各位都有一個光明的未來。
作者:ZongYu 來源:公衆号ID:EEPWweixin