Get action "chemical_gene_regulation_graph_expansion" into ARAX_infer (MVP question #2)
This issue summarizes the steps to integrate action chemical_gene_regulation_graph_expansion into ARAX_infer:
- [x] Train two models (one for predicting
increase gene activity while the other fordecrease ...`) - [x] implement prediction in Infer folder (add a new script
creativeCRG.py) Note:CRGmeans "Chemical regulates gene". - [x] Modify
ARAX_infer,infer_utilities.py,RTX_Configuration.py,config_dbs.json,ARAX_expander.pyandARAX_database_manager.py - [x] Upload the model files to
arax-databases.rtx.aiserver - [x] Update the Document
- [x] Do unit tests
- [x] Download transcription factor list and consider the transcription factor for path extraction
- [ ] Do pre-computation for increasing speed
The action "chemical_gene_regulation_graph_expansion" has been added into ARAX_infer. Please see the instruction in the Document. I also added a few tests in test suites. But some of them have an error described below:
@amykglen and @edeutsch, I tried to add qualifiers in the query graph but got an error: ERROR: [UnknownQEdgeProperty] QueryGraph edge 'r_edge' has an unexpected property 'qualifiers'. This property is not understood and therefore processing is halted, rather than answer an incompletely understood query. Here is an example. It seems like the query graph currently doesn't allow to have qualifiers.
yes, query graphs have qualifier_constraints, not qualifiers. see the TRAPI documentation:
https://github.com/NCATSTranslator/ReasonerAPI/blob/master/docs/reference.md#qedge-
Thanks @amykglen. Now all chemical_gene_regulation_graph_expansion tests pass.
One more question: What is the function of .filled method in the query_graphedges[key] ?
sorry @chunyuma, I missed your question back in February! QEdge.filled is just a variable that we use within ARAX to signal to Resultify whether a given QEdge has already been processed/expanded. This allows Resultify to tell whether a given QEdge simply had no answers vs. answers haven't even been looked for, which in turn allows it to resultify partially-expanded queries (as needed in #1848)
@chunyuma what is the status on this item?
Triage from 6/28 AHM: focus first on DrugConflator & g() function before going after this one. Recall remaining TODOs are:
- [ ] make explanatory paths go through miRNAs or transcription factors
- [ ] Check that the combination of
affectsdirections makes sense (eg. if "upregulate" the "up regulate something that upregulates" is acceptable, but not "upregulate something that downregulates") - [ ] Possibly pre-compute for speed
With current xCRG implementation, we won't be precomputing everything, so this can be closed.