【GDC2024】《三角洲行動(dòng)》雙端高品質(zhì)的一體化生產(chǎn)管線與技術(shù)支撐

三角洲的引擎版本是4.24织狐,其硬件基線為:

  1. PC為GTX 650
  2. Android為Adreno 512

PC版本性能標(biāo)準(zhǔn)給出如下:

  1. Base Pass的DP:從500 ~ 1200
  2. 同屏總面數(shù):1M ~ 3M
  3. Base Pass面數(shù):0.6M ~ 1.4M
  4. 局部光源數(shù):3 ~ 5

移動(dòng)端性能標(biāo)準(zhǔn):

  1. 總DP:250 ~ 650
  2. 場(chǎng)景總DP:180 ~ 510
  3. Base Pass DP:140 ~ 390
    特效DP:10 ~ 40
    面數(shù):3k ~ 6k
    場(chǎng)景頂點(diǎn)數(shù):35w ~ 100w

這里對(duì)一體化的定義是:

  1. 相同的資源
  2. 同一批開(kāi)發(fā)同學(xué)
  3. 同一套制作開(kāi)發(fā)工具

要求做到:

  1. 一次性的編輯制作(絕大部分情況下)
  2. 玩法體驗(yàn)的一致
  3. 兼顧多平臺(tái)性能

移動(dòng)端+PC的跨平臺(tái)挑戰(zhàn) & 解決方案:
1.硬件差異導(dǎo)致的性能差異
a.不同設(shè)備運(yùn)行不同的renderer(deferred + forward)

2.多平臺(tái)聯(lián)動(dòng)狸吞、協(xié)同體驗(yàn)伟墙,要求資產(chǎn)跟玩法的同步發(fā)行
a.通過(guò)一套管線镣丑,實(shí)現(xiàn)多端的同步研發(fā)與發(fā)布

多端的支持,可以拆分為兩個(gè)部分:
1.生產(chǎn)管線:美術(shù)資源的制作
2.運(yùn)行時(shí)體驗(yàn):包括gameplay跟性能優(yōu)化

資源制作管線的挑戰(zhàn)在于如何用一套資源實(shí)現(xiàn)多個(gè)平臺(tái)的支持鹅心,其中涉及到了資產(chǎn)的制作方式级历,LOD、Shader等的管理捣郊,這里面會(huì)面臨很多的問(wèn)題:

  1. 資產(chǎn)制作層面
  • 雙端是否共用同一套關(guān)卡
  • mesh晶密、texture如何應(yīng)用到多個(gè)平臺(tái): LOD起始Index、切換距離模她;物理碰撞的精度稻艰;材質(zhì)復(fù)雜度 —— 做好配套的資源規(guī)范工具(LOD切換距離、頂點(diǎn)密度侈净、貼圖尺寸尊勿、材質(zhì)復(fù)雜度等)
  • 地形數(shù)據(jù)如何實(shí)現(xiàn)多平臺(tái)的兼容
  • 如何保證雙端的物理表現(xiàn)一致
  • 如何保障復(fù)雜的資產(chǎn)制作約束規(guī)則下的生產(chǎn)效率
  • 同時(shí)研發(fā)端游 & 手游,人力&優(yōu)先級(jí)如何權(quán)衡:白盒 -> 端游效果&性能 -> 手游效果&性能 -> 雙端兼顧
  • 如何實(shí)現(xiàn)多端表現(xiàn)的高效debug(快速預(yù)覽)
  1. 離線優(yōu)化層面
  • 如何從編輯關(guān)卡轉(zhuǎn)化為具有最佳性能表現(xiàn)的運(yùn)行時(shí)關(guān)卡(兼顧PIE跟構(gòu)包)—— 在Cook階段做了很多處理畜侦,包括:
    A. 構(gòu)建針對(duì)不同平臺(tái)的地形數(shù)據(jù)(heightmap之類)
    B. 構(gòu)建針對(duì)不同平臺(tái)的植被數(shù)據(jù)
    C. 場(chǎng)景物件處理(過(guò)濾不需要的component元扔,完成物件到grid、layer的分配旋膳,合并ISM澎语,陰影優(yōu)化,SOC遮擋物優(yōu)化)验懊,結(jié)果以增量形式存在(擅羞?),這里物件是基于剔除時(shí)的screensize來(lái)設(shè)置其所屬的grid/layer的(仿造TextureGroup的概念义图,增加了一個(gè)MeshGroup的概念减俏,方便實(shí)現(xiàn)對(duì)某一類數(shù)據(jù)的批量處理)
  • 不同平臺(tái)的運(yùn)行時(shí)關(guān)卡該如何做分別的處理
    D. 構(gòu)建場(chǎng)景物理數(shù)據(jù)
    E. 移動(dòng)端做物件的合批處理
    F. 構(gòu)建PVS
    G. 構(gòu)建遠(yuǎn)景
  1. 運(yùn)行時(shí)優(yōu)化層面
  • 哪些算法需要雙端各有一套:移動(dòng)端需要合批(PC用模組化+GPU Driven)
  • 哪些算法需要雙端各有一套參數(shù)配置:Streamping配置(加載范圍、cell size)
  • 哪些資源需要雙端各有一套:裝飾物(有的只有PC有碱工,有的則是PC具有多樣化的物件)

