GithubHelp home page GithubHelp logo

jehoons / sbie_weinberg Goto Github PK

View Code? Open in Web Editor NEW
1.0 5.0 1.0 19.44 MB

A recommendation platform for combination drugs

Home Page: http://weinberg.kaist.ac.kr/v2

R 0.15% Python 1.39% MATLAB 0.85% Makefile 0.01% Shell 0.02% CSS 10.32% JavaScript 20.50% PHP 66.72% HTML 0.05% Smarty 0.01%
sbie drug-discovery

sbie_weinberg's Introduction

Weinberg

Weinberg is a simulation platform for discovering anti-cancer drugs.

Introduction slides

Goal

  • Simulate efficacy and toxicity of single or combination drugs
  • Provide simple interface
  • Provide a platform for cancer research

sbie_weinberg's People

Contributors

choonlog avatar dwgoon avatar hanyh0807 avatar jehoons avatar jhsong111 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

bramamoorthy

sbie_weinberg's Issues

Dream2015 module SQL문 검토 부탁드립니다.

  1. Simulation에서 Modules 중 dream2015를 선택했을 때 cell line을 구성하는 쿼리입니다. Distinct와 group by 둘 다 사용가능하나 group by 속도가 더 빠른편입니다.
$sql = "
SELECT CELL_LINE
FROM dream2015
GROUP BY CELL_LINE;
";
  1. 첫 번째 compound를 선택하는 쿼리입니다.
$sql = "
SELECT COMPOUND_A
FROM dream2015
WHERE CELL_LINE = '$cellline'
GROUP BY COMPOUND_A
";
  1. 두 번째 compound를 선택하는 쿼리입니다. A와 B 혹은 B와 A 조합으로 나타나므로 UNION으로 결합하였습니다.
$sql = "
SELECT CELL_LINE, COMPOUND_A, COMPOUND_B, PREDICTION
FROM dream2015
WHERE CELL_LINE = '$cellline' AND COMPOUND_A='$drug1'
GROUP BY COMPOUND_B
UNION
SELECT CELL_LINE, COMPOUND_B, COMPOUND_A, PREDICTION FROM dream2015
WHERE CELL_LINE = '$cellline' AND COMPOUND_B='$drug1'
GROUP BY COMPOUND_A;
";
  1. Cell line, drug1, drug2의 값으로 prediction을 구하는 쿼리입니다. 마찬가지로 A와 B 혹은 B와 A 조합을 고려하여 UNION하였습니다.
$sql = "
SELECT *
FROM dream2015
WHERE CELL_LINE = '$cellline' AND COMPOUND_A='$drug1' AND COMPOUND_B='$drug2'
UNION
SELECT *
FROM dream2015
WHERE CELL_LINE = '$cellline' AND COMPOUND_A='$drug2' AND COMPOUND_B='$drug1'
";

clustering of attractors.

세가지 방법으로 클러스터링을 수행할 수 있다.

  1. drug, input 노드들을 제외하고 어트렉터를 비교하는 방법

  2. 어트렉터 비트들의 유사성 이용, 클러스터링

  • k-modes 이용, 클러스터링 수행. k=3으로 세팅
  • 클러스터링 결과를 scanning_result 파일에 통합하기
  • 시각화 초안 완료

