日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

聯邦預處理

更新時間:

本文介紹了聯邦預處理場景中的 API 及示例。

重要

本文涉及 API 中所有的占位符,例如 "$df0",必須包含單引號或雙引號。

缺失值填充

函數路徑

fascia.biz.preprocessing.fillna

函數定義

def fillna(fed_df: HDataFrame, columns: List[str] = None,
           value=None, strategy=None) -> Tuple[HDataFrame, FillingRule]:

請求參數

參數

類型

描述

fed_df

HDataFrame

待處理的聯邦表

columns

List

要進行填充的列。如果為 None,則默認對所有列進行填充。默認為 None。

value

Scalar/Dict

指定要填充的值。默認為 None。

strategy

String

支持 mean、min 和 max 三種取值。若已經指定 value 參數,則忽略填充策略。若沒有指定 value 參數,則必須指定填充策略。默認為 None。

返回值定義

返回內容為代碼中用戶指定輸出的內容,通常是經過特征處理的聯邦表和特征處理規則。

歸一化

函數路徑

fascia.biz.preprocessing.min_max_normal

函數定義

def min_max_normal(fed_df: HDataFrame, 
                   columns: List[str] = None,
                   min_max_scaler: MinMaxScaler = None) -> Tuple[HDataFrame, MinMaxNormalRule]:

請求參數

參數

類型

是否必選

描述

fed_df

HDataFrame

聯邦表

columns

List

需要進行歸一化處理的特征序列。

min_max_scaler

sklearn.preprocessing.MinMaxScaler

指定需要使用的 sklearn.preprocessing.MinMaxScaler。默認為 None。

返回值定義

返回內容為歸一化后的聯邦表和歸一化規則。對特征做歸一化處理后,最小值被線性映射到 0,最大值被線性映射到 1。如果最大值和最小值相同,則所有值都被映射到 0。

獨熱編碼

函數路徑

fascia.biz.preprocessing.onehot

函數定義

def onehot(fed_df: HDataFrame, 
           columns: List[str] = None,
           onehot_encoder: OneHotEncoder = None) -> Tuple[HDataFrame, OneHotRule]:

請求參數

參數

類型

是否必選

描述

fed_df

HDataFrame

聯邦表

columns

List

需要進行歸一化處理的特征序列。

onehot_encoder

sklearn.preprocessing.OneHotEncoder

指定需要使用的 sklearn.preprocessing.OneHotEncoder。默認為 None。

返回值定義

返回內容為獨熱編碼后的聯邦表和獨熱編碼規則。在獨熱編碼操作中,處理后的特征名格式為 <SOURCE>_<SEQUENCE>,其中 <SOURCE> 為源特征,<SEQUENCE> 為序號。

標簽編碼

標簽編碼操作是按照值順序,將標簽編碼成類似 0,1,2,......的數值。

函數路徑

fascia.biz.preprocessing.encode_label

函數定義

def encode_label(fed_df: HDataFrame, 
                 label: str, 
                 new_label: str, 
                 remove_label: bool = True,
                 label_encoder: LabelEncoder = None) -> Tuple[HDataFrame, LabelEncodingRule]

請求參數

參數

類型

是否必選

描述

fed_df

HDataFrame

聯邦表

label

String

需要進行編碼的標簽名

new_label

String

生成的新編碼標簽名

remove_label

Bool

返回結果是否刪除待編碼的標簽。默認為 True。

label_encoder

sklearn.preprocessing.LabelEncoder

指定需要使用的 sklearn.preprocessing.LabelEncoder。默認為 None。

返回值定義

返回內容為標簽編碼后的聯邦表和標簽編碼規則。

離散化

離散化是對特征進行離散化處理,目前僅支持等寬分桶。

函數路徑

fascia.biz.preprocessing.discretize

函數定義

def discretize(fed_df: HDataFrame, 
               columns: List[str] = None,
               n_bins=5, 
               strategy='uniform', 
               discretizer: KBinsDiscretizer=None) -> Tuple[HDataFrame, DiscretizationRule]:

請求參數

參數

類型

是否必選

描述

fed_df

HDataFrame

聯邦表

columns

List

需要進行離散化處理的特征序列。默認為 None。

n_bins

Integer

分桶數目。默認為 5。

strategy

String

分桶策略。目前僅支持 uniform 策略,即等寬分桶。默認為 uniform。

discretizer

sklearn.preprocessing.KBinsDiscretizer