從上圖可以看到娃承,針對(duì)某一類固定資產(chǎn)奏夫,有些數(shù)據(jù)是可以跨平臺(tái)復(fù)用的,有些則是不能历筝,如果我們希望生產(chǎn)管線能夠自動(dòng)適配多個(gè)不同平臺(tái)酗昼,就要將不能復(fù)用的數(shù)據(jù)拆出來(lái),這對(duì)引擎改造來(lái)說(shuō)是一項(xiàng)大工程梳猪。

此外仔雷,針對(duì)不同的資產(chǎn)類型,處理的方式也是完全不同的舔示,從而進(jìn)一步加劇了這個(gè)問(wèn)題。

展開(kāi)來(lái)說(shuō):
1.針對(duì)同一套材質(zhì)电抚,需要考慮如何輸出不同平臺(tái)的兩套shader惕稻,而且,這里還需要考慮不同渲染管線的區(qū)別
2.Mesh的LOD雖然在復(fù)用的處理上比較簡(jiǎn)單蝙叛,但是FPS游戲希望在多端上的碰撞表現(xiàn)是一致的
3.貼圖的分辨率以及壓縮設(shè)置也需要做不同的處理(這個(gè)看起來(lái)相對(duì)簡(jiǎn)單)
4.還需要將當(dāng)前平臺(tái)不用的數(shù)據(jù)從cook列表中剔除出去

在管線的選擇上:
1.PC+高端移動(dòng)機(jī)型俺祠,采用的是延遲渲染管線
2.中低端移動(dòng)機(jī)型,采用的是前向渲染管線

為了通過(guò)同一套材質(zhì)來(lái)應(yīng)對(duì)上述設(shè)備借帘、管線的差異蜘渣,DFM提出了一種叫做Virtual Material System的東西,這個(gè)東西有如下特性(看起來(lái)更像是一個(gè)大雜燴肺然,而非一套從最初就完整設(shè)計(jì)好的系統(tǒng)蔫缸,應(yīng)該也是初次使用):
1.將資源與shading解耦
2.支持對(duì)資源的自定義組織,比如貼圖通道的remapping
3.支持對(duì)不同平臺(tái)际起、不同quality level的配置(相當(dāng)于性能的分級(jí))
4.提供了一套模塊化的材質(zhì)函數(shù)模塊以實(shí)現(xiàn)材質(zhì)邏輯的復(fù)用

在編輯器模式下拾碌,美術(shù)跟TA同學(xué)會(huì)為對(duì)應(yīng)的資源(模型)配置好母材質(zhì),并編輯對(duì)應(yīng)quality level的效果街望,在cook的時(shí)候校翔,會(huì)將這個(gè)材質(zhì)烘焙成不同的材質(zhì)實(shí)例,并完成這個(gè)材質(zhì)實(shí)例與資源的關(guān)聯(lián)灾前。

