ECS Meeting Explorer - webapp for scientific conference
Tags: python, machinelearning, flask, nlp
Published: 2019-09-27 20:13:18

# Introduction
I'm Kohei Ishikawa (a.k.a. konkon). Ph.D student in Nagoya-University, Japan.  
My research topic is Li battery, especially, Li metal anodes.
If space permits, I'd like to introduce my research, but it's not a main topic in this article.  
This article aims for introduction of webapp I made, [__ECS Meeting Explorer__](https://ecsabstract.herokuapp.com/)!

# Motivation

ECS meeting is biannual scientific conference organized by the electrochemical society.
Before the conference open, we should read huge amounts of meeting abstracts (usually in a plane or train) and make a schedule.
In the [ECS 236th meeting](https://www.electrochem.org/236) held in October 13-17, 2019 in Atlanta, there are _2461_ abstracts in all. It is almost _impossible_ for us to read all of them!  
The ECS provides online program and mobile apps and they can search abstracts with keywords.
However, even if we use this, making a meeting schedule is hard work. Sometimes, we lose an opportunity to attend interesting presentation.  
This is my motivation to make original search app!

#Overview
##Search with number

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/5wpceu3dt1svpqi1yvae.png)

This is a main page of [__ECS Meeting Explorer__](https://ecsabstract.herokuapp.com/).
If you are a participant, please enter your presentation number in upper form and submit it!

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/aqhpwtjob78q6ya9qobn.gif)

This is a sample result for _No. 0213_, presentation titled '_Tripling the Energy Density of Insertion-Type Electrode Materials for Rechargeable Alkali-Ion Batteries By Introducing Carefully Selected Dopants_'.
There are 70 presentation displayed in descending similarities.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/fto4570wp9j5bv3jx5qu.gif)

If you want to save the result, please push 'Download CSV'!

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/db5t7b9z04v8dl9pavp1.png)

On the top of search result, there is an interactive scatter plot.
This is a visualization of all presentation in the vector space. PCA and t-sne were used for dimensional reduction of document vectors.
Magenta colored and lime colored points are represents target and extracted similar presentation.
If you click the plot, you can move to corresponding abstract web page in ECS digital library.

## Search with text

You are not a presenter?, no worries!
Let's search with free text in lower form. For example, search with '_Suppression of Lithium dendrite_' is like below.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/3lizgj2gbf08ral088b7.png)

Presentations about Li metal anodes seems to be successfully extracted.
Now, you can search with any text related to your research interest!

# Technical details

This apps based on natural language processing (vector space model) and machine learning, works with Python.
I used _Word2vec_ implemented in Gensim to obtain vector representation of words, and sparse composite document vector (_SCDV_) to build document vectors.
For further instruction, below articles are very useful!

* [A Beginner’s Guide to Word Embedding with Gensim Word2Vec Model](https://towardsdatascience.com/a-beginners-guide-to-word-embedding-with-gensim-word2vec-model-5970fa56cc92)
* [How to get started with Word2Vec — and then how to make it work](https://www.freecodecamp.org/news/how-to-get-started-with-word2vec-and-then-how-to-make-it-work-d0a2fca9dad3/)
* [文書ベクトルをお手軽に高い精度で作れるSCDVって実際どうなのか日本語コーパスで実験した(EMNLP2017)](https://qiita.com/fufufukakaka/items/a7316273908a7c400868) (Japanese)
* [SCDV : Sparse Composite Document Vectors using soft clustering over distributional representations](https://dheeraj7596.github.io/SDV/)

Flask, Jinja2 and Bootstrap are used for web application frameworks, design template and CSS framework.

I chose Heroku as a web platform. It works with Hobby dyno (about $7.00 per month) and average memory usage is less than 256MB, so far.

I'm planning to write an article for technical instruction, later date...

# Closing talk

Fortunately, we can download all meeting abstracts of 236th meeting as zip format from [official page](https://www.electrochem.org/236/download-abstracts). 
Recently, ECS initiates [_Free the Science_](https://freethescience.org/) to propagate an open science. I have a great respect for this action. I hope they enjoy it!

Actually, This is my first apps for English speaker.
If you have any comments or question, feel free to contact me!