指定需要使用的 sklearn.preprocessing.KBinsDiscretizer。默認為 None。

返回值定義

返回內容為離散化處理后的聯邦表和離散化規則。

DRGs 文本預處理

函數路徑

fascia.biz.preprocessing.drgs_text_prerocessing

函數定義

def drgs_text_prerocessing(
        fed_df: HDataFrame,
        columns: List[str],
        tokenizer: FedTokenizer = None,
        unbroken_tokenizer: FedTokenizer = None) -> Tuple[HDataFrame, DrgsTextRule]:

請求參數

參數

類型

是否必選

描述

fed_df

HDataFrame

聯邦表

columns

List

需要進行離散化處理的特征序列。

tokenizer

tensorflow.keras.preprocessing.text.Tokenizer

指定 tokenizer。默認為 None。

unbroken_tokenizer

tensorflow.keras.preprocessing.text.Tokenizer

指定整詞處理的 tokenizer。默認為 None。

返回值定義

返回內容為文本預處理之后的聯邦表和文本處理規則。處理后的特征名格式為 text_preprocess_<SEQUENCE>,其中 <SEQUENCE> 為序號。

保存預處理規則信息

函數路徑

fascia.biz.api.preprocessing.save_preprocessing_rule

函數定義

def save_preprocessing_rule(
        rules: List[PreprocessingRule],
        uid: str, 
        parties: List[Union[str, Party]],
        file_uri: Union[str, Dict] = None):

請求參數

參數

類型

是否必選

描述

rules

List

預處理規則表

uid

String

用來保存生成的預處理信息,可以通過載入此信息后進行相同的預處理操作的應用。

parties

List

關聯指定參與方和預處理信息綁定。該信息通常可以從返回的聯邦表屬性中獲取。

file_uri

String/Dict

是否要指定保存的文件路徑,格式為 <ID: PATH>,ID 為參與方 ID,Path 為文件路徑。文件路徑應為絕對路徑。若為 None,則將使用 /home/admin/agent/data/dataset/feddataframe/<UID>.csv 作為默認路徑。默認為 None。

加載預處理規則

函數路徑

fascia.biz.api.preprocessing.load_preprocessing_rule

函數定義

def load_preprocessing_rule(rule_desc) -> List[PreprocessingRule]:

請求參數

rule_desc:保存預處理信息后得到的預處理規則,對應輸入配置里的預處理規則占位符。

返回值定義

返回內容為預處理規則列表。

應用預處理規則

應用預處理規則是對聯邦表按照預處理信息進行預處理。

函數路徑

fascia.biz.api.preprocessing.apply_preprocessing_rule

函數定義

def apply_preprocessing_rule(fed_df: HDataFrame, 
                             rules: List[PreprocessingRule]) -> HDataFrame:

請求參數

參數

類型

是否必選

描述

fed_df

HDataFrame

聯邦表

rules

List

讀取預處理規則得到的規則列表

返回值定義

在返回內容為預處理后的聯邦表。

預處理示例

以下是聯邦表預處理示例。

from fascia.biz.api.dataframe import read_fed_table, save_fed_dataframe
from fascia.biz.api.preprocessing import save_preprocessing_rule
from fascia.biz.preprocessing import (
    fillna,
    min_max_normal,
    encode_label,
)

# 讀取聯邦表
fed_df0 = read_fed_table('$df0')

# 預處理
fed_df1, filling_rule = fillna(fed_df0, columns=['sepal_length', 'sepal_width', 'petal_length', 'petal_width'], strategy='mean')
fed_df2, normal_rule = min_max_normal(fed_df1, columns=['sepal_length', 'sepal_width', 'petal_length', 'petal_width'])
fed_df3, label_rule = encode_label(fed_df2, label='class', new_label='label')

# 存儲預處理后的聯邦表
save_fed_dataframe(fed_df3, '$output0')

# 預處理規則保存
save_preprocessing_rule([filling_rule, normal_rule, label_rule], '$rule_id', fed_df3.parties)

預處理規則應用示例

以下是聯邦表預處理規則應用示例。

from fascia.biz.api.dataframe import read_fed_table, save_fed_dataframe
from fascia.biz.api.preprocessing import (
    load_preprocessing_rule,
    apply_preprocessing_rule,
    )

#加載預處理規則
rules = load_preprocessing_rule('$rule')

#執行預處理
fed_df = read_fed_table('$df0')
applied_df = apply_preprocessing_rule(fed_df, rules)
save_fed_dataframe(applied_df, '$output0')