下面看看這個(gè)系統(tǒng)是如何工作的防症,系統(tǒng)組織邏輯如下圖所示:
1.整個(gè)系統(tǒng)分為三個(gè)模塊,分別是Material Layer哎甲、Virtual Material Template以及Virtual Material Instance
a.Material Layer是整個(gè)系統(tǒng)的核心模塊蔫敲,大部分的功能都是由這個(gè)模塊承接
b.Template模塊可以認(rèn)為是對(duì)UE母材質(zhì)的封裝,基于這個(gè)Template炭玫,美術(shù)跟TA同學(xué)可以完成材質(zhì)的編輯與配置工作
c.Instance是整個(gè)系統(tǒng)的產(chǎn)出物燕偶,在cook的時(shí)候會(huì)被烘焙成不同平臺(tái)的Material Instance
2.Material Layer包括三個(gè)部分,分別是Data Provider础嫡,Effect Layer以及Blend Controller
a.Data Provider負(fù)責(zé)材質(zhì)的數(shù)據(jù)部分指么,包括搜集貼圖酝惧、暴露貼圖插槽以及管理不同quality level的資源
b.Effect Layer包含兩個(gè)功能,分別是負(fù)責(zé)材質(zhì)的效果邏輯以及與上一層的blend(伯诬?)
c.Blend Controller則是負(fù)責(zé)一些復(fù)雜的混合邏輯

基于這個(gè)設(shè)計(jì)晚唇,就能實(shí)現(xiàn)shader跟mesh之間的解耦,從而實(shí)現(xiàn)同一個(gè)mesh在不同平臺(tái)上的不同shader實(shí)現(xiàn)

下面來(lái)看下盗似,針對(duì)不同平臺(tái)上哩陕,怎么做到同樣的碰撞表現(xiàn)。

DFM中將模型分為6級(jí)LOD赫舒,其中PC會(huì)使用完全的6級(jí)(悍及?),而移動(dòng)端則只使用后面3級(jí)接癌。

可以看到心赶,移動(dòng)端上的Mesh LOD Bias為3,因此mesh的精度相對(duì)于PC會(huì)有所下降缺猛,因此部分細(xì)節(jié)會(huì)丟失缨叫,如下圖所示,圖中的圍欄從LOD3的時(shí)候就會(huì)被移除:
1.如果圍欄對(duì)應(yīng)的碰撞還在移動(dòng)端上保留荔燎,那玩家的體驗(yàn)就會(huì)下降
2.如果碰撞移除耻姥,那么跟PC的體驗(yàn)就會(huì)不一致
3.如果PC跟移動(dòng)端的碰撞都移除,就會(huì)導(dǎo)致效果上的不真實(shí)

這里采取的解決方案是為不同平臺(tái)設(shè)計(jì)不同的碰撞數(shù)據(jù)有咨,這里沒(méi)有詳細(xì)描述解決方案(說(shuō)是TA的talk中有更多描述琐簇,后面有時(shí)間可以來(lái)補(bǔ)充一下)。這里想到的一個(gè)方案是在LOD減面的時(shí)候座享,需要考慮碰撞數(shù)據(jù)的影響鸽嫂,對(duì)于會(huì)影響碰撞表現(xiàn)的部分,在減面的時(shí)候要予以保留征讲。

這種為不同平臺(tái)進(jìn)行數(shù)據(jù)定制的策略不僅僅用在碰撞上面据某,對(duì)于其他的一些資產(chǎn)如天空盒的貼圖與壓縮配置、lightmap的相關(guān)配置诗箍,也是采用同樣的策略癣籽。

講完了資產(chǎn)編輯與準(zhǔn)備,接下來(lái)看看場(chǎng)景的表現(xiàn)與性能滤祖,在這里筷狼,既需要兼顧場(chǎng)景的豐富度,也需要照顧移動(dòng)端性能下的加載范圍

