공정성 평가를 계산하는 데 사용되는 개념을 이해합니다
편향성 계산 방법
공정성 모니터의 알고리즘은 페이로드 로깅 테이블에 있는 마지막 N
레코드를 사용하여 시간 단위로 편향성을 계산하며, N
값은 공정성 모니터를 구성할 때 지정합니다. 알고리즘은 변동이라고 하는 메소드를 적용하여 데이터에서 예상 결과의 차이를 평가합니다.
섭동은 기능의 값을 참조 그룹에서 모니터된 그룹으로 변경하거나 그 반대로 변경합니다. 섭동된 데이터는 작동을 평가하기 위해 모니터로 전송됩니다. 이 알고리즘은 페이로드 테이블의 마지막 N
레코드와 변동된 데이터에 대한 모델의 동작을 확인하여 모델 결과가 편향의 존재를 표시하는지 여부를 결정합니다.
모니터되는 그룹에 대한 선호 결과의 백분율이 공정성 모니터를 구성할 때 지정하는 임계값에 의해 참조 그룹에 대한 선호 결과의 백분율보다 작은 경우 모델이 편향됩니다.
공정성 값은 100%보다 클 수 있습니다. 이 계산은 모니터되는 그룹이 참조 그룹보다 더 좋은 결과를 수신했음을 의미합니다. 또한 새 스코어링 요청이 전송되지 않으면 공정성 값이 일정하게 유지됩니다.
균형 있는 데이터 및 완전한 상등
밸런스 데이터 세트의 경우 다음 개념이 적용됩니다.
- 완전한 상등 값을 판별하기 위해 참조 그룹 트랜잭션은 모든 모니터된 그룹 트랜잭션의 모니터된 기능 값을 모든 참조 그룹 값으로 변경하여 합성됩니다. 새로 합성된 이 트랜잭션은 참조 그룹 트랜잭션 세트에 추가되어 모델에서 평가됩니다.
예를 들어, 모니터되는 기능이 SEX
이고 모니터되는 그룹이 FEMALE
인 경우 모든 FEMALE
트랜잭션이 MALE
트랜잭션으로 복제됩니다. 다른 기능 값은 변경되지 않고 유지됩니다. 이러한 새 합성 MALE
트랜잭션은 원래 MALE
참조 그룹 트랜잭션 세트에 추가됩니다.
- 선호하는 결과의 백분율은 새 참조 그룹에서 결정됩니다. 이 백분율은 모니터된 그룹에 대한 완벽한 공정성을 나타냅니다.
- 모니터된 그룹 트랜잭션은 모든 참조 그룹 트랜잭션의 참조 기능 값을 모니터된 그룹 값으로 변경해서도 합성됩니다. 이 새로 합성된 트랜잭션은 모니터된 그룹 트랜잭션 세트에 추가되어 모델에서 평가됩니다.
모니터되는 기능이 SEX
이고 모니터되는 그룹이 FEMALE
이면, 모든 MALE
트랜잭션이 FEMALE
트랜잭션으로 중복됩니다. 다른 기능 값은 변경되지 않고 유지됩니다. 이러한 새 합성된 FEMALE
트랜잭션은 원래 FEMALE
모니터 대상 그룹 트랜잭션 세트에 추가됩니다.
완전한 등식 계산
다음의 수학 공식이 완정한 상등을 계산하는 데 사용됩니다.
Perfect equality = Percentage of favorable outcomes for all reference transactions,
including the synthesized transactions from the monitored group
예를 들어, 모니터되는 기능이 SEX
이고 모니터되는 그룹이 FEMALE
인 경우 다음 공식은 완전한 등식에 대한 공식을 표시합니다.
Perfect equality for `SEX` = Percentage of favorable outcomes for `MALE` transactions,
including the synthesized transactions that were initially `FEMALE` but changed to `MALE`
공정성 평가를 구성할 때 모델의 공정성을 평가하는 일련의 메트릭을 생성할 수 있습니다. 공정성 메트릭을 사용하여 모델이 편향된 결과를 생성하는지 여부를 판별할 수 있습니다.
예측 열의 데이터 유형 변환
공정성 모니터의 경우, 예측 열은 예측 레이블이 카테고리형인 경우에도 정수의 숫자 값만 허용합니다. 예측 열 데이터 유형의 변환이 가능합니다.
예를 들어, 훈련 데이터에는 "대출 거부됨", "대출 부여됨" 과 같은 클래스 레이블이 있을 수 있습니다. IBM watsonx.ai 런타임 점수 엔드포인트에서 반환되는 예측 값은 "0.0", "1.0" 등의 값을 갖습니다. 스코어링 엔드포인트에도 예측에 대한 텍스트 표현을 포함하는 선택적 열이 있습니다. 예를 들어, prediction=1.0인 경우 predictionLabel 열에 "Loan Granted" 값이 있을 수 있습니다. 이런 열이 사용 가능하고 모델에 대한 선호 및 비선호 출력을 구성하려면 문자열 값 "Loan Granted" 및 "Loan Denied"를 지정하십시오. 이런 열을 사용할 수 없으면 선호 및 비선호 클래스에 대해 1.0, 0.0의 정수/배정도 값을 지정해야 합니다.
IBM watsonx.ai Runtime에는 출력 스키마라는 개념이 있으며, 이는 IBM watsonx.ai Runtime 채점 엔드포인트의 출력 스키마와 다양한 열에 대한 역할을 정의합니다. 역할은 예측 값을 포함하는 열, 예측 확률 및 클래스 레이블 값 등을 포함하는 열을 식별하는 데 사용됩니다. 출력 스키마는 모델 빌더를 사용하여 작성된 모델에 대해 자동으로 설정됩니다. IBM watsonx.ai 런타임 Python 클라이언트를 사용하여 설정할 수도 있습니다. 사용자는 예측의 문자열 표시를 포함하는 열을 정의하기 위해 출력 스키마를 사용할 수 있습니다. 열에 대한 modeling_role
을(를) 'decoded-target'으로 설정하십시오. IBM watsonx.ai 런타임 Python 클라이언트에 대한 설명서는 https://ibm.github.io/watsonx-ai-python-sdk/core_api.html#repository 에서 확인할 수 있습니다. 출력 스키마를 이해하려면 "OUTPUT_DATA_SCHEMA"를 검색합니다. 사용할 API 호출은 OUTPUT_DATA_SCHEMA를 매개변수로 승인하는 store_model
호출입니다.
100%보다 큰 공정성 점수 해석
공정성 구성에 따라 공정성 스코어는 100 퍼센트를 초과할 수 있습니다. 모니터하는 그룹이 참조 그룹에 비해 상대적으로 더 "공정한" 출력임을 나타냅니다. 기술적으로 모델은 정반대로 불공평하다는 의미입니다.
자세한 정보
상위 주제: 공정성 모니터 구성