벡터 서열의 분류


9

내 데이터 세트는 벡터 시퀀스로 구성되어 있습니다. 각 벡터의 실제 치수는 50입니다. 시퀀스의 벡터 수는 3-5 ~ 10-15입니다. 즉, 시퀀스의 길이는 고정되어 있지 않습니다.

벡터가 아닌 일부 시퀀스에 클래스 레이블이 표시됩니다. 내 임무는 벡터 시퀀스가 ​​주어지면 전체 시퀀스의 클래스 레이블이 계산되는 분류자를 배우는 것입니다.

나는 데이터의 정확한 본질을 말할 수 없지만 시퀀스의 본질은 일시적이지 않다. 그럼에도 불구하고 벡터 는 레이블을 변경하지 않고 벡터 와 교환 할 수 없습니다 ( ). 즉, 벡터의 순서가 중요합니다. 벡터 자체는 비슷합니다. 예를 들어 내적을 계산하고이 유사성 값을 사용하는 것이 좋습니다.엑스나는엑스제이나는제이

내 질문은 : 그러한 데이터를 분류하는 데 도움이되는 도구 / 알고리즘은 무엇입니까?

업데이트 : 데이터에는 하나 또는 매우 적은 벡터가 클래스 레이블에 큰 영향을 미치는 속성이 있습니다.

가능한 해결책 : 일부 연구를 거친 후에는 RNN (Recurrent Neural Networks)이 자연스럽게 법안에 맞는 것처럼 보입니다. 가장 중요한 아이디어는 컨텍스트 크기 를 선택하고 단어 벡터를 연결하며 최대 풀링을 수행하고 클래식 NN을 통해 피드를 제공하는 것입니다. 문장에서 가능한 각 상황 창 위치에 특징 벡터가 작성됩니다. 최종 특징 벡터는 예를 들어 최대 풀링을 사용하여 구축됩니다. 역전 파는 네트워크의 매개 변수를 조정하기 위해 수행됩니다. 나는 이미 몇 가지 긍정적 인 결과를 얻었습니다 (GPU는 필수입니다).케이

답변:


3

당신이 많은 세부 사항을 공개 할 수 없으므로, 나는 내 대답에서 약간 일반적이어야합니다. 그럼에도 불구하고 도움이되기를 바랍니다. 우선, 분류에 필요한 정보를 잃어 버리지 않도록하려면 분류 전에 시퀀스를 줄이는 것이 좋습니다 (dot product 또는 다른 것을 사용하여). 따라서이 접근 방식은 분류의 특성에 대한 통찰력이있는 경우에만 실현 가능합니다. 간단한 예를 들자면 : 클래스 레이블이 시퀀스의 벡터 수인 경우 내적에서 클래스 레이블을 예측하는 데 크게 성공하지 못합니다.

따라서 분류의 입력으로 전체 시퀀스를 사용하고 고려할 시퀀스 길이에 최대 값을 부과합니다. 먼저 훈련 세트에서 최대 시퀀스 길이 m을 찾은 다음 50 차원 벡터의 각 시퀀스를 50 * m 차원의 벡터로 바꾸면됩니다. 최대 길이. 이러한 누락 된 값을 제거하고이를 0으로 간단히 바꾸고 싶을 수도 있습니다.

여기에서 갈 수있는 두 가지 방법이 있습니다. 1.) 높은 차원에 적합한 것으로 알려진 분류 방법을 직접 적용합니다. 순진한 Bayes와 같이 많은 튜닝이 필요하지 않은 간단한 것을 시도하십시오. 이렇게하면 시간이 많이 걸리지 않으면이 방법이 실현 가능한지 알 수 있습니다. 2.) 먼저 치수를 줄이고 분류의 특성을 더 잘 이해하려고합니다. 주요 구성 요소 분석과 같은 것을 사용하거나 각 벡터 구성 요소와 클래스 레이블 간의 상관 관계 / 연관을 분석 할 수 있습니다. 성공하면 분류를 적용하기 전에 입력의 차원을 올바르게 줄이는 방법을 알고 있습니다.

이러한 아이디어 중 하나를 따르려면 데이터 및 분류의 구체적인 세부 사항으로 인해 위에서 제안한 아이디어가 실현 불가능할 수 있습니다. 따라서 시간을 낭비하지 않도록 확인하기 전에 알고 있지만 여기에 게시 할 수없는 세부 정보가 있는지 확인하십시오.


0

데이터에는 하나 또는 매우 적은 수의 벡터가 클래스 레이블에 큰 영향을 미치는 속성이 있습니다.

가장 좋은 (가장 쉬운) 접근법은 아마도 각 벡터에서 분류자를 훈련시키고 주어진 시퀀스에 대해 벡터에 대한 예측을 평균화하는 것입니다. 중요 벡터는 예측에 큰 영향을 미치는 반면 중요하지 않은 벡터에 대한 예측은 0.5에 가깝습니다 (또는 이진 분류 문제와 유사).


실제로는 아닙니다. 특히 중요한 정보가없는 많은 벡터가있는 경우 .. 만약 당신이 그 길을 가면 LSTM을 사용하십시오 :)
pir
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.