為了實(shí)現(xiàn)上面所述的兼顧匠童,這里的思路是將場(chǎng)景的資源拆分為兩個(gè)部分:
1.共享層埂材,存儲(chǔ)的是各個(gè)平臺(tái)共用的數(shù)據(jù)
a.出于玩法的統(tǒng)一,對(duì)于玩法有影響的數(shù)據(jù)需要放到這個(gè)地方
b.出于保持主體視覺(jué)的一致汤求,場(chǎng)景的基本布局相關(guān)數(shù)據(jù)也要放在這里
2.平臺(tái)層俏险,存儲(chǔ)的是各個(gè)平臺(tái)特有的數(shù)據(jù):出于性能的兼顧严拒,一些偏表現(xiàn)層的數(shù)據(jù)則可以考慮放到這里

對(duì)于共享的數(shù)據(jù),也需要針對(duì)平臺(tái)的不同做一些處理竖独,如下圖所示裤唠,共享數(shù)據(jù)會(huì)被分為HD & Mobile兩類。

為了減少美術(shù)同學(xué)的工作量莹痢,這里的另一個(gè)原則是盡量將數(shù)據(jù)往共享層挪种蘸,基于這個(gè)原則,通過(guò)PCG或者其他自動(dòng)生成工具輸出的數(shù)據(jù)都會(huì)自動(dòng)被拆分為多個(gè)平臺(tái)的

下面看下不同平臺(tái)下的效果對(duì)比:

大型項(xiàng)目的另一個(gè)問(wèn)題竞膳,如何實(shí)現(xiàn)海量資源的高效管理航瞭,包括如何維護(hù)資源的規(guī)范以避免混亂,如何降低數(shù)據(jù)的冗余(比如通過(guò)對(duì)資源的掃描坦辟,找出重復(fù)的貼圖或材質(zhì)等)以及如何保障資源的正確引用等刊侯,常用的策略是提供相應(yīng)的檢查與預(yù)警工具

針對(duì)不同平臺(tái),在運(yùn)行時(shí)的Streaming配置也需要做不同的處理:
1.為不同平臺(tái)长窄、不同資源類型設(shè)置不同的加載距離
2.對(duì)于開(kāi)鏡時(shí)的處理也會(huì)有所不同,PC是全加載纲菌,在開(kāi)鏡的時(shí)候切換可見(jiàn)性挠日;移動(dòng)端則是在開(kāi)鏡的瞬間加載在Frustum內(nèi)部的數(shù)據(jù)(性能?)

接下來(lái)看看DFM針對(duì)Runtime level做了哪些優(yōu)化:
1.一些debug的actor會(huì)從runtime levele中移除出去
2.物理模擬跑在DS上翰舌,需要將之從Mesh中抽取出來(lái)嚣潜,并按照一定規(guī)則做合并
3.為了降低植被的內(nèi)存&drawcall消耗,針對(duì)不同的foliage類型椅贱,做了不同的streaming設(shè)置
4.地形被替換成基于CDLOD實(shí)現(xiàn)的方案
5.由于使用的引擎是UE4懂算,不能直接使用UE5的World Partition,這里就直接采用了類似的基于grid劃分的方式來(lái)對(duì)mesh actor進(jìn)行分塊streaming

如下圖所示庇麦,上述過(guò)程中的部分優(yōu)化是集成在自動(dòng)構(gòu)建環(huán)節(jié)中的:

其中針對(duì)移動(dòng)端计技,還做了靜態(tài)合批以減少Drawcall:
1.先對(duì)需要合批的模型進(jìn)行合并前的確認(rèn),包括材質(zhì)山橄、貼圖等是否符合合并規(guī)則
2.之后確認(rèn)合并后的數(shù)據(jù)的有效性垮媒,比如頂點(diǎn)數(shù)是否超上限、貼圖是否超出最大分辨率以及距離是否合理(指的是待合并的模型之間的距離航棱?)

靜態(tài)合并的好處是可以保證數(shù)據(jù)有較好的局部性睡雇,同時(shí)提升渲染時(shí)的性能

接下來(lái)看看DFM在渲染上的一些策略、如何在多端上實(shí)現(xiàn)統(tǒng)一的gameplay效果以及常用的一些性能工具:

