최근에는 DeepWalk 및 LINE과 같은 그래프 임베딩을 발견했습니다. 그러나 그래프 임베딩의 의미와 사용시기 (응용 프로그램)에 대한 명확한 아이디어가 여전히 있습니까? 어떤 제안이라도 환영합니다!
최근에는 DeepWalk 및 LINE과 같은 그래프 임베딩을 발견했습니다. 그러나 그래프 임베딩의 의미와 사용시기 (응용 프로그램)에 대한 명확한 아이디어가 여전히 있습니까? 어떤 제안이라도 환영합니다!
답변:
그래프 임베드는 관련 네트워크 특성을 유지하면서 네트워크에서 벡터 공간으로의 맵핑을 학습합니다.
벡터 공간은 그래프보다 데이터 과학에 더 적합합니다. 그래프에는 에지와 노드가 포함되어 있으며 이러한 네트워크 관계는 특정 수학, 통계 및 기계 학습 하위 세트 만 사용할 수 있습니다. 벡터 공간에는 해당 도메인의 풍부한 도구 세트가 있습니다. 또한 벡터 연산은 종종 동등한 그래프 연산보다 단순하고 빠릅니다.
가장 가까운 이웃을 찾는 것이 한 예입니다. 그래프에서 노드에서 다른 노드로 "홉"을 수행 할 수 있습니다. 몇 번의 홉 이후의 많은 실제 그래프에는 의미있는 정보가 거의 없습니다 (예 : 친구의 친구 친구의 추천). 그러나 벡터 공간에서는 거리 메트릭을 사용하여 정량 결과 (예 : 유클리드 거리 또는 코사인 유사성)를 얻을 수 있습니다. 의미있는 벡터 공간에 정량적 거리 메트릭이있는 경우 가장 가까운 이웃을 찾는 것이 간단합니다.
" 그래프 포함 기술, 응용 프로그램 및 성능 : 설문 조사 "는보다 자세하게 설명하는 개요 기사입니다.
그래프 임베딩이란 무엇입니까? "그래프 임베딩 (Graph Embeddings)"은 오늘날 머신 러닝 분야에서 인기있는 분야입니다. 기본적으로 그래프의 토폴로지 (매우 기본적인 의미)를 캡처하는 그래프의 "잠재적 벡터 표현"을 찾는 것을 의미합니다. 정점-정점 관계, 모서리 정보 등을 고려하여이 "벡터 표현"을 풍부하게 만들 수 있습니다. 그래프에는 대략 두 가지 수준의 임베딩이 있습니다 (물론 전체 그래프를 논리적으로 나누어서 더 많은 수준을 정의 할 수 있음) 다양한 크기의 하위 그래프) :
응용- 신중하게 살펴보면 임베딩은 "잠재적 인"표현으로, 그래프에 | V | * | V | 인접 행렬 여기서 | V | = 1M, 알고리즘에서 1M * 1M 숫자를 사용하거나 처리하기 어렵다. 따라서 차원 'd'의 잠재 삽입은 d << | V | 인 경우 인접 행렬 | V |를 만듭니다. * d는 비교적 사용하기 쉽습니다. 다른 적용 사례는 다음과 같습니다. 소셜 네트워크에 관심이있는 사람들에게 제품을 추천하려는 간단한 시나리오를 고려하십시오. 정점 임베딩 (여기서는 각 사람의 벡터 표현을 의미 함)을 가져 와서 이러한 벡터를 플로팅하여 유사한 이미지를 찾을 수 있으며 이로 인해 추천이 쉬워집니다. 이들은 일부 응용 프로그램이며 다른 응용 프로그램이 있습니다. 훌륭한 설문지 인 Graph Embedding Techniques, Survey를 참조 할 수 있습니다 .
어디에서 왔습니까? 이 분야에서 많은 연구가 이루어졌으며 거의 모든 것은 자연 언어 처리 분야의 혁신적인 연구-Mikolov의 "Word2Vec"에서 비롯되었습니다. 그래프 임베딩에 대한 연구를 시작하려면 먼저 Word2Vec의 작동 방식을 이해하는 것이 좋습니다. 당신은 좋은 설명을 찾을 수 있습니다 -Word2Vec 매개 변수 학습 설명 및 스탠포드 강의 . 그런 다음 나열된 논문으로 이동할 수 있습니다. 이러한 작품은 다음과 같이 분류 할 수 있습니다.
"Vertex Embeddings"를 기반으로 작동합니다 : -DeepWalk , Node2Vec , LINE .
"그래프 임베딩"을 기반으로 작동합니다 : -Deep Graph Kernels , Subgraph2Vec .
논문 에서 Levin et.al에 의한 랜덤 도트 곱 그래프의 옴니버스 임베딩에 대한 중심 한계 정리. 논문에서 특정 유형의 그래프 임베딩 (옴니버스 임베딩)은 그래프 임베딩을 "그래프의 정점이 저 차원 유클리드 공간의 벡터에 매핑되는 방법"으로 정의합니다. 자세한 내용은 링크를 확인하십시오.