-
Notifications
You must be signed in to change notification settings - Fork 146
Algorithms don't work across both dicom and luna scans #229
Comments
Once #237 is merged, I'd like to work on "segmentation test(s) should pass for luna scans". |
I took a quick glance at the identification problems. When running the tests, I get a |
Per design doc, the goal here is running app on premise on local computer and not worrying so much about optimizing to moves lots of packets across networks. We can assume a workstation with a reasonable amount of RAM. For practical purposes we are running the demo on a machine without unlimited RAM so it's not boundless. But it's an AWS |
@reubano could you do me a favor and check out my branch 229_fix_segmentation? All I did was to apply the patch for the segmentation tests and merge the current master. The outcome was that all segmentation tests passed (I also ran slow tests): ➜ concept-to-clinic git:(229_fix_segmentation) ✗ docker-compose -f local.yml run prediction pytest -vrsk src/tests/test_segmentation.py
Starting base ...
Starting base ... done
======================================== test session starts ========================================
platform linux -- Python 3.6.1, pytest-3.1.3, py-1.4.34, pluggy-0.4.0 -- /usr/bin/python3.6
cachedir: .cache
rootdir: /app, inifile:
collected 7 items
src/tests/test_segmentation.py::test_correct_paths PASSED
src/tests/test_segmentation.py::test_segment_predict_load PASSED
src/tests/test_segmentation.py::test_segment_dicom PASSED
src/tests/test_segmentation.py::test_segment_luna PASSED
src/tests/test_segmentation.py::test_nodule_segmentation PASSED
src/tests/test_segmentation.py::test_lung_segmentation PASSED
src/tests/test_segmentation.py::test_stop_timeout PASSED
==================================== 7 passed in 514.55 seconds ===================================== I think the issues behind the failing segmentation tests at the moment of opening this issue could have been resolved in #237 . Can you confirm? |
merged in 40c1b41 :) |
Leaving open until all sub-issues are solved. |
According to the c5 spec page, a @WGierke looks like your best bet may be to try spinning up an ec2 instance. |
@WGierke I know that @caseyfitz (on our team) is looking into the models, and we can potentially try to report out some accuracy statistics from the status quo model in case it informs a parallel approach that uses less memory. That being said, we don't know how long that would take so if you are blocked based on system requirements I'm not sure what to recommend other than using a cloud VM with higher stats like @reubano suggested. |
@isms Alright, thanks a lot for the insights and the feedback. I'll have a look at how I can solve this problem for me. Thanks! |
My 2 cents as someone who is lurking interested in contributing is to lower the barrier to entry as much as possible. If AWS is the answer can we use terraform or cloudformation to create a template which makes it easy to spin up a dev instance or an instance which runs the test suite? And make sure the costs of any kind of template are well documented so people know what they're getting into ahead of time. Also, I have experience in terraform and ECS if you want me to try to put something like that together. |
@Raab70 That sounds like quite a bit of "meta" work with the limited amount of time left in the competition! That being said if you think it would be helpful for you to do so, feel free to give it a try and report back. |
Overview
Currently, the classification algorithm is tested with a luna scan, and the segmentation and identification algorithms are tested with dicom scans. This indicates that there may be some incompatibilities between dicom and luna scans that make them not work with certain algorithms. I have confirmed this by adding new tests for the complementary scans and produced the following results:
Expected Behavior
All algorithm tests should pass
Technical details
Below are the specific tracebacks:
test_classification.py
test_segmentation.py
test_identification.py
Steps to Reproduce
In order to replicate these results you must first apply the following patch file.
Acceptance criteria
NOTES
...
means someone is working on a PRThe text was updated successfully, but these errors were encountered: