跳到主要內容

機器學習的五大實務問題:對企業的影響與相應的化解方式

Appier 首席機器學習科學家 林守德博士

正如 Jason Jennings 及 Laurence Haughton 在《以快吃慢–如何藉速度在商戰中克敵制勝》一書中指出──未來,不是大公司吃掉小公司,而是速度快的公司吃掉速度慢的公司。

從現在開始,唯有善用適當的資訊快速做出決策的企業,才能成為戰場上的贏家。

機器學習技術驅動了這場變革。無論企業是嘗試向顧客提出建議、改進生產製造流程或應對市場的變動,都能運用機器學習技術處理大量的資料,進而提高自身的競爭優勢。

然而,機器學習雖能創造大好機會,卻也同時帶來了相應的挑戰。機器學習系統需要大量的資料,以及執行複雜的運算能力。顧客期望改變、出乎意料的市場波動等等外部因素,都意味著機器學習模型的運作並不是百分之百的自動,往往仰賴許多外部的資源來作監控及維護。

此外,機器學習也有不少尚待解決的實務問題。以下將深入探討機器學習的五大實務問題,以及這些問題對企業應用會產生的影響。

1. 資料品質

機器學習系統仰賴資料進行訓練,而訓練資料在廣義上可分為「特徵」及「標籤」兩種類別。

「特徵」是輸入機器學習模型的資料,像是來自感測器、顧客問卷、網站 cookie 或歷史資訊等等。

然而這些特徵的品質可能良莠不齊。舉例而言,顧客在填寫問卷時可能會隨便填寫,或對題目略而不答;感測器可能因失靈而回傳錯誤資料;即使使用者的網頁行為明確,網站 cookie 回報的資訊也可能不完整。

此外,資料也可能包含雜訊,當無謂的資訊夾雜其中時,機器學習模型將會受到誤導而做出不正確的預測。

相較於「特徵」,「標籤」的正確性與穩定度更為重要。標籤是機器學習模型最後輸出的結果。所以需要在訓練的時間利用正確的結果教導機器學習模型。標籤的稀疏性也是個問題,這是當系統已掌握大量輸入的資料卻對輸出的結果沒有把握時出現的現象。在這樣的情況下,將難以針對該模型偵測其特徵與標籤之間的關聯性優化,甚至需要耗費額外的人力干預,將標籤與輸入資料關聯起來。

機器學習需仰賴輸入與輸出資料的關聯,才能具備足夠的泛化能力以預測未來行動並提供相關建議。因此,如果輸入資料過於雜亂、殘缺或有所偏差時,將可能難以理解某輸出/標籤的產出原因。近年來機器學習也開發出許多先進的方法如半指導式學習,轉移學習來處理這樣的問題。

2. 複雜性與品質的取捨

建立強大的機器學習模型需要大量的計算資源來處理特徵和標籤,編寫複雜的模型更需要AI科學家和軟體工程師投入大量心力,同時也需要強大的計算能力、較長的執行時間,才能夠得出可用的結果。

而企業必須在這樣的情況下權衡利弊。可以選擇較快的開發速度或響應速度,但是結果可能不夠精確;或是可以接受較慢的速度或使用比較多的資源,但是獲得相對精準的產出。不過,無論是以較高成本換得精確模型或選擇以速度取勝,整體而言仍需視應用的情況而定,企業未必會因取捨而吃虧。

舉例而言,由於零售購物網站對顧客進行推薦需要即時應對,則此時成果即使出現意料外的變化,也仍在可接受範圍。然而,金融交易系統則會需要較可靠的判定結果。由於不需要即時產出結果,系統能運用更多資料讓模型執行更精密的計算,以便產出更理想的結果。

隨著「機器學習即服務」(Machine Learning as a Service,簡稱「MLaaS」)進入市場後,模型複雜性和品質間的利弊權衡開始受到更多關注。芝加哥大學的研究人員深入分析機器學習即服務的成效後,發現「如果能為關鍵決策(如分類器和特徵選擇)產出足夠的洞察,則其所能達到的效益相當於另一個獨立的分類器。」

