1. 程式人生 > >85%的AI專案以失敗告終,切記這6條成功原則!

85%的AI專案以失敗告終,切記這6條成功原則!

人工智慧有多火每個人的心裡應該很清楚,所以在這裡不再闡述。很多科技公司把未來幾年的賭注壓在了AI身上-“all in AI“,同時也有數不清楚的公司正在準備轉型AI,另外也有很多公司雖然跟AI沾不上任何邊但喊著AI口號來吸引關注。 總而言之,AI會變得越來越火,會有更多的人才走進這個大軍裡。

在AI轉型的程序中,並不一定是一帆風順的,甚至會很艱難。不知有多少人關注過人工智慧專案的失敗率? 20%? 30%? .. 或者 50%?? 可能想得太簡單,據不完全統計一個數據類專案的失敗率達到了85%以上! 其實這也不奇怪,現階段,一個一般IT類專案的失敗率也是50%以上呢,何況AI專案....

所以,很多情況下投入實施AI專案本身是風險,就看你有沒有足夠的風控能力,最後能把專案成功落地,並且產生價值! 那為什麼會有大部分AI專案以失敗為告終呢?人的問題? 不一定! 可能的主要原因包括: 1.  解決了錯誤的問題,或者把偽需求當成了真需求   2.  選擇了演算法解決不了的問題... 等等。

在這篇文章裡,我們總結出了六條原則,這些原則對於實施一個成功AI專案來說尤其重要。對於這些原則我們也參考了 [1]。

 

1. 弄清楚是否是合適的時機?

人工智慧最大的價值是什麼? 是可以幫你做決策! 那為了做這種決策需要什麼條件? 必須要有資料! 沒有資料,人工智慧只是空談。所以第一點就是要弄清楚是不是切入AI的最好的時機或者是大力推進AI的最好的時機。

一個AI專案的技術流程是:搭建資料蒐集系統->資料收集->清洗->AI...  如果一個公司還沒有那麼多資料必須由機器來分析,那這時候可以做兩件事情:1. 提前想好未來應用場景,佈局資料的蒐集工作  2. 先專注把業務做好,AI事情之後再看。總而言之,資料是AI的基礎,如果沒有資料,那首先得想辦法生成或者蒐集資料,而不是直接跳進這個“坑”,然後拖累了其他的業務。

其實這種例子不少見。尤其是對AI瞭解不深的高管或者策略者,經常急於這些“錦上添花”的事情,反而在自己需要發力的戰場上卻沒能做出成果。 所以對於第一個原則,要不斷問自己:我們有足夠的資料嗎? 現在是合適的時機嗎? 現階段做什麼才能一年之後才能把AI技術提升到公司的戰略層面?

 

2. 選擇正確的問題比使用哪一項技術更重要

機器學習,深度學習是AI領域的流行詞,聽起來高大上。在學校裡,學術界甚至在各類比賽中,我們習慣於技術思維 - “我有很厲害的技術,我要做XXX專案”。其實找對問題是最重要的,這是一個人最高級別的技能。愛因斯坦等科學家為什麼會這麼成功? 聰明只是一方面,核心是他們能夠找到一個“好”的問題! 為什麼美國很多博士生6,7年也畢業不了?難道他們因為笨嗎? 其實不然,就是因為找不出合適的問題! 所以,找一個正確的問題可以說是AI專案成功的一半。

那怎麼去找到正確的問題呢? 這是一個沒有正確答案的問題,但其本質是找出業務中的痛點。以下幾點可以作為參考:

1.  首先要理解業務,不是跟別人聊聊就行了,一定要深入。比如現在負責的業務是智慧客服,那就在一線當幾天客服再來談接下來怎麼做! 如果只是跟客服負責人簡單坐下來喝個咖啡聊一下,覺得能聊出真正的痛點嗎? 所以,作為AI專案的負責人,一定要對業務敏感,試圖從業務人員的視角去了解。 現階段,從事AI的人彷彿會有種優越感,很難踏實地去了解業務,導致閉門造車,最後其實也沒什麼成果。 

 

2. 瞭解競爭對手在做什麼,他們在哪些事情上已經取得了成果。知已知比是商業界很重要的一點,要時刻了解別人在做什麼。如果他們在某一個領域已經驗證出成功的案例出來,那這正是對你來說很好的參考。

 

3. 設定好專案的優先順序

AI是一個非常開放的領域,即便對於一個業務,我們可能想出各種各樣的問題。但需要記住的一點是:任何的AI專案必然是一個長期的工程,它所帶來的成本也是比較大的。所以必須要有個優先順序。假設我們面臨三個選擇,專案1,專案2和專案3,首先需要做哪個? 選擇最有意思的? 選擇最優挑戰性的? 還是選擇我最感興趣的技術相關的? 別,千萬不要這麼做....

在實施AI專案的時候優先順序最高的還是對業務影響最大的那一類專案。換個角度可以想一想,公司裡的哪個業務因為效率低而天天被罵? 那一批人每天做著重複性的工作但卻花費大量的成本? 產品中的哪一個環節的體驗最不好? 

