条件密度估计框架

cde的Python项目详细描述


Build StatusDownloads

条件密度估计(cde)

说明

条件密度估计的各种方法的实现

  • 基于参数神经网络的方法
    • 混合密度网络(MDN)
    • 内核混合网络(kmn)
    • 规范化流(nf)
  • 非参数方法
    • 条件核密度估计(ckde)
    • 邻域核密度估计(nkde)
  • 半参数方法
    • 最小二乘条件密度估计(lskde)

除了估计条件概率密度外,该软件包还具有广泛的计算功能:

  • 中心矩:均值、协方差、偏度和峰度
  • 统计发散:kl发散,js发散,hellinger距离
  • percentiles和预期短缺

安装

要使用库,可以直接使用python包索引:

pip install cde

或者克隆github存储库并运行

pip install .

注意,这个包只支持1.4到1.7之间的tensorflow版本。

文档和纸张

请参阅文档here。一篇关于利用神经网络进行条件密度估计的最佳实践和基准的论文可以找到here

用法

下面截取的代码包含一个简单的示例,演示如何使用cde包。

fromcde.density_simulationimportSkewNormalfromcde.density_estimatorimportKernelMixtureNetworkimportnumpyasnp""" simulate some data """density_simulator=SkewNormal(random_seed=22)X,Y=density_simulator.simulate(n_samples=3000)""" fit density model """model=KernelMixtureNetwork("KDE_demo",ndim_x=1,ndim_y=1,n_centers=50,x_noise_std=0.2,y_noise_std=0.1,random_seed=22)model.fit(X,Y)""" query the conditional pdf and cdf """x_cond=np.zeros((1,1))y_query=np.ones((1,1))*0.1prob=model.pdf(x_cond,y_query)cum_prob=model.cdf(x_cond,y_query)""" compute conditional moments & VaR  """mean=model.mean_(x_cond)[0][0]std=model.std_(x_cond)[0][0]skewness=model.skewness(x_cond)[0]

引用

如果你在研究中使用了cde,可以引用如下:

@article{rothfuss2019conditional,
  title={Conditional Density Estimation with Neural Networks: Best Practices and Benchmarks},
  author={Rothfuss, Jonas and Ferreira, Fabio and Walther, Simon and Ulrich, Maxim},
  journal={arXiv:1903.00954},
  year={2019}
}

待办事项

  • 只为条件估计器+python包创建分支

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spring freemarker多模板加载程序路径   在java插件中从控制台获取输入   java在包中创建继承类   网页抓取Java Jsoup网页抓取   java在线程内创建一个对象,而true条件具有相同的引用   java如何根据空格数拆分字符串   java新的安卓 studio更新中的配置文件“app”是什么?   java在将ArrayList写入/读取到文件时出现奇怪的问题   java Reg替换文本块第一次出现+最后一次出现   java当我单击任何RecyclerView列表项时,如何在MainActivity的EditText中显示特定的单击项?   JAVA XML删除节点仅删除第一个外观   java如何在数组中查找特定值   java SVG/矢量图形对象布尔运算(并集、交集、减法)   java在Android中创建线程需要多长时间   尝试从JBOSS联系Oracle LDAP服务器时发生java连接重置异常   java基于参数获取特定的实现实例   使用java就地修改文件内容   java MonetaryException:未加载MonetaryAmountsSingletonSpi   java接受用户的不同输入并使其触发完全相同的代码段的最短方法是什么   Spring 3.2.8应用程序中未找到java HTTP 404错误