成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

單張A100,50億步訓練!英偉達開源最強虛擬角色定制模型,超逼真動作零樣本生成,游戲動畫行業要變天

人工智能 新聞
近日,英偉達正式開源了超強虛擬角色定制模型CALM?;诖耍_發者可以利用AI,零樣本生成復雜逼真的動作,簡單而自由地控制角色。

8月8日深夜,英偉達CEO黃仁勛,再次登上了世界頂級計算機圖形學會議SIGGRAPH的舞臺,用一系列重磅更新展示了在AI和元宇宙方向上的野心。

而就在最近,被SIGGRAPH 2023收錄的CALM模型的正式開源,也讓游戲和動畫開發直接飆上了AI加持的快車道。

CALM可以自學「人類的動作」,無需額外訓練就能自由合成和控制虛擬角色的動作,效果逼真自然。

也許很快整個游戲、動畫工業的格局就要徹底改變,而VR場景中的人物和角色也將從此不再生硬,元宇宙可能真的要加速到來了!

AI控制角色蹲行靠近目標,當距離足夠近時踢腿,最后舉起雙臂慶祝

具體來說,英偉達聯合以色列理工學院、巴伊蘭大學和西蒙菲莎大學,共同提出了一種全新的條件對抗潛模型(Conditional Adversarial Latent Models,CALM)。

通過模仿學習,CALM學習到了一種可以捕捉人類動作復雜性和多樣性的動作表征,并能直接控制角色的動作。

該方法可以聯合學習控制策略和動作編碼器,對給定動作的關鍵特征進行重建,而不僅僅是復制。

結果表明,CALM可以通過學習語義動作表征,對生成的動作進行控制,并且為更高層的任務訓練提供風格調整。

訓練完成后,用戶就可以利用像電腦游戲一樣的界面,非常直觀地對角色進行控制了。

論文地址:https://arxiv.org/abs/2305.02195

項目地址:https://github.com/NVlabs/CALM

實現方法

CALM以對抗性技能嵌入為基礎,并借鑒了其代碼。

研究人員利用單張A100 GPU,通過在4096個Isaac Gym環境上進行并行訓練,共計50億步。

項目地址:https://xbpeng.github.io/projects/ASE/index.html

為了實現零樣本任務解決方案,CALM由3個階段組成:

(1)動作編碼器和底層策略(解碼器)聯合訓練,將動作捕捉序列映射為控制模擬角色的動作。

(2)使用潛空間調節訓練高層策略,從而實現對執行動作方向的控制,同時保留所需的風格。

(3)將步驟1和2結合起來,使用簡單的有限狀態機來解決任務,無需進一步訓練,也無需精心設計獎勵/終止條件。

圖片

階段1:底層訓練

圖片

在底層訓練階段,CALM學習了一個編碼器和一個解碼器。

編碼器接收來自動作參考數據集的動作,即關節位置的時間序列,并將其映射到低維潛表征(low-dimensional latent representation)。

解碼器是一個底層策略,通過與模擬器進行交互,來生成類似于參考數據集的動作。

這個策略能夠按需產生各種行為,但不受動作方向性的影響。例如,它可以被指示走路,但無法本能的地控制行走的方向。

為了評估學習到的動作表征能力,研究人員測試了在潛空間中在動作之間進行插值的能力。

在這里,初始的潛表征是「沖刺」,最終的潛表征是「蹲下不動」。

在整個過程中,潛表征會隨著時間進行線性插值,而角色則會通過語義上有意義的轉換來平穩過渡,逐漸減慢速度并傾斜上半身。

階段2:方向控制

為了控制動作方向,研究人員訓練了一個高層任務驅動策略來選擇潛變量。

其中,這些潛變量被提供給底層策略,并讓后者生成所需的動作。

為了實現這一點,研究人員首先通過動作編碼器來獲取動作潛表征。

然后,根據高層策略所選的潛變量與代表所需風格的潛變量之間的余弦距離成比例,給它一個額外的獎勵,從而引導高層策略采用所期望的行為風格。

而訓練好的方向控制器,就可以控制角色所執行的動作形式和方向了。

比如下面的「蹲下行走」、「舉盾行走」和「奔跑」。