雖然不同平臺(tái)的渲染管線是不同的饮醇,但是項(xiàng)目組希望不同平臺(tái)都具有相同或者相似的主要特性它抱,下面給了兩條管線的框架(如果想要復(fù)刻這套思路,我們也應(yīng)該有一張自己的圖朴艰,圖中甚至需要給出不同級(jí)別的設(shè)備的差異):

先看光照部分观蓄,為了實(shí)現(xiàn)統(tǒng)一的光照效果混移,對(duì)于主要的特性而言,在不同平臺(tái)上的實(shí)現(xiàn)方式會(huì)有所不同蜘腌,比如sky occlusion是多端共享的沫屡,但是AO的實(shí)現(xiàn)策略卻有所不同,移動(dòng)端走烘焙撮珠,PC則使用的是GTAO以及DFAO(距離場(chǎng))沮脖,基于這種一致性設(shè)計(jì),美術(shù)同學(xué)就不需要為場(chǎng)景做兩套設(shè)計(jì)芯急,可以大大提高工作效率

GI方案是基于體素實(shí)現(xiàn)的勺届,體素中存儲(chǔ)的不是光照信息,而是離線烘焙的probe與權(quán)重?cái)?shù)據(jù)(娶耍?)免姿,為了實(shí)現(xiàn)多端統(tǒng)一的效果,做了如下約束:
1.probe分布算法在多端是一致的榕酒,不同的是PC端的probe密度會(huì)更高
2.probe的數(shù)據(jù)填充邏輯是一致的
3.probe的streaming邏輯是一致的

區(qū)別體現(xiàn)在基于性能考慮的一些計(jì)算方式上:
1.移動(dòng)端數(shù)據(jù)密度低(probe密度)胚膊,GPU性能稍差,因此probe數(shù)據(jù)是在CPU完成讀取想鹰,并組裝成3D貼圖紊婉,之后傳給GPU進(jìn)行采樣計(jì)算。優(yōu)化的重點(diǎn)在于如何提升CPU的讀取效率(比如提高緩存友好度辑舷,優(yōu)化數(shù)據(jù)壓縮算法等)
2.PC上的數(shù)據(jù)密度高喻犁,不需要通過(guò)CPU中轉(zhuǎn),直接讀取到GPU中何缓,在GPU中完成數(shù)據(jù)的解壓與解析肢础。GPU的關(guān)注重點(diǎn)為如何提高顯存的利用率,這里的做法是將probe按照稀疏的樹(shù)狀結(jié)構(gòu)存儲(chǔ)碌廓,此外传轰,考慮到CPU到GPU數(shù)據(jù)傳輸時(shí)的卡頓,這里也做了異步處理

有了動(dòng)態(tài)GI谷婆,很自然的就可以添加TOD效果路召,DFM的TOD是通過(guò)sequencer驅(qū)動(dòng)的,多平臺(tái)共用的參數(shù)存儲(chǔ)在基礎(chǔ)sequencer中波材,跟平臺(tái)相關(guān)的額外參數(shù)則存儲(chǔ)在另一個(gè)單獨(dú)的sequencer中:

地形的方案是優(yōu)先PC股淡,在先進(jìn)特性的實(shí)施過(guò)程中,考慮在移動(dòng)端的落地:
1.看下圖描述是基于Material ID實(shí)現(xiàn)的
2.Texture Array移動(dòng)端最多32套廷区,PC端則是256套
a.數(shù)據(jù)支持動(dòng)態(tài)的增減
3.每個(gè)像素可以支持多層混合
4.采用了AVT技術(shù)唯灵,還做了運(yùn)行時(shí)VT的壓縮
5.在移動(dòng)端上的規(guī)格為,每米大約會(huì)占用到500+個(gè)texel隙轻,以及3套材質(zhì)
6.Cliff(懸崖峭壁)也是基于VT實(shí)現(xiàn)埠帕,采用了隨機(jī)的tri-planar blend方案
7.還以米為單位存儲(chǔ)了biome(植被)信息(染色垢揩、濕度以及AO)以提升場(chǎng)景的豐富度。這里的數(shù)據(jù)是用clipmap存儲(chǔ)的敛瓷,相對(duì)于完全平鋪的方式叁巨,可以極大的節(jié)省內(nèi)存:從133M到2M
8.用了大量的貼花與軟件Tessellation
9.用80k的頂點(diǎn)實(shí)現(xiàn)了接近380k的遠(yuǎn)景效果(用的Tessellation?)

