불균형하고 이질적인 부정적인 배경을 가진 일류 차별 분류?


16

{protein} 서열을 특정 클래스 (Neuropeptide hormone 전구체)에 속하는지 분류하기 위해 기존의 감독 된 분류기를 개선하기 위해 노력하고 있습니다.

약 1,150 만 개의 단백질 서열의 배경 ( "알려지지 않은 / 나쁜 주석이 달린 배경")에 대해 약 1,150 개의 알려진 "양성"또는 다양한 속성으로 주석이 달린 약 10 만 개의 검토 된 관련 단백질이 있습니다 (그러나 명시 적으로 주석이 달린 것은 거의 없습니다) "부정적인"방법).

이전의 구현은 이것을 이진 분류 문제로 보았습니다. Positive set = Neuropeptides로 표시된 단백질. 음수 세트 : 대략 비슷한 길이 분포의 나머지 단백질 중에서 1,300 개 샘플 (총)의 무작위 샘플링.

그것은 효과가 있었지만 기계의 차별 능력을 크게 향상시키고 싶습니다 (현재는 무작위로 샘플링 된 여러 음성 세트에서 정확도, CV로 측정 한 AUC, F1 측면에서 약 83-86 %입니다).

내 생각은 : 1)이 멀티 클래스 문제로 만들고, 속성 / 기능적 클래스에 따라 아마도 무작위로 샘플링 된 다른 세트와 함께 2-3 개의 다른 클래스의 단백질을 선택합니다. (여기서 우선 순위는 특성을 정의하는 동안 특성 / 기능이 양의 세트와 유사한 네거티브 세트입니다). 2) 한 수업 학습-좋을 것입니다.하지만 이해합니다. 그것은 이상 탐지를위한 것이며 차별적 접근법보다 성능이 떨어집니다.

*) PU 학습에 대해 들어 보았지만 깔끔하게 들리지만 N00b 프로그래밍이고 기존 구현에 대해 잘 모릅니다. (Python / sci-kit에서 배우십시오).

그렇다면 이론적 POV에서 접근법 1이 의미가 있습니까? 여러 음수 세트를 만드는 가장 좋은 방법이 있습니까? (나는 또한 단순히 "음성"단백질의 거대한 [50K] 선택을 사용할 수 있지만, 서로 매우 매우 다르기 때문에 분류 기가 이들을 하나의 크고 균형이 맞지 않는 혼합으로 얼마나 잘 처리 할 수 ​​있는지 모르겠습니다. ). 감사!


보시다시피, PU 학습에 관한 Wikipedia 기사 에는 이것이 유전자 식별에 적용되는 논문에 대한 참조가 있습니다. 어쩌면 저자에게 그들이 사용한 소프트웨어를 알아 내거나 물어볼 가치가 있습니다.
— Andre Holzner

: 일부 scikit 여기에 학습에 PU 학습에 대한 논의가 stackoverflow.com/questions/25700724/... (A '하나 개의 클래스'지원 벡터 머신을 사용)
— 안드레 HOLZNER

PU 학습은 한 가지 경고에 대한 표준 2 클래스 분류 문제입니다. 분류 정확도가 아니라 곡선 아래 영역을 최적화합니다. Sofia ML 소프트웨어 패키지를 사용하여이를 정확하게 수행 할 수 있습니다 (프로그래밍 필요 없음). 실제로는 긍정적 인 예에 +1과 그 밖의 모든 것을 -1로 주석 처리합니다 (예, 양수가 포함 된 레이블이없는 다른 모든 데이터).
— Vladislavs Dovgalecs

답변:


5

일반적으로 문제를 공격하는 방법은 Principal Component Analysis 또는 Ordinary Least Squares와 같은 통계 분석을 활용하여 단백질을 Neuropeptide 호르몬 전구체로 분류하는 데 가장 적합한 단백질 서열의 속성을 결정하는 것입니다.

그러기 위해서는 단백질 서열을 숫자 데이터로 변환해야하지만, 아미노산 PCA에 활용 된 공식을 사용하여 일부 작업이 이미 완료되었다고 생각합니다.

다음 두 링크를 참조하십시오. http://www.ncbi.nlm.nih.gov/pubmed/24496727

http://www.ncbi.nlm.nih.gov/pubmed/16615809

이 작업이 완료되면 PCA가 중요하다고 식별 한 데이터로 데이터를 줄이면서 Naive Bayes 와 같은 전체 데이터 세트와 강화 학습 알고리즘을 사용하여 분류하려고합니다 .

Bayes를 사용하려고하는 이유는 스팸과 일반 전자 메일을 결정하는 가장 좋은 방법 중 하나 인 것으로 입증 되었기 때문입니다.

그 모든 것을 말하면 ...

제외 분류의 수 또는 유형을 줄이면 결과가 몇 가지 다른 방식으로 왜곡 될 수 있지만 가장 효과적인 제거 방법을 결정하는 다리 작업을 수행 할 때까지 장기적인 효과가 크게 바뀌지는 않을 것이라고 생각합니다. 훈련 데이터의 퍼지. 현장 전문가 나 통계 분석이 필요합니다.

