经验概率密度图(Empirical Probability Density Function, EPDF)是一种非参数方法,用于估计和可视化数据的概率密度分布。通过对样本数据进行平滑处理,EPDF提供了一种直观的方式来观察数据的分布特性和趋势,常用于探索性数据分析和分布假设验证。
算法说明
经验概率密度图算法通过内核密度估计(Kernel Density Estimation, KDE)来估算样本数据的概率密度,与直方图类似,都是用于描述数据分布的工具。不同之处在于,KDE通过叠加每个数据点的内核函数来生成连续平滑的分布曲线,而直方图则是离散化的。在该算法中,非样本数据点的概率密度通过对样本点在高斯内核下的概率密度进行加权叠加来计算,从而提供了一种光滑的分布曲线。
配置组件
方式一:可视化方式
在Designer工作流页面添加经验概率密度图组件,并在界面右侧配置相关参数:
参数类型 | 参数 | 描述 |
字段设置 | 输入列 | 选择输入列,只支持bigint与double类型。 |
标签列 | 标签字段。 如果选择了该字段,会把输入列按照标签列所有的值进行分组计算。例如:标签列有0和1两个值,最终会输出两个结果,分别对应标签值0和1。 | |
参数设置 | 计算频次区间数 | 值越大精度越高,会根据各列数据的取值范围进行区间划分计算区间数。 |
执行调优 | 核数目 | 计算的核心数,取值范围为正整数。 |
内存数 | 每个核心的内存,取值范围为1 MB~65536 MB。 |
方式二:PAI命令方式
使用PAI命令配置经验概率密度图组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见场景4:在SQL脚本组件中执行PAI命令。
PAI -name empirical_pdf
-project algo_public
-DinputTableName="test_data"
-DoutputTableName="test_epdf_out"
-DfeatureColNames="col0,col1,col2"
-DinputTablePartitions="ds='20160101'"
-Dlifecycle=1
-DintervalNum=100
参数 | 是否必选 | 默认值 | 描述 |
inputTableName | 是 | 无 | 输入表的名称。 |
outputTableName | 是 | 无 | 输出表名。 |
featureColNames | 是 | 无 | 输入表中,用于训练的特征列名。 |
labelColName | 否 | 无 | 输入表中,标签列的名称。 |
inputTablePartitions | 否 | 无 | 输入表中,参与训练的分区。系统支持以下格式:
说明 指定多个分区时,分区之间使用英文逗号(,)分隔,例如name1=value1,value2。 |
intervalNum | 否 | 无 | 计算频次区间数,越大精度越高。取值范围[1,1E14)。 |
lifecycle | 否 | 无 | 表的生命周期。 |
coreNum | 否 | 系统自动分配 | 计算的核心数,取值范围为正整数。 |
memSizePerCore | 否 | 系统自动分配 | 每个核心的内存,取值范围为1 MB~65536 MB。 |
使用示例
添加SQL脚本组件,去勾选使用Script模式和是否由系统添加Create Table语句,并在SQL脚本中输入以下SQL语句。
drop table if exists epdf_test; create table epdf_test as select * from ( select 1.0 as col1 union all select 2.0 as col1 union all select 3.0 as col1 union all select 4.0 as col1 union all select 5.0 as col1 ) tmp;
添加SQL脚本组件,去勾选使用Script模式和是否由系统添加Create Table语句,在SQL脚本中输入以下PAI命令,并将步骤 1和步骤 2的组件进行连线。
drop table if exists ${o1}; PAI -name empirical_pdf -project algo_public -DinputTableName=epdf_test -DoutputTableName=${o1} -DfeatureColNames=col1;
单击左上角,运行工作流。
待运行结束,右键单击步骤 2的组件,选择查看数据 > SQL脚本的输出,查看训练结果。
| colname | label | x | pdf | | ------- | ----- | ------------------ | ------------------- | | col1 | | 1.0 | 0.12775155176809325 | | col1 | | 1.0404050505050506 | 0.1304256933829622 | | col1 | | 1.0808101010101012 | 0.13306325897429525 | | col1 | | 1.1212151515151518 | 0.1356613897616418 | | col1 | | 1.1616202020202024 | 0.1382173796574596 | | col1 | | 1.202025252525253 | 0.1407286844875733 | | col1 | | 1.2424303030303037 | 0.14319293014274642 | | col1 | | 1.2828353535353543 | 0.14560791960033242 | | col1 | | 1.3232404040404049 | 0.14797163876379316 | | col1 | | 1.3636454545454555 | 0.1502822610772349 | | col1 | | 1.404050505050506 | 0.1525381508819247 | | col1 | | 1.4444555555555567 | 0.1547378654919243 | | col1 | | 1.4848606060606073 | 0.1568801559764068 | | col1 | | 1.525265656565658 | 0.15896396664681753 | | col1 | | 1.5656707070707085 | 0.16098843325768245 | | col1 | | 1.6060757575757592 | 0.1629528799404685 | | col1 | | 1.6464808080808098 | 0.16485681490034038 | | col1 | | 1.6868858585858604 | 0.16669992491584543 | | col1 | | 1.727290909090911 | 0.16848206869138338 | | col1 | | 1.7676959595959616 | 0.17020326912168932 | | col1 | | 1.8081010101010122 | 0.17186370453638117 | | col1 | | 1.8485060606060628 | 0.17346369900080946 | | col1 | | 1.8889111111111134 | 0.17500371175692428 | | col1 | | 1.929316161616164 | 0.17648432589456017 | | col1 | | 1.9697212121212146 | 0.17790623634938396 | | col1 | | 2.0101262626262653 | 0.1792702373286898 | | col1 | | 2.050531313131316 | 0.18057720927022053 | | col1 | | 2.0909363636363665 | 0.18182810544221673 | | col1 | | 2.131341414141417 | 0.18302393829491406 | | col1 | | 2.1717464646464677 | 0.18416576567472337 | | col1 | | 2.2121515151515183 | 0.1852546770123305 | | col1 | | 2.252556565656569 | 0.18629177959496213 | | col1 | | 2.2929616161616195 | 0.18727818503109434 | | col1 | | 2.33336666666667 | 0.18821499601297229 | | col1 | | 2.3737717171717208 | 0.18910329347850022 | | col1 | | 2.4141767676767714 | 0.18994412426940221 | | col1 | | 2.454581818181822 | 0.19073848937711185 | | col1 | | 2.4949868686868726 | 0.19148733286168018 | | col1 | | 2.535391919191923 | 0.1921915315221827 | | col1 | | 2.575796969696974 | 0.19285188538972659 | | col1 | | 2.6162020202020244 | 0.19346910910630113 | | col1 | | 2.656607070707075 | 0.19404382424446043 | | col1 | | 2.6970121212121256 | 0.1945765526142701 | | col1 | | 2.7374171717171762 | 0.19506771059517916 | | col1 | | 2.777822222222227 | 0.19551760452158667 | | col1 | | 2.8182272727272775 | 0.19592642714194602 | | col1 | | 2.858632323232328 | 0.1962942551623821 | | col1 | | 2.8990373737373787 | 0.1966210478770638 | | col1 | | 2.9394424242424293 | 0.1969066468790639 | | col1 | | 2.97984747474748 | 0.19715077683721793 | | col1 | | 3.0202525252525305 | 0.19735304731663747 | | col1 | | 3.060657575757581 | 0.19751295561309964 | | col1 | | 3.1010626262626317 | 0.19762989056457925 | | col1 | | 3.1414676767676823 | 0.19770313729675995 | | col1 | | 3.181872727272733 | 0.19773188285349683 | | col1 | | 3.2222777777777836 | 0.19771522265793107 | | col1 | | 3.262682828282834 | 0.19765216774530828 | | col1 | | 3.303087878787885 | 0.19754165270453194 | | col1 | | 3.3434929292929354 | 0.19738254426210697 | | col1 | | 3.383897979797986 | 0.19717365043938664 | | col1 | | 3.4243030303030366 | 0.19691373021193162 | | col1 | | 3.4647080808080872 | 0.1966015035982942 | | col1 | | 3.505113131313138 | 0.19623566210464843 | | col1 | | 3.5455181818181885 | 0.19581487945135703 | | col1 | | 3.585923232323239 | 0.19533782250778076 | | col1 | | 3.6263282828282897 | 0.1948031623623475 | | col1 | | 3.6667333333333403 | 0.1942095854560816 | | col1 | | 3.707138383838391 | 0.19355580470939734 | | col1 | | 3.7475434343434415 | 0.19284057057394655 | | col1 | | 3.787948484848492 | 0.19206268194364004 | | col1 | | 3.8283535353535427 | 0.19122099686158253 | | col1 | | 3.8687585858585933 | 0.19031444296253852 | | col1 | | 3.909163636363644 | 0.1893420275936375 | | col1 | | 3.9495686868686946 | 0.18830284755928747 | | col1 | | 3.989973737373745 | 0.1871960984396676 | | col1 | | 4.030378787878796 | 0.18602108343567092 | | col1 | | 4.070783838383846 | 0.18477722169674377 | | col1 | | 4.111188888888897 | 0.1834640560916829 | | col1 | | 4.151593939393948 | 0.1820812603860928 | | col1 | | 4.191998989898998 | 0.18062864579383914 | | col1 | | 4.232404040404049 | 0.179106166873458 | | col1 | | 4.272809090909099 | 0.17751392674406796 | | col1 | | 4.31321414141415 | 0.17585218159888508 | | col1 | | 4.353619191919201 | 0.17412134449794325 | | col1 | | 4.394024242424251 | 0.1723219884250765 | | col1 | | 4.434429292929302 | 0.17045484859762067 | | col1 | | 4.4748343434343525 | 0.16852082402064342 | | col1 | | 4.515239393939403 | 0.1665209782808102 | | col1 | | 4.555644444444454 | 0.16445653957824907 | | col1 | | 4.596049494949504 | 0.16232889999798905 | | col1 | | 4.636454545454555 | 0.16013961402571825 | | col1 | | 4.6768595959596055 | 0.1578903963157465 | | col1 | | 4.717264646464656 | 0.15558311872216193 | | col1 | | 4.757669696969707 | 0.1532198066072439 | | col1 | | 4.798074747474757 | 0.1508026344442397 | | col1 | | 4.838479797979808 | 0.14833392073462115 | | col1 | | 4.878884848484859 | 0.14581612226291346 | | col1 | | 4.919289898989909 | 0.1432518277151203 | | col1 | | 4.95969494949496 | 0.1406437506896507 | | col1 | | 5.00010000000001 | 0.13799472213247665 |
列名
数据类型
描述
colName
string
表示输入列。
label
string
表示标签列。不设置时,label字段输出为空。
x
double
表示图像里x轴的值,是使用插值算法插入的值,而非实际值。
pdf
double
表示概率密度。