課程概要
近年來,隨着大數據的積累、理論算法的革新、計算能力的提高,人工智能人工智能再次受到學術界和產業界的普遍關注,並在不少應用領域取得了突破性進展。不過,定製模型每每須要 AI 算法科學家們搭建深度學習模型,不斷地進行訓練和測試才能獲得。在實際工做中,業務方每每還要根據場景和數據的變化,持續進行模型改進工做。這時候,低成本快速定製併發布 AI 能力相當重要。那麼京東在 AI 方向有哪些探索?AI 開發全流程是怎樣的?如何加速模型開發?本文將解答這些問題。
點擊【 閱讀 】可查看課程視頻!
— 京東智聯雲 朱二濤 —算法
目前,人工智能領域還沒有造成完善的參考框架。但人工智能標準化白皮書(2018 版)基於人工智能的發展情況和應用特徵,從人工智能信息流動的角度出發,提出了一種人工智能參考框架,這個框架描述了整個 AI 能力的產生。數據庫
在人工智能整個體系中有三大要素:數據、算力和算法。服務器
基礎設施提供者(算力)網絡
基礎設施提供者爲人工智能系統提供計算能力支持,實現服務與外部世界的溝通,並經過基礎平臺實現支撐。AI 上的計算能力一般由智能芯片提供;與外部世界的溝通則經過新型傳感器實現,好比攝像頭、麥克風以及各類物聯網設備,它們負責蒐集終端數據供業務使用;基礎平臺包括分佈式計算框架提供商及網絡提供商提供平臺保障和支持,即包括雲存儲和計算、互聯互通網絡等。好比京東智聯云爲你們的技術平臺,其中包括算力支持,雲主在線存儲、微服務等,同時也能夠基於整個產品體系打造一個總體服務平臺。架構
信息提供者(數據)併發
信息提供者在人工智能領域是智能信息的來源。經過知識信息感知過程由數據提供商提供智能感知信息,包括原始數據資源和數據集。原始數據資源的感知涉及到圖形、圖像、語音、文本的識別,還涉及到傳統設備的物聯網數據,包括已有系統的業務數據以及力、位移、液位、溫度、溼度等感知數據。框架
信息處理者(算法)機器學習
大多數人對人工智能的理解可能更偏向於算法這部分,好比對數據的清洗、提取特徵值等,這至關於一個數據建模的過程,在此基礎上進行一些模型訓練。而後再針對業務場景提供智能推理、智能決策等支持。智能推理和智能決策最終會輸出有價值的智能信息,這就到了「智能執行與輸出」環節,輸出整個智能信息流動過程的結果,包括運動、顯示、發聲、交互、合成等功能,這也是整個 AI 的能力產生的結果。分佈式
人工智能芯片按照不一樣用途能夠被分爲三類:模型訓練、雲端推斷、設備端推斷。第一類芯片主要用在訓練環節的芯片,處理海量訓練數據和複雜的深度神經網絡,如 GPU/TPU 提供強大的並行計算和浮點計算能力。當咱們將模型訓練出來後,能夠將其發佈爲雲端服務提供給用戶使用。微服務
用於雲端推斷的芯片也是咱們所說的第二種類型的芯片。目前主流的人工智能應用須要經過雲端提供服務,將採集到的數據傳輸送到雲端服務器,用服務器的 CPU/GPU/TPU 去處理推斷任務,而後將數據返回終端。
第三類芯片運行在設備端,包括智能手機、智能安防攝像頭、機器人、自動駕駛、VR 等,它可以快速作一些推斷和決策,而且不受網絡的影響。怎麼去理解?假設如今有一個攝像頭,若是咱們要把這個攝像頭採集到的全部數據都發送到服務端進行處理,那麼能夠想象須要多少點網絡帶寬才能夠知足。可是若是咱們把一些數據處理的任務放到終端完成,而僅把處理結果上傳,這樣對網絡的要求就會低不少,而且用戶的體驗也能明顯提高。
數據是咱們成功的起點,在人工智能領域,數據主要有兩類:結構化數據和非結構化數據。結構化數據是高度組織和整齊格式化的數據,它是能夠放入表格和電子表格中的數據類型,可以用 SQL 來查詢,而且適用於機器學習,數據分析挖掘等。
非結構化數據不能用表格型表示,它沒有一個統一的格式。這種數據一般存儲在非關係數據庫中,並使用 NoSQL 進行查詢,適合用於深度學習去處理。在互聯網發展起來以後,非結構化數據的量已經愈來愈大了,如今企業數據中 80% 都是非結構化的數據。
對於企業而言,獲取數據的方式一般有三種:
數據越準確,與自身的業務越匹配,那麼用這些數據訓練模型進行業務推斷的結果就越接近於真實場景,所以爲企業自身帶來的價值會更大。如何評判數據的質量?有四個緯度:
簡單來說,數據與本身的業務關聯度越高越好,這是首要標準。另外還要關心數據的時效性,以及用戶的需求。對於可信性,不一樣的業務場景有對應的專業人員,讓他們去制定行業標準,進行數據標註,能夠在很大程度上保證業務數據的質量。
在整個 AI 能力的鍛造過程當中,算法研究是其中一步,也是重要一步。機器學習是傳統人工智能裏的一個新的分類,主要研究如何模擬和實現人類的學習習慣。簡單來說,機器學習經過各類算法訓練模型,並用這些模型對新問題進行識別與預測。
機器學習的流程主要分爲如下幾個步驟:
訓練數據收集
原始數據是機器學習過程的第一步,它從各個渠道被採集而來。數據集一般會分紅兩個部分:一部分用來作訓練,即訓練集;另外一部分用來作驗證,也就是測試集。
數據預處理
因爲收集到的數據每每比較粗糙或者噪音較多,須要將這些數據進行預處理,包括業務敏感數據脫敏,對不合格的數據作一些清洗、格式轉換,或是特徵提取等處理,獲得有效的訓練數據。
訓練預測模型
到了訓練預測模型階段,算法工程師就能夠出面了。在正式開始模型訓練以前,咱們須要結合數據和業務的特色選擇合適的算法。機器學習能夠實現的目標被分爲:分類、迴歸、聚類、異常檢測等。前期算法工程師須要經過測試集和訓練集,在集中可能的算法中作一些 Demo 測試,再根據測試的結果選擇具體的算法,這樣能夠規避大範圍的訓練模型改動帶來的損失。
模型評估
選擇出一個模型後咱們須要去驗證如下這個模型是否是合格。如何評估呢? 這就要用到以前說的測試集對模型進行測試。因爲測試集對模型來講是徹底新的數據,所以能夠客觀地度量模型在現實世界中的表現狀況。這個過程實際上是一個循環迭代的過程,咱們會在這個過程當中對算法進行改造或者對參數進行調整,最後獲得一個比較理想的模型。咱們一般會將這個模型作成一個服務供人們去使用。
以京東智聯云爲例,京東智聯雲將訓練好的模型提供成下圖中這樣的在線服務 API。它分紅幾個方向,每一個方向都有對應的通用 AI 能力,讓你們去應用。好比在零售領域,會將一些京東領先的算法模型封裝成通用的 API 提供給用戶。每個 API 都會提供一些調用方法的接口,用戶能夠在線申請使用。固然了,咱們也提供離線版本或者 SDK,方便和用戶的業務進行深度結合。
京東智聯雲人工智能部平臺推出了一款叫 NeuFoundry 的產品。做爲京東豐富場景的最佳實踐,NeuFoundry 提供從數據標註 - 模型開發 - 模型訓練 - 模型評估 - 模型發佈的一站式人工智能開發平臺,提高 AI 開發的效率、下降開發成本。該平臺不只支持圖像類、文本類深度學習,還支持機器學習,好比銷量預測等,此外,它還會經過預設模型來進行海量數據訓練,讓智能供應鏈更加智能聰明。
NeuFoundry 提供的主要服務包括:
數據管理
以數據庫及對象存儲等方式,提供海量存儲空間,存儲和管理用戶數據,並提供數據標註、數據分析等功能服務;
AI 能力定製化
可根據實際業務所須要的能力和場景,結合企業實際業務數據,訓練定製化 AI 能力;
AI 服務支撐
智能中臺爲各種 AI 能力的運行,提供基礎環境支撐,保障 AI 服務穩定、可靠提供業務服務。
在 NeuFoundry 的功能框架圖中,模型開發區域牽涉到基礎支撐層和模型開發層,往上是京東智聯雲提供的一些優秀的預置服務,再往上是 NeuFoundry 支持的應用場景。
在 NeuFoundry 的數據管理服務中,該平臺能夠提供數據集管理和標註服務,同時內置公開數據集和定製行業數據集;此外,還提供工具支持用戶在線標註或者導入已有標註數據,包括常見的文本、圖片、視頻、音頻等。
在 NeuFoundry 提供的模型訓練任務中,平臺支持 TensorFlow、Caffe、PyTorch 等常見的引擎框架及多種項目運行方式,而且爲不一樣類型的開發者提供多種交互方式。如針對對算法比較精通的算法工程師提供任務提交和 Jupyter NoteBook 方式;對於業務開發人員,提供經過圖形化拖拽或者自動化訓練方式,方便快速的定製化 AI 模型,不須要掌握算法開發能力。
爲何說 NeuFoundry 能夠幫助企業加速 AI 能力鍛造?由於在 NeuFoundry 中,針對常見的業務場景,咱們預置了一些行業領先的算法模型在裏面。用戶只要把本身的業務數據放上來,經過自動化的訓練方式,就能夠用這些算法來快速迭代屬於本身的定製模型。一般,用戶在 NeuFoundry 上只需兩步就能夠建立本身的 API 能力:
(1)選擇場景和數據,提交任務;
(2)查看模型評估結果,發佈成服務。
建立 API
AI 能力打造其實只是「智能平臺」的一個環節,整個京東智聯雲會針對金融領域及具體的應用場景,在此基礎上從業務、技術、數據等角度出發爲企業提供不一樣領域的解決方案。
在金融 AI 場景架構圖中,基於底層的運行資源和數據資源之上,不一樣應用場景的開發層基本上是一致的。往上看,是包括客流分析、內容審覈、用戶行爲解析、智能決策、用戶畫像、風險控制在內的一系列預置服務,這些服務會根據金融場景進行專門的優化和定製。
最後,朱二濤基於爲你們演示瞭如何在 NeuFoundry 上使用自動化訓練建立口罩識別服務。他表示,演示中的口罩識別只是基於圖象分類的能力進行訓練模型的,在 NeuFoundry 這個智能化平臺上,還會基於人臉識別,提供更加專業的 AI 能力。
經過學習本篇課程,咱們瞭解了 AI 能力是如何開發的,及京東智聯雲在這方面的探索與能力 NeuFoundry——一站式 AI 能力鑄造廠是基於京東零售及零售基礎設施、豐富的場景和海量數據打磨的人工智能開發平臺最佳實踐,積累了成熟的一站式模型開發工具和優質的數據集,並沉澱爲成熟模型與 AI 服務。NeuFoundry 可爲大中小企業提供一站式開發平臺,助力企業快速低成本構建本身的智能中臺,完成智能化轉型。
點擊【閱讀】可查看課程視頻!
Q&A 課程問答
Q NeuFoundry 不一樣框架,模型訓練出來後如何部署,支持什麼部署?
A NeuFoundry 提供 JupyterNotebook 環境,用戶能夠在 Juypter 環境中,完成訓練和部署驗證的環節。若是是經過 NeuFoundry 提供的自動化任務訓練出來的模型,NeuFoundry 能夠幫助用戶把模型發佈成一個在線服務。
Q 針對此次的疫情,衍生出口罩糾正模型,大面積遮擋的人臉識別,客服防控疫情諮詢客服等等,我想知道這些數據獲取和模型的準確度如何把控?
A 這個我給你們解釋一下。在 AI 模型訓練中,訓練數據和業務越相關,訓練的準確性或者效果會越好。若是您的業務場景是一些公共場所,或者是光線或者攝像頭效果很差,固然也包括會有遮擋人臉等狀況。那咱們就應該針對這種場景去作針對性的數據採集,找到典型的數據。而後針對這個數據,咱們再去作一些優化和訓練。那麼這個模型,針對您這個場景,效果相對會更好一些。其實沒有一種模型是適用於全部場景的,都會有一些各自的適用範圍。
Q 樣本比較少,怎麼訓練,效果才能好?
A 這個是不少企業想去作 AI 建設的時候,碰到一個比較典型的問題,就是說本身的業務數據可能不是太好去抽取或者提煉。這個剛剛我也提到了,若是您在這個行業積累不夠的話,您能夠去作一些行業的採購。數據量級的要求呢,以圖像分類爲例,大概這個量級在幾百張到一千張的時候,他的準確性在必定程度上就能知足業務需求了,再增長數據提高效果就沒那麼有效。若是說您的業務場景跟京東智聯雲這一塊的能力比較貼合的話,那咱們這塊也能夠幫您去作一些數據準備,或者說行業場景的支持。