關(guān)于地形的渲染細(xì)節(jié)呐籽,在Unreal Fest 2023中有更多分享

接下來(lái)看下Gameplay一致性如何保障锋勺,這里將整體的gameplay邏輯分為三層:
1.Core feature layer:對(duì)應(yīng)的是所有平臺(tái)都一直的一些基礎(chǔ)特性,比如Gameplay框架狡蝶、網(wǎng)絡(luò)模型庶橱、移動(dòng)同步、武器射擊以及其他的一些戰(zhàn)斗細(xì)節(jié)贪惹。
2.Flexible feature layer:負(fù)責(zé)提供一些可以在不同平臺(tái)上做伸縮控制的特性苏章,這些特性可以基于設(shè)備的性能、quality level等來(lái)進(jìn)行參數(shù)的動(dòng)態(tài)調(diào)控與特性的開(kāi)關(guān)
3.Platform feature layer:用于實(shí)現(xiàn)平臺(tái)不同的特性奏瞬,比如input/HUD等

關(guān)于角色動(dòng)畫(huà)的跨平臺(tái)設(shè)計(jì)包括:
1.各平臺(tái)使用同一套basic skeleton枫绅,只是PC上會(huì)增加一些額外的骨骼與動(dòng)態(tài)信息
2.動(dòng)畫(huà)數(shù)據(jù)基于同一個(gè)角色的parent skeleton創(chuàng)建,因此可以在雙端進(jìn)行復(fù)用
a.PC上會(huì)采用更高的幀率與效果更好的壓縮方式

大部分的動(dòng)畫(huà)特性都是雙端共享的硼端,只在部分特性上做了處理并淋,對(duì)于這些做了處理的特性,有一些也會(huì)提供一些開(kāi)關(guān)允許在高端設(shè)備上開(kāi)啟显蝌,比如換彈動(dòng)畫(huà)预伺,在PC上是完整的動(dòng)作片段订咸,而在移動(dòng)端上則是通過(guò)IK來(lái)模擬的曼尊,雖然看起來(lái)差不多:

DFM還設(shè)計(jì)了一套規(guī)劃算法,來(lái)基于每臺(tái)設(shè)備的性能表現(xiàn)與預(yù)算脏嚷,動(dòng)態(tài)決定哪些特性是否需要開(kāi)啟骆撇,總的來(lái)說(shuō),這套算法的思路跟knapsack算法類似父叙,會(huì)需要先為每個(gè)feature指定一個(gè)權(quán)重神郊,之后會(huì)基于feature開(kāi)啟后的性能消耗來(lái)對(duì)所有feature進(jìn)行評(píng)估權(quán)衡,以獲得最高性價(jià)比

這里還給了兩個(gè)演示視頻來(lái)展示這個(gè)算法的效果

DFM還設(shè)計(jì)了一套自適應(yīng)的UI框架趾唱,大部分的UI數(shù)據(jù)都是包含在這個(gè)框架里的涌乳。

為了提升跨平臺(tái)共用的效率,這里會(huì)將平臺(tái)相關(guān)的參數(shù)抽取到framework layer(甜癞?):
1.DPI會(huì)跟屏幕分辨率有關(guān)夕晓,因此需要為不同平臺(tái)做專屬設(shè)計(jì),Display Ratio悠咱、Padding也有同樣的問(wèn)題
2.不同平臺(tái)的UI導(dǎo)航方式(蒸辆?)會(huì)不一樣征炼,這部分會(huì)需要放在navigation layer中

DFM的目標(biāo)分辨率設(shè)定是2k:
1.UI資源的原始尺寸是2k的話,在移動(dòng)端上會(huì)被cook成1080P的
2.PC跟Mobile共享的資源躬贡,在PC平臺(tái)會(huì)在運(yùn)行時(shí)被DPI下采樣為原始資源的2/3谆奥,但是會(huì)達(dá)到跟4k一樣的效果(?)
3.在PC上拂玻,建議打開(kāi)mipmap來(lái)避免像素的mismatch

