TensorFlow技術發展與落地實踐

  • 2019 年 11 月 21 日
  • 筆記

分享嘉賓:鄭澤宇 知衣科技 聯合創始人兼CEO

內容來源:AI 先行者大會《TensorFlow技術發展與落地實踐》

本次分享的主要內容包括以下四個方面:首先是深度學習簡介;其次是TensorFlow簡介;然後講解了深度學習在服裝設計方向的機會與挑戰;最後重點介紹深度學習的落地實踐。

一、 深度學習簡介

1.1 深度學習的發展

阿爾法圍棋(AlphaGo)是第一個擊敗人類職業圍棋選手、第一個戰勝圍棋世界冠軍的人工智慧機器人, 從AlphaGo開始, 人工智慧正式走入了大眾的視野, 在10月18日,AlphaGo的父親DeepMind團隊推出了AlphaGo Zero,從0訓練用了40天時間,以100:0擊敗了當今的世界圍棋第一AlphaGo,AlphaZero在去年底通過自我對弈,就完爆上一代圍棋冠軍程式AlphaGo,且沒有採用任何的人類經驗作訓練數據,不管是AlphaGo還是AlphaGo他們的原理都是深度學習。

1.2 深度學習的動機

電腦語言一般都是按照固定流程完成任務,但是有一些任務,比如下五子棋、無人駕駛,人臉識別等,很難把他們的流程描述出來。這個時候就需要用到人工智慧的方式來實現這些流程不確定的工作。

1.3 深度學習的原理

深度學習是指訓練神經網路,把樣本x輸入神經網路,每一個特徵都與所有的神經元相互聯繫,通過習得一個函數,映射到輸出y。

神經網路的結構包含輸入層、隱藏層、輸出層三部分,以判斷零件是否合格為例,一個神經網路可以是輸入層輸入零件的長度和零件的品質,把參數權重w、偏置b和輸入x做wx+b運算,再通過激活函數激活得到神經元的值傳到輸出層,如果輸出大於0則零件是合格,否則不合格。

輸入層(Input layer),眾多神經元接受大量非線形輸入x。輸入的x稱為輸入向量。

輸出層(Output layer),x在神經元鏈接中傳輸、分析,形成輸出結果。輸出的x稱為輸出向量。

隱藏層(Hidden layer),簡稱「隱層」,是輸入層和輸出層之間眾多神經元和鏈接組成的各個層面。

1.4深度學習的案例

神經網路在自然語言上的應用:

情感分類:理解情感的語義,先把文字抽象成特徵向量,把特徵向量輸入到神經網路,經過一系列的運算得到正負值,正代表著好評,負代表著差評。

神經網路在影像上的應用:手寫數字識別、目標檢測

輸入圖片得到像素矩陣,然後把像素矩陣輸入到神經網路,進行目標檢測,目標識別,識別出圖片中的人、狗和椅子,手寫數字也是同理。

目前google也在使用深度學習的方式來做推薦:

1.5深度學習的趨勢

可以看出從2012開始,深度學習的熱度持續增高,一直到2017年都處於持續增長狀態。2015年中國開始興起人工智慧,到2018年,經過這三年的發展,人工智慧的技術已經得到很好的發展,在各種細分的領域得到很好的應用。

二、TensorFlow簡介

2.1 TensorFlow的前身

TensorFlow是一個實現深度學習的框架,兩者相輔相成,互為基礎,他的前身是DistBelief,DistBelief只支援CPU,原因是google內部的CPU資源非常豐富,可以通過並行的方式,實現高速度。

2.2 TensorFlow介紹

DistBelief後來發展為了TensorFlow,TensorFlow不依賴Google內部系統和架構,能夠支援GPU。

2.3 TensorFlow早期版本變化

TensorFlow不斷的再創新,增加新功能,迭代速度是非常快的。

從2015年以後,TensorFlow的流行度遠超其他深度學習框架。

四款常用的深度學習框架比較:早期的時候影像的框架多用caffe,但是TensorFlow的學習資料會更多一些,所以剛入門的新手推薦用TensorFlow。

三、深度學習在服裝設計方向的機會與挑戰

3.1 深度學習落地行業

隨著深度學習的發展,深度學習已經和很多行業結合起來,比如AI+金融,AI+醫療等,但是在服裝設計行業還很少,就目前來說,AI+服裝行業還是一片藍海。

3.2 服裝設計行業存在的難題

中國的時尚一直以來都是緊跟歐美時尚,中國的服裝設計師通過不斷的尋找歐美的時尚素材,然後進行二次創造,但是創作的過程存在兩個問題,一是時尚素材過於散,查找困難,二是設計師難以理解淘寶上的相關服裝數據,沒辦法利用這些數據服務於設計,這也是知衣科技想要解決的問題,知衣科技是一家AI電商解決方案提供商,利用影像識別、個性化推薦等人工智慧技術為電商行業提供人工智慧解決方案,輔助設計師完成服裝設計。

下圖是淘寶的數據工具:

3.3 服裝設計問題

1)多源:如果有上千個品牌方,就有上千個官網,還有很多的時尚網站,如何去收集這些資訊其實是一個難點。

2)異構:設計師需要參考的既有影像類的非結構化數據,也有文字這樣的半結構化數據,還有交易結構化數據,如何將這些數據有機的串聯起來存在挑戰。

3)海量:在互聯網上有上百億的服裝資訊,上億的商品交易資訊。

如何去處理這些圖片、文字、交易資訊,去幫助設計師去選款是知衣科技要解決的問題。

四、深度學習的落地實踐

4.1標籤問題和解決辦法

深度學習的識別和分類都是比較成熟的技術,但是如何把這些技術應用到服裝行業確是一個新的問題。目前時尚圖片的標註數據準確率低,因為時尚是一個專業性的東西,並不是每一個人都能理解時尚,所以很難標註,知衣科技的標註是由服裝學院的設計師們幫忙標註的, 標註的準確率很高。

在服裝識別中,我們把服裝分為了五大類:上衣、下衣、包、鞋子、連衣裙, 再對五大類做細分,總共有150多種標籤,設計師需要的是更細的劃分,比如前幾年流行的一字肩,這種細節需要從大量的數據中去發現。

目前標籤存在的兩大問題,一是標籤的稀疏性,有的標籤會比較少,比如雙面呢大衣,二是設計細節難打標籤,比如袖口的拉鏈,口袋的開口方向等,會有漏打漏標的情況,所以整體的標籤要治理出來是非常困難的,我們開發了一套專門針對服裝標籤的打標系統,在部分標籤體系上能實現93%到95%的識別率,設計院校的學生的識別率在85%-90%,在這個專業領域上已經比別人強了。

4.2基於Faster R-CNN Model的目標檢測

整體的網路構造分兩層,第一層是Faster R-CNN識別服裝的過程,第二層是把識別到的服裝經過一些風格的過濾器, 輸出到不同的FeatureMap里,有些是形態的,有些是風格的,然後根據不同的風格進行聚類,再針對這些問題去做回歸。

對圖片進行多個維度的識別,包括人臉識別,包括以圖搜圖,搜圖目的不同,他們背後的演算法、邏輯和訓練方式也是不一樣的,比如淘寶的找同款或找相似,而我們要解決的是設計師選錯款的問題,理解設計師想找到什麼圖片,這個問題我們抽象成了兩個場景,一是全圖搜索,看重的是整體的搭配,二是品類相似,是找單品相似款式。