/cs224w

My Solution to Assignments of CS234(Stanford / Fall 2019)

Primary LanguagePythonMIT LicenseMIT

My Solution to Assignments of CS224w

This is my solution to three assignments of CS224w.
CS224W: Machine Learning with Graphs (Stanford / Fall 2019) is an interesting class, which teaches you how to perform machine learning algorithms with graphs. As we all konw, networks are a fundamental tool for modeling complex social, technological, and biological systems. And we can learn the folloing content in this course:

  • How to represent networks using large-scale datasets?
  • How to analyse massive networks which provide several computational, algorithmic, and modeling challenges?
  • How to use machine learning techniques and data mining tools apt to study their underlying network structure and interconnections?

Note: If you consult my source codes that you may want to incorporate into your algorithm or system, you should clearly cite references in your codes.


Table of Contents

  • Assignment 0
    • Analyzing the Wikipedia voters network
    • Further Analyzing the Wikipedia voters network
    • Finding Experts on the Java Programming Language on StackOverflow
  • Assignment 1
    • Network Characteristics
    • Structural Roles: Rolx and ReFex
    • Community detection using the Louvain algorithm
    • Spectral clustering
  • Assignment 2
    • Node Classification
    • Node Embeddings with TransE
    • GNN Expressiveness
    • GNN training
  • Assignment 3
    • Bowtie Structure of Non-Web Networks
    • Link Analysis
    • Decision-based Cascades: A Local Election
    • Influence Maximization

Dependencies

  • snap.py
  • networkX
  • pandas
  • numpy
  • matplotlib

Author

@zlpure