最后看看性能工具酸些,DFM對(duì)工具訴求是:
1.支持跨平臺(tái)使用
2.不需要pre-instrumentation(代碼預(yù)埋)
3.支持長(zhǎng)時(shí)間的、可擴(kuò)展的數(shù)據(jù)搜集
4.不會(huì)對(duì)運(yùn)行時(shí)性能產(chǎn)生影響

最終自己開(kāi)發(fā)了一套:

工具的邏輯可以分為三層:
1.通過(guò)一套跨平臺(tái)可調(diào)用的接口實(shí)現(xiàn)高性能的數(shù)據(jù)采樣纺讲,這個(gè)采樣會(huì)結(jié)合每幀的時(shí)間消耗與自定義的數(shù)據(jù)擂仍,統(tǒng)計(jì)出每一幀的性能數(shù)據(jù)
2.對(duì)每個(gè)函數(shù)的性能數(shù)據(jù)與函數(shù)的堆棧進(jìn)行分析,得到一幀的call tree
3.通過(guò)一個(gè)服務(wù)+既定的規(guī)則來(lái)對(duì)所有數(shù)據(jù)進(jìn)行分析熬甚,這里會(huì)進(jìn)行一系列的自動(dòng)化分析逢渔,比如Pearson correlation coefficient(皮爾遜相關(guān)系數(shù)分析),基于這個(gè)可以統(tǒng)計(jì)出函數(shù)之間的關(guān)聯(lián)關(guān)系

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末乡括,一起剝皮案震驚了整個(gè)濱河市肃廓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌诲泌,老刑警劉巖盲赊,帶你破解...
    沈念sama閱讀 219,188評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異敷扫,居然都是意外死亡哀蘑,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門葵第,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)绘迁,“玉大人,你說(shuō)我怎么就攤上這事卒密∽禾ǎ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,562評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵哮奇,是天一觀的道長(zhǎng)膛腐。 經(jīng)常有香客問(wèn)我,道長(zhǎng)鼎俘,這世上最難降的妖魔是什么哲身? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,893評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮贸伐,結(jié)果婚禮上勘天,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好误辑,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布沧踏。 她就那樣靜靜地躺著,像睡著了一般巾钉。 火紅的嫁衣襯著肌膚如雪翘狱。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,708評(píng)論 1 305
  • 那天砰苍,我揣著相機(jī)與錄音潦匈,去河邊找鬼。 笑死赚导,一個(gè)胖子當(dāng)著我的面吹牛茬缩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吼旧,決...
    沈念sama閱讀 40,430評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼凰锡,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了圈暗?” 一聲冷哼從身側(cè)響起掂为,我...
    開(kāi)封第一講書(shū)人閱讀 39,342評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎员串,沒(méi)想到半個(gè)月后勇哗,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,801評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡寸齐,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評(píng)論 3 337
  • 正文 我和宋清朗相戀三年欲诺,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片渺鹦。...
    茶點(diǎn)故事閱讀 40,115評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡扰法,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出海铆,到底是詐尸還是另有隱情迹恐,我是刑警寧澤挣惰,帶...
    沈念sama閱讀 35,804評(píng)論 5 346
  • 正文 年R本政府宣布卧斟,位于F島的核電站,受9級(jí)特大地震影響憎茂,放射性物質(zhì)發(fā)生泄漏珍语。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評(píng)論 3 331
  • 文/蒙蒙 一竖幔、第九天 我趴在偏房一處隱蔽的房頂上張望板乙。 院中可真熱鬧,春花似錦、人聲如沸募逞。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,008評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春交排,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背亿傅。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,135評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工栓霜, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人苟蹈。 一個(gè)月前我還...
    沈念sama閱讀 48,365評(píng)論 3 373
  • 正文 我出身青樓糊渊,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親慧脱。 傳聞我的和親對(duì)象是個(gè)殘疾皇子渺绒,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容