3. 資料的樣本偏差

許多企業會借助機器學習的演算法進行員工招聘。不過,Amazon卻發現用於輔助挑選適任應徵者的演算法其實並不公正。此外,普林斯頓的研究人員也指出,有些系統彷彿像人類般擁有好惡,傾向選擇帶有歐洲色彩的姓名。

這不僅是模型發生問題,更多來自用以訓練模型的資料本身帶有偏見。幸好,在察覺資料出現偏差後,科學家便能設法將其導正,或盡可能降低偏差對資料的影響。

第一項挑戰便是判定資料是否含有偏見,這表示須執行額外的前置作業。雖然不可能將資料的偏見全數消除,但仍可藉由導入人類知識將影響降至最低。近年來也有許多帶有公平性原則的機器學習模型被提出,希望能夠處理這樣的問題。

而在部分情況下,也可能需要限制模型中可以使用的特徵數量。例如,在模型產出結果時,忽略某些特徵(如種族或膚色)將有助於減少偏差資料的影響。

4. 變化多端的顧客期望與概念漂移

機器學習模型會在特定情境下運作,而顧客追求的也不一定一樣。以數位廣告為例,有些客戶在乎的是點擊率,有些客戶在乎的是購買數量,有些客戶在乎總營收,有些客戶甚至有更複雜的評估機制。如果機器學習模型無法與時俱進地跟上顧客需求,則可能被淘汰。

模型可能因不同原因而出現衰退的現象。當新資料引入模型時發生漂移,即稱為「資料漂移」。或者,當人們對資料的解讀以及需求有所改變時也會發生漂移,即為「概念漂移」。

而為了適應上述的漂移現象,模型必須善用不斷新增的資料持續自我更新和進步。這也意味著必須定期對於模型作一些偵測與測試,讓機器學習的模型有「自我修正」的能力。

持續收集特徵及標籤並即時應對變化,才能讓模型適時更新並維持最佳狀態。雖然模型能夠自動執行某些層面的再訓練,但有時候人為的介入還是有其必要性,例如常常我們需要考慮新的特徵,或是更換學習的目標函數。

5. 監測與維護

建模其實不難,甚至可以將整個流程自動化。然而,許多模型的維護及線上服務需要完善的計畫與相應的資源。

機器學習模型只是系統產生結果流程中的一部分,這個流程包含前端的資料蒐集與校正,以及模型結果產生後的後製與顯示,再加上對於模型結果的回饋也需要重新回到模型本身來調整。這整個系統中任何一個環節都可能出錯,尤其是當企業有數以千計甚至萬計的模型在線上服務的時候。

所以在MLaaS的使用情境下,當模型產出的結果出乎預期時,有時不是源於機器學習的模型預測錯誤,而是作業鏈中出現問題。舉例而言,推薦引擎需與線上網頁建立連結以向顧客展示商品;而當連結中斷或是有延遲的時候,客戶的點擊率就會被影響。這樣的結果並不是模型推薦錯誤造成的,而且往往要花上一段時間才能找出錯誤。所以,如何能夠快速的找出可能的問題所在,反而是MLaaS相關企業非常需要的能力。

機器學習可為企業帶來不少益處。預測未來結果以推斷並影響顧客行為,以及協助企業運作等等,都是機器學習能提供的實質效益。然而,機器學習同時也為企業帶來了不少挑戰。企業應對相關挑戰有所了解並發展因應的解決策略,準備周全之下才能安心地運用機器學習。

強力徵求

Machine Learning Scientist

Responsibilities

  1. Use machine learning and analytical techniques to build prediction models for advertising/enterprise solutions.
  2. Experience in analyzing and extracting valuable information from large amounts of business data.
  3. Design, develop and test advanced models for predictive consumer behavior.
  4. Co-operate with software engineering teams to drive real-time model implementations and new feature creations.
  5. Design efficient, scalable, automated processes for large scale data analyses, model development, model validation and model implementation.
  6. Research and evaluate pioneering machine learning and statistical models.

