服務大衆的人工智能---認知服務

什麼是認知服務Cognitive Service?

  認知服務是由微軟在IBM認知計算[^1]的基礎上提出來的,簡單來說,認知服務是基於文本分析、語音理解、以及視覺輸入等形式通過人工智能網絡分析後所提供的一種服務形式。微軟認知服務的前身就是其大名鼎鼎的牛津計劃[^2]項目,2015年火爆朋友圈的How-Old.net[^3]應用就是利用圖片識別和情感分析等技術來判斷一張圖片中全部人的年齡,在很大程度上分析一我的的年齡基於一些固定的算法或者因爲機器沒法「理解」人類的「欺騙」技巧,因此能夠對圖片進行特殊處理使識別出來的年齡不一樣於真實年齡,以達到和朋友互動娛樂的效果。其實這還只是認知服務的冰山一角。web

目前認知服務的歷史及發展情況?各大廠商提供了那些功能接口?如微軟、IBM等。

認知服務最先起源於IBM的Waston計劃[^4],早期Waston是一個基於天然語言的第一個「智能」問答系統,曾在2011年的綜藝節目《危機邊緣》[^5]中打敗了人類選手。而現現在Waston更是以認知商業服務的形式展示,從最初的語音文本識別,到今天的圖片、圖像識別;從簡單的專家問答系統,到今天的輔助醫療診斷[^5],認知服務的範圍在不斷擴大。在認知服務領域,IBM和微軟共同領導行業的發展,尤爲在圖片識別分支領域微軟擁有更多優點[^6],所提供的API服務也大致類似。下面以微軟提供的認知服務爲例:算法

 

微軟認知服務分爲5大類:api

1. 視覺類:計算機視覺,情感識別,人臉識別,視頻檢測。安全

2. 語音類:自定義智能語音識別服務,聲紋識別,語音識別。網絡

3. 語言類:必應拼寫檢查,語言理解智能服務,語言分析,文本分析,網絡及語言模型。數據結構

4. 知識類:學術知識,實體連接智能服務,知識探索服務,推薦。app

5. 搜索類:必應自動推薦,必應圖片搜索,必應新聞搜索,必應視頻搜索 API,必應網頁搜索。dom

 

其中前三類是屬於輸入部分,人類也好,計算機也好都須要一個肯定的輸入,而後由核心計算網絡對數據進行加工、分解、運算。這三類輸入奠基了人工智能理解人類世界的能力,也爲她打開了一扇通往人類社會的大門。後面的兩部分主要是基於搜索引擎的內容和圖片搜索,就像谷歌同樣,做爲一個搜索引擎對咱們來講再熟悉不過,我的以爲並無太多亮點。接下來重點介紹幾個比較有趣的功能。ide

首先,讓咱們來看一下計算機視覺API。計算視覺API主要圍繞對圖像內容的定位和識別,而後經過分析對圖片進行分類。測試

上傳一張圖片,視覺API能對圖片進行分析,識別事物類型,例如游泳,登山等。

{

  "requestId": "9d8398c3-c3df-4966-992e-cd81756f8d32",

  "metadata": {

    "height": 1155,

    "width": 1500,

    "format": "Jpeg"

  },

  "imageType": {

    "clipArtType": 0,

    "lineDrawingType": 0

  },

  "color": {

    "accentColor": "19A4B2",

    "dominantColorForeground": "Grey",

    "dominantColorBackground": "White",

    "dominantColors": [

      "White"

    ],

    "isBWImg": false

  },

  "adult": {

    "isAdultContent": false,

    "isRacyContent": false,

    "adultScore": 0.14750830829143524,

    "racyScore": 0.12601403892040253

  },

  "categories": [

    {

      "name": "people_swimming",

      "score": 0.98046875

    }

  ],

  "faces": [

    {

      "age": 29,

      "gender": "Male",

      "faceRectangle": {

        "width": 304,

        "height": 304,

        "left": 748,

        "top": 336

      }

    }

  ],

  "tags": [

    {

      "name": "water",

      "confidence": 0.99964427947998047

    },

    {

      "name": "sport",

      "confidence": 0.95049923658370972

    },

    {

      "name": "swimming",

      "confidence": 0.90628170967102051,

      "hint": "sport"

    },

    {

      "name": "pool",

      "confidence": 0.87875890731811523

    },

    {

      "name": "water sport",

      "confidence": 0.631849467754364,

      "hint": "sport"

    }

  ],

  "description": { 

    "type": 0,

    "captions": [

      {

        "text": "a man swimming in a pool of water」,

        "confidence": 0.78501086930930186

      }

    ]

  }

}

