一个紧凑的Python迁移学习工具箱。

transfertools的Python项目详细描述


传输工具

transfertools是一个小Python包,包含最近的转移学习算法。 转移学习致力于将信息从一个数据集source domain传输到相关的数据集目标域。在这些域上可以设置一些约束和假设,从而激发不同的算法来进行信息传递。 该软件包包含四种转移学习算法。在

安装

使用以下命令直接从PyPi安装包:

pip install transfertools

或者使用setup.py文件安装包:

^{pr2}$

或者直接从GitHub自身安装:

pip install git+https://github.com/Vincent-Vercruyssen/transfertools.git@master

内容及用途

转移学习的目的是将信息从源域Ds传输到相关的目标域Dt。域由一个具有属性X和标签Y的数据集组成。因此,源域是Ds={{str 1}$Xs,Ys},目标域是Dt={str 1}$Xt,Yt}。基本假设是源域和目标域位于同一个特征空间。 存在不同风格的迁移学习方法。 ^例如,{em1}$Unsupervised transfer学习忽略标签信息,只使用XsXt来确定要传递什么信息。 directed transfer学习使用完整的域Ds和{str 1}$Dt来完成传输。 半监督传输学习使用完整的源域Ds和目标属性{str 1}$Xt来完成传输。在

传输的实际信息也因方法而异。 域适应技术转换源(和目标)域,使它们更紧密地匹配(根据不同的标准),然后组合所有数据点来构造^{str1}$Dcombo。 实例选择技术选择应该传输到目标数据的源数据的子集来构造Dcombo。 传输之后,可以使用Dcombo构造分类器。在

实例选择技术

transfertools包包含两种为异常检测量身定制的实例选择传输技术:

  1. LocIT本地化实例传输)算法以完全无监督的方式工作。它传输Ds中在两个域[1]中具有匹配的本地化分布的实例。该算法还可用于异常检测以外的其他应用。在
  2. CBITcluster-based-instance-transfer)算法以半监督的方式工作。它传输^{str1}$Ds中属于目标数据[2]上定义的集群的实例。在

给定一个源域{{str 1}$Xs,Ys}和目标域{{str 1}$Xt,Yt},算法的应用如下:

fromtransfertools.modelsimportLocIT,CBIT# traintransfor=LocIT()transfor.fit(Xs,Xt)# predictXs_trans=transfor.transfer(Xs)# ... or immediatelyXs_trans=transfor.fit_transfer(Xs,Xt)

域适应技术

transfertools包包含两种实例域适配技术:

  1. CORALCORAL alignment)算法是一种无监督的转移学习技术,它对齐源和目标数据的一阶和二阶统计量[3]。在
  2. TCAtransfer component analysis)算法是一种无监督的转移学习技术,它将源数据和目标数据投影到一个低维子空间[4]。在

给定一个源域{{str 1}$Xs,Ys}和目标域{{str 1}$Xt,Yt},算法将作为fo应用允许:

fromtransfertools.modelsimportTCA,CORAL# traintransfor=CORAL()transfor.fit(Xs,Xt)# predictXs_trans=transfor.transfer(Xs)# ... or immediatelyXs_trans=transfor.fit_transfer(Xs,Xt)

包装结构

转移学习算法位于:transfertools/models/

有关如何使用这些算法的更多示例,请参阅笔记本:transfertools/notebooks/

依赖关系

transfertools包需要安装以下python包:

联系人

请与包的作者联系:vincent.vercruyssen@kuleuven.be

参考文献

[1]Vercruyssen,V.,Meert,W.和J.Davis。(2020)转移学习,通过局部和无监督的实例选择进行异常检测。在纽约举行的第34届AAAI人工智能大会上。待发布

[2]Vercruyssen,V.,Meert,W.,和Davis,J.(2017)$时间序列异常检测的转移学习。见CEUR研讨会论文集,第1924卷,第27-37页。在

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

推荐PyPI第三方库


热门话题
尝试运行JFLAP。戴软呢帽的罐子23。Java正在抛出异常   无引用的java数组布尔复制   hibernate如何在java SE应用程序中使用JPA EntityManager   java如何使用ORMLite在SQLite中持久化JavaFX属性?   java无法将项目部署到GAE   java:谷歌地图维基百科层   java Resultset(getter/setter类)对象在第二次执行时未删除旧值   s中的java struts2:选择列表>请求的列表键“”作为集合/数组/映射/枚举/迭代器类型   java如何在Karaf 4.0.5中获得BaseDao中的entityManager?   java VSCode未从控制台读取西里尔文   java字体。createFromAsset()返回字体的空指针异常   java错误:将Android Studio从0.6.1更新到0.8.9后,没有合适的构造函数