0 / 0
영어 버전 문서로 돌아가기
간접 편향에 대한 공정성 평가 구성하기
마지막 업데이트 날짜: 2024년 10월 25일
간접 편향에 대한 공정성 평가 구성하기

특정 조건에서는 모델 배포에 대한 직접 편향뿐만 아니라 간접 편향도 고려하도록 공정성 평가를 구성할 수 있습니다.

간접 편향성은 데이터 세트의 한 기능을 사용하여 다른 기능을 대신할 수 있을 때 발생합니다. 예를 들어, 레이스가 알려진 기능이 아닌 데이터 세트에서 우편 번호와 같은 기능은 종종 레이스에 가깝게 추적할 수 있습니다. 편향성에 대해 우편번호 기능을 평가하는 것은 간접 편향성을 발견하는 방법입니다. 다른 예에서, 고객 구매 이력은 성별과 밀접하게 대응할 수 있다. 따라서 인종, 나이 또는 성별과 같은 일반적인 보호 속성을 포함하지 않는 예측 모델도 편향된 결과를 표시할 수 있습니다.

간접 편향은 다음 조건이 충족될 때 분석됩니다:

  • 상관을 찾으려면 데이터 세트가 충분히(4000 레코드 이상) 커야 합니다.
  • 훈련 데이터가 메타 필드를 포함해야 합니다. 데이터 필드의 서브세트에서 모델을 훈련해야 합니다. 이들 추가 필드인 메타 필드는 간접 편향성을 판별하기 위한 것입니다. (메타 필드를 포함하지만 모델 훈련에는 사용하지 마십시오.)
  • 페이로드 로깅이 메타 필드를 포함하고 공정성 모니터가 구성되기 전에 실행되어야 합니다. 메타 필드를 업로드하려면 이 방법을 사용해야 합니다. 간접 편향성에 대한 페이로드 로깅은 1) 값을 갖는 교육 기능 및 2) 값을 갖는 메타 필드의 두 가지 유형의 입력이 필요합니다.
  • 공정성 모니터를 구성할 때 모니터할 추가 필드를 선택하십시오.

간접 편향성을 위한 일반적 작업흐름

그러나 모델에 다른 열이 필요한 사전 프로덕션 및 프로덕션 모델에 대한 간접 편향성을 판별할 수 있습니다. 사전 프로덕션 모델을 평가하는 데 사용되는 테스트 데이터와 사전 프로덕션 또는 프로덕션 모델을 평가하는 데 사용되는 피드백 데이터는 메타 열의 사용에서 다릅니다. 메타 열은 사전 프로덕션을 위한 테스트 데이터에 필요하며 사전 프로덕션 또는 프로덕션 모델에 사용되는 피드백 데이터에 포함될 수 없습니다. 전형적인 작업흐름은 다음 단계를 포함할 수 있습니다.

  1. 기능 열과 메타 열을 모두 포함하는 훈련 데이터를 작성하십시오. 메타 열은 모델을 훈련시키는 데 사용되지 않는 데이터를 포함합니다.
  2. 메타 열을 사용하여 공정성 모니터를 구성합니다.
  3. 사전 프로덕션 중에 기능 열과 메타 열을 둘 다 포함하는 테스트 데이터를 업로드하십시오. 이 테스트 데이터는 테스트 데이터 가져오기 CSV 옵션을 사용하여 업로드해야 합니다.
  4. 사전 프로덕션 중에 간접 편향성 측도를 사용하여 최종 모델에 편향성이 없는지 확인하는 동안 모델의 다른 버전에서 상호 작용할 수 있습니다.
  5. 모델을 프로덕션으로 전송한 후, 피드백 데이터는 어떤 메타 열도 가져서는 안되며 모델을 훈련시키는 데 사용되는 기능 열만 포함해야 합니다.

메타 필드를 갖는 샘플 JSON 페이로드 파일

다음 샘플 파일은 모델을 훈련시키는 데 사용되는 필드와 값을 갖는 JSON 페이로드를 보여줍니다. 간접 편향성 분석에 사용되는 메타 필드와 값도 포함됩니다. 메타 필드는 모델을 훈련시키는 데 사용되지 않으며, 대신 모델의 편향성에 상관시키려는 다양한 종류의 분석을 위해 예약됩니다. 메타 필드는 임의 유형의 데이터일 수 있지만, 대개 성별, 인종 또는 나이 같이 보호되는 속성입니다.

[request_data = {
    "fields": ["AGE", "SEX", "BP", "CHOLESTEROL", "NA", "K"],
    "values": [[28, "F", "LOW", "HIGH", 0.61, 0.026]]
  }

response_data = {
    "fields": ["AGE", "SEX", "BP", "CHOLESTEROL", "NA", "K", "probability", "prediction", "DRUG"],
    "values": [[28, "F", "LOW", "HIGH", 0.61, 0.026, [0.82, 0.07, 0.0, 0.05, 0.03], 0.0, "drugY"]]
  }

request_data = <put your data here>
response_data = <put your data here>

records = [PayloadRecord(request=request_data, response=response_data, response_time=18), 
                PayloadRecord(request=request_data, response=response_data, response_time=12)]

subscription.payload_logging.store(records=records)

메타 값은 배열의 배열 형식이어야 합니다.

"meta": {
"fields": ["age", "race", "sex"],
"values": [
[32, "Black", "Male"]
]
}

자세한 정보

상위 주제: 모델 평가 구성

일반적인 AI 검색 및 응답
이러한 응답은 제품 문서의 컨텐츠를 기반으로 하는 watsonx.ai 의 대형 언어 모델에 의해 생성됩니다. 자세히 알아보기