Backend Engineer

Responsibilities

  1. Developing and operating scalable, reliable and maintainable service-based softwares and related components.
  2. Cowork with team members to design system architecture, choose proper technologies and plan development.
  3. Design & develop server-side architecture & function logic of new services.
  4. Design and maintain database schemas for new services.
  5. Ensures the scalability of the system.
  6. Ensure the high performance of responsiveness to requests from the front-end.
  7. Integrate the front-end modules built by your coworkers into new services.
  8. Responsible for laying the foundation for the platform as well as proposing solutions to ease software development, monitoring of software, etc.
  9. Profiling and performance tuning of critical components.
  10. Deploy system to production and monitor service health.
  11. Participate in idea brainstorming and contribute ideas to technology, algorithms and products.
  12. Participate on-call rotation within the Backend team to ensure product reliability and scalability.

Frontend Engineer

Responsibilities

  1. Design & develop front-end architecture & interactive user interfaces.
  2. Integrate the back-end modules built by your coworkers into new services.
  3. Ensures the flexibility of front-end architecture.
  4. Ensure the high performance of responsiveness.
  5. Build reusable code and libraries for future use.
  6. Build unit tests and test automation.
  7. Perform code reviews to ensure existing code stays high-quality, fast, and flexible.
  8. Handle and resolve issues escalated from the production operational environment.
  9. Participate in idea brainstorming and contribute ideas to technology, algorithms and products.

其他職缺更多職缺資訊,請見 Appier網站

  • Data Backend
  • Technical Program Manager
  • Product Manager
  • QA Engineer
  • Mobile Development
  • DevOps Engineer
  • Technical Solution Engineer

留言

這個網誌中的熱門文章

COSCUP 2024 徵稿辦法 / COSCUP 2024 Call for Proposals

COSCUP 2024 Call for Proposals: Until 9th, May Submit Your Proposals HERE! 今年 COSCUP 一如往常,徵求各式各樣不同的 Open Source 相關稿件。請於 05 月 09 日(AoE) 前投稿,徵稿主題可參考本頁下方各議程軌資訊。 請注意,每場議程長度預設為 30 分鐘 ,惟部分議程軌開放其他議程長度,會在報名表單第二頁選填。 為了增添 COSCUP 的國際能見度,今年所有入選稿件希望都可以提供中英文版雙語資訊。徵稿階段,您可先以自己偏好的語言準備演講或撰寫 CfP 稿件。 提醒您,COSCUP 是一個倡導開放的研討會,所有演講將錄影並以創用 YouTube CC 姓名標示-相同方式分享 4.0 釋出。如果您的演講有任何不能錄影或不願以此條款釋出的狀況,請務必於投稿表單上註明。 We are looking for talks in several open-source related areas, please submit your proposal before May 09th, 2024 (AoE, Anywhere on Earth) . The theme for submissions can be referenced from the information on various tracks at the bottom of this page. Please note that the length of each agenda is preset to 30 minutes, only the specific tracks are open to other agenda lengths for selection, which will be filled in on the second page of the registration form. To make it more accessible for international audiences, we kindly request CFP information to be provided in both Chinese and

Designers in Tech- Open Source Design Workshop