識別後返回一個Json格式的數據結構,對識別出的類型標籤,還會給出一個置信度的值,接近1爲最可信。若是娛樂精神強一點的話,徹底能夠設定很低的置信度好比0.6,若是涉及安全等領域,對識別精度要求較高時,就要適當的提高置信度。 

其次,讓咱們來看一下微軟的另外一個招牌服務—-情緒識別。情緒識別API採用圖片中的人臉表情做爲輸入項,爲圖片中每張人臉返回一組情感置信評分,同時用人臉識別API爲人臉範圍作出標記。若是用戶已經調用了人臉識別API,也能夠將人臉方框做爲一個可選輸入項提交。  可檢測到的情感有憤怒、輕蔑、厭惡、恐懼、快樂、無表情、悲傷以及驚訝[^7 ]。這些情感具備特定的面部表情,被認爲是可進行跨文化和普適交流的。

 

返回的數據仍是比較清晰的數據就結構。

[
  {
    "faceRectangle": {
      "left": 479,
      "top": 190,
      "width": 158,
      "height": 158
    },
    "scores": {
      "anger": 0.00001619889,
      "contempt": 0.000121588469,
      "disgust": 0.0000216889184,
      "fear": 0.00138592813,
      "happiness": 0.00001577913,
      "neutral": 0.002224847,
      "sadness": 0.00000300440252,
      "surprise": 0.996211
    }
  },
  {
    "faceRectangle": {
      "left": 289,
      "top": 209,
      "width": 117,
      "height": 117
    },
    "scores": {
      "anger": 0.0003364322,
      "contempt": 0.008513732,
      "disgust": 0.000237169676,
      "fear": 0.001399079,
      "happiness": 0.03209325,
      "neutral": 0.1274486,
      "sadness": 0.000152969456,
      "surprise": 0.8298188
    }
  }
]

是否是頗有趣?微軟亦或IBM、Google等[^8]大公司在人工智能方面提供了很豐富的API接口,咱們所須要作的僅是展開咱們豐富的想象力,實現有實用價值而且有趣又好玩的應用App或者Web程序,這也許就是咱們做爲軟件工程師的長處。

 

未來會怎麼樣?

關於認知服務咱們能作些什麼:

微軟的工程師們設計出一個結合IOT和人臉識別服務的項目,目的是經過人臉識別服務去控制門禁系統[^9],能現實生活中找到實際應用的案例。也許這個項目並無什麼新鮮的想法或創新,不過其真正的意義在於人臉識別的準確率在實際操做上的可行性,正如DNA檢測的準確率被普遍應用同樣[^10]。其實咱們還能夠結合多個API去組合完成一些比較有意思的事情,好比咱們能夠上傳一張本身或者朋友的圖片,而後系統會自動依據人物特徵推薦出最匹配的名人,而且能夠分享到社交平臺,有些相似於TwinsOrNot.net[^11]項目。更好的想法還得你們共同探索,但願有更多、更新奇的應用能展示出來。

 

關於認知服務的一些假設:

當咱們談及人工智能時不可迴避的一個問題是究竟人工智能是天使仍是魔鬼。而認知服務的主要任務是讓機器理解人類世界,並能按照人類的思惟方式或者超出普通人的思考能力去替代人類完成某些的判斷或決策,以替代人類大腦。一旦人工智能擁有「思考能力」以後,人類很難預測她的行爲到底是善意的行爲,仍是惡意的陷阱(本文中的思考能力未有完整的定義,部分科學家並不相信機器會擁有「智能」,相關內容可參考圖靈測試[^12]等內容)。今天的認知服務是否開啓了人工智能的潘多拉魔盒咱們還何嘗可知,將來的一切還有待咱們來探索。

  

參考引用:

1. ^ https://en.wikipedia.org/wiki/Cognitive_computing

2. ^ http://www.msra.cn/zh-cn/research/project-oxford

3. ^ http://www.how-old.net/

4. ^ http://www-31.ibm.com/ibm/cn/cognitive/outthink/

5. ^ https://en.wikipedia.org/wiki/Watson_(computer)

6. ^ http://www.image-net.org/challenges/LSVRC/2015/results

7. ^ https://www.azure.cn/cognitive-services/zh-cn/emotion-api

8. ^http://www.programmableweb.com/news/top-10-machine-learning-apis-att-speech-ibm-watson-google-prediction/analysis/2015/08/03

9. ^https://www.azure.cn/cognitive-services/zh-cn/WindowsIoTFacialRecognitionDoor

10. ^https://en.wikipedia.org/wiki/Genealogical_DNA_test

11. ^https://www.twinsornot.net

12. ^https://en.wikipedia.org/wiki/Turing_test

相關文章
相關標籤/搜索