AI產(chǎn)品設(shè)計(jì)總結(jié):AI產(chǎn)品的設(shè)計(jì)框架
文章為作者對人工智能領(lǐng)域產(chǎn)品的學(xué)習(xí)總結(jié),主要內(nèi)容為AI茶農(nóng)的設(shè)計(jì)框架,希望此文能夠給大家一些啟發(fā)與幫助。
我是一名PC/移動互聯(lián)網(wǎng)的產(chǎn)品經(jīng)理,現(xiàn)在正在努力轉(zhuǎn)型進(jìn)入人工智能領(lǐng)域,這是我的第2篇學(xué)習(xí)總結(jié)。本篇文章總結(jié)了一個(gè)剛剛學(xué)習(xí)到的AI產(chǎn)品設(shè)計(jì)框架,框架中整合了很多目前AI方面的知識體系。也許這個(gè)設(shè)計(jì)框架能夠給想學(xué)習(xí)AI的朋友們一個(gè)知識框架,也就是學(xué)習(xí)AI到底都要學(xué)習(xí)哪些知識的一個(gè)框架,希望借此文章能夠給大家拋磚引玉,與大家共同學(xué)習(xí)。
本文分為兩個(gè)主要章節(jié)。首先,從基礎(chǔ)概念的角度給大家介紹一下這個(gè)產(chǎn)品設(shè)計(jì)框架。第二章則使用了一個(gè)小示例來講解如何應(yīng)用框架。
一、AI產(chǎn)品設(shè)計(jì)框架基礎(chǔ)知識
如上圖,這就是本篇要講解的AI產(chǎn)品設(shè)計(jì)框架。其中左側(cè)的Agent就是今天的主角,可以稱為“學(xué)習(xí)的基于效用的Agent”。這個(gè)名稱中包含了三個(gè)部分,我們就先來解釋一下這三個(gè)部分:
- Agent:能夠行動的某種東西。(第二章示例所講解的Agent,對應(yīng)的就是一個(gè)可以自主玩牌的Agent)。
- 學(xué)習(xí)的Agent:可以簡單理解為可以自主學(xué)習(xí)自我升級的Agent。
基于效用的Agent:可以簡單理解為此類Agent在選擇執(zhí)行的行為時(shí),總是選擇期望能得到最大化收益的行為。
上圖中右側(cè)的是環(huán)境,也就是Agent所處的環(huán)境,可以理解為Agent的外部環(huán)境。這個(gè)環(huán)境可以是真實(shí)環(huán)境,也可以是網(wǎng)絡(luò)虛擬環(huán)境。
Agent可以通過傳感器來感知環(huán)境的當(dāng)前情況,通過執(zhí)行器對環(huán)境產(chǎn)生影響。舉個(gè)例子:假如一個(gè)機(jī)器人Agent,就是將攝像頭或麥克風(fēng)作為傳感器來獲取圖像與聲音,將機(jī)器手臂與機(jī)器腿作為執(zhí)行器來進(jìn)行特的定操作與移動物理位置。再比如微軟的聊天機(jī)器人小冰也是一個(gè)Agent,只不過所處的環(huán)境是網(wǎng)絡(luò),他通過獲取文字輸入的接口作為傳感器,通過發(fā)送回復(fù)信息的接口作為執(zhí)行器。
已經(jīng)講解了最基本的一個(gè)Agent的結(jié)構(gòu)情況,如果說想讓Agent在環(huán)境下運(yùn)行,那么首先要做的事情就是定義環(huán)境。
1.1?環(huán)境定義
Agent都會有其需要完成的任務(wù),在設(shè)計(jì)Agent時(shí),第一步就是盡可能完整地詳細(xì)說明任務(wù)環(huán)境。任務(wù)環(huán)境的定義內(nèi)容包括:性能度量、環(huán)境以及Agent的執(zhí)行器與傳感器,稱之為PEAS描述(Performance(性能度量),Environment(環(huán)境),Actuators(執(zhí)行器),Sensors(傳感器))。我們通過以下描述來理解各個(gè)定義內(nèi)容:
- Agent在其所處的環(huán)境中,通過傳感器收集感知信息,形成Agent內(nèi)部的感知序列。
- Agent在其所處的環(huán)境中,針對感知信息會生成一個(gè)行動序列,并由執(zhí)行器完成。
- 一個(gè)理性Agent,對每一個(gè)可能的感知序列,根據(jù)已知的感知序列和Agent具備的當(dāng)前知識信息,選擇能使其性能度量最大化的行動。
下面給出一個(gè)示例:
1.2 基于效用的Agent的設(shè)計(jì)
定義好環(huán)境,我們就要回到對主體Agent的設(shè)計(jì)上來了。
上圖就是基于效用的Agent的設(shè)計(jì)框架。其中,矩形表示Agent決策處理過程,橢圓形表示對應(yīng)處理過程所中用到的背景知識信息。
下面我們將按照Agent的處理順序依次說明每一個(gè)處理步驟的具體處理方法,并且會說明每一個(gè)步驟為下一步驟所輸入的信息。
1.3?學(xué)習(xí)的基于效用的Agent的設(shè)計(jì)
以上已經(jīng)完成了對一個(gè)基于效用的Agent的設(shè)計(jì)描述。但真的一個(gè)智能Agent就這樣就完成了么?如果對于一個(gè)不能自主學(xué)習(xí)并進(jìn)化系統(tǒng)邏輯的Agent,還不能稱其為智能化的。那么我們只需將上述的Agent設(shè)計(jì)加入一個(gè)能夠?qū)W習(xí)的環(huán)境中即可。接下來我們看看能夠?qū)W習(xí)的基于效用的Agent是如何設(shè)計(jì)的吧。
學(xué)習(xí)Agent可以被劃分為4個(gè)概念上的組件:學(xué)習(xí)組件、性能組件、評判組件、問題產(chǎn)生器。在此部分中的性能組件,就是“學(xué)習(xí)的基于效用的Agent”中“基于效用的Agent”的整體。設(shè)計(jì)框架如下圖所示:
下面將對于除性能組件外的其他組件進(jìn)行簡單說明:
- 學(xué)習(xí)元件:利用來自評判元件的反饋評價(jià)Agent做的如何,并確定應(yīng)該如何修改性能元件以便將來做得更好。
- 評判元件:根據(jù)固定的性能標(biāo)準(zhǔn)告訴學(xué)習(xí)元件Agent的運(yùn)轉(zhuǎn)情況。評判元件是必要的,原因是感知信息自身無法指出Agent的成功程度。性能標(biāo)準(zhǔn)是固定的。概念上說,應(yīng)該把性能標(biāo)準(zhǔn)置于Agent之外加以考慮,理由是Agent不應(yīng)該修改性能標(biāo)準(zhǔn)來適應(yīng)他自己的行為。
- 問題產(chǎn)生器:負(fù)責(zé)可以得到新的和有信息的經(jīng)驗(yàn)的行動建議。如果性能元件自行其是,他會一直根據(jù)已知的知識采取最佳行動。但是,如果Agent希望進(jìn)行少量探索,做一些短期內(nèi)可能次優(yōu)的行動,那么他也許會發(fā)現(xiàn)對長期而言更好的行動。問題發(fā)生器的任務(wù)就是建議探索性行動。它的目標(biāo)是發(fā)現(xiàn)一種更好的物體運(yùn)動的理論并改進(jìn)自己的頭腦。
到現(xiàn)在為止我們已經(jīng)簡單了解了如何搭建一個(gè)“學(xué)習(xí)的基于效用的Agent”。此時(shí)是不是非常希望從概念的層次實(shí)操一把?由于筆者正在學(xué)習(xí)AI的入門階段,還沒有真正了解到每個(gè)具體概念的應(yīng)用方法,因此我也只能從最表面的層次演練一下。對于沒有描述清楚的內(nèi)容,筆者會在今后的學(xué)習(xí)中逐步完善并分享。同時(shí),如果文章中存在錯(cuò)誤,也希望大牛們多多指出。
二、一個(gè)簡單的產(chǎn)品定義示例
下面將要分享的簡單事例是《自動斗地主Agent》,一個(gè)YY的成果,自己玩耍而已大家不要太過認(rèn)真。
我的想法是,設(shè)計(jì)一款能夠自主學(xué)習(xí)優(yōu)化并且?guī)臀易畲蠡@勝的某個(gè)移動端斗地主App游戲的智能自動化游戲Agent。
第一步:首先定義一下游戲的環(huán)境
模型信息:關(guān)于獨(dú)立于Agent的世界如何變化的規(guī)則信息與Agent自身的行動會影響世界的規(guī)則信息,此處會將游戲中對于斗地主的全部規(guī)則錄入,諸如:發(fā)牌規(guī)則、叫地主規(guī)則、出牌規(guī)則、加分規(guī)則、獲勝規(guī)則等等。并且會錄入一般化的出牌策略,諸如:壓制策略、輔助同伙策略等等。
第二步:對于基于效用的Agent,我們做如下定義
- 效用判斷的規(guī)則信息:這里根據(jù)環(huán)境中已經(jīng)出過的牌,每個(gè)選手的出牌歷史、角色以及猜測可能剩余的牌等信息,判斷出最能符合最大化收益的出牌行為。
- 傳感器就是獲取環(huán)境中當(dāng)前的游戲狀態(tài)信息,如:誰出了什么牌等;
- 執(zhí)行器就是能夠模擬手機(jī)點(diǎn)擊來執(zhí)行叫地主、出牌等操作;
第三步:對于學(xué)習(xí)的Agent,我們做如下定義
- 性能標(biāo)準(zhǔn):根據(jù)初始時(shí)手中的牌、過程中的得分情況與最終完成后其他選手中剩余牌的情況給出一個(gè)對于一輪玩牌結(jié)果的獎(jiǎng)勵(lì)或懲罰的分?jǐn)?shù)。
- 學(xué)習(xí)組件:會不斷對更為一般化的開局與出牌策略、更為一般化的農(nóng)民合作策略、針對識別某個(gè)人或某種類型的人的開局與出牌策略、如何試探其他玩家的出牌策略等策略提出學(xué)習(xí)目標(biāo),并根據(jù)結(jié)果修正Agent中的效用判斷。
好了,其實(shí)我也只能定義到這里了,后面我還會根據(jù)學(xué)習(xí)成果來不斷補(bǔ)充這些信息。由于此處內(nèi)容純屬我個(gè)人的理解,可能存在錯(cuò)誤的認(rèn)識,希望大家指正。
附:我的學(xué)習(xí)計(jì)劃
- 《人工智能:一種現(xiàn)代的方法(第3版)》
- 《深度學(xué)習(xí)》書籍中的數(shù)學(xué)知識
- 《終極算法:機(jī)器學(xué)習(xí)和人工智能如何重塑世界》
- 《傳感器實(shí)戰(zhàn)全攻略》
- 《數(shù)學(xué)之美》
本文由 @howie楊?原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自PEXELS,基于CC0協(xié)議
剛剛轉(zhuǎn)到產(chǎn)品崗位,想往AI PM方向發(fā)展,但不知道從何入手,請問有什么書籍推薦嗎
老楊,在這里又看到你的文章了
??
您好,我目前也在考慮轉(zhuǎn)型到AI產(chǎn)品經(jīng)理,但了解甚少,還沒有明確的學(xué)習(xí)切入點(diǎn),會持續(xù)關(guān)注您 有問題會留言向您請教
一起學(xué)習(xí)交流吧,我也是正在學(xué)習(xí)轉(zhuǎn)型中
做了這么久的AI產(chǎn)品經(jīng)理第一見過這種操作。。。。
有啥問題,歡迎指點(diǎn)
我個(gè)人理解:這些是套路化模式化的東西,有可能跟您移動端產(chǎn)品經(jīng)理的工作經(jīng)驗(yàn)有關(guān)。我覺得了解ai產(chǎn)品的輸入輸出更為重要,哪些東西現(xiàn)在能夠?qū)崿F(xiàn),做的必要性是什么。了解這些技術(shù)邊界之后再套這些外部模型效果會更好一點(diǎn)。個(gè)人愚見,歡迎討論。
謝謝白衣卡爾,非常受用,非常希望有過從業(yè)經(jīng)驗(yàn)的朋友一起討論與指點(diǎn)。以上文章內(nèi)容是來自《人工智能:一種現(xiàn)代的方法》中總結(jié)的內(nèi)容,不過目前也暫停了該書的學(xué)習(xí)。
我目前的感覺也偏向?qū)W習(xí)基礎(chǔ)的數(shù)學(xué)知識與機(jī)器學(xué)習(xí)技術(shù),因此目前轉(zhuǎn)向?qū)W習(xí)《終極算法》與《數(shù)學(xué)之美》這兩本書。不知道這個(gè)方向是否更易于入門?
哈哈,咱們都是一樣,我也不是科班出身,我是學(xué)物理的。目前正在學(xué)習(xí)深度學(xué)習(xí),運(yùn)用pytorch跑跑demo,個(gè)人覺得只有在真正實(shí)踐過程中才能體會到需要什么,要實(shí)現(xiàn)什么,比如說我輸入的是圖片,輸出的是語音,這就是看圖說話。雖說不求將代碼里面的細(xì)節(jié)全部掌握,但是至少要熟悉流程,就跟您做產(chǎn)品經(jīng)理一樣要能跟程序員交流,尤其目前ai產(chǎn)業(yè)還是以技術(shù)為導(dǎo)向,落地需求各大公司正在探索,所以說懂一點(diǎn)基本的程序還是要的。個(gè)人見解,歡迎討論。
其實(shí)關(guān)于如何自學(xué)深度學(xué)習(xí),知乎上有許多建議,您不妨看一下,主要還是興趣愛好,如果真的想學(xué)這些都不是困難,正向您說的,轉(zhuǎn)型人工智能,我已在路上。如果您有問題,歡迎加我的微信pkuphykale,我們共同討論共同進(jìn)步。
非常感謝,內(nèi)容非常受用。我目前也正在考慮學(xué)習(xí)python呢,就是還沒有決定好啥時(shí)候開始學(xué)習(xí),一會兒加微信,一同學(xué)習(xí)討論
機(jī)器學(xué)習(xí)或者深度學(xué)習(xí)只是解決了無法構(gòu)建規(guī)則或者細(xì)化標(biāo)準(zhǔn)的情況下的一種方法,AI本身是提高效率,將人類對事務(wù)的優(yōu)化、總結(jié)的想法用計(jì)算機(jī)的方式落地,至于什么方法不重要,作業(yè)介紹的是一種產(chǎn)品框架思路,本身是沒問題,問題是現(xiàn)實(shí)生活中很多的事情無法用規(guī)則或者標(biāo)準(zhǔn)去建模。也就是學(xué)習(xí)器設(shè)計(jì)的難道。
非常贊同,隨著學(xué)習(xí)的深入,目前的觀點(diǎn)也有所調(diào)整,AI代表的是勞動力,替代技能性工作的一種技術(shù),至于是什么樣的方法確實(shí)不很重要。非常感謝回復(fù)
本文的內(nèi)容是學(xué)習(xí)《人工智能:一種現(xiàn)代的方法》后的總結(jié),可能與實(shí)際工作中的AIPM有一定差別。大家可以參考這個(gè)框架對AI產(chǎn)品有一個(gè)輪廓性的認(rèn)識,之后可以根據(jù)興趣選擇學(xué)習(xí)具體的知識領(lǐng)域。目前我在學(xué)習(xí)的內(nèi)容就是數(shù)學(xué)基礎(chǔ)知識、機(jī)器學(xué)習(xí)以及深度學(xué)習(xí)方面,文中的結(jié)尾處也給出了建議的書籍,請大家參考。
你的文章也給我了踏出AIPM一定的啟迪和方向,會持續(xù)關(guān)注你,共同成長。
非常感謝,一起在路上,一同探索
很抱歉,可能由于鄙人對AI技術(shù)了解不多,拜讀完您的文章有點(diǎn)沒太看懂。哈哈
謝謝評論。我也是剛開始學(xué)習(xí)這方面的技術(shù),上述內(nèi)容是總結(jié)自一本大學(xué)人工智能教材。
總結(jié)的目的是對未來所要學(xué)習(xí)的內(nèi)容建立一個(gè)基本的認(rèn)識?;谖闹械膬?nèi)容,我理解如果最終想完成AI產(chǎn)品的設(shè)計(jì),需要具備線性代數(shù)、統(tǒng)計(jì)學(xué)、概率論等基礎(chǔ)知識,需要深入了解框架中學(xué)習(xí)組件,并且對市場上的傳感器與執(zhí)行器有一定程度了解。
對于學(xué)習(xí)組件,我理解需要補(bǔ)充機(jī)器學(xué)習(xí)與深度學(xué)習(xí)的知識,因此選擇了《終極算法》這本書繼續(xù)進(jìn)行學(xué)習(xí)。對于數(shù)學(xué)知識方面,我選擇了《數(shù)學(xué)之美》這本書。
也許是我掌握程度不佳,后續(xù)會繼續(xù)深入學(xué)習(xí),并且文章并不屬于科普型內(nèi)容,因此較難理解。
如果對這方面感興趣,希望能夠繼續(xù)討論,如有錯(cuò)誤的地方也希望能給與幫助指導(dǎo),謝謝!