圖片

蹲行

圖片

舉盾

圖片

奔跑

階段3:推理

最后,把之前訓練過的模型結合起來(底層策略和方向控制器),以在沒有額外訓練的情況下組合出復雜的動作。

為此,用戶創建一個包含標準規則和指令的有限狀態機(finite-state machine,FSM)。

這些規則和指令確定要執行哪種動作,類似于用戶控制游戲角色的方式。

例如,它們決定角色是否應該執行簡單的動作,直接使用底層策略進行執行,或者是否需要高層控制來進行定向動作。

比如,FSM可以構建如下的動作流程:

(1)轉身,

(2)向著目標蹲行,直到距離<1m,

(3)慶祝。

圖片

以下是更多的效果展示:

圖片

圖片

圖片

圖片

圖片

測試結果

可控動作生成

研究人員首先分析了CALM的三個方面:(1)編碼器質量,(2)底層控制器的多樣性,以及(3)組合系統的可控性。

編碼器質量

使用之前研究中的類別分離性(separability)測試,研究人員在編碼器學習的表示上衡量了潛空間內動作類別之間的分離性,將動作類別定義為單個動作文件(motion file)中的子動作。

如上表所示,CALM將動作編碼為具有更好分離性的表征。

多樣性

研究人員使用參考數據集訓練了一個分類器,將動作序列映射到原始動作索引(originating motion index)。

當從隨機采樣的潛變量?? ~ Z生成時,研究人員記錄了生成動作的Inception Score。

如上表所示,CALM顯著改善了生成動作的多樣性。

可控性

最后,研究人員通過用戶調研來量化了CALM生成所要求動作的能力。

為了進行評估,研究人員給用戶提供了一個參考動作和一個文本描述,然后詢問用戶對生成的動作是否和描述相似進行分類。

對于每個模型,研究人員向用戶呈現了40個參考動作,每個參考動作生成了3個版本。

記錄下準確性——由控制器生成的準確版本所占的百分比。

結果顯示,與ASE相比,CALM使生成的動作更易控制,將感知生成的準確率從35%提高到78%。

這些改進和提高是通過使用條件鑒別性目標來對表示(編碼器)和生成動作模型(底層策略)進行端到端學習來實現的。

一系列的結果表明,CALM學習了將動作編碼為語義上有意義的表示,能夠生成與示范具有類似特征動作的控制器。

在整個過程中,條件動作(conditional motion)發生了改變,從而生成了向被要求的動作之間類似人類動作的過渡。

此外,為了說明潛空間的語義結構,研究人員將兩個語義相關的動作「沖刺」和「蹲下空閑」進行編碼,并在時間上在編碼之間進行插值。

如上圖e所示,CALM在兩個動作之間平穩過渡,同時不間斷地執行連貫的行走動作,同時降低了速度和高度。

解決下游任務

使用編碼器和底層策略,研究人員展示了如何使用類似于視頻游戲控制的命令來為解決未見過的任務組合動作。

方向運動控制

首先,研究人員展示了在給定一個參考動作??和一個方向???的情況下,一個高層策略可以學會控制底層策略。

研究人員將這個任務稱為Heading。角色應該在請求的方向上產生具有相似特征的動作。

研究人員在上中展示了學到的動作,并在下表的Heading列中對它們進行了量化。高層策略被設定為同時學習「奔跑」,「持盾行走」和「蹲下行走」的條件。

在評估過程中,高層策略被設定為一個固定的風格,并且在隨機時間步驟上更改方向。

研究人員記錄了生成請求風格的成功程度,使用人工評估員進行評估,并且測量動作的方向——請求動作方向與實際動作方向之間的余弦距離。

結果表明,通過將潛變量約束在接近參考動作編碼(reference motion encoding)的范圍內,高層策略能夠在指定的風格中生成動作,同時確保它在要求的方向上移動。

在沒有進一步訓練的情況下解決任務

在研究人員的最終實驗中,研究人員將可定向的底層控制器與高層動作策略結合在一起,為新的任務提供零樣本解決方案。

研究人員設計了兩個任務,位置和打擊。

對于位置任務,人物應該達到并保持在目標位置內——以圍繞旗桿的圓圈來表示。

