Skip to content

Network Analysis and Visualization. Identifying most prominent nodes. This online web-application/service implements four algorithms to detect the most important nodes in a network. (jQuery, java-script, HTML5, CSS3, AJAX, JSON, Java EE API, servlet, JSP and Tomcat server)

Notifications You must be signed in to change notification settings

amtir/Network_Analysis_Visualization

Repository files navigation

Network Analysis and Visualization Project Machine Learning

This project applies data science and unsupervised learning techniques to study networks (e.g., social connections, biological systems) by identifying their most important elements (called "prominent nodes"). An interactive web application is provided for analyzing and visualizing these networks.

What This Project Does

  • Analyzes Networks: Uses graph-based algorithms to extract meaningful insights.
  • Finds Key Nodes: Identifies "prominent nodes," which are the most connected or influential parts of the network.
  • Visualizes Results: Creates easy-to-understand visual representations of networks and their structure.

Key Features

  • Algorithms for Analysis:
    • K-Core Decomposition: Detects densely connected subgroups.
    • Biased Random Walk: Identifies key nodes based on connectivity patterns.
    • Core-Periphery Profile: Differentiates central (core) nodes from peripheral ones.
  • Learning Type: Unsupervised learning methods (no labeled data needed).
  • Datasets:
    • Supports various types of network data (e.g., .csv, .json).
    • Includes preloaded datasets like:
      • Zachary’s Karate Club (social network)
      • Bottlenose Dolphin Network (animal interactions)
      • Jazz Musicians Bands Network (collaborative network)

Technologies Used

  • Data Science:
    • Graph algorithms for unsupervised learning and analysis.
    • Stability and correctness testing across multiple datasets.
  • Web Development:
    • Frontend: HTML5, CSS3, JavaScript, jQuery jQuery
    • Backend: Java EE, JSP, Servlet java
    • Communication: AJAX, JSON json
  • Server: Apache Tomcat 7 tomcat

How to Use

  1. Clone the Repository:
    git clone https://github.com/your-username/network-analysis-visualization.git
  2. Deploy:
    • Place the project in the webapps folder of Apache Tomcat.
    • Start the server and navigate to http://localhost:8080/.
  3. Analyze Networks:
    • Upload datasets (e.g., .csv or .json files of networks).
    • Choose an algorithm (K-Core, Biased Random Walk, or Core-Periphery).
    • View and interpret the results with interactive graphs.

Example Applications

  • Understanding social networks: Who are the most connected or influential people?
  • Studying biological systems: What proteins or cells are central to a process?
  • Analyzing collaborative networks: Which contributors are most important?

Screenshots

K-Core Decomposition Visualization

K-Core Decomposition

Biased Random Walk Visualization

Biased Random Walk

Network Metrics and Properties

Network Metrics

Who Should Use This?

  • Data Scientists: To explore graph-based unsupervised learning techniques.
  • Students and Researchers: Interested in network analysis or graph theory.
  • Professionals: Analyzing relationships in social, biological, or technical systems.

License

This project is licensed under the MIT License.

About

Network Analysis and Visualization. Identifying most prominent nodes. This online web-application/service implements four algorithms to detect the most important nodes in a network. (jQuery, java-script, HTML5, CSS3, AJAX, JSON, Java EE API, servlet, JSP and Tomcat server)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published