Git Product home page Git Product logo

grafics's Introduction

GRAFICS: Graph Embedding-based Floor Identification Using Crowdsourced RF Signals [ICDCS 2022]

This is the official implementation of the paper:

GRAFICS: Graph Embedding-based Floor Identification Using Crowdsourced RF Signals IEEE page, Arxiv

Weipeng Zhuo, Ziqi Zhao, Ka Ho Chiu, Shiju Li, Sangtae Ha, Chul-Ho Lee, S.-H. Gary Chan
IEEE International Conference on Distributed Computing Systems (ICDCS), 2022

Overview

We study the problem of floor identification for radiofrequency (RF) signal samples obtained in a crowdsourced manner, where the signal samples are highly heterogeneous and most samples lack their floor labels. We propose GRAFICS, a graph embedding-based floor identification system. GRAFICS first builds a highly versatile bipartite graph model, having APs on one side and signal samples on the other. GRAFICS then learns the low-dimensional embeddings of signal samples via a novel graph embedding algorithm named E-LINE. GRAFICS finally clusters the node embeddings along with the embeddings of a few labeled samples through a proximity-based hierarchical clustering, which eases the floor identification of every new sample. We validate the effectiveness of GRAFICS based on two large-scale datasets that contain RF signal records from 204 buildings in Hangzhou, China, and five buildings in Hong Kong. Our experiment results show that GRAFICS achieves highly accurate prediction performance with only a few labeled samples (96% in both micro- and macro-F scores) and significantly outperforms several state-of-the-art algorithms (by about 45% improvement in micro-F score and 53% in macro-F score).

Getting Started

To run the code, make sure you have installed the following packages:

tensorflow 1.15
numpy
prettytable
networkx
numba
scikit-learn
matplotlib

You can also use pip install -r requirements.txt to install necessary packages.

A quick start

You can run the code below in a sequential order:

  1. folder_init.py
  2. prep_node.py
  3. prep_graph.py
  4. get_floors.py
  5. gen_emb_eline.py
  6. main_embedding.py

Configurations are placed in const.py.

We provide an example dataset in data, with readme.md in each subfolder. You can add your own dataset for testing, for example the dataset from Microsoft indoor localization & navigation competition.

Bibliography

If you find this work useful, please consider citing it.

@INPROCEEDINGS{zhuo2022grafics,
  author={Zhuo, Weipeng and Zhao, Ziqi and Chiu, Ka Ho and Li, Shiju and Ha, Sangtae and Lee, Chul-Ho and Chan, S.-H. Gary},
  booktitle={2022 IEEE 42nd International Conference on Distributed Computing Systems (ICDCS)}, 
  title={GRAFICS: Graph Embedding-based Floor Identification Using Crowdsourced RF Signals}, 
  year={2022},
  volume={},
  number={},
  pages={1051-1061},
  doi={10.1109/ICDCS54860.2022.00105}}

grafics's People

Stargazers

qwertyuiopp avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.