본 문서의 가장 정확하고 최신 버전은 영어(원본) 버전을 참조하십시오. IBM은 자동으로 기계 번역된 컨텐츠를 사용하여 발생하는 피해 또는 손실에 대해 책임을 지지 않습니다.
Python 용 assetframe-lib를 사용하여 기능 그룹 관리 (베타)
마지막 업데이트 날짜: 2024년 11월 28일
Python 용 assetframe-lib를 사용하여 기능 그룹 관리 (베타)
' assetframe-lib '을 사용하여 데이터 자산의 기능 그룹 정보를 생성하고, 보고, 편집할 수 있는 watsonx.ai Studio 노트북을 사용할 수 있습니다.
기능 그룹은 데이터 자산의 열에 대한 추가 메타데이터를 정의하여 다운스트림 watsonx.ai 런타임 작업에서 사용할 수 있습니다. UI에서 기능 그룹 사용에 대한 자세한 정보는 기능 그룹 관리 를 참조하십시오.
assetframe-lib 및 ibm-watson-studio-lib 라이브러리 설정
Copy link to section
Python ' assetframe-lib 라이브러리는 사전 설치되어 있으며 watsonx.ai Studio의 노트북에서 직접 가져올 수 있습니다. 그러나 ibm-watson-studio-lib 라이브러리에 의존합니다. 다음 단계에서는 두 라이브러리를 모두 설정하는 방법에 대해 설명합니다.
사용자의 노트북에 프로젝트 토큰을 삽입하려면 다음을 수행하십시오.
노트북 도구 모음에서 추가 아이콘을 클릭한 후 프로젝트 토큰 삽입을 클릭하십시오.
프로젝트 토큰이 존재하면 다음 정보와 함께 셀이 노트북에 추가됩니다.
from ibm_watson_studio_lib import access_project_or_space
wslib = access_project_or_space({"token":"<ProjectToken>"})
Copy to clipboard클립보드에 복사됨
<ProjectToken> 는 프로젝트 토큰의 값입니다.
프로젝트 토큰이 없다는 메시지가 표시되면 메시지의 링크를 클릭하여 프로젝트 토큰을 작성할 수 있는 프로젝트의 액세스 제어 페이지로 경로 재지정됩니다. 프로젝트 토큰을 작성할 수 있어야 합니다.
프로젝트 토큰을 작성하려면 다음을 수행하십시오.
관리 탭에서 액세스 제어 페이지를 선택하고 액세스 토큰 아래에서 새 액세스 토큰을 클릭하십시오.
이름을 입력하고, 프로젝트의 편집기 역할을 선택한 후 토큰을 작성하십시오.
노트북으로 돌아가 노트북 도구 모음에서 추가 아이콘을 클릭한 후 프로젝트 토큰 삽입을 클릭하십시오.
assetframe-lib 를 가져와서 작성된 ibm-watson-studio-lib 인스턴스로 초기화하십시오.
from assetframe_lib import AssetFrame
AssetFrame._wslib = wslib
Copy to clipboard클립보드에 복사됨
assetframe-lib 함수 및 메소드
Copy link to section
assetframe-lib 라이브러리는 다음과 같은 방법으로 그룹화된 함수 및 메소드 세트를 표시합니다.
자산 프레임은 기존 데이터 자산 또는 pandas DataFrame에서 기능 그룹 메타데이터를 정의하는 데 사용됩니다. 각 자산에 대해 정확히 하나의 기능 그룹을 가질 수 있습니다. 판다 DataFrame, 에셋 프레임을 만들면 프로젝트에 데이터 에셋으로 판다 DataFrame 기능 그룹 메타데이터와 함께 저장할 수 있습니다.
name: (필수) 자산 프레임의 이름입니다. 이 이름은 이후 단계에서 프로젝트에 기능 그룹을 저장하는 경우 데이터 자산의 이름으로 사용됩니다.
dataframe: (필수) 기능 그룹 정보와 함께 저장할 pandas DataFrame 입니다.
create_default_features: (선택사항) 데이터 프레임의 모든 열에 대한 기능을 작성합니다.
판다 DataFrame: 에셋 프레임을 만드는 예시입니다:
# Create an asset frame from a pandas DataFrame and set# the name of the asset frame.
af = AssetFrame.from_pandas(dataframe=credit_risk_df, name="Credit Risk Training Data")
Copy to clipboard클립보드에 복사됨
기능 작성, 검색 및 제거
Copy link to section
이 기능은 다운스트림 watsonx.ai 런타임 작업에서 사용할 수 있는 메타데이터를 정의합니다. 데이터 세트의 열마다 하나의 기능을 작성할 수 있습니다.
다음 함수 중 하나를 사용하여 자산 프레임에서 열을 작성, 검색 또는 제거할 수 있습니다.
add_feature(column_name, role='Input')
이 기능은 지정된 역할의 자산 프레임에 새 기능을 추가합니다.
매개변수:
column_name: (필수) 기능을 작성할 열의 이름입니다.
role: (선택사항) 기능의 역할입니다. 기본값은 입력입니다.
유효한 역할은 다음과 같습니다.
입력: 기계 학습 모델의 입력
목표: 예측 모델의 목표
ID: 데이터 세트에 있는 행의 ID입니다.
create_default_features()
이 함수는 데이터 세트의 모든 열에 대한 기능을 작성합니다. 기능의 역할은 입력으로 기본 설정됩니다.
get_features()
이 함수는 자산 프레임의 모든 기능을 검색합니다.
get_feature(column_name)
이 함수는 지정된 열 이름의 기능을 검색합니다.
매개변수:
column_name: (필수) 기능을 작성할 열의 문자열 이름입니다.
get_features_by_role(role)
이 함수는 지정된 역할을 가진 데이터 프레임의 모든 기능을 검색합니다.
매개변수:
role: (필수) 기능이 보유해야 하는 역할입니다. 입력, 대상 또는 ID일 수 있습니다.
remove_feature(feature_or_column_name)
이 기능은 자산 프레임에서 기능을 제거합니다.
매개변수:
feature_or_column_name: (필수) 기능 또는 기능을 제거할 열의 이름입니다.
데이터 세트의 모든 열에 대한 기능을 작성하고 추가 스펙을 위해 해당 열 중 하나를 검색하는 방법을 표시하는 예제:
# Create features for all columns in the data set and retrieve a column# for further specifications.
af.create_default_features()
risk_feat = af.get_feature('Risk')
Copy to clipboard클립보드에 복사됨
기능 속성 지정
Copy link to section
기능은 다운스트림 watsonx.ai 런타임 작업에서 사용할 수 있는 열에 대한 추가 메타데이터를 지정합니다.
다음 함수를 사용하여 기능이 정의된 열을 검색할 수 있습니다.
get_column_name()
이 함수는 기능이 정의된 열 이름을 검색합니다.
역할
Copy link to section
역할은 watsonx.ai 런타임 작업에서 의도된 기능의 용도를 지정합니다.
유효한 역할은 다음과 같습니다.
Input: 이 기능은 watsonx.ai 런타임 모델에 대한 입력으로 사용할 수 있습니다.
Identifier: 이 기능은 데이터 세트의 행을 고유하게 식별합니다.
Target: 이 기능은 예측 알고리즘에서 대상으로 사용할 수 있습니다.
현재 기능에는 정확히 하나의 역할만 있어야 합니다.
다음 방법을 사용하여 역할에 대해 작업할 수 있습니다.
set_roles(roles)
이 메소드는 기능의 역할을 설정합니다.
매개변수:
roles : (필수) 사용할 역할입니다. 단일 문자열 또는 문자열 배열로.
get_roles()
이 메소드는 기능의 모든 역할을 리턴합니다.
기능 가져오기 및 역할 설정을 보여주는 예제:
# Set the role of the feature 'Risk' to 'Target' to use it as a target in a prediction model.
risk_feat = af.get_feature('Risk')
risk_feat.set_roles('Target')
Copy to clipboard클립보드에 복사됨
설명
Copy link to section
기능에 대한 선택적 설명입니다. 기본값은 None입니다.
다음 메소드를 사용하여 설명에 대해 작업할 수 있습니다.
set_description(description)
이 메소드는 기능에 대한 설명을 설정합니다.
매개변수:
description: (필수) 문자열 또는 None (설명을 제거하는 경우).
get_description()
이 메소드는 기능에 대한 설명을 리턴합니다.
유리하고 불리한 결과에 대한 공정성 정보
Copy link to section
Target 역할이 있는 기능에 대해 선호 및 비선호 레이블을 지정할 수 있습니다.
다음 방법을 사용하여 유리하거나 불리한 레이블을 설정하고 검색할 수 있습니다.
선호하는 결과
Copy link to section
다음 방법을 사용하여 선호 레이블을 설정하고 가져올 수 있습니다.
set_favorable_labels(labels)
이 방법은 지형에 적합한 레이블을 설정합니다.
매개변수:
labels: (필수) 레이블이 있는 문자열 또는 문자열 목록입니다.
get_favorable_labels()
이 메소드는 지형의 선호 레이블을 리턴합니다.
비선호 결과
Copy link to section
다음 메소드를 사용하여 불리한 레이블을 설정하고 가져올 수 있습니다.
set_unfavorable_labels(labels)
이 방법은 기능에 대해 적합하지 않은 레이블을 설정합니다.
매개변수:
labels: (필수) 레이블이 적절하지 않은 문자열 또는 문자열 목록입니다.
get_unfavorable_labels()
이 메소드는 기능의 비호의적 레이블을 가져옵니다.
선호 및 비선호 레이블 설정을 표시하는 예제:
# Set favorable and unfavorable labels for the target feature 'Risk'.
risk_feat = af.get_feature('Risk')
risk_feat.set_favorable_labels("No Risk")
risk_feat.set_unfavorable_labels("Risk")
Copy to clipboard클립보드에 복사됨
모니터되는 그룹 및 참조 그룹에 대한 공정성 정보
Copy link to section
데이터의 일부 열은 불공정하게 편향되는 경향이 있을 수 있습니다. 모니터링 그룹과 참조 그룹을 지정하여 watsonx.ai 런타임 작업에서 추가로 사용할 수 있습니다. 역할이 Input인 기능에 대해 지정할 수 있습니다.
대괄호와 시작 및 종료 값이 있는 문자열로 단일 값 또는 숫자 값 범위를 지정할 수 있습니다 (예: [0,15]).
다음 메소드를 사용하여 모니터되는 그룹 및 참조 그룹을 설정하고 검색할 수 있습니다.
set_monitored_groups(groups)
이 메소드는 기능에 대해 모니터된 그룹을 설정합니다.
매개변수:
groups: (필수) 모니터된 그룹이 있는 문자열 또는 문자열 목록입니다.
get_monitored_groups()
이 메소드는 기능의 모니터된 그룹을 가져옵니다.
set_reference_groups(groups)
이 메소드는 기능에 대한 참조 그룹을 설정합니다.
매개변수:
groups: (필수) 참조 그룹이 있는 문자열 또는 문자열 목록입니다.
get_reference_groups()
이 메소드는 기능의 참조 그룹을 가져옵니다.
모니터되는 그룹 및 참조 그룹 설정을 표시하는 예제:
# Set monitored and reference groups for the features 'Sex' and 'Age'.
sex_feat = af.get_feature("Sex")
sex_feat.set_reference_groups("male")
sex_feat.set_monitored_groups("female")
age_feat = af.get_feature("Age")
age_feat.set_monitored_groups("[0,25]")
age_feat.set_reference_groups("[26,80]")
Copy to clipboard클립보드에 복사됨
값 설명
Copy link to section
값 설명을 사용하여 데이터의 열 값에 대한 설명을 지정할 수 있습니다.
다음 메소드를 사용하여 설명을 설정하고 검색할 수 있습니다.
set_value_descriptions(value_descriptions)
이 메소드는 기능에 대한 값 설명을 설정합니다.
매개변수:
value_descriptions: (필수) 다음 형식의 Pyton 사전 또는 사전 목록: {'value': '<value>', 'description': '<description>'}
get_value_descriptions()
이 메소드는 기능의 모든 값 설명을 리턴합니다.
get_value_description(value)
이 메소드는 지정된 값에 대한 값 설명을 리턴합니다.
매개변수:
value: (필수) 값 설명을 검색할 값입니다.
add_value_description(value, description)
이 메소드는 기능에 대한 값 설명 목록에 제공된 값 및 설명이 있는 값 설명을 추가합니다.
매개변수:
value: (필수) 값 설명의 문자열 값입니다.
description: (필수) 값 설명의 문자열 설명입니다.
remove_value_description(value)
이 메소드는 기능의 값 설명 목록에서 지정된 값이 있는 값 설명을 제거합니다.
매개변수:
value: (필수) 제거할 값 설명의 값입니다.
값 설명을 설정하는 방법을 보여주는 예제:
plan_feat = af.get_feature("InstallmentPlans")
val_descriptions = [
{'value': 'stores',
'description': 'customer has additional business installment plan'},
{'value': 'bank',
'description': 'customer has additional personal installment plan'},
{'value': 'none',
'description': 'customer has no additional installment plan'}
]
plan_feat.set_value_descriptions(val_descriptions)
Copy to clipboard클립보드에 복사됨
레시피
Copy link to section
레시피를 사용하여 기능이 작성된 방법을 설명할 수 있습니다 (예: 수식 또는 코드 스니펫 사용). 기본값은 None입니다.
다음 메소드를 사용하여 레시피에 대해 작업할 수 있습니다.
set_recipe(recipe)
이 메소드는 기능의 레시피를 설정합니다.
매개변수:
recipe: (필수) 레시피를 제거하는 문자열 또는 없음입니다.
get_recipe()
이 메소드는 기능의 레시피를 리턴합니다.
태그
Copy link to section
태그를 사용하여 기능에 추가 레이블 또는 정보를 첨부할 수 있습니다.
다음 메소드를 사용하여 태그에 대해 작업할 수 있습니다.
set_tags(tags)
이 메소드는 기능의 태그를 설정합니다.
매개변수:
tags: (필수) 단일 문자열 또는 문자열 배열로.
get_tags()
이 메소드는 기능의 모든 태그를 리턴합니다.
데이터 미리 보기
Copy link to section
공정성 정보와 같은 기능에 대한 추가 정보를 사용하여 데이터 자산 또는 pandas DataFrame 의 데이터를 미리 볼 수 있습니다.
데이터는 기능 역할, 설명 또는 레시피에 대한 선택적 헤더 정보와 함께 pandas DataFrame 과 같이 표시됩니다. 공정성 정보는 유리하거나 불리한 레이블, 모니터된 그룹 및 참조 그룹에 대한 색상으로 표시됩니다.
이 때 데이터 자산에 대해 최대 100행의 샘플 데이터를 검색할 수 있습니다.
데이터를 미리 보려면 다음 기능을 사용하십시오.
head(num_rows=5, display_options=['role'])
이 함수는 pandas DataFrame에 있는 데이터 세트의 처음 num_rows 행을 리턴합니다.
매개변수:
num_rows : (선택사항) 검색할 행 수입니다.
display_options: (선택사항) 열 헤더는 데이터 세트의 열에 대한 추가 정보를 표시할 수 있습니다.
기능 속성을 표시하려면 다음 옵션을 사용하십시오.
role: 이 열의 기능 역할을 표시합니다.
description: 이 열의 기능에 대한 설명을 표시합니다.
recipe: 이 열에 대한 기능의 레시피를 표시합니다.
공정성 정보 가져오기
Copy link to section
자산 프레임에 있는 모든 기능의 공정성 정보를 Python 사전으로 검색할 수 있습니다. 여기에는 보호된 속성으로 모니터되거나 참조 그룹 (또는 둘 다) 을 포함하는 모든 기능과 레이블이 좋거나 좋지 않은 대상 기능이 포함됩니다.
공정성 정보가 있는 열의 데이터 유형이 숫자인 경우 레이블 및 그룹의 값은 가능한 경우 숫자 값으로 변환됩니다.