【來源】本文經機器之心授權轉載,禁止二次轉載
【作者】Thuy T. Pham
【編譯】機器之心,參與者吳攀
人工智能正在成為新一代技術變革的基礎技術,但從頭開始為自己的應用和業務開發人工智能程序既成本高昂,且往往很難達到自己想要的性能表現,但好在我們有大量現成可用的 API 可以使用。
開發者可以通過這些 API 將其它公司提供的智能識別、媒體監測和定向廣告等人工智能服務集成到自己的產品中。機器之心在 2015 年底就曾經編譯過一篇介紹當前優質人工智能和機器學習 API 的文章《技術 | 50 個常用的人工智能和機器學習 API》,列舉了 50 個較為常用的涉及到機器學習、推理預測、文本分析及歸類、人臉識別、語言翻譯等多個方面的 API。一年多過去了,好用的 API 也出現了一些新舊更迭,現在是時候對這篇文章進行更新了。
本文所有的 API 分成以下四組:
面部和圖像識別
文本分析、自然語言處理、情緒分析
語言翻譯
預測和其它機器學習
每一組我們都是以首字母排序的,相關描述來自其網址鏈接在 2017 年 2 月 3 日的介紹信息。如果你知道另一些很好的 API 但這里沒有收錄,一定記得向我們分享!
面部和圖像識別
1.Animetrics Face Recognition:該 API 能用來檢測圖片上的人物面部,并且將其和已知的面部特征進行比對。該 API 還能在可搜索的圖庫中添加或移除搜索主題,也可以在某個主題中添加或刪除某張臉。
鏈接:http://api.animetrics.com
2.Betaface:一個面部識別和檢測的網頁服務。提供了包括多面部識別、面部遮蔽、123 個面部點(22 個基本,101 個高級)檢測、面部驗證、鑒定、大數據集中相似度搜索等功能。
鏈接:https://www.betaface.com/wpa
3.Eyedea Recognition:專注于高端計算機視覺解決方案,主要關注目標檢測和目標識別軟件。一個提供眼睛、面部、載具、版權和車牌檢測的識別服務。該 API 的最大價值在于其能夠即時理解物體、用戶和行為。
鏈接:http://www.eyedea.cz
4.Face++:一個面部識別和檢測服務,提供了可以集成到應用中的檢測、識別和分析服務。使用者可以通過調用該服務來訓練該程序,實現檢測面部、識別面部、面部分類、創建面部集、創建分組和獲取信息等功能。
鏈接:https://www.faceplusplus.com
5.FaceMark:其提供的 API 能夠識別正面人臉照片上的 68 個點以及側臉照片上的 35 個點。
鏈接:http://apicloud.me/apis/facemark/docs
6.FaceRect:這是一個用于面部檢測的強大 API,而且是完全免費的。該 API 可以找到單張照片中的臉(正面或側面均可)或多張臉,并為每一張找到的臉給出一個 JSON 輸出。此外,FaceRect 可以為每一張檢測到的臉找到面部特征(眼睛、鼻子和嘴)。
鏈接:http://apicloud.me/apis/facerect/demo
7.Google Cloud Vision API:該 API 由 TensorFlow 等強大的平臺驅動,能夠實現可以學習和預測圖像內容的模型。其能很快地在大范圍內幫助用戶找到最喜歡的圖片,并且還帶有豐富的注釋。它能將圖片分成好幾千類(如:船、獅子、埃菲爾鐵塔),能夠檢測相關表情的面孔,還能識別出圖片上多種語言的印刷文字。
鏈接:https://cloud.google.com/vision
8.IBM Watson Visual Recognition:能夠理解圖像的內容——圖像的視覺概念標簽、尋找人臉、給出近似年齡和性別、尋找一個集合中相似的圖像。你也可以通過創建自己的自定義概念來訓練該服務。
鏈接:https://www.ibm.com/watson/developercloud/visual-recognition.html
9.Kairos:允許用戶將情緒分析和面部識別快速整合進他們的應用和服務中的平臺。
鏈接:https://www.kairos.com/docs/api
10.Microsoft Cognitive Service - Computer Vision:這個基于云的 API 可以基于輸入和用戶選擇以不同的方式分析視覺內容。比如,基于內容標記圖像;分類圖像;檢測人臉并返回坐標;識別特定領域的內容;生成內容的描述;識別圖像中找到的文本;標記成人內容。
鏈接:https://www.microsoft.com/cognitive-services/en-us/computer-vision-api
11.Rekognition:為社交圖片應用提供面部和場景的識別和優化。Rekognition API 可以利用眼睛、嘴、鼻子和面部的特征實現情緒識別和性別檢測,可以用來確定性別、年齡和情緒。
鏈接:http://www.programmableweb.com/api/rekognition
12.Skybiometry Face Detection and Recognition:提供人臉檢測和識別服務。該 API 的新版本包含了區分墨鏡和透明眼鏡的功能。
鏈接:https://skybiometry.com/Documentation
文本分析、自然語言處理、情緒分析
1.Bitext:提供了最精確的多語言的基于主題的市場中的情感。目前提供了四種語義服務:實體和概念提取、情感分析和文本分類。該 API 支持 8 種語言。
鏈接:https://www.bitext.com/text-analysis-api-2/#How-accurate-is-the-analysis
2.Diffbot Analyze:提供了能用來對任何網頁進行識別、分析和主要內容和章節提取的開發者工具。
鏈接:https://www.diffbot.com/dev/docs/analyze/
3.Free Natural Language Processing Service:一個免費服務,包括情感分析、內容提取和語言檢測。這是大規模云 API 市場中一個流行的數據 API。
鏈接:https://market.mashape.com/loudelement/free-natural-language-processing-service
4.Google Cloud Natural Language API:分析文本的結構和含義,包括情感分析、實體識別和文本標注。
鏈接:https://cloud.google.com/natural-language/reference/rest/
5.IBM Watson Alchemy Language:能用來教計算機學習如何閱讀和進行文本分析(如,用于將非結構化的數據轉換成結構化的數據,尤其是在社交網絡監控、商業智能、內容推薦、金融交易和定向廣告領域)。
鏈接:http://www.alchemyapi.com/
6.MeaningCloud Text Classification:該 API 能夠完成一些預分類的任務,比如:提取文本、符號化、移除禁用詞、詞形還原。
鏈接:https://www.meaningcloud.com/developer/text-classification
7.Microsoft Azure Text Analytics API:是一個用 Azure Machine Learning 構建的文本分析網頁服務套件。該 API 可以被用于分析非結構化的文本,可用于情感分析、關鍵短語提取、語言檢測和主題檢測等任務。無需訓練數據。
鏈接:https://docs.microsoft.com/en-us/azure/machine-learning/machine-learn
8.Microsoft Cognitive Service - Text Analytics:能檢測文本中的情感、關鍵短語、主題和語言。
鏈接:https://www.microsoft.com/cognitive-services/en-us/text-analytics-api
這一組(語言的認知服務)的其它 API 包括:
Bing Spell Check:https://www.microsoft.com/cognitive-services/en-us/bing-spell-check-api
Language Understanding:https://www.microsoft.com/cognitive-services/en-us/language-understanding-intelligent-service-luis
Linguistic Analysis:https://www.microsoft.com/cognitive-services/en-us/linguistic-analysis-api
Web Language Model:https://www.microsoft.com/cognitive-services/en-us/web-language-model-api
9.nlpTools:是一個在 HTTP RESTful 網頁服務上簡單的 JSON,用于自然語言處理。其能解碼在線新聞媒體以進行情感分析和文本分類。
鏈接:http://nlptools.atrilla.net/web/api.php
10.Semantic Biomedical Tagger:有一個內置的功能來識別 133 種生物實體類型,并且能通過語義分析將其和已有的知識庫系統鏈接起來。
鏈接:http://docs.s4.ontotext.com/display/S4docs/Semantic+Biomedical+Tagger
11.Thomson Reuters Open Calais?:使用了自然語言處理、機器學習等方法。Calais 能夠將你的文檔與實體(人、地點、組織等)、事實(人 X 為公司 Y 工作)和事件(人 Z 在時間 X 被任命為公司 Y 的主席)進行歸類和鏈接。
鏈接:http://www.opencalais.com/opencalais-api/
12.Yactraq Speech2Topics:是一個能夠通過語音識別 & 自然語言處理將 audio visual 內容轉換成主題元數據(topic metadata)的云服務。
鏈接:http://yactraq.com/
語言翻譯
1.Google Cloud Translation:可以動態地在數千個語言對之間翻譯文本。該 API 讓網站和程序可以通過編程的方式來與該翻譯服務集成。
鏈接:https://cloud.google.com/translate/docs/
2.IBM Watson Language Translator:將文本從一種語言翻譯成另一種語言。該服務提供了多種特定領域的模型,讓你可以基于你獨特的術語和語言進行自定義。比如,客戶可以用他們自己的語言進行交流。
鏈接:http://www.ibm.com/watson/developercloud/language-translator.html
3.LangId:能快速地從任何種類的語言中提取信息,沒有限定任何語言。(即讓你能識別你要分析的任何文本的語言)
鏈接:http://langid.net/identify-language-from-api.php
4.Microsoft Cognitive Service - Translator:在翻譯之前能夠自動檢測文本的語言。它支持 9 種語言上的語音翻譯和 60 種語言的文本翻譯。
鏈接:https://www.microsoft.com/cognitive-services/en-us/text-analytics-api
5.MotaWord:是一個快速的人類翻譯平臺。其提供了超過 70 種語言的相互翻譯。該 API 還允許開發者獲得每一次翻譯的記錄、提交帶有文檔和風格指導的項目、跟蹤翻譯項目的進度并獲得實時活動數據流。
鏈接:https://www.motaword.com/developer
6.WritePath Translation:其 API 允許開發者在其它應用中接入和整合 WritePath 的功能。其應用案例包括字數統計、發布翻譯文檔和檢索已翻譯的文檔和文本。
鏈接:https://www.writepath.co/en/developers
預測和其它機器學習
1.Amazon Machine Learning:可用來找到數據的模式。已有用戶使用該 API 來執行欺詐檢測、需求預測、目標市場確定和點擊預測分析等任務。
鏈接:https://aws.amazon.com/documentation/machine-learning/
2.BigML:BigML 是為基于云的機器學習和數據分析提供的服務。用戶可以通過標準的 HTTP 使用基本的監督和非監督機器學習任務設置數據源和創建預測模型。
鏈接:https://bigml.com/api/
3.Ersatz:一個使用基于 GPU 的深度神經網絡即服務的基于網頁的預測程序。在 Ersatz 中,訓練了一組不同的神經網絡模型(組合方法),有時候多達 20 個模型。
鏈接:http://www.ersatzlabs.com/documentation/api/
4.Google Cloud Prediction:提供了一個用于構建機器學習模型的 RESTful API。這些工具可以幫助分析你的數據以為你的應用增加各種功能,比如客戶情感分析、垃圾檢測、推薦系統等。
鏈接:https://cloud.google.com/prediction/docs/
5.Google Cloud Speech API:使用快速和準確的語音識別來將音頻(來自麥克風或文件)轉換成文本。支持超過 80 種語言及其變體。
鏈接:https://cloud.google.com/speech/docs/apis
6.Guesswork.co:為電子商務網站提供產品推薦引擎。Guesswork 能夠準確預測用戶的動機,它使用的是一個運行在 Google Prediction API 上的語音規則引擎。
鏈接:http://www.guesswork.co/
7.Hutoma:通過一個專有平臺來幫助全世界的開發者開發和產品化深度學習聊天機器人,該平臺提供了用于創建和分享會話人工智能的工具和通道。
鏈接:https://www.hutoma.com/about.html
8.IBM Watson Conversation:構建理解自然語言的聊天機器人,并將它們部署在消息平臺和網站以及任何設備上。
鏈接:https://www.ibm.com/watson/developercloud/conversation.html。
這一類(用于語言的認知服務)的 API 還包括:
Dialog:https://www.ibm.com/watson/developercloud/dialog.html
Natural Language Classifier:https://www.ibm.com/watson/developercloud/nl-classifier.html
Personality Insights:https://www.ibm.com/watson/developercloud/personality-insights.html
Document Conversion:https://www.ibm.com/watson/developercloud/document-conversion.html
Tone Analyzer:https://www.ibm.com/watson/developercloud/tone-analyzer.html
9.IBM Watson Speech:包括「語音轉文本」和「文本轉語音」。(用于比如,轉錄呼叫中心的對話或創建語音控制的應用)
語音轉文本:https://www.ibm.com/watson/developercloud/speech-to-text.html
文本轉語音:https://www.ibm.com/watson/developercloud/text-to-speech.html
10.IBM Watson Data Insights:這個集合包含 3 個 API:AlchemyData News、Discovery 和 Tradeoff Analytics。AlchemyData 提供了使用自然語言處理豐富過的新聞和博客內容。Tradeoff Analytics 能幫助人類在平衡多個目標時進行決策。
鏈接:https://www.ibm.com/watson/
11.IBM Watson Retrieve and Rank:開發者可以將自己的數據加載到該服務中,并用已知的相關結果對機器學習模型(Rank)進行訓練。服務輸出包括一個相關文檔和元數據列表。比如,一個聯絡中心代理可以快速找到能提升平均呼叫處理時間的答案。
鏈接:http://www.ibm.com/watson/developercloud/retrieve-rank.html
12.Imagga:提供了能為你的圖像自動分配標簽的 API,讓你的圖像可被查找。其基于一個圖像識別的平臺及服務。
鏈接:https://imagga.com/solutions/auto-tagging.html
13.indico:提供文本分析(如,情感分析、Twitter 參與、情緒)和圖像分析(如,面部情緒、面部定位)。indico API 是可以免費使用的,也不需要提供訓練數據。
鏈接:https://indico.io/docs
14.Microsoft Azure Cognitive Service API:正在替代 Azure Machine Learning Recommendations 服務,提供基于預測分析的解決方案。其能為客戶提供個性化的產品推薦和提升銷售成績。這個新版本有新的功能,比如批量支持、更好的 API Explorer、更清爽的 API 界面、更一致的注冊和支付體驗等。
鏈接:https://azure.microsoft.com/en-au/services/cognitive-services/
15.Microsoft Azure Anomaly Detection API:使用時間中均勻間隔的數值來檢測時序數據中的異常。比如,當檢測計算中的內存使用時,一個上升趨勢可能是相關的,因為其可能指示了著內存泄露。
鏈接:https://gallery.cortanaintelligence.com/MachineLearningAPI/Anomaly-Detection-2
16.Microsoft Cognitive Service - QnA Maker:將信息提煉成對話式的、易于瀏覽的答案。
鏈接:https://www.microsoft.com/cognitive-services/en-us/qnamaker。
這一組(用于知識的認知服務)的 API 還包括:
Academic Knowledge:https://www.microsoft.com/cognitive-services/en-us/academic-knowledge-api
Entity Linking:https://www.microsoft.com/cognitive-services/en-us/entity-linking-intelligence-service
Knowledge Exploration:https://www.microsoft.com/cognitive-services/en-us/knowledge-exploration-service
Recommendations:https://www.microsoft.com/cognitive-services/en-us/recommendations-api
17.Microsoft Cognitive Service - Speaker Recognition:讓你的應用能知道是誰在說話。
鏈接:https://www.microsoft.com/cognitive-services/en-us/speaker-recognition-api。
在同一組(用于語音的認知服務)的 API 包括:
Bing Speech(將語音轉換成文本,然后轉換回來,并理解其目的):https://www.microsoft.com/cognitive-services/en-us/speech-api
Custom Recognition:https://www.microsoft.com/cognitive-services/en-us/custom-recognition-intelligent-service-cris
18.NuPIC:是一個用 Python / C++ 編寫的開源項目,實現了 Numenta 的 Cortical Learning Algorithm,由 NuPIC 社區維護。該 API 允許開發者使用原始算法進行工作,并可以將多個不同的領域(包括數據的不同層次)放到一起協同,并且還能利用其它平臺的功能。
鏈接:https://github.com/numenta/nupic/wiki/NuPIC-API---A-bird's-eye-view
19.PredicSis:通過預測分析獲取大數據的強大見解和提升市場營銷的表現。
鏈接:https://predicsis.ai/
20.PredictionIO:PredictionIO 是一個構建與 Apache Spark、HBase 和 Spray 之上的開源的機器學習服務器,按 Apache 2.0 證書發布。目前給出的 API 實例已經能實現創建和管理用戶和用戶記錄、檢索項目和內容、創建和管理基于用戶的推薦等功能了。
鏈接:http://predictionio.incubator.apache.org/index.html
21.RxNLP – Cluster Sentences and Short Texts:一個文本挖掘和自然語言處理服務。其中的 Cluster Sentences API 可以用來將句子(比如從不同的新聞源采集的內容)和短文本(比如 Twitter 和 Facebook 的狀態更新)組織成邏輯分組。
鏈接:http://www.rxnlp.com/api-reference/cluster-sentences-api-reference/
22.Sightcorp F.A.C.E:這是一個網頁服務,允許第三方應用更好地了解用戶行為,并且還能從面部分析中得到用戶的年齡、性別、種族、面部表情、頭部姿態等信息。
鏈接:http://face.sightcorp.com/doc_swagger/
其它資源
以下兩個資源能看到其它 API 列表:
Mashape Blog:http://blog.mashape.com/list-of-20-sentiment-analysis-apis/
Programmable Web:http://www.programmableweb.com/news/t