FairLearn 中的 API (一)

前言

Fairlearn 是一个旨在帮助数据科学家提高人工智能系统公平性的开源项目。目前国内并没有相关教程来讲解这个库的使用方式,所以笔者用一系列博客尽可能详细地教学 Fairlearn 库的使用方法。「在官网教程的基础上加入自己的个人见解。」

Fairlearn 官网

本篇博客是此系列的第二篇,接下来将用五篇博客来详解 FairLearn 中的 API。本篇的主要内容是 Fairlearn 中内置的数据集。

FairLearn 中内置了三个数据集,UCI adult,Bank Marketing 和 Boston House。

1. UCI Adult

**简介:**UCI adult 是一个用于预测公民年收入是否大于 50K 美元的数据集。

**导入数据集:**导入数据集需要用到 fairlearn.datasets 包,具体代码如下

from fairlearn import datasets
adult = datasets.fetch_adult(cache=True, data_home=None, as_frame=False, return_X_y=False)

1.1 fetch_adult() 的参数

通过 fetch_adult() 方法就能获取 UCI Adult 数据集,接下来我们看看 fetch_adult() 的参数。

  • cache:布尔型,默认为 True,下载数据集时是否使用缓存。
  • data_homeString 类型,默认为 None,用于指定下载数据集的缓存地址,所有的数据默认存在 ~/.fairlearn-data 目录下。
  • as_frame:布尔型,默认为 False,下载的数据是否是 Pandas DataFrame 类型。
  • return_X_y:布尔型,默认为 False。如果为 True,返回的数据只包含数据和标签两部分。即data.datadata.target

1.2 fetch_adult() 的返回值

看完了 fetch_adult() 的参数,我们再来看看它的返回值,返回值由四部分组成:

  • data:数据。
  • target:标签。
  • feature_names:特征名。
  • DESCRString 型,对数据集的描述。

2. Bank Marketing

**简介:**Bank Marketing 是一个用来预测客户购买理财产品成功率的数据集。

导入数据集的具体代码如下:

bank = datasets.fetch_bank_marketing(cache=True, data_home=None, as_frame=False, return_X_y=False)

可以看到,该数据集的获取与前者的差别只是函数名的不同。fetch_bank_marketing() 方法的参数和返回值与 fetch_adult() 一致

3. Boston House

简介:波士顿房价数据集是机器学习中的一个经典数据集,通过一些列特征来预测波士顿地区的房价。但鲜为人知的是该数据集也是一个非公平数据集

导入数据集的具体代码如下:

boston = datasets.fetch_boston(cache=True, data_home=None, as_frame=False, return_X_y=False, warn=True

可以看到 fetch_boston() 方法中多了一个 warn 参数。该参数是布尔类型,默认为 True。当该参数为 True 时,会抛出一个警告来提示使用者该数据集是不公平的。

你可能感兴趣的:(机器学习公平性)