更復雜的任務要求人物到達目標并擊倒目標。

在這兩種任務中,人物都受到一系列參考動作的控制。

為了實現這一點,將方向向量設定到目標位置,在人物的本地坐標框架中表示。

一旦在范圍內,底層策略直接提供相應于所請求動作(例如踢、持盾沖刺或劍揮)的潛在變量。

如上圖所示,CALM可以用于解決任務,具體數值見之前方向運動控制部分中的表一。

就像一個人類玩家用手柄控制人物一樣,由于CALM的可控性很好,在沒有任何進一步的訓練或設計了任務特定的獎勵的條件下,FSM按順序地命令人物在動作之間進行過渡。

角色以一種類似人類的動作組合,完成了任務。

項目開源

準備工作

下載安裝Isaac Gym,并安裝外部依賴項:

pip install -r requirements.txt

預訓練

首先,可以使用以下命令對CALM模型進行訓練,從而模仿數據集中的動作片段:

python calm/run.py --task HumanoidAMPGetup --cfg_env calm/data/cfg/humanoid_calm_sword_shield_getup.yaml --cfg_train calm/data/cfg/train/rlg/calm_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/dataset_reallusion_sword_shield.yaml --headless  --track

要測試訓練好的模型,請使用以下命令:

python calm/run.py --test --task HumanoidAMPGetup --num_envs 16 --cfg_env calm/data/cfg/humanoid_calm_sword_shield_getup.yaml --cfg_train calm/data/cfg/train/rlg/calm_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/dataset_reallusion_sword_shield.yaml --checkpoint [path_to_calm_checkpoint]

精確訓練

在訓練完CALM底層控制器之后,就可以使用它來訓練運動控制器了。

以下命令將使用預訓練的CALM模型執行目標朝向任務:

python calm/run.py --task HumanoidHeadingConditioned --cfg_env calm/data/cfg/humanoid_sword_shield_heading_conditioned.yaml --cfg_train calm/data/cfg/train/rlg/hrl_humanoid_style_control.yaml --motion_file calm/data/motions/reallusion_sword_shield/dataset_reallusion_sword_shield_fsm_movements.yaml --llc_checkpoint [path_to_llc_checkpoint] --headless --track

要測試訓練好的模型,請使用以下命令:

python calm/run.py --test --task HumanoidHeadingConditioned --num_envs 16 --cfg_env calm/data/cfg/humanoid_sword_shield_heading_conditioned.yaml --cfg_train calm/data/cfg/train/rlg/hrl_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/dataset_reallusion_sword_shield_fsm_movements.yaml --llc_checkpoint [path_to_llc_checkpoint] --checkpoint [path_to_hlc_checkpoint]

任務解決(只用推理,無需訓練)

CALM底層控制器和高層運動控制器可以結合起來,無需進一步訓練即可解決任務。

此階段僅進行推理:

python calm/run.py --test --task HumanoidStrikeFSM --num_envs 16 --cfg_env calm/data/cfg/humanoid_sword_shield_strike_fsm.yaml --cfg_train calm/data/cfg/train/rlg/hrl_humanoid_fsm.yaml --motion_file calm/data/motions/reallusion_sword_shield/dataset_reallusion_sword_shield_fsm_movements.yaml --llc_checkpoint [path_to_llc_checkpoint] --checkpoint [path_to_hlc_checkpoint]

內置任務及其各自的配置文件為:

HumanoidStrikeFSM: calm/data/cfg/humanoid_sword_shield_strike_fsm.yaml
HumanoidLocationFSM: calm/data/cfg/humanoid_sword_shield_location_fsm.yaml

任務訓練

除了精確訓練外,還可以訓練高層控制器直接解決任務。

以下命令將使用預訓練的CALM模型執行目標朝向任務:

python calm/run.py --task HumanoidHeading --cfg_env calm/data/cfg/humanoid_sword_shield_heading.yaml --cfg_train calm/data/cfg/train/rlg/hrl_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/RL_Avatar_Idle_Ready_Motion.npy --llc_checkpoint [path_to_llc_checkpoint] --headless --track

內置任務及其各自的配置文件為:

