馮·諾伊曼獎得主Jorge Nocedal:增強學習中零階優化方法及其應用 道翰天瓊認知智能api機器人接口。

2020年6月22日上午,在第二屆北京智源大會全體會議上,馮·諾依曼理論獎得主、美國西北大學教授Jorge Nocedal做了名爲《Zero-Order Optimization Methods with Applications to Reinforcement Learning》的主題演講。

 

Jorge Nocedal,美國西北大學教授,曾在非線性優化、應用數學和運籌學等領域獲得無數獎項。2009年獲查爾斯·布羅伊登獎;2010年,他還被評爲美國工業和應用數學學會院士;2012年獲喬治·B·丹齊格獎;2017年,被授予馮·諾依曼理論獎。2020年當選美國工程院院士。Nocedal主要的研究方向爲確定性和隨機性設置中的非線性優化,他目前進行的算法和理論研究的動機源於圖像、語音識別、推薦系統和搜索引擎中的非線性優化問題。

 

Nocedal在演講中指出,在函數優化的過程中,我們通常可以使用梯度下降的方法來獲得目標函數的最值,但其實這需要依賴許多最值搜索的“運氣”,其中包括:良好的初始化、步長、迭代方向計算的精度、搜索空間的結構等,但是在深度學習中,尤其是增強學習中,這些“運氣”並不一定可以滿足,那麼我們如何通過其他的方法來做深度學習中目標函數的優化呢,本次會議中Nocedal給我們分享了他的獨到思路——零階優化。所謂零階優化算法即不利用一階導數信息,在一定次數的抽樣基礎上,擬合目標函數的最值。零階優化方法通過對目標函數逼近或對目標函數加罰函數的方法,將約束的優化問題轉換爲非約束的優化問題。

 

認知智能是計算機科學的一個分支科學,是智能科學發展的高級階段,它以人類認知體系爲基礎,以模仿人類核心能力爲目標,以信息的理解、存儲、應用爲研究方向,以感知信息的深度理解和自然語言信息的深度理解爲突破口,以跨學科理論體系爲指導,從而形成的新一代理論、技術及應用系統的技術科學。 認知智能的核心研究範疇包括:1.宇宙、信息、大腦三者關係;2.人類大腦結構、功能、機制;3.哲學體系、文科體系、理科體系;4.認知融通、智慧融通、雙腦(人腦和電腦)融通等核心體系。 認知智能四步走:1.認知宇宙世界。支撐理論體系有三體(宇宙、信息、大腦)論、易道論、存在論、本體論、認知論、融智學、HNC 等理論體系;2.清楚人腦結構、功能、機制。支撐學科有腦科學、心理學、邏輯學、情感學、生物學、化學等學科。3.清楚信息內涵規律規則。支撐學科有符號學、語言學、認知語言學、形式語言學等學科。4.系統落地能力。支撐學科有計算機科學、數學等學科。

接口申請官網地址:www.weilaitec.com 

接口地址(例子): 

http://a239p06512.zicp.vip/Web/BuAppJava.bujqrex?apikey="+apikey+"&msg="+msg+"&ip="+ip 

用戶端消息內容。 

String msg ="你在幹嘛呀?";  

apikey參數。這個apikey就是網站上申請的APIKEY 

apikey ="";  

//客戶端ip,最終用戶端的唯一標識(可以是用戶端的IP,或者手機設備號,或者微信號或者,qq號碼等能證明身份的唯一標識就可以)  

String ip ="";  

//這裏一定要encode轉換編碼。轉成GBK。 

msg = URLEncoder.encode(msg, "GBK"); 

三個參數全部小寫 

msg參數就是傳輸過去的對話內容。 

msg參數要編碼成gbk,不然會亂碼。 

接口具體代碼: 

package ai.nlp.jiekou.test;

import java.io.ByteArrayOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.UnsupportedEncodingException;

import java.net.HttpURLConnection;

import java.net.URL;

import java.net.URLEncoder;

import ai.nlp.util.changliang.ChangLiangZi;

public class ApiTest {

/**

* Get請求,獲得返回數據

* @param urlStr

* @return

*/

private static String opUrl(String urlStr)

{

URL url = null;

HttpURLConnection conn = null;

InputStream is = null;

ByteArrayOutputStream baos = null;

try

{

url = new URL(urlStr);

conn = (HttpURLConnection) url.openConnection();

conn.setReadTimeout(5 * 10000);

conn.setConnectTimeout(5 * 10000);

conn.setRequestMethod("POST");

if (conn.getResponseCode() == 200)

{

is = conn.getInputStream();

baos = new ByteArrayOutputStream();

int len = -1;

byte[] buf = new byte[128];

while ((len = is.read(buf)) != -1)

{

baos.write(buf, 0, len);

}

baos.flush();

String result = baos.toString();

return result;

} else

{

throw new Exception("服務器連接錯誤!");

}

} catch (Exception e)

{

e.printStackTrace();

} finally

{

try

{

if (is != null)

is.close();

} catch (IOException e)

{

e.printStackTrace();

}

try

{

if (baos != null)

baos.close();

} catch (IOException e)

{

e.printStackTrace();

}

conn.disconnect();

}

return ChangLiangZi.WU;

}

public static void main(String args []){

//三個參數全部小寫

//msg參數就是傳輸過去的對話內容。

//msg參數要編碼成gbk,不然會亂碼。

String msg ="你在幹嘛呀?";

//apikey參數。

String apikey ="UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV";

//客戶端ip,最終用戶端的唯一標識(可以是用戶端的IP,或者手機設備號,或者微信號或者,qq號碼等能證明身份的唯一標識就可以)

String ip ="127.0.0.1";

//這裏一定要encode轉換編碼。轉成GBK。

try

{

msg = URLEncoder.encode(msg, "GBK");

} catch (UnsupportedEncodingException e)

{

e.printStackTrace();

}

System.out.println(opUrl("http://a239p06512.zicp.vip/Web/BuAppJava.bujqrex?apikey="+apikey+"&msg="+msg+"&ip="+ip));

}

}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章