나는 완전히 기지에서 벗어날 수 있습니다. 나는 다른 답변을 보는 데 관심이 있지만 그것은 2 센트입니다.


1
이미 기능 추출 및이를위한 툴킷을 구현했습니다 (게시물에 버그 검사가 대기 중).
— GrimSqueaker

5

한 학급 학습

1 클래스 분류 방법 (옵션 2)을 버리기에는 너무 빠르지 않습니다. 핵심은 포지티브 (소수) 클래스를 1 클래스 모델로 모델링하는 것입니다.

단백질 분류 작업에서 종종 볼 수있는 것처럼 불균형 데이터의 샘플링과 같은 다른 접근법보다 1 클래스 분류가 성능을 능가하는 사례를 보여주는 연구가 있습니다.

내가 회상 한 연구를 찾을 수는 없었지만, 1 세트 분류기 (일반적으로 소수 클래스 모델링)를 사용하여 일반적으로 큰 세트에서 샘플링 된 "음수"를 사용하는 이진 분류보다 우수하거나 더 나은 성능을 달성했음을 보여주는 다른 비교를 찾았습니다. 양성으로 알려지지 않은 단백질.

또한이 접근 방식은 훨씬 개선 된 런타임의 이점을 제공합니다. 작고 양수인 집합에서 분류기를 훈련하기 만하면되기 때문입니다. 몇 가지 논문 :

"일류 분류 방법을 사용하고 다양한 생물학적 데이터를 통합하는 단백질-단백질 상호 작용의 예측"

"단백질 서열 및 구조에 대한 일류 분류 접근법"

최소한 일부 일급 방법을 시도하고 이진 / 다중 등급 분류 방법과 유효성 검사를 사용하여 성능을 비교합니다. 이들 중 다수에 대한 오픈 소스 구현도 있으므로이를 시도하는 데 너무 많은 비용이 들지 않아야합니다. 예를 들어 LibSVM에는 단일 클래스 SVM 구현이 있습니다. 또한 이진 분류기와 함께 앙상블에 사용하는 것이 가치가있을 수 있습니다. 예측에 더 많은 의견 차이가있을 수 있기 때문입니다.

더 높은 수준의 표현 임베딩 / 클러스터링

(1)과 PCA를 제안하는 다른 게시물과 함께 클러스터링, 희소 코딩 또는 주제 모델링과 같은 접근법-각 단백질을 문서 문자열로 처리하고 다른 단백질 군을 다른 주제로 처리-와 같은 표현을 얻을 수 있습니다. 단백질을 간단하게 분류 할 수 있습니다.

즉, 단백질이 속한 그룹 / 클러스터를 식별하거나 클러스터 구성원 / 내재 된 표현을 분류 할 수 있습니다.

예를 들어, 희소 코딩 (sparse coding)과 같은 임베딩 접근법은 단백질이 어느 클러스터에 속하는지를 나타내는 표현을 생성 할 수 있습니다. 따라서 일부 기능 세트는 동일한 클러스터의 단백질에 대해서만 활성 (0이 아님)으로 분류되므로 훨씬 쉽게 분류 할 수 있습니다.

또한 클래스 레이블 또는 알려진 클러스터 멤버쉽을 대부분의 메소드에 대한 임베드 프로세스에 통합 할 수 있습니다.

앙상블

여러 분류기의 앙상블은 특히 분류 기가 매우 다양하고 개별적으로 비슷한 성능을 달성 할 수있을 때 가장 잘 작동하는 경향이 있습니다.

이 문제에 대해 앙상블을 사용하는 방법은 최소한 두 가지가 있습니다.

  1. 서로 다른 동일한 크기의 음수 집합을 여러 개 샘플링하고 각각에 대해 분류자를 훈련시켜 이진 분류기 앙상블을 구축 할 수 있습니다.
  2. 음수 샘플이 서로 다른 이진 분류기, 1 클래스 분류 방법, 내장 데이터에 대해 학습 된 분류 모델과 결합 된 다른 접근 방식으로 앙상블을 구축 할 수 있습니다.

2

APP, OAA, AAO의 세 가지 접근 방식이 있습니다. APP는 가능한 모든 클래스 쌍을 기반으로 객체를 구별합니다. OAA는 하나 이상의 모든 클래스 (남은 클래스)를 사용하며 AAO는 동시에 여러 클래스에 대한 F- 테스트 (또는 MVN에 대한 Hotelling의 테스트)를 사용합니다. APP 및 AAO는 실제로 여러 이진 분류 실행이지만 두 개 이상의 원래 클래스가 있습니다. 이들 접근법 각각은 사용 된 다양한 분류기에 대해 상이한 결과를 산출한다.

랜덤 샘플링은 좋은 기술입니다. k- 평균을 사용하여 모든 객체를 중심으로 클러스터링 한 다음 중심을 새 객체로 사용할 수도 있습니다. 어느 쪽이든, 선형 및 비선형 치수 축소 방법은 큰 샘플 크기에서 벗어날 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.