我們可以從這些痛點中出發,先把最“痛”的且“可以AI”化的專案列出來,然後再粗略算一下,專案預期所帶來的價值或者對業務上的提升。那這部分價值怎麼計算?這方面要部分依賴於對AI技術的理解,比如現在有一個系統A,但未來3個月開發出了一個演算法之後,能夠提升多少的效率? 另外,也可以去參考一些領域內成功案例,實在不行就去看看論文裡的結果,當然這裡的結果可以作為最高可以達到的預期結果。 

還有一種方法是,想出一個最簡單的路徑來快速嘗試。比如一個創業公司想推出一個機器客服系統,那搭建這種系統必然會耗時長。那這時候怎麼快速驗證? 我們完全可以先以人工的方式來操作(客戶以為是機器),並觀察使用者的反饋,如果這樣的方式確實可行,那基本上心裡也會有數。所以這個階段,要想出各種捷徑或者“作弊”的手段來快速測試並找出最合適的專案。

 

4. 理解技術的上限,不要以為AI什麼都可以解決

AI就像3,4歲的孩子,它的能力是有限的,它不可能用來解決任何問題。對於一些問題它的作用確實比較大比如人臉識別,影象識別,物體檢測等。但對於另外一些問題作用未必明顯,或者投入產出比很低,比如通過AI去預測A股的價格,或者想做一款什麼都可以回答的智慧機器人。

可以把利用AI預測A股股價作為例子(美股沒有預測過,所以不敢在這裡評論),這個目前很難做到。為什麼?股價本身是要依賴於人性的,同時也依賴於其他非價格類因素,那這些資訊顯然很難在我們接觸到的股市資料中獲得。或許有些人會說,那我們可以去分析人的行為啊,然後把它作為訊號不就行了嗎? 當然可以,這也是下面我列的第三點。但即便如此,A股的這種不確定性使得目前的AI系統很難去提供準確地預測。

為了做出這樣的決策,必須要對技術的前沿知識非常敏感。只有這樣才能做到評估: 1. 這專案到底能不能做? 可行性怎麼樣?  2. 這專案做完之後預計提升有多少,這個提升帶來的好處跟成本相比會是怎樣? 3. 如果想讓目前專案具有可行性,需要具備哪些條件?或者哪些資料? 為了擁有這些條件接下來規劃是怎麼樣的?

 

5. 快速迭代,持續迭代

AI專案的核心是迭代,不斷試錯的過程。這點需要跟產品經理還有開發人員要達成一致。那為了更好的迭代,需要去想一個迭代的路徑,也就是什麼樣的迭代方法讓產品更快速地達到我們想要的效果?這裡面的學問很多,產品怎麼設計才能更好的獲得反饋? 資料怎麼收集?等等。

一個AI專案如果超過3個月看不到效果是比較危險的,為什麼這麼說? 因為還沒看到任何效果等同於還沒有任何的迭代。迭代思路其實跟MVP(minimum value product)的思路非常相近,而且這個思路也跟強化學習(reinforcement learning)比較相近。

迭代本身分成兩個部分,一個是整個專案的快速迭代, 還有一個是每一個專案模組內的快速迭代。我們可以以建模來打個比方,比如我們在建模時第一個要搭建的模型叫做baseline,那什麼叫baseline?  邏輯迴歸? SVM? 在我眼裡,baseline 就是一天內能做出來的模型!不管資料有多大,場景多複雜,一天內需要看到一個最簡單的結果。資料很多怎麼辦? 那就取樣一部分; 資料太髒怎麼辦? 那就把髒資料先去掉;資源不夠怎麼辦? 那就用邏輯迴歸這種簡單模型! 其實總有辦法可以在最短時間內弄出一個可執行的模型,並通過此結果來評估專案的可行性以及未來預期的效果。 這些資料對於後續專案的實施尤其關鍵。另外,讓別人儘快看到結果也會增加對你的信任,不然之後的工作會非常被動。

 

6. 專案上線前要做好業務評估

我們在建模的時候通常會考慮一些“AI型”指標,比如AUC,F1-score等,這些應該很多人非常熟悉。那這裡的問題是,這些指標越高,對業務的價值就會越高嗎? 其實不一定! 從業務的角度評估和從模型的角度評估不一定是完全正比關係的。但至少肯定是有類似正比關係,不然採用這些指標是沒有意義的! 所以作為AI人員也需要關注業務部門關心的指標,來思考什麼樣的模型狀態最適合當前的業務狀況。

另外,在很多場景下對於模型的解釋也是比較重要的。特別是對於金融,教育這類的場景。我們希望能夠在部署前有對這些模型的理解,比如一個模型犯錯誤,理解為什麼?  這也是目前深度學習的弊端-比較差的可解釋性。

參考:

[1] https://towardsdatascience.com/6-uncommon-principles-for-effective-data-sciences-7424a332c921

 

我們是誰?: 我們是一家專注於人工智慧領域的線上教育公司,由一群有情懷的矽谷科學家來創辦。我們提供最專業的AI課程以及每週4-5期的免費AI類公開課。關注此公眾號(“貪心科技”)可以獲得相關的資訊。