關於工作坊 今年在COSCUP(Conference for Open Source Coders, Users Promoters)將協同國際團隊 Superbloom(以人為本出發幫助設計更具包容性和開放性的國際非營利組織)舉辦Designers in Tech- Open Source Design Workshop工作坊,此工作坊是專門為希望對社會做出正面貢獻的設計師所設計的,我們將邀起您以設計師的姿態,在科技人為主的世界裡舞擺出專屬於你的開源貢獻。 設計,如果共享後會有怎樣的可能性?開源設計為另一種合作模式,結合「共同協作」,讓人們可以自由地存取、使用、修改和分享設計資源來達到共同設計的目的。這次的工作坊試圖透過一個公開、透明、無國界的網路平台Github,讓設計師有機會參與平日以工程師為主的平台,並在上面做出生平第一次的開源設計貢獻,重新定義開源貢獻與設計的可能。 我們相信藉由設計師的參與可以優化現有以工程師、開發者為重的開源生態。通過設計師將專案納入更多的可及性和包容性。活動主旨在帶領設計師學習Github平台操作,進而可自行為開源專案進行貢獻。我們致力於賦能設計師開源專案貢獻力,摒除藩籬,打破開源僅為程式開發是唯一有價值貢獻的迷思。 我們將以「設計思考」思維出發並結合Superbloom的「使用者研究」個案來帶領工作坊,進一步在GitHub上挑選出3個專案做出貢獻:去中心化的移動網絡瀏覽器( Ceno Browser )、事實查核( Co-Facts )、通訊軟體( Session )。全程手把手引導教學如何以設計師的身份在GitHub上做出貢獻,提供全面的支援。在工作坊結束後,參與者能更加了解開源設計及在開源專案自行進行協作。 誰應該參加這個工作坊? 我們的工作坊對於UI/UX、平面設計師都相當歡迎 誰將帶領這個工作坊? Eriol Fox:Eriol擁有10年以上的設計工作經驗,從營利性企業開始,後來轉向非政府組織和開源軟件組織。他們曾參與涉及可持續食品系統、和平建設和危機應對技術的複雜問題。Eriol目前在Simply Secure工作,從事設計、研究、開源和技術項目。 Eriol是紐卡斯爾大學Open Lab的兼職資助博士研究員,他研究設計師如何參與以人道主義和人權為重點的開源軟件項目。

什麼是MySQL?

什麼是 MySQL ? MySQL 是世界上最受歡迎的開源資料庫。根據 DB-Engines 的資料, MySQL 是第二大最受歡迎的資料庫,僅次於 Oracle 資料庫 。 MySQL 為許多使用量最大的應用系統提供支援,包括 Facebook 、 Twitter 、 Netflix 、 Uber 、 Airbnb 、 Shopify 和 Booking.com 。 由於 MySQL 是開源的,因此它包含了超過 25 年來與使用者密切合作開發的許多功能。因此,您最喜歡的應用系統或程式設計語言很可能受到 MySQL 資料庫的支援。 MySQL 的優勢 MySQL 快速、可靠、可擴展且易於使用。它最初是為了快速處理大型資料庫而開發的,並且多年來一直在要求苛刻的生產環境中使用。 儘管 MySQL 在不斷發展中,但它提供了一組豐富而有用的功能。 MySQL 的連接性、速度和安全性使其非常適合使用互聯網上的資料庫。 MySQL 的主要優勢包括 ·        易用性: 開發人員可以在幾分鐘內安裝 MySQL ,並且資料庫易於管理。 ·        可靠性: MySQL 是最成熟和使用最廣泛的資料庫之一。 25 年來,它已經在各種場景中進行了測試,包括世界上許多最大的公司。由於其可靠性,組織依賴 MySQL 來運行關鍵業務應用系統。 ·        可擴展性: MySQL 可以擴展以滿足使用量最大的應用系統的需求。 MySQL 的原生複製架構使 Facebook 等組織能夠擴展應用系統以支援數十億使用者。 ·        性能: MySQL HeatWave   比其他資料庫服務更快、更便宜 ,正如多個標準行業基準測試所證明的那樣,包括 TPC-H 、 TPC-DS 和 CH- benCHmark 。 ·        高可用性: MySQL 提供了一整套原生的、完全集成的複製技術,可實現高可用性和災難恢復。對於業務關鍵型應用系統,為了滿足服務水準協定 (SLA) 承諾,客戶可以實現 RPO = 0 (零資料遺失 ) RTO = 數秒內(自動故障轉移) ·        安全性: 資料 安全 需要保護並遵守行業和政府法規,包括《歐盟通用資料保護條例》、《支付卡行業資料安全標準》、《健康保