클러스터링 결과를 GSEA방법을 이용해서 라벨링 [참고문헌]
(https://www.dropbox.com/s/2ae1g3d425zlh3r/Liberzon%20et%20al.%20-%202015%20-%20The%20Molecular%20Signatures%20Database%20Hallmark%20Gene%20Se.pdf?dl=0)

  • 데이터베이스 다운로드 (Proliferation, Apoptosis)
  • 데이터베이스 다운로드 (Q-state)
  • 분석프로그램 작성
  1. 생물학적 정보를 이용하여 클러스터링을 수행

SFA module needs to allow JSON input

Currently, SFA module do not allow JSON input. As modules's standard input/output should be described as JSON standard, SFA should be modified.

(@choonlog) WebApp development

관리도구

  • Scratch version of Web
  • User account
  • registration form - 이름, 소속, 이메일, 암호
  • 로봇체크
  • QA? 게시판?
  • 관리자 페이지

비주얼라이즈

  • Toy Visualize Chart
  • Toy Visualize Table
  • Toy Visualize Network
  • Visualize template module (ML, SFA, attractor)
    비주얼라이즈부분은 어느정도 윤곽이 나오면, 영현에게 업무분담

시뮬레이션DB (OFFLINE)

  • query from UI (model, config, cell, drug, ...)
  • VIZ update with query result

시뮬레이션 (ONLINE)

  • My page (My simulation result)
  • 이메일 알림

여기서 ONLINE모드는 시뮬레이션DB에 없는 시뮬레이션을 요구할때의 모드

sfa_fumia module does not pass test

target file:
sbie_weinberg/module/sfa/sfa_fumia/test_sfa_fumia.py

success:
test_single_inputjson()

fail:
test_many_inputjson()

대원아, 이 버그를 수정해 줄 수 있을까?

Define model's structure

모델의 구조가 어떻게 되어야 할지 논의하고 이것을 다른 팀들에게 전달할 필요가 있음

  • 모델의 구조 정의
    모델은 (1) list of input combination defined by JSON, (2)list of results for each input combination defined by JSON, (3)visualization for result, (4)visualization for all results, (5) computation code in any language 으로 정의한다. 각 모듈개발 팀에서는 모델을 개발할때 이 기준에 맞추어서 개발하도록 한다.

  • (1) List of input combination defined by JSON,

{
    "num_configs": 133984,
    "configs": [
        {
            "program": "Table_S7",
            "output": {
                "a": "/home/pbs/git/sbie_optdrug/result/tab_s7/TABLE_S7A_FUMIA_PROCESSED.csv",
                "b_plot": "/home/pbs/git/sbie_optdrug/result/tab_s7/TABLE_S7B_ATTRACTORS.png",
                "b": "/home/pbs/git/sbie_optdrug/result/tab_s7/TABLE_S7B_ATTRACTORS.json",
                "c": "/home/pbs/git/sbie_optdrug/result/tab_s7/TABLE_S7C_INPUT_COMBINATIONS.json"
            },
            "input": {},
            "parameters": {
                "input_nodes": [
                    "S_Mutagen",
                    "S_GFs",
                    "S_Nutrients",
                    "S_TNFalpha",
                    "S_Hypoxia"
                ],
                "on_states": [],
                "off_states": [
                    "S_Gli",
                    "S_Mutagen",
                    "S_GFs",
                    "S_Nutrients",
                    "S_TNFalpha",
                    "S_Hypoxia"
                ],
                "steps": 30,
                "samples": 10000
            }
        },
  • (2) List of results for each input combination defined by JSON
{
 "scanning_results": [
  {
   "attractors": {
    "900cb42eea": {
     "value": "900cb42eea",
     "count": 10000,
     "type": "point",
     "ratio": 1.0
    }
   },
   "parameters": {
    "samples": 10000,
    "steps": 30
   },
   "state_key": {
    "900cb42eea": "011100010000000000000000000101001110000000011100010001000100000010000000001001000101000011100000"
   },
   "trajectory": {},
   "labels": [
    "S_AKT",
    "S_AMPK",
    "S_AMP_ATP",
    "S_APC",
    "S_ATM_ATR",
    "S_AcidLactic",
    "S_Apoptosis",
    "S_BAD",
    "S_BAX",
    "S_Bak",
    "S_Bcl_2",
    "S_Bcl_XL",
    "S_CHK1_2",
    "S_COX412",
    "S_Caspase8",
    "S_Caspase9",
    "S_CycA",
    "S_CycB",
    "S_CycD",
    "S_CycE",
    "S_Cytoc_APAF1",
    "S_DNARepair",
    "S_DnaDamage",
    "S_Dsh",
    "S_E2F",
    "S_E2F_CyclinE",
    "S_ERK",
    "S_E_cadh",
    "S_FADD",
    "S_FOXO",
    "S_FosJun",
    "S_GFs",
    "S_GSH",
    "S_GSK_3",
    "S_GSK_3_APC",
    "S_Gli",
    "S_Glut_1",
    "S_HIF1",
    "S_Hypoxia",
    "S_IKK",
    "S_JNK",
    "S_LDHA",
    "S_MXI1",
    "S_Max",
    "S_Mdm2",
    "S_Miz_1",
    "S_Mutagen",
    "S_Myc",
    "S_Myc_Max",
    "S_NF1",
    "S_NF_kB",
    "S_Nutrients",
    "S_PDK1",
    "S_PHDs",
    "S_PI3K",
    "S_PIP3",
    "S_PKC",
    "S_PTEN",
    "S_RAF",
    "S_RAGS",
    "S_RHEB",
    "S_ROS",
    "S_RTK",
    "S_Ras",
    "S_Rb",
    "S_Slug",
    "S_Smad",
    "S_SmadE2F",
    "S_SmadMiz_1",
    "S_Snail",
    "S_TAK1",
    "S_TCF",
    "S_TGFbeta",
    "S_TNFalpha",
    "S_TSC1_TSC2",
    "S_UbcH10",
    "S_VEGF",
    "S_VHL",
    "S_WNT",
    "S_beta_cat",
    "S_cdc20",
    "S_cdh1",
    "S_cdh1_UbcH10",
    "S_eEF2",
    "S_eEF2K",
    "S_hTERT",
    "S_mTOR",
    "S_p14",
    "S_p15",
    "S_p21",
    "S_p27",
    "S_p53",
    "S_p53_Mdm2",
    "S_p53_PTEN",
    "S_p70",
    "S_p90"
   ]
  },
  • (3) Visualization for result,
    Image files, data for generating image files

  • (4) Visualization for all results,
    Image files, data for generating image files

  • (5) Computation code in any language

Literature survey

플랫폼, 시뮬레이션 등의 주제로한 문헌을 살펴보자.

Todo list

Todo list

  • 0,1,2로 표현된 클래스를 A,P,Q로 라벨링
    참고문헌

  • single drug 머신러닝모델

  • 어트렉터 모델에 대해서, APC변이 세포주 추가
    Table S1J

  • 어트렉터 모델에 대해서, 몇개의 셀라인을 추가 (COLO205, SW48 등)
    Table S5

  • Attractor DB점검

  • Front page 수정하기

  • 워크샵 발표자료 준비하기


Complete list

Fix dream2015 module not to create THERAPY*.CSV

dream2015 모듈을 실행할때 자동으로 생성되는 THERAPY_TESTSET.CSV, THERAPY_TRAINSET.CSV 파일. 사실, 이 파일들은 테스트용도로 생성된 것이고 실제로는 필요하지 않음.

뮤테이션 반영하기

  1. ANOVA로 5가지 방법으로 FIS를 측정하고, 이로부터 중요성을 판별
  2. 뮤테이션이 일어나는 방법을 조사하여 반영
  3. LOF, GOF판별?

Meeting 2017. 3. 3, Suggesions

  • 고정된 스펙, 스토리 보드 같은 것은 없는가? 있다면, 그것을 알려주었으면 한다.
  • 비주얼라이즈 방법? 레이아웃의 모양은 무엇인가?
  • (2차데모시) 텍스트기반의 정보를 추가하면 어떨까?

Separate visualization part as independent module

  • Modularize the visualization part and assign it to the visualization team
    전산과팀에 인수인계, 시각화파트 분리하기, 업데이트 방향 아이디어 수립. 시각화파트의 경우에는 네트워크시각화와 차트로 분리할 수 있을 것으로 생각됨

  • Make meeting with 신동관, 주재일, 플랫폼팀, 비주얼팀

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.