<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Paul Mooney on Medium]]></title>
        <description><![CDATA[Stories by Paul Mooney on Medium]]></description>
        <link>https://medium.com/@paultimothymooney?source=rss-eb868388d1c5------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*QRGRts2AbpDgaei7kxg_JA.jpeg</url>
            <title>Stories by Paul Mooney on Medium</title>
            <link>https://medium.com/@paultimothymooney?source=rss-eb868388d1c5------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 03:30:44 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@paultimothymooney/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[When to use CPUs vs GPUs vs TPUs in a Kaggle Competition?]]></title>
            <link>https://medium.com/data-science/when-to-use-cpus-vs-gpus-vs-tpus-in-a-kaggle-competition-9af708a8c3eb?source=rss-eb868388d1c5------2</link>
            <guid isPermaLink="false">https://medium.com/p/9af708a8c3eb</guid>
            <category><![CDATA[kaggle]]></category>
            <category><![CDATA[kaggle-competition]]></category>
            <category><![CDATA[hardware]]></category>
            <category><![CDATA[tpu]]></category>
            <category><![CDATA[data-science]]></category>
            <dc:creator><![CDATA[Paul Mooney]]></dc:creator>
            <pubDate>Thu, 20 Feb 2020 03:15:43 GMT</pubDate>
            <atom:updated>2020-02-20T03:15:43.029Z</atom:updated>
            <content:encoded><![CDATA[<p>Behind every machine learning algorithm is hardware crunching away at multiple gigahertz. You may have noticed several processor options when setting up Kaggle notebooks, but which one is best for you? In this blog post, we compare the relative advantages and disadvantages of using CPUs (<a href="https://www.intel.com/content/www/us/en/products/processors/xeon.html">Intel Xeon</a>*) vs GPUs (<a href="https://www.nvidia.com/en-us/data-center/tesla-p100/">Nvidia Tesla P100</a>) vs TPUs (<a href="https://cloud.google.com/tpu/">Google TPU v3</a>) for training machine learning models that were written using <a href="https://keras.io/">tf.keras</a> (Figure 1**). We’re hoping this will help you make sense of the options and select the right choice for your project.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/733/1*suXcuHEe29aKLPrQnXGBrg.png" /></figure><p><strong>How we prepared the test</strong></p><p>In order to compare the performance of CPUs vs GPUs vs TPUs for accomplishing common data science tasks, we used the <a href="https://www.tensorflow.org/datasets/catalog/tf_flowers">tf_flowers dataset</a> to train a convolutional neural network, and then the exact same code was run three times using the three different backends (CPUs vs GPUs vs TPUs; GPUs were NVIDIA P100 with Intel Xeon 2GHz (2 core) CPU and 13GB RAM. TPUs were TPUv3 (8 core) with Intel Xeon 2GHz (4 core) CPU and 16GB RAM). The accompanying <a href="https://www.kaggle.com/mgornergoogle/flowers-with-keras-and-xception-fine-tuned-on-gpu">tutorial notebook</a> demonstrates a few best practices for getting the best performance out of your TPU.</p><p>For example:</p><ol><li>Using a dataset of sharded files (<a href="https://www.kaggle.com/paultimothymooney/convert-kaggle-dataset-to-gcs-bucket-of-tfrecords">e.g., .TFRecord</a>)</li><li>Using the <a href="https://www.tensorflow.org/guide/data">tf.data</a> API to pass the training data to the TPU</li><li>Using large batch sizes (e.g. batch_size=128)</li></ol><p>By adding these precursory steps to your workflow, it is possible to avoid a common I/O bottleneck that otherwise prevents the TPU from operating at its full potential. You can find additional tips for optimizing your code to run on TPUs by visiting the official <a href="https://www.kaggle.com/docs/tpu">Kaggle TPU documentation</a>.</p><p><strong>How the hardware performed</strong></p><p>The most notable difference between the three hardware types that we tested was the speed that it took to train a model using <a href="https://keras.io/">tf.keras</a>. The tf.keras library is one of the most popular machine learning frameworks because tf.keras makes it easy to quickly experiment with new ideas. If you spend less time writing code then you have more time to perform your calculations, and if you spend less time waiting for your code to run, then you have more time to evaluate new ideas (Figure 2). tf.keras and TPUs are a powerful combination when participating in <a href="https://kaggle.com/c/flower-classification-with-tpus">machine learning competitions</a>!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/719/1*bqmG-YzgJzVeLbQ5Ym1iFg.png" /></figure><p>For our first experiment, we used the same code (a modified version*** of the <a href="https://www.kaggle.com/mgornergoogle/flowers-with-keras-and-xception-fine-tuned-on-gpu">official tutorial notebook</a>) for all three hardware types, which required using a very small batch size of 16 in order to avoid out-of-memory errors from the CPU and GPU. Under these conditions, we observed that TPUs were responsible for a ~100x speedup as compared to CPUs and a ~3.5x speedup as compared to GPUs when training an <a href="https://keras.io/applications/#xception">Xception</a> model (Figure 3). Because TPUs operate more efficiently with large batch sizes, we also tried increasing the batch size to 128 and this resulted in an additional ~2x speedup for TPUs and out-of-memory errors for GPUs and CPUs. Under these conditions, the TPU was able to train an <a href="https://keras.io/applications/#xception">Xception</a> model more than 7x as fast as the GPU from the previous experiment****.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/719/1*p2X9DQcq9K5Iu76Kk82vrg.png" /></figure><p>The observed speedups for model training varied according to the type of model, with Xception and Vgg16 performing better than ResNet50 (Figure 4).<strong> </strong>Model training was the only type of task where we observed the TPU to outperform the GPU by such a large margin. For example, we observed that in our hands the TPUs were ~3x faster than CPUs and ~3x slower than GPUs for performing a small number of predictions (TPUs perform exceptionally when making predictions in some situations such as when <a href="https://docs.google.com/presentation/d/1O49AkNyYV48n0X4nWr7KE-5aask88pz9gBSQ26ZG-5o/edit#slide=id.g50ce3d3866_0_1590">making predictions</a> on very large batches, which were not present in this experiment).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/733/1*p7U2zlYn9O5Yvjluh2P-dg.png" /></figure><p>To supplement these results, we note that <a href="https://arxiv.org/abs/1907.10701">Wang<em> et. al</em></a> have developed a rigorous benchmark called ParaDnn [1] that can be used to compare the performance of different hardware types for training machine learning models. By using this method Wang<em> et. al</em> were able to conclude that the performance benefit for parameterized models ranged from 1x to 10x, and the performance benefit for real models ranged from 3x to 6.8x when a TPU was used instead of a GPU (Figure 5). TPUs perform best when combined with sharded datasets, large batch sizes, and large models.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/733/1*QbP2CPDZH5BQWlnaTtW3oA.png" /></figure><p><strong>Price considerations when training models</strong></p><p>While our comparisons treated the hardware equally, there is a sizeable difference in pricing.<strong> </strong>TPUs are ~5x as expensive as GPUs (<a href="https://cloud.google.com/compute/gpus-pricing">$1.46/hr</a> for a <a href="https://www.nvidia.com/en-us/data-center/tesla-p100/">Nvidia Tesla P100</a> GPU vs <a href="https://cloud.google.com/tpu/pricing">$8.00/hr</a> for a <a href="https://cloud.google.com/tpu/">Google TPU v3</a> vs <a href="https://cloud.google.com/tpu/pricing">$4.50/hr</a> for the TPUv2 with “on-demand” access on <a href="https://cloud.google.com/pricing/">GCP</a> ). If you are trying to optimize for cost then it makes sense to use a TPU if it will train your model at least 5 times as fast as if you trained the same model using a GPU.</p><p>We consistently observed model training speedups on the order of ~5x when the data was stored in <a href="https://www.kaggle.com/paultimothymooney/convert-kaggle-dataset-to-gcs-bucket-of-tfrecords">a sharded format</a> in a <a href="https://www.kaggle.com/paultimothymooney/how-to-move-data-from-kaggle-to-gcs-and-back">GCS bucket</a> then passed to the TPU in large batch sizes, and therefore we recommend TPUs to cost-conscious consumers that are familiar with the <a href="http://tf.data/">tf.data</a> API.</p><p>Some machine learning practitioners prioritize the reduction of model training time as opposed to prioritizing the reduction of model training costs. For someone that just wants to train their model as fast as possible, the TPU is the best choice. If you spend less time training your model, then you have more time to iterate upon new ideas. But don’t take our word for it — you can evaluate the performance benefits of CPUs, GPUs, and TPUs by running your own code in a <a href="https://www.kaggle.com/docs/kernels#the-kernels-environment">Kaggle Notebook</a>, free-of-charge. Kaggle users are already having a lot of fun and success experimenting with TPUs and text data: check out <a href="https://www.kaggle.com/c/tensorflow2-question-answering/discussion/127333">this forum post</a> that describes how TPUs were used to train a BERT transformer model to win $8,000 (2nd prize) in a recent <a href="https://www.kaggle.com/c/tensorflow2-question-answering">Kaggle competition</a>.</p><p><strong>Which hardware option should you choose?</strong></p><p>In summary, we recommend CPUs for their versatility and for their large memory capacity. GPUs are a great alternative to CPUs when you want to speed up a variety of data science workflows, and TPUs are best when you specifically want to train a machine learning model as fast as you possibly can.</p><p>You can get better results by optimizing your code for the specific hardware that you are using and we think it would be especially interesting to compare runtimes for code that has been optimized for a GPU to runtimes for code that has been optimized for a TPU. For example, it would be interesting to record the time that it takes to train a gradient-boosted model using a GPU-accelerated library such as <a href="https://rapids.ai/">RAPIDS.ai</a> and then to compare that to the time that it takes to train a deep learning model using a TPU-accelerated library such as <a href="https://keras.io/">tf.keras</a>.</p><p>What is the least amount of time that one can train an accurate machine learning model? How many different ideas can you evaluate in a single day? When used in combination with tf.keras, TPUs allow machine learning practitioners to spend less time writing code and less time waiting for their code to run — leaving more time to evaluate new ideas and improve one’s performance in <a href="http://kaggle.com/c/flower-classification-with-tpus">Kaggle Competitions</a>.</p><h3>Works Cited</h3><p>[1] Wang Y, Wei G, Brooks D. <a href="https://arxiv.org/pdf/1907.10701.pdf">Benchmarking TPU, GPU, and CPU Platforms for Deep Learning</a>. 2019. <em>arXiv: 1907.10701</em>.</p><p>[2] Kumar S, Bittorf V, et. al. <a href="https://arxiv.org/pdf/1909.09756.pdf">Scale MLPerf-0.6 models on Google TPU-v3 Pods</a>. 2019. <em>arXiv: 1909.09756</em>.</p><p>[3] Jouppi N, Young, C, et. al. <a href="https://ieeexplore.ieee.org/abstract/document/8192463">In-datacenter performance analysis of a tensor processing unit</a>. 2017. <em>2017 ACM/IEEE 44th Annual International Symposium on Computer Architecture (ISCA)</em>.</p><h3>Footnotes</h3><p><strong>* </strong>CPU types vary according to variability. In addition to the Intel Xeon CPUs, you can also get assigned to either Intel Skylake, Intel Broadwell, or Intel Haswell CPUs. GPUs were NVIDIA P100 with Intel Xeon 2GHz (2 core) CPU and 13GB RAM. TPUs were TPUv3 (8 core) with Intel Xeon 2GHz (4 core) CPU and 16GB RAM).</p><p>** Image for Figure 1 from <a href="https://cloud.google.com/blog/products/ai-machine-learning/cloud-tpu-breaks-scalability-records-for-ai-inference">https://cloud.google.com/blog/products/ai-machine-learning/cloud-tpu-breaks-scalability-records-for-ai-inference,</a> with permission.</p><p>*** The tutorial notebook was modified to keep the parameters (e.g. batch_size, learning_rate, etc) consistent between the three different backends.</p><p>**** CPU and GPU experiments used a batch size of 16 because it allowed the Kaggle notebooks to run from top to bottom without memory errors or 9-hr timeout errors. Only TPU-enabled notebooks were able to run successfully when the batch size was increased to 128.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9af708a8c3eb" width="1" height="1" alt=""><hr><p><a href="https://medium.com/data-science/when-to-use-cpus-vs-gpus-vs-tpus-in-a-kaggle-competition-9af708a8c3eb">When to use CPUs vs GPUs vs TPUs in a Kaggle Competition?</a> was originally published in <a href="https://medium.com/data-science">TDS Archive</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Low-Cost Cell Biology Experiments for Data Scientists]]></title>
            <link>https://medium.com/data-science/low-cost-cell-biology-experiments-for-data-scientists-45fab25867b?source=rss-eb868388d1c5------2</link>
            <guid isPermaLink="false">https://medium.com/p/45fab25867b</guid>
            <category><![CDATA[image-classification]]></category>
            <category><![CDATA[data-science]]></category>
            <category><![CDATA[cell-biology]]></category>
            <category><![CDATA[towards-data-science]]></category>
            <dc:creator><![CDATA[Paul Mooney]]></dc:creator>
            <pubDate>Tue, 19 Feb 2019 04:34:58 GMT</pubDate>
            <atom:updated>2019-02-19T19:07:30.675Z</atom:updated>
            <content:encoded><![CDATA[<h4>Paper microscopes, public data repositories, and hosted notebook solutions</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*tMMQjgkPbRsWGnqY8hIZUw.jpeg" /></figure><p><strong><em>Introduction:</em></strong></p><p>Can “citizen scientists” do real science without costly laboratory equipment?</p><p>In short: yes. In this blog post we point out an alternative and low-cost approach to solving biological questions that is suited to the aspiring amateur scientist. Specifically, we highlight the benefits of combining low-cost imaging equipment (<a href="https://www.foldscope.com/">FoldScope microscopes</a>) and public image data <a href="https://www.kaggle.com/datasets?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium">(Kaggle Datasets</a>) with free tools for performing computational data analysis (<a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium">Kaggle Kernels</a>). Furthermore, we provide a general framework for using these tools to tackle image classification problems in the biological sciences. We hope that these guidelines encourage more data scientists to publish cell biology datasets and to share what they learn.</p><p><strong><em>Part 1: Obtaining image data</em></strong></p><p>High-throughput and super-resolution microscopy methods have been invaluable to the study of cellular biology [1,2], but these technologies are prohibitively expensive for many or most research labs. The good news, however, is that innovative technologies like <a href="https://www.foldscope.com/">FoldScope</a> microscopes can dramatically decrease research costs [3]. <a href="https://www.foldscope.com/">FoldScope</a> microscopes are literally paper microscopes, made of a paper frame attached to a high-magnification objective lens (Figure 1). These multi-use microscopes have proven capable of imaging infectious agents such as <em>Plasmodium falciparum </em>and <em>Schistosoma haematobium </em>[3,4], and can be attached to the camera of a cellular phone. <a href="https://www.foldscope.com/">FoldScope</a> microscopes currently retail for as little as<a href="https://www.foldscope.com/order/"> $1.50</a> each, and their low cost has inspired an active<a href="https://microcosmos.foldscope.com/"> community</a> of citizen scientists.</p><p>In this work we acquired new cell images using a <a href="https://www.foldscope.com/">FoldScope</a> microscope. We opted to start with commercially prepared slides, sold by the<a href="https://www.carolina.com/"> Carolina Biological Supply Company</a>, containing dividing <em>Ascaris lumbricoides</em> cells and hematoxylin staining. Images were acquired using a <a href="https://www.foldscope.com/">FoldScope</a> microscope equipped with a 500x magnification lens and a 8-megapixel digital camera (iPhone 5). In this way, we generated a dataset of images of cells in different stages of cellular division with a very minimal investment.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/838/1*y2Ap4nVsCGLK6S919j6TPw.png" /></figure><p><strong><em>Part 2: Sharing image data</em></strong></p><p>A <a href="https://www.foldscope.com/">FoldScope</a> microscope was used to acquire 90 images of dividing cells in hematoxylin stained <em>Ascaris lumbricoides</em> uterus (Figure 2). These<a href="https://www.kaggle.com/paultimothymooney/cell-cycle-experiments/?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> images</a> were shared as a public dataset on Kaggle along with some<a href="https://www.kaggle.com/paultimothymooney/interphase-vs-mitosis-classification?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> starter code</a> demonstrating how to work with the data. A dataset of only 90 images is inevitably limited and does not present a suitable challenge for the computational environment. As such, we identified a relatively large dataset of labeled images of Jurkat cells in various different stages of cellular division [5] and added it to our<a href="https://www.kaggle.com/paultimothymooney/cell-cycle-experiments/?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> Kaggle Dataset</a> as well. With this supplemental dataset of approximately 32,000 cell images, we could sufficiently test the ability of the free<a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> Kaggle Kernels</a> product for performing complex computational analyses.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/616/1*k5q6b_dx74eu07M5z_tY4A.png" /></figure><p><strong><em>Part 3: Analyzing image data</em></strong></p><p>Deep learning algorithms are exciting in part because of their potential to automate biomedical research tasks [6,7]. For example, deep learning algorithms can be used to automate the time-consuming process of manually counting mitotic structures in breast histopathology images [8,9]. Differences in the rates of cellular division and differences in the amount of time spent in each stage of cellular division are both important differentiators between healthy cells and cancer cells [10,11]. Likewise, cancer cells often form erroneous mitotic structures during cellular division and these erroneous structures can contribute to further disease progression [12,13]. As such, the study of cellular division and and its machinery has led to the development of numerous anti-cancer drugs [14,15]. In this work we use the cell division dataset from Figure 2 to train a deep learning model that can be used to identify cell cycle stages in images of dividing cells (Figure 3).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/596/1*kleU5aNXCUxAL-ufr4hmOQ.png" /></figure><p><a href="https://www.kaggle.com/paultimothymooney/interphase-vs-mitosis-classification?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium">Here</a> we present a simple approach that combines the<a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> Kaggle Kernel</a> with the cell division dataset from Figure 2 in order to train a deep neural network to identify cell cycle stages. The free-of-charge<a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> Kaggle Kernel</a> combines the data, the code, and the cloud-based computational environment in such a way that makes the work easy to reproduce. In fact, you can duplicate this work and you can run it in an identical cloud-based computational environment just by pressing the “Fork Kernel” button on the Kaggle website. (Additional discussion on research reproducibility and a set of recommended guidelines can be found<a href="http://blog.kaggle.com/2018/09/19/help-i-cant-reproduce-a-machine-learning-project/"> here</a>). By using a dataset of 32,266 images to train a deep neural network, we hope we’ve shown how well the free <a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium">Kaggle Kernels</a> environment can perform complex computational analyses that are relevant to the biomedical sciences.</p><p>The ML model that was trained under this new approach gave results that were comparable to the original analysis (Figure 4). Interestingly, both models still have room for improvement in identifying some of the more rarely-observed cell cycle stages, but this could likely be corrected for by generating additional data. The <a href="https://www.kaggle.com/paultimothymooney/figure-4-from-low-cost-cell-biology-blog-post?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium">code in Figure 4B</a> is meant to be generalizable and should work well with diverse image types and image categories: the <a href="https://docs.fast.ai/vision.data.html#ImageDataBunch.from_folder">fastai.ImageDataBunch.from_folder()</a> function can be used to load and process any compatible image, and the <a href="https://docs.fast.ai/vision.learner.html#create_cnn">fastai.create_cnn()</a> function can be used to automatically learn new model features.</p><pre><em># Code to generate Figure 4A: </em><a href="https://github.com/theislab/deepflow">https://github.com/theislab/deepflow</a><em><br># Code to generate Figure 4B: (below)</em></pre><pre>from fastai import *<br>from fastai.vision import *<br>from fastai.callbacks.hooks import *<br>import numpy as np; import pandas as pd<br>import matplotlib; import matplotlib.pyplot as plt</pre><pre>img_dir=&#39;../input/&#39;; path=Path(img_dir)<br>data=ImageDataBunch.from_folder(path, train=&quot;.&quot;,valid_pct=0.3,                               ds_tfms=get_transforms(do_flip=True,flip_vert=True,max_rotate=90,max_lighting=0.3),size=224,bs=64,num_workers=0).normalize(imagenet_stats)</pre><pre>learn=create_cnn(data, models.resnet34, metrics=accuracy, model_dir=&quot;/tmp/model/&quot;)<br>learn.fit_one_cycle(10)<br>interp=ClassificationInterpretation.from_learner(learn)<br>interp.plot_confusion_matrix(figsize=(10,10), dpi=60)</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/808/1*Sw-ZE2LgR0ORJu1hbmkkYA.png" /></figure><p>This work describes a reusable framework that can be applied to cell biology datasets to solve image classification problems. The specific image classification problem discussed was the automatic identification of cell cycle stages during cellular division, and the approach was notable because of the low cost of the equipment and because of how easy it was to train the model (with free cloud computing and open-sourced ML algorithms). Data scientists and cell biologists who want to train their own image classification models can easily replicate this approach by creating a<a href="https://www.kaggle.com/datasets?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> dataset</a> of their own<a href="https://www.foldscope.com/"> FoldScope</a> images, organizing the training data into folders that correspond with each image label, and then attaching that same dataset to a<a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> kernel</a> that contains the <a href="https://docs.fast.ai/">Fastai</a> code described in Figure 4. We hope that future researchers take advantage of the<a href="https://www.kaggle.com/paultimothymooney/cell-cycle-experiments/?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> dataset</a> and the<a href="https://www.kaggle.com/paultimothymooney/interphase-vs-mitosis-classification?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> starter code</a> that we have shared in order to quickly fork, modify, and improve upon our models.</p><p><strong><em>Conclusion:</em></strong></p><p>Since the first compound microscopes were built in the 1600s, medical imaging and laboratory equipment has been expensive to produce and to own. Analytical software is much newer but in many cases can be equally expensive. More recently, low-cost tools like the $1.50<a href="https://www.foldscope.com/"> FoldScope microscope</a> and the $0.00<a href="https://www.kaggle.com/kernels?utm_medium=blog&amp;utm_source=medium&amp;utm_campaign=mooneyp-medium"> Kaggle Kernel </a>have been developed that can perform many of these same functions at a fraction of the cost. This work describes a low-cost and reusable framework that can be applied to cell biology datasets to solve image classification problems. We hope that these guidelines will encourage more data scientists to explore and publish cell biology datasets and to share their results and findings.</p><p><strong><em>Works Cited:</em></strong></p><p>[1] Miller MA, Weissleder R.<a href="https://www.ncbi.nlm.nih.gov/pubmed/28642603"> Imaging of anticancer drug action in single cells</a>. <em>Nature Reviews Cancer</em>. 2017. Vol 17(7): p399–414.</p><p>[2] Liu TL, Upadhyayula S, Milkie, <em>et al</em>.<a href="https://www.ncbi.nlm.nih.gov/pubmed/29674564"> Observing the cell in its native state: Imaging subcellular dynamics in multicellular organisms</a>. <em>Science</em>. 2018 Vol 360(6386).</p><p>[3] Cybulski J, Clements J, Prakash M.<a href="https://www.ncbi.nlm.nih.gov/pubmed/24940755"> Foldscope: Origami-Based Paper Microscope</a>. <em>PLoS One</em>. 2014; Vol 9(6).</p><p>[4] Ephraim R, Duah E, et al.<a href="https://www.ncbi.nlm.nih.gov/pubmed/25918211"> Diagnosis of Schistosoma haematobium Infection with a Mobile Phone-Mounted Foldscope and a Reversed-Lens CellScope in Ghana</a>. <em>Am J Trop Med Hyg</em>. 2015. Vol 92(6): p. 1253–1256.</p><p>[5] Eulenberg P, Köhler N, et al.<a href="https://www.ncbi.nlm.nih.gov/pubmed/28878212"> Reconstructing cell cycle and disease progression using deep learning. <em>Nature Communications</em></a>. 2017. Vol 8(1): p463.</p><p>[6] Esteva A, Robicquet A, et al.<a href="https://www.nature.com/articles/s41591-018-0316-z"> A guide to deep learning in healthcare</a>. <em>Nature Medicine</em>. 2019. Vol 25: p.24–29.</p><p>[7] Topol, Eric J. <a href="https://www.ncbi.nlm.nih.gov/pubmed/30617339">High-performance medicine: the convergence of human and artificial intelligence</a>. <em>Nature Medicine</em>. 2019. Vol 1: p44–56.</p><p>[8] Li C, Wang X, Liu W, Latecki LJ.<a href="https://www.ncbi.nlm.nih.gov/pubmed/29455111"> DeepMitosis: Mitosis detection via deep detection, verification and segmentation networks</a>. <em>Medical Image Analysis</em>. 2018. Vol 45:</p><p>[9] Saha M, Chakraborty C, Racoceanu D.<a href="https://www.ncbi.nlm.nih.gov/pubmed/29409716"> Efficient deep learning model for mitosis detection using breast histopathology images</a>. <em>Computational Medical Imaging and Graphics</em>. 2018. Vol 64: p29–40.</p><p>[10] Sherr CJ.<a href="https://www.ncbi.nlm.nih.gov/pubmed/8939849"> Cancer cell cycles</a>. <em>Science</em>. 1996. Vol 274(5293): p1672–7.</p><p>[11] Visconti R, Monica RD, Grieco D.<a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5037895/"> Cell cycle checkpoint in cancer: a therapeutically targetable double-edged sword</a>. <em>J Exp Clin Cancer Res.</em> 2016. Vol 35: p153.</p><p>[12] Milunović-Jevtić A, Mooney P, <em>et al</em>.<a href="https://www.ncbi.nlm.nih.gov/pubmed/27046071"> Centrosomal clustering contributes to chromosomal instability and cancer</a>. <em>Current Opinion in Biotechnology</em>. 2016 Vol 40: p113–118.</p><p>[13] Bakhoum SF, Cantley LC.<a href="https://www.ncbi.nlm.nih.gov/pubmed/30193109"> The Multifaceted Role of Chromosomal Instability in Cancer and Its Microenvironmen</a>t. <em>Cell</em>. 2018 Vol 174(6): p1347–1360.</p><p>[14] Florian S, Mitchison TJ.<a href="https://www.ncbi.nlm.nih.gov/pubmed/27193863"> Anti-Microtubule Drugs</a>. <em>Methods in Molecular Biology. </em>2016 Vol 1413: p403–411.</p><p>[15] Steinmetz MO, Prota AE.<a href="https://www.ncbi.nlm.nih.gov/pubmed/29871823"> Microtubule-Targeting Agents: Strategies To Hijack the Cytoskeleton</a>. <em>Trends in Cell Biology. </em>2018 Vol 28(10): p776–792.</p><p>[16] The source for the images in<a href="https://www.ncbi.nlm.nih.gov/books/NBK21065/figure/A3332/?report=objectonly"> Figure 3A</a>,<a href="https://pathology.jhu.edu/breast/my-results/staging-grade"> Figure 3B</a>, and the<a href="https://unsplash.com/photos/JdtUKqGdqw8"> Cover Photo</a> can be found in each respective hyperlink.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=45fab25867b" width="1" height="1" alt=""><hr><p><a href="https://medium.com/data-science/low-cost-cell-biology-experiments-for-data-scientists-45fab25867b">Low-Cost Cell Biology Experiments for Data Scientists</a> was originally published in <a href="https://medium.com/data-science">TDS Archive</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>