최근 DeepWalk 및 LINE과 같은 그래프 임베딩을 접했습니다. 그러나 그래프 임베딩의 의미와 사용시기 (애플리케이션)에 대한 명확한 아이디어가 아직 없습니다. 모든 제안을 환영합니다!
댓글
- 그래프 임베딩은 그래프 임베딩입니다! 따라서 그래프를 가져 와서 그래프, 간선 또는 정점에 대한 임베딩을 반환합니다. 임베딩은 유사성 검색을 가능하게하고 일반적으로 표현 을 제공하여 기계 학습을 용이하게합니다.
- @Emre 임베딩이란 무엇을 의미합니까? 🙂
- 삽입의 의미가 갈수록 무언가에 고정됩니다. 그래프 임베딩은 일종의 표면에 정점을 고정하고 네트워크를 표현하기 위해 가장자리를 그리는 것과 같습니다. 따라서 예를 들어 평면 그래프가 가장자리 교차없이 $ 2D $ 표면에 포함될 수 있습니다. 가중치는 가장자리와 적절한 가장자리 길이 즉, 할당 할 수 있습니다. @Emre가 언급 한 유사성 검색 등을 이해 / 추정하는 데 도움이됩니다.
- @KiriteeGak 감사합니다 🙂 실제 응용 프로그램은 무엇입니까? 추천 등에 사용할 수 있다고? 하지만 어떻게?
- YouTube 동영상 추천은 현재 시청중인 동영상이 현재 시청중인 노드이고 추천에있는 다음 동영상이 나와 가장 유사한 동영상 인 모델로 시각화 할 수 있습니다. 유사한 사용자가 다음에 시청 한 내용과 통과해야 할 거대한 네트워크 인 더 많은 요소에 대해 설명합니다. 이 문서는 애플리케이션 이해에 대한 간단한 읽기입니다.
Answer
그래프 임베딩은 관련 네트워크 속성을 유지하면서 네트워크에서 벡터 공간으로의 매핑을 학습합니다.
벡터 공간은 그래프보다 데이터 과학에 더 적합합니다. 그래프에는 간선과 노드가 포함되며, 이러한 네트워크 관계는 수학, 통계 및 기계 학습의 특정 하위 집합 만 사용할 수 있습니다. 벡터 공간에는 해당 도메인의 도구 세트가 더 풍부합니다. 또한 벡터 연산은 동일한 그래프 연산보다 더 간단하고 빠릅니다.
한 가지 예는 가장 가까운 이웃을 찾는 것입니다. 그래프의 노드에서 다른 노드로 “홉”을 수행 할 수 있습니다. 몇 번의 홉 후에 많은 실제 그래프에서 의미있는 정보가 거의 없습니다 (예 : 친구 친구의 친구 추천). 그러나 벡터 공간에서는 거리 메트릭을 사용하여 정량적 결과를 얻을 수 있습니다 (예 : 유클리드 거리 또는 코사인 유사성). 의미있는 벡터 공간에 정량적 거리 측정 항목이있는 경우 가장 가까운 이웃을 찾는 것은 간단합니다.
“ 그래프 임베딩 기법, 애플리케이션 및 성능 : 설문 조사 “는 더 자세히 설명하는 개요 문서입니다.
답변
그래프 임베딩이란 무엇입니까? “그래프 임베딩”은 오늘날 머신 러닝에서 인기있는 분야입니다. 기본적으로 그래프의 토폴로지 (매우 기본적인 의미에서)를 캡처하는 그래프의 “잠재 벡터 표현”을 찾는 것을 의미합니다. 정점-정점 관계, 에지 정보 등을 고려하여이 “벡터 표현”을 풍부하게 만들 수 있습니다. 그래프에는 대략 두 가지 수준의 임베딩이 있습니다 (물론 전체 그래프를 논리적으로 다음과 같이 나누어 더 많은 수준을 정의 할 수 있습니다. 다양한 크기의 하위 그래프) :
- Vertex Embeddings -여기에서 주어진 그래프의 모든 정점. 그런 다음 공간에 이러한 벡터를 플로팅하여 서로 다른 정점을 비교할 수 있으며 흥미롭게도 “유사한”정점은 유사하지 않거나 덜 관련이있는 정점보다 서로 더 가깝게 플로팅됩니다. 이것은 Perozzi의 “DeepWalk”에서 수행 한 것과 동일한 작업입니다.
- 그래프 임베딩 -여기 전체 그래프 자체의 잠재 벡터 표현을 찾습니다. 예를 들어, 어떤 화합물이 서로 유사한 지, 그룹 (클러스터)에 몇 가지 유형의 화합물이 있는지 확인하려는 화합물 그룹이 있습니다. 이러한 벡터를 사용하여 공간에 플로팅 할 수 있습니다. 위의 모든 정보를 찾으십시오. 이것은 Yanardag의 “Deep Graph Kernels”에서 수행 한 작업입니다.
응용 프로그램-주의 깊게 살펴보면 임베딩은 “잠재”표현입니다. 이는 그래프에 | V | * | V | 인접 행렬 여기서 | V | = 1M, 알고리즘에서 1M * 1M 숫자를 사용하거나 처리하기가 어렵습니다. 따라서 차원 “d”의 잠재 임베딩 (d < < | V |)은 인접 행렬 | V | * d 및 상대적으로 사용하기 쉽습니다. 또 다른 응용 프로그램은 다음과 같습니다.-소셜 네트워크에서 비슷한 관심사를 가진 사람들에게 제품을 추천하려는 간단한 시나리오를 생각해보십시오.정점 임베딩 (여기서는 각 사람의 벡터 표현을 의미 함)을 가져 오면 이러한 벡터를 플로팅하여 유사한 것을 찾을 수 있으며 이는 추천을 쉽게 만듭니다. 이들은 일부 응용 프로그램이고 다른 응용 프로그램이 있습니다. 좋은 설문 조사 보고서 인 그래프 삽입 기법, 설문 조사 를 참조 할 수 있습니다.
모든 것이 어디서 왔습니까? 이 분야에서 많은 작업이 있었고 거의 모든 것이 자연어 처리 분야의 획기적인 연구 인 Mikolov의 “Word2Vec”에서 비롯되었습니다. 그래프 임베딩에 대한 연구를 시작하려면 먼저 Word2Vec의 작동 방식을 이해하는 것이 좋습니다. 멋진 설명을 찾을 수 있습니다- Word2Vec 매개 변수 학습 설명 및 Stanford 강의 . 그런 다음 나열된 논문으로 이동할 수 있습니다. 이러한 작품은 다음과 같이 분류 할 수 있습니다.
-
“그래프 임베딩”:- 딥 그래프 커널 , Subgraph2Vec .
댓글
- 와우 !! 이것은 절대적으로 완벽한 대답입니다. 고마워요 🙂 아주 잘 했어요 🙂
- 안녕 Mausam Jain. 네트워크에서 중요한 노드를 식별하기 위해 그래프 임베딩을 사용할 수 있는지 알려주시겠습니까?
- 안녕하세요, Volka. 이 질문에 답하려면 어떤 유형의 그래프 에서 작업하고 있는지 알아야합니다. 트위터, 페이스 북, 레딧 등인가요?
- 답장 해 주셔서 감사합니다. 저는 실제로 가장 소셜 한 사람들을 식별하고 싶은 소셜 네트워크에서 일하고 있습니다. 🙂
- 여기 '이 답변의보다 정교한 버전입니다. towardsdatascience.com/ …
답변
Levin et.al의 무작위 내적 그래프의 옴니버스 임베딩에 대한 중심 한계 정리 특정 유형의 그래프 임베딩 (옴니버스 임베딩)은 그래프 임베딩을 “그래프의 정점이 저 차원 유클리드 공간에서 벡터에 매핑되는”방법론으로 정의합니다. 자세한 내용은 링크를 확인하세요.
댓글
- 포럼에 오신 것을 환영합니다. 논문에 대해 언급하고 싶다면 텍스트의 일부로 논문의 이름을 적어주세요 (링크가 깨질 수 있으므로).