HumanoidReach: calm/data/cfg/humanoid_sword_shield_reach.yaml
HumanoidHeading: calm/data/cfg/humanoid_sword_shield_heading.yaml
HumanoidLocation: calm/data/cfg/humanoid_sword_shield_location.yaml
HumanoidStrike: calm/data/cfg/humanoid_sword_shield_strike.yaml

要測試訓練好的模型,請使用以下命令:

python calm/run.py --test --task HumanoidHeading --num_envs 16 --cfg_env calm/data/cfg/humanoid_sword_shield_heading.yaml --cfg_train calm/data/cfg/train/rlg/hrl_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/RL_Avatar_Idle_Ready_Motion.npy --llc_checkpoint [path_to_llc_checkpoint] --checkpoint [path_to_hlc_checkpoint]

AMP

同時,項目還提供了Adversarial Motion Priors的實現。使用以下命令可以訓練模型模仿給定的參考動作:

python calm/run.py --task HumanoidAMP --cfg_env calm/data/cfg/humanoid_sword_shield.yaml --cfg_train calm/data/cfg/train/rlg/amp_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/sword_shield/RL_Avatar_Atk_2xCombo01_Motion.npy --headless  --track

訓練好的模型可以通過以下方式進行測試:

python calm/run.py --test --task HumanoidAMP --num_envs 16 --cfg_env calm/data/cfg/humanoid_sword_shield.yaml --cfg_train calm/data/cfg/train/rlg/amp_humanoid.yaml --motion_file calm/data/motions/reallusion_sword_shield/sword_shield/RL_Avatar_Atk_2xCombo01_Motion.npy --checkpoint [path_to_amp_checkpoint]

動作數據

可以使用以下命令對動作片段進行可視化:

python calm/run.py --test --task HumanoidViewMotion --num_envs 2 --cfg_env calm/data/cfg/hum
責任編輯:張燕妮 來源: 新智元
相關推薦

2023-02-06 10:25:13

AI模型

2024-06-17 08:55:00

2021-10-12 15:03:18

模型人工智能深度學習

2024-02-29 13:54:00

數據訓練

2023-03-14 13:06:54

2023-02-03 16:31:02

模型

2023-03-14 09:19:02

微軟OpenAIChatGPT

2024-12-31 15:00:00

AI模型訓練

2022-01-20 15:56:14

AI訓練GPU

2024-08-14 13:50:00

模型訓練

2024-06-04 13:00:07

2025-06-23 09:14:00

2024-07-22 07:50:00

模型英偉達

2023-07-13 23:16:19

英偉達GPU

2021-12-13 17:36:30

英偉達人工智能軟件

2023-08-13 07:44:18

GPU模型英偉達

2023-11-01 13:47:44

2025-03-24 08:06:00

2024-12-27 12:23:46

2021-07-24 10:19:14

AI 數據克隆
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区精品在线 | 久国产| 国产精品久久久久久久模特 | 亚洲一区亚洲二区 | 在线观看av网站 | 亚洲一区二区中文字幕在线观看 | 国产成人福利视频 | 国产精品欧美精品 | 国产成人一区二区 | 欧美精品欧美精品系列 | 免费精品久久久久久中文字幕 | 久久久av中文字幕 | 久久伦理中文字幕 | 国产免费一区二区 | 国产色片| 天堂综合 | 欧美日韩在线播放 | 91精品国产色综合久久 | 91精品中文字幕一区二区三区 | 国产黄色大片在线免费观看 | 亚洲精品一区二区三区在线观看 | 超碰精品在线 | 久久综合久久自在自线精品自 | 国产在线不卡 | 久久精品国产免费看久久精品 | 欧洲毛片 | 日韩欧美成人精品 | www国产成人免费观看视频 | 在线观看www | 国产精品久久久久久久久污网站 | 精品久久视频 | 91精品中文字幕一区二区三区 | 99re| 在线观看亚洲一区二区 | 日韩高清国产一区在线 | 女女爱爱视频 | 99精品欧美一区二区三区综合在线 | 一级做a爰片性色毛片视频停止 | 精品国产免费人成在线观看 | 欧美专区在线视频 | 国产区视频在线观看 |