贝叶斯影响特征提取框架。一个简单的特征提取框架,从不同的数据源提取数据并将其导出为易于共享的格式。

fex的Python项目详细描述


#一个简单的特征提取框架


此任务通常包括查询一个或多个数据库、复杂连接以计算特征(例如,一个患者的不同诊断数,可能分布在多个表上),然后将此过程的结果保存到一个可用于训练模型的平面表中。此平面表必须定期重新计算(例如更改功能后),并且必须在多人之间共享。此外,我们始终希望记录用于计算特定功能集的代码。如果没有这些,我们可能最终会遇到这样的情况:我们有一个可以工作的模型,但是我们不记得我们是如何计算特征来训练它的。fex简化了这个过程。



此模式确保没有未提交的更改,并将从git远程url和最新提交哈希计算的唯一标识符前置到生成的数据文件。请注意,此机制只跟踪对代码的更改,不会注意是否将参数传递给功能提取程序。
*功能提取程序的结果缓存到pickle中,只要特征提取程序的源代码没有更改。
*可以通过运行程序的命令行参数(`--cache path`)指定缓存文件的路径。
*可以在命令行(`--path`)上指定输出CSV文件的路径。
*可以使用运行程序的“---no cache”标志停用缓存。



##quickstart

只需编写一个继承自featureextractor的类并重写其“extract”方法。在某一点上,它应该使用pandas数据帧调用“emit”,这是提取的结果。(在将来,我们可能会将其扩展为允许多次发射,但现在它必须只发射一次。)

然后使用fex runner执行它。

```
/usr/bin/env python
将panda导入为pd
导入fex


类示例feature1(fex.feature extractor):
“第一个示例featureextractor,超级酷。“

def extract(self):
”用自定义逻辑重写方法。


这是一个进行数据提取和转换的地方。

”data={'col1':[42]}
data廑frame=pd.dataframe(data,index=[1])
self.emit(数据帧)

fex.runner.run(examplefeature1())
````

请参见[examples/simple-example.py](examples/simple-example.py)获取稍微复杂一点的示例,您可以直接运行该示例来查看结果。运行“examples/simple-example.py--help”查看所有命令行参数。

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

推荐PyPI第三方库


热门话题
java对来自同一基类的不同对象进行迭代   java打印在JtextArea或JtextPane上   java无法使用Play Core库提供的inapp更新支持更新应用程序   javafxgui中关注点的java分离   onPreferenceChange方法中的java奇怪值   lambda调用包含在Java中可选值的列表中?   servlet中的java int值(无法将字符串转换为int)   尽管有终止表达式,java循环仍不会结束   java是否可以通过编程方式启用远程jmx监视?   java如何创建集合的新实例   如何将自定义Java模块更新为JRE映像   java无法点击Chrome和IE11上的自定义复选框   java Here Android SDK在“无车无车”和“无车无车”街道上导航