Machine learning model for analyzing pathology data from metastases

A CNN-based model addresses the inefficiencies of manual cancer cell inspection by accurately predicting primary sites in whole slide images, improving diagnostic precision and treatment planning.

JP2026016390APending Publication Date: 2026-02-03MEMORIAL SLOAN KETTERING CANCER CENT
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025159572
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2020-06-02
Filing Date
2025-09-25
Publication Date
2026-02-03

AI Technical Summary

Technical Problem

Manual inspection of whole slide images for determining the primary site of cancer cells is slow, tedious, and prone to inaccurate diagnoses, which can lead to erroneous treatment recommendations.

Method used

A computer vision-based model is trained to recognize morphological patterns in whole slide images using a convolutional neural network (CNN) architecture to predict the primary site of cancer cells, incorporating self-supervised learning and weight updates based on loss metrics to improve accuracy.

Benefits of technology

The model efficiently and accurately identifies the primary site of cancer cells, reducing the time and error associated with manual inspection, thereby enhancing the precision of treatment planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026016390000001_ABST
    Figure 2026016390000001_ABST
Patent Text Reader

Abstract

To provide a new system and method for determining a primary site from a biomedical image.SOLUTION: As described herein. The computing system can identify a first biomedical image of a first specimen from one of a primary site or a secondary site associated with a condition of a first subject. The computing system can apply the first biomedical image to a site prediction model comprising a plurality of weights to determine a primary site of the condition. The computing system can store an association between the first biomedical image and the primary site determined using the site prediction model.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to U.S. Provisional Patent Application No. 63 / 033,730, filed June 2, 2020, entitled "Machine Learning Model for Analyzing Pathology Data from Metastatic Sites," which is incorporated herein by reference in its entirety. [Background technology]

[0002] Computing devices can use various computer vision algorithms to recognize and detect various features in an image and can also determine characteristics related to features in an image. Summary of the Invention

[0003] Aspects of the present disclosure relate to systems and methods for determining a primary site from biomedical images. A computing system can identify a first biomedical image of a first sample from one of a primary site or a secondary site associated with a condition of a first subject. The computing system can apply the first biomedical image to a site prediction model including a plurality of weights to determine the primary site of the condition. The site prediction model can be trained using a training dataset having a plurality of examples. Each example may include a second biomedical image of a second sample from one of the primary site or the secondary site of the condition of a second subject from which the second sample was obtained, a first label identifying one of the primary site or the secondary site of the second sample from which the second biomedical image was obtained, and a second label identifying the primary site of the condition of the second subject. The computing system can store the association between the first biomedical image and the primary site determined using the site prediction model.

[0004] In some embodiments, the computing system can provide an association between the first biomedical image and the primary site. In some embodiments, the computing system can apply the first biomedical image to a site prediction model to determine a plurality of candidate primary sites of the condition in the first subject.

[0005] In some embodiments, the computing system can apply the first biomedical image to a site prediction model to determine a confidence score for the primary site of the condition. In some embodiments, the computing system can apply the first biomedical image to a site prediction model to determine a ranking of multiple candidate primary sites.

[0006] In some embodiments, the computing system can obtain a first biomedical image of the first sample via a histological image preparer. In some embodiments, the weights of the site prediction model can be configured into (i) a plurality of convolution blocks for generating a plurality of feature maps from the biomedical image, and (ii) an activation layer for determining a primary site of the condition based on the plurality of feature maps.

[0007] Aspects of the present disclosure relate to systems and methods for training a model to determine a primary site from biomedical images. A computing system can identify a training dataset having a plurality of examples. Each example of the plurality of examples may include a biomedical image of a sample from one of a primary site or a secondary site of a condition of a second subject from which the sample was obtained, a first label identifying one of the primary site or the secondary site of the second sample from which the biomedical image was obtained, and a second label identifying the primary site of the condition of the second subject. The computing system can apply each biomedical image of the plurality of examples of the training dataset to a site prediction model including a plurality of weights to determine a site of the condition of the sample. For each example of the plurality of examples of the training dataset, the computing system can compare the primary site identified in the label of the example with the site determined by the site prediction model. The computing system can update at least one of the plurality of weights of the site prediction model based on a comparison between the first site identified in the label of each example and the second site determined by the site prediction model. The computing system can store the plurality of weights of the site prediction model in one or more data structures.

[0008] In some embodiments, the computing system can apply the acquired biomedical image of the second sample to the region prediction model to determine a second region of the second sample. In some embodiments, the computing system can reapply the biomedical image to the region prediction model in response to determining that the loss metric for at least one example of the plurality of examples exceeds a threshold.

[0009] In some embodiments, the computing system can use the classification loss determined based on the comparison to update at least one of a plurality of weights of the site prediction model. In some embodiments, the computing system can apply the biomedical images in each of a plurality of examples of the training dataset to determine a plurality of candidate primary sites of the condition in the first subject.

[0010] In some embodiments, the computing system can apply the biomedical image in each of the multiple examples of the training dataset to determine a confidence score for the primary site of the condition. In some embodiments, the multiple weights of the site prediction model can be configured in (i) multiple convolution blocks for generating multiple feature maps from the biomedical image, and (ii) an activation layer for determining the primary site of the condition based on the multiple feature maps.

[0011] The above and other objects, aspects, features and advantages of the present disclosure will become more apparent and will be better understood by reference to the following detailed description taken in conjunction with the accompanying drawings. [Brief explanation of the drawings]

[0012] [Figure 1A] FIG. 1 is a block diagram of a process overview for identification of primary site of origin in metastatic sites using whole slide images according to an exemplary embodiment. [Figure 1B] FIG. 1 is a block diagram of an overview of a process for training a model for identification of the primary site of origin in a metastasis using whole slide images according to an exemplary embodiment. [Figure 1C] FIG. 1 is a graphical diagram illustrating the relationship between primary sites and metastases in training data used to train a model for identification of original primary sites in metastases in accordance with an illustrative embodiment. [Figure 2] FIG. 1 is a block diagram of a system for determining primary site from biomedical images in accordance with an illustrative embodiment; [Figure 3] FIG. 1 is a block diagram of a process for training a site prediction model in a system for determining primary site from biomedical images in accordance with an illustrative embodiment; [Figure 4A] FIG. 1 is a block diagram of an architecture of a site prediction model in a system for determining primary site from biomedical images in accordance with an illustrative embodiment; [Figure 4B] FIG. 1 is a block diagram of the architecture of an encoder block of a site prediction model in a system for determining primary site from biomedical images in accordance with an illustrative embodiment. [Figure 4C] FIG. 1 is a block diagram of an architecture of a transform stack within a site prediction model of a system for determining primary site from biomedical images in accordance with an illustrative embodiment; [Figure 5] FIG. 1 is a block diagram of an inference process for a site prediction model in a system for determining primary site from biomedical images in accordance with an illustrative embodiment; [Figure 6A] 1 is a flowchart of a method for training a model to determine primary site in accordance with an illustrative embodiment; [Figure 6B] 1 is a flowchart of a method for applying a model to determine a primary site in accordance with an illustrative embodiment; [Figure 7] FIG. 2 is a block diagram of a server system and a client computer system in accordance with an exemplary embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0013] Below is a more detailed description of various concepts related to systems and methods for determining primary site from biomedical images and embodiments thereof. It should be understood that the various concepts introduced above and discussed in more detail below may be implemented in any of numerous ways, as the disclosed concepts are not limited to any particular implementation. Examples of specific implementations and applications are provided primarily for illustrative purposes.

[0014] Section A describes systems and methods for determining primary site from biomedical images.

[0015] Section B describes network and computing environments that may be useful for various computing-related embodiments described herein.

[0016] A. Systems and methods for determining primary site in biomedical images Cancer cells can originate from a primary site and metastasize to one or more secondary sites (also referred to herein as metastases) throughout a subject's body. Depending on the tumor site, cancer cells at the secondary sites may appear characteristically similar to those at the original primary site. Estimating the primary site can be an important factor in devising treatments to reduce and inhibit the metastasis of cancer in the body. Pathologists may manually inspect whole slide images of tissue from a subject to determine the original primary site of cancer. However, this process can be slow and tedious, especially when numerous images from multiple subjects are to be inspected. Furthermore, manual inspection can lead to inaccurate diagnoses and erroneous treatment recommendations. One approach to addressing some of these issues may be to use computer vision techniques to recognize cancer cells within a given tissue depicted in a whole slide image. However, this approach may not be able to provide an estimate of the primary site of cancer cells. To address these and other challenges, models can be trained to learn morphological patterns to predict the primary site of cancer cells based on whole slide images. The model is able to identify morphological patterns that are highly correlated with metastatic risk.

[0017] Referring now to FIG. 1A, a block diagram of an overview of a process 100 for identifying the original primary site in metastases using whole slide images is shown. As shown, ground truth can be automatically extracted from data records in pathology records. The path report may include, among other things, tumor type, such as grade (e.g., high-grade osteosarcoma, low-grade serous adenocarcinoma, or high-grade pleomorphic sarcoma), differentiation level (e.g., poorly differentiated thyroid carcinoma, undifferentiated pleomorphic sarcoma, well-differentiated mucinous adenocarcinoma, and dedifferentiated liposarcoma), tumor (e.g., neuroblastoma group tumors, Müllerian tumor, and small round cell tumor), sub-tumor type (e.g., Ewing's sarcoma, angiosarcoma, and retinoblastoma), characteristics (e.g., invasive carcinoma, malignant tumor, and metastatic leiomyoma), and cellular tumor or abnormality (e.g., squamous cell carcinoma, germ cell tumor, clear cell carcinoma, and non-small cell carcinoma). A dataset of whole slide images (WSIs) indexed by tumor type can be collected from multiple subjects. Tumor regions can be extracted using marker extraction, pathologist annotation, and class activation maps. Using relevant regions, a classifier can be trained to localize the primary site of the tumor depicted in the image. Additional metastatic risk factors can be analyzed by predicting the primary site from tissue samples.

[0018] Referring now to FIG. 1B, a block diagram of an overview of a process 105 for training a model for identifying a primary site of origin in a metastasis using whole slide images is shown. As shown, the model can be trained using training data in a self-supervised manner. The model can be trained to recognize tumor types. Marker annotations and pathologist annotations can be used to detect the location of tumor cells in whole slide images. Referring now to FIG. 1C, a graph 110 is shown illustrating the relationship between primary sites and metastases in the training data used to train the model for identifying a primary site of origin in a metastasis. As shown, there can be a correlation between the primary site of cancer and metastases. A model trained using these data can generate weights and connections to infer correlations for new input images.

[0019] Referring now to FIG. 2, a block diagram of a system 200 for determining primary site from biomedical images is shown. Generally, the system 200 may include at least one image processing system 205, at least one imaging device 210, and at least one display 215, communicatively coupled to each other via at least one network 220. The image processing system 205 may include, among other things, at least one model trainer 225, at least one model applier 230, at least one site prediction model 235, and at least one database 240. The database 240 may store, maintain, or otherwise include at least one training dataset 245. Each of the components of the system 200 as detailed herein may be implemented using hardware (e.g., one or more processors coupled with memory) or a combination of hardware and software, as detailed in Section B herein.

[0020] More specifically, the image processing system 205 itself, as well as components within the image processing system, such as the model trainer 225, the model applicator 230, and the region prediction model 235, can have a training mode and a runtime mode (sometimes referred to herein as an evaluation or estimation mode). Under the training mode, the image processing system 205 can invoke the model trainer 225 and the model applicator 230 to train the region prediction model 235 using the training dataset 245. Under the runtime mode, the image processing system 205 can invoke the model applicator 230 to apply the region prediction model 235 to new biomedical images to predict the primary site of a condition of a subject whose tissue is depicted in the biomedical image.

[0021] Referring now to FIG. 3 , a block diagram of a process 300 for training a region prediction model 235 in a system 200 for determining a primary region from biomedical images is shown. The process 300 may correspond to or include operations performed by the image processing system 205 under training mode. Under the process 300, a model trainer 230 executing on the image processing system 205 may initialize, train, or establish the region prediction model 235. In some embodiments, the model trainer 230 may assign random values ​​to a set of weights in the region prediction model 235 as part of the initialization. To train the region prediction model 235, the model trainer 225 may access the database 240 to retrieve, fetch, or identify a training dataset 245. The training dataset 245 may be stored and maintained in the database 240 using at least one data structure (e.g., an array, a matrix, a heap, a list, a tree, or a data object). With this identification, the model training means 225 can train the region prediction model 235 using the training dataset 245. The training of the region prediction model 235 may follow supervised (e.g., strongly or weakly supervised) learning techniques.

[0022] The training dataset 325 may include one or more examples. Each example in the training dataset 245 may include, among other things, at least one image 305, at least one primary site label 310, and at least one image site label 315 from a subject 320. The examples in the training dataset 325 may be obtained from multiple subjects 325. Within each training dataset 245, the image 305 may be acquired, derived, or otherwise of at least one sample 325 from the subject 320. The sample 325 may be a tissue section taken or obtained from the subject 320 (e.g., human, animal, or plant). The tissue section may include, for example, muscle tissue, connective tissue, epithelial tissue, nervous tissue, or organ tissue, in the case of a human or animal subject. The sample 325 may be obtained from at least one primary site 330 or at least one secondary site 335 (sometimes referred to herein as a metastatic site) of the subject 320. The sample 325 may itself have or contain one or more objects that have a condition. For example, a tissue section of the sample 325 may contain tumor cells or a lesion. In this example, the cancer cells or lesion may correspond to the object, and the condition may correspond to having a tumor or a lesion. The primary site 330 may correspond to a location within the subject 320 from which the condition originated. The secondary site 335 may correspond to a location within the subject 320 to which the condition spreads. For example, for a subject 320 whose lung cancer has spread to the brain, the primary site 330 may be a location within the lung, and the secondary site 335 may be a location within the brain.

[0023] The image 305 itself may be acquired according to a microscopy technique or histopathology imaging procedure, such as using an optical microscope, a confocal microscope, a fluorescent microscope, a phosphorescent microscope, or an electron microscope, among others. The image 305 may be, for example, a tissue section stained with hematoxylin and eosin (H&E), immunostains, hemosiderin, Sudan, Schiff, Congo Red, Gram, Ziehl-Neelsen, auramine-rhodamine, trichrome, silver wire, and Wright's stain, among others. The image 305 may include one or more regions of interest (ROIs). Each ROI may correspond to a region, section, or boundary within the sample image 305 that contains, encompasses, or includes a condition (e.g., a feature or object within the image). For example, the sample image 305 may be a whole slide image (WSI) for digital pathology of a tissue section within the sample 325, and the ROIs may correspond to regions with lesions and tumors in the sample tissue. In some embodiments, an ROI in a sample image 305 may correspond to a number of different states. Each state may define or designate a classification for the ROI. For example, when the image 305 is a WSI of a sample tissue, the states may correspond to various histopathological characteristics, such as cancerous tissue, benign epithelial tissue, stromal tissue, necrotic tissue, and adipose tissue, among others. In some embodiments, the training dataset 245 may include at least one annotation that identifies the ROI within the associated image 305.

[0024] Additionally, the primary site label 310 can identify the primary site 330 within the subject 320 from which the condition in the sample 325 originated. The image site label 315 can identify the site within the subject 320 from which the sample 325 was obtained. Both the primary site label 310 and the image site label 315 can include a value (e.g., alphanumeric or numeric) that corresponds to one of the possible sites within the subject 320. The image site label 315 can be the primary site 330 or a secondary site 335. The primary site label 310 and the image site label 315 can be different or the same. When the image 305 is of a sample 325 obtained from the primary site 330, the primary site label 310 and the image site label 315 can be the same. In this case, both the primary site label 310 and the image site label 315 can identify the primary site 330. When the image 305 is of a sample 325 obtained from a secondary site 335, the primary site label 310 and the image site label 315 may be different. In this case, the primary site label 310 may identify the primary site 330 within the subject 320, and the image site label 315 may identify the secondary site 335. The primary site label 310 and the image site label 315 may be input or generated by a pathologist or clinician examining the subject 320 or sample 325. In some embodiments, the image site label 315 may be omitted from the training dataset 245.

[0025] During training, a model applicator 230 executing on the image processing system 205 can apply images 305 from the training dataset 245 to the region prediction model 230. The region prediction model 235 can include or have weights (sometimes referred to herein as parameters, kernels, or filters) for processing at least one input and generating at least one output. The set of weights in the region prediction model 235 can be configured according to a convolutional neural network (CNN) architecture, such as an array of ResNet-50 CNNs. During application, the model applicator 230 can provide or feed an image 305 from each example in the training dataset 245 to the region prediction model 235. In some embodiments, the model applicator 230 can feed the entire image 305 to the region prediction model 235. In some embodiments, the model applicator 230 can select or identify one or more tiles from the image 305 for input to the region prediction model 235.

[0026] In response, the model application means 230 can process the input image 305 according to the set of weights configured in the site prediction model 235 to generate at least one output. The output can include one or more predicted primary site 340. Each predicted primary site 340 can identify the primary site 330 of the condition depicted in the sample 325 of the input image 305. The predicted primary site 340 can include a value (e.g., alphanumeric or numeric) corresponding to one of the sites (e.g., organs) within the subject 320. In some embodiments, the output can include a confidence score for each predicted primary site 340 of the condition. The confidence score can define or indicate the likelihood that the predicted primary site 340 of the condition is the actual primary site 330 of the condition. Details of the architecture and functionality of the site prediction model 235 are described herein below in connection with FIGS. 4A-4C.

[0027] Referring now to FIG. 4A, a block diagram of an architecture 400 of a region prediction model 235 in a system 205 for determining a primary region from a biomedical image is shown. Under the architecture 400, the region prediction model 235 may include, among other things, one or more encoders A-N (hereinafter generally referred to as encoders 405), at least one aggregator 410, and at least one activator 415 (sometimes generally referred to herein as an activation layer). A set of weights for the region prediction model 235 may be configured, arranged, or otherwise configured across, among other things, the one or more encoders 405, aggregators 410, and activators 415. The region prediction model 235 may have one or more inputs and at least one output. The input may include an image 305 or a set of tiles 420A-N (hereinafter generally referred to as tiles 420) from the image 305. The tiles 420 may correspond to a portion of the image 305. The output may include a predicted site of origin 340 (e.g., such as that shown). In some embodiments, the output may include a confidence score for the predicted site of origin 340. The inputs and outputs of the encoder 405, aggregator 410, and activator 415 may be connected to each other, for example, in the manner shown.

[0028] Each encoder 405 can receive, extract, or otherwise identify at least a portion of the image 305 as input. The input can be the entire image 305 or a corresponding tile 420 from the image 305. The encoder 405 can process the input according to weights within the encoder 405. The set of weights within the encoder 405 can be configured, for example, according to a convolutional neural network (CNN). In some embodiments, the set of weights can be shared among the encoders 405. For example, the values ​​and interconnections of the weights within the encoder 405 can be the same across all of the encoders 405 in the region prediction model 235. In some embodiments, the set of weights can be unshared among the encoders 405. For example, the values ​​or interconnections of the weights within one encoder 405 can be different or unrelated from the values ​​or interconnections of the weights within other encoders 405. The encoders 405 can be implemented using the architecture detailed herein with reference to FIGS. 4B and 4C. From processing the input, the encoder 405 may create or generate at least one feature map 425A-N (hereinafter generally referred to as feature map 425). The feature map 425 may be a lower dimensional representation of the input image 305 or tile 420. For example, the feature map 425 may be a representation of latent features within the input image 305 or each tile 420. The output of the encoder 405 may be provided or fed as an input to the aggregator 410.

[0029] The aggregator 410 can receive, extract, or otherwise identify feature maps 425 generated by corresponding encoders 405. Upon receipt, the aggregator 410 can concatenate or combine the input feature maps 425 into a set of weights defined in the aggregator 410. The aggregator 410 can process the input according to the set of weights. In some embodiments, the set of weights in the aggregator 410 can be configured according to a fully convolutional neural network (FCN). The aggregator 410 can be implemented using the architecture detailed herein in connection with FIGS. 4B and 4C. Through processing, the aggregator 410 can determine, create, or otherwise generate at least one aggregate feature map 430. The aggregate feature map 430 can be a lower-dimensional representation of the combined set of received feature maps 425. For example, the aggregate feature map 430 can be a representation of latent features in the combined set of feature maps 425 from the encoders 405. The output of the aggregator 410 may be provided or fed as an input to the activator 415 .

[0030] The activator 415 can receive, extract, or otherwise identify the aggregator feature map 430 generated by the aggregator 401. The activator 415 can process the input aggregate feature map 430 according to a set of weights. The set of weights in the activator 415 can be configured according to an activation layer such as a softmax function, a maxout function, a rectified linear unit (ReLU), a linear activation function, a Heaviside function, a radial function, or a logistic function, among others. The activator 415 may be implemented using the architecture detailed herein in connection with FIGS. 4B and 4C. From the processing, the activator 415 can create or generate at least one output. The output may include at least one predicted primary site 340. The predicted primary site 340 may correspond to a defined site within the subject 320, such as the lung, chest, brain, liver, stomach, thyroid, skin, or any other organ, among others. In some embodiments, the output may include a confidence score for the predicted primary site 340. The confidence score may define or indicate the likelihood that the predicted primary site 340 of the condition is the actual primary site 330 of the condition.

[0031] Referring now to FIG. 4B, a block diagram of an architecture 440 of an encoder block 445 within the region prediction model 235 of the system 200 for determining a primary site from a biomedical image is shown. The encoder block 445 can be used to implement the encoder 405 and aggregator 410 within the region prediction model 245. For example, each encoder 405 and aggregator 410 may be an instance of the encoder block 445. Under the architecture 440, the encoder block 445 may include one or more convolution stacks 450A-N (hereinafter generally referred to as convolution stacks 450). The encoder block 415 may also include at least one input 455 and at least one output, such as a feature map 460. The input 455 and the output feature map 460 may be related via a set of weights defined in the convolution stack 450. When used to implement the encoder 405, the input 455 of the encoder block 445 may correspond to or include the image 305 or corresponding tile 420, and the output feature map 460 may correspond to the feature map 425. When used to implement the aggregator 410, the input 455 of the encoder block 445 may correspond to or include the combined set of feature maps 425, and the output 460 may correspond to the aggregate feature map 430. Each convolution stack 450 may define or include weights for the encoder block 445. The set of convolution stacks 450 may be arranged in a serial (e.g., as shown) or parallel configuration, or any combination. In a serial configuration, the input of one convolution stack 450 may include the output of the previous convolution stack 450 (e.g., as shown). In a parallel configuration, the input of one convolution stack 450 may include the input of the entire encoder block 445. Details regarding the architecture of convolution stack 450 are provided herein below in connection with FIG. 4C.

[0032] Referring now to FIG. 4C , a block diagram of an architecture 470 of a transform stack 475 in a region prediction model 235 in a system 200 for determining a primary region from a biomedical image is shown. The transform stack 475 may be used to implement a convolution stack 450 of an encoder block 445 used as an instance of an encoder 405 or an aggregator 410 in the region prediction model 235. The transform stack 475 may also be used to implement an activator 415 in the prediction model 235. The transform stack 475 may include one or more transform layers 480A-N (hereinafter generally referred to as transform layers 480). The transform stack 475 also includes at least one input 485 and at least one output feature map 490. The input 485 and output 490 may be related via a set of weights defined in the transform layer 480 of the transform stack 475. When used to implement the activator 415, the input 485 may correspond to the aggregate feature map 430, and the output 490 may correspond to, among other things, the predicted primary site 340 and a confidence score. A set of transform layers 480 may be arranged in series, with the output of one transform layer 480 being fed as input to the subsequent transform layer 480. Each transform layer 480 may have nonlinear input-output characteristics. The transform layers 480 may include, among other things, convolutional layers, normalization layers, and activation layers (e.g., rectified linear units (ReLUs)). In some embodiments, the set of transform layers 480 may be a convolutional neural network (CNN). For example, the convolutional layers, normalization layers, and activation layers (e.g., softmax functions) may be arranged according to a CNN.

[0033] 3 , the model training means 225 may retrieve, obtain, or otherwise identify output produced by the site prediction model 235 from application of the image 305. The output may include, for example, at least one predicted primary site 340 and a confidence score for the predicted primary site 340, among others. Relatedly, the model training means 225 may identify input images 305, primary site labels 310, or image site labels 315 of examples in the training dataset 245 used to generate the predicted primary site 340. In some embodiments, the model training means 225 may identify primary site labels 310 identified in examples in the training dataset 245 used to generate the predicted primary site 340. In some embodiments, the model training means 225 may identify image site labels 315 identified in the same examples.

[0034] The identification allows the model training means 225 to compare the predicted primary site 340 generated by the site prediction model 235 with the primary site label 310 as identified in examples from the training dataset 245. When there are multiple predicted primary site 340 output by the site prediction model 235, the model training means 225 can select or identify the predicted primary site 340 with the highest confidence score for training purposes. In some embodiments, the model training means 225 can compare the value contained in the predicted primary site 340 with the value indicated by the primary site label 310.

[0035] From the comparison, the model training means 225 can determine whether the predicted primary site 340 generated by the site prediction model 235 is correct. When the predicted primary site 340 matches the primary site label 310, the model training means 225 can determine that the predicted primary site 340 is correct. In some embodiments, the model training means 225 can identify examples in the training dataset 245 used to generate the predicted primary site 340 that was determined to be correct. The model training means 225 can also run examples from the training dataset 245 from a retraining dataset. Conversely, when the predicted primary site 340 does not match the primary site label 310, the model training means 225 can determine that the predicted primary site 340 is incorrect. In some embodiments, the model training means 225 can identify examples in the training dataset 245 used to generate the predicted primary site 340 that was determined to be incorrect (sometimes referred to herein as hard examples). The model training means 225 can include examples from the training dataset 245 in the retraining dataset.

[0036] In some embodiments, the model training means 225 can take into account the image region labels 315 of examples in the training data set 325 when including examples in the retraining data set. The model training means 225 can identify the number of examples in the retraining data set according to the image region labels 315 of specific regions within the subject 320. The model training means 225 can compare the number of examples to a threshold. The threshold can define a value for the number of examples to include in the retraining data set all examples with the same image region label 315. When the number of examples is equal to or greater than the threshold, the model training means 225 can include in the retraining data set all examples from the training data set 245 that have the same image region label 315. Alternatively, when the number of examples is less than the threshold, the model training means 225 can maintain the current number of examples in the retraining data set.

[0037] Based on the comparison, the model trainer 225 can calculate, generate, or otherwise determine at least one loss metric (sometimes referred to herein as an error metric) to update the weights of the site prediction model 235. The loss metric can be determined using many outputs from the site prediction model 235 generated using many examples from the training dataset 245. The loss metric can indicate the degree of deviation of the output from the site prediction model 235 (e.g., predicted primary site 340) from the expected result (e.g., primary site label 310) as shown in the training dataset 245. For example, the loss metric can measure the classification loss from incorrectly classifying the image 305 as a site other than the correct site as identified in the primary site label 310. The loss metric may be calculated according to any number of loss functions, such as Huber loss, norm loss (e.g., L1 or L2), mean squared error (MSE), quadratic loss, and cross-entropy loss, among others. In general, the higher the loss metric, the more likely the output deviates from the expected outcome of the input. In general, the lower the loss metric, the less likely the output deviates from the expected outcome of the input. In some embodiments, when the loss metric of a predicted primary site 340 generated using an example is greater than a threshold, the example may be included in the retraining dataset. The threshold may define or represent a value of the loss metric at which the corresponding example is included in the retraining dataset. In some embodiments, the model trainer 225 may calculate the loss metric by combining the results of the comparison on the output and the training dataset 245.

[0038] Using the loss metric, the model trainer 225 can modify, set, or otherwise update one or more weights in the region prediction model 235. Weight updates may occur across the encoder 405, aggregator 410, and activator 415 in the region prediction model 245. Weight updates may occur according to an optimization function (or objective function) of the region prediction model 235. The optimization function may define one or more rates or parameters at which the weights of the region prediction network 235 should be updated. Kernel updates in the region prediction model 235 may be repeated until a convergence condition is met.

[0039] In some embodiments, the model trainer 225 can continue training the site prediction model 235 using a retraining dataset. The retraining dataset may include one of the examples in which the site prediction model 235 previously produced an incorrectly predicted primary site 340. Training the site prediction model 235 using the retraining dataset may be similar to training using the original dataset 245 as described above. For example, the model applyer 230 can reapply the images 305 from each example included in the retraining dataset to the site prediction model 235. Using the predicted primary site 340 produced by the site prediction model 235, the model trainer 225 can calculate another loss metric and update the weights of the site prediction model 235 accordingly.

[0040] Upon convergence, the model trainer 225 can store and maintain the set of weights for the region prediction model 235. Convergence may correspond to a change in the values ​​of the weights in the region prediction model 235 falling below a threshold. The set of weights for the region prediction model 235 may be stored using one or more data structures such as an array, matrix, heap, list, tree, or data object, among others. In some embodiments, the model trainer 225 can store the set of weights for the region prediction model 235 in the database 240.

[0041] Referring now to FIG. 5 , a block diagram of an inference process 500 of the site prediction model 235 in the system 200 for determining primary sites from biomedical images is shown. The process 500 may correspond to or include operations performed by the image processing system 205 under runtime mode. Under the process 500, the imaging device 210 may scan, obtain, or otherwise acquire at least one image 505 of at least one sample 510 from a subject 515. The image 505 may be similar to the image 305 described above. The sample 510 may be a tissue section taken or obtained from the subject 515. The sample 510 may be obtained from at least one primary site 520 or at least one secondary site 525 (sometimes referred to herein as a metastatic site) of the subject 515. The sample 510 may itself have or include one or more objects having a condition. For example, a tissue section of the sample 510 may include tumor cells or a lesion. The primary site 520 may correspond to a location within the subject 515 from which the condition originated. The secondary site 525 may correspond to a location within the subject 515 to which the condition has spread. For example, for a subject 515 with lung cancer that has spread to the brain, the primary site 520 may be a location within the lung and the secondary site 525 may be a location within the brain. The image 505 may be acquired according to a microscopy technique or histopathology imaging. Upon acquisition, the imaging device 210 may send, transmit, or otherwise provide the acquired image 505 to the image processing system 205.

[0042] The model applying means 230 may then retrieve, receive, or otherwise identify the image 505 from the imaging device 210. The model applying means 230 may provide or supply the image 505 to an input of the site prediction model 235. In some embodiments, the model applying means 230 may supply the entire image 505 to the site prediction model 235. In some embodiments, the model applying means 230 may select or identify one or more tiles (e.g., similar to tiles 420) from the image 505 for input to the site prediction model 235. In response, the model applying means 230 may process the input image 505 according to a set of weights configured in the site prediction model 235 to generate at least one output. The output may include one or more predicted primary site 530. Each predicted primary site 530 may identify a primary site 520 whose condition is shown in the sample 325 of the input image 505. The predicted primary site 530 may include a value (e.g., alphanumeric or numeric) corresponding to one of the sites (e.g., organs) within the subject 515. In some embodiments, the output may include a confidence score for each predicted primary site 530 of the condition. The confidence score may define or indicate the likelihood that the predicted primary site 530 of the condition is the actual primary site 520 of the condition. In some embodiments, the model applying means 230 may rank the predicted primary sites 530 by confidence score.

[0043] Upon generation, the model applying means 230 can store and maintain an association between the image 505 and the output of the site prediction model 235. The output may include one or more of the predicted site of primary origin 430 and a corresponding confidence score. The association may be stored in the database 240 using one or more data structures. Additionally, the model applying means 230 can send, transmit, or otherwise provide the output from the site prediction model 235 to the display 215 for presentation or rendering. In some embodiments, the model applying means 230 can also provide the association between the image 505 and the corresponding output to the display 215. The display 215 can render or present the output from the site prediction model 235, such as the predicted site of primary origin 530 and the confidence score. In some embodiments, the display 215 can also present the image 505 along with the output from the site prediction model 235. The display 215 can present information from the image processing system 205 in a graphical user interface. For example, the graphical user interface may provide the image 505, the predicted primary site 530 ranked by confidence score, and the confidence score itself. The graphical user interface may also include other information about the subject 515 or sample 510 from which the image 505 is obtained. In this manner, the site prediction model 235 of the image processing system 205 may be able to learn morphological latent features from the image 505 to determine the predicted primary site 530 for the image 505 of the sample 510 from the subject 515. The image 505 may be from a secondary site 525 or the actual primary site 520 itself.

[0044] Referring now to FIG. 6A, a flow diagram of a method 600 for training a model to determine a primary site is shown. Method 600 may be performed by or implemented using system 300 described herein in connection with FIGS. 2-5 or system 700 described in detail in connection with Section B. Briefly summarized, under method 600, a computing system (e.g., image processing system 205) may identify a training dataset (e.g., training dataset 245) (605). The computing system may apply an image (e.g., image 305) to a model (e.g., site prediction model 235) (610). The computing system may compare the results (e.g., predicted primary site 340) with a label (e.g., primary site label 310) (615). The computing system may update the model (620). The computing system may store the model weights (625).

[0045] Referring now to FIG. 6B, a flow diagram of a method 650 of applying a model to determine a primary site is shown. Method 650 may be performed by or implemented using system 300 described herein in connection with FIGS. 2-5 or system 700 described in detail in connection with Section B. Under method 650, a computing system (e.g., image processing system 205) may identify (655) an image being acquired (e.g., image 505). The computing system may apply (660) the image to a model (e.g., site prediction model 235). The computing system may provide (665) a result (e.g., predicted primary site 530).

[0046] B. Computing and Network Environment Various operations described herein may be performed on a computer system. FIG. 7 illustrates a simplified block diagram of a representative server system 700, a client computer system 714, and a network 726 that may be used to implement certain embodiments of the present disclosure. In various embodiments, the server system 700 or a similar system may implement the services or servers described herein, or portions thereof. The client computer system 714 or a similar system may implement the clients described herein. The system 300 described herein may be similar to the server system 700. The server system 700 may have a modular design incorporating multiple modules 702 (e.g., blades in a blade server embodiment); although two modules 702 are shown, any number may be provided. Each module 702 may include a processing unit 704 and local storage 706.

[0047] Processing unit 704 may include a single processor, which may have one or more cores, or multiple processors. In some embodiments, processing unit 704 may include a general-purpose primary processor and one or more special-purpose coprocessors, such as a graphics processor, digital signal processor, etc. In some embodiments, some or all of processing unit 704 may be implemented using custom circuitry, such as an application-specific integrated circuit (ASIC) or a field-programmable gate array (FPGA). In some embodiments, such integrated circuits execute instructions stored on the circuitry itself. In other embodiments, processing unit 704 may execute instructions stored in local storage 706. Any type of processor, in any combination, may be included in processing unit 704.

[0048] The local storage 706 may include volatile storage media (e.g., DRAM, SRAM, SDRAM, etc.) and / or non-volatile storage media (e.g., magnetic or optical disks, flash memory, etc.). The storage media incorporated in the local storage 706 may be fixed, removable, or upgradeable, as desired. The local storage 706 may be physically or logically divided into various subunits, such as system memory, read-only memory (ROM), and permanent storage devices. The system memory may be a read / write memory device or a volatile read / write memory, such as dynamic random access memory. The system memory may store some or all of the instructions and data needed by the processing unit 704 at runtime. The ROM may store static data and instructions needed by the processing unit 704. The permanent storage device may be a non-volatile read / write memory device that can store instructions even when the module 702 is powered down. The term "storage medium" as used herein includes any medium capable of storing data indefinitely (subject to overwriting, electrical disturbances, power loss, etc.), and does not include any medium that does not contain carrier waves and transitory electronic signals propagated wirelessly or via wired connections.

[0049] In some embodiments, local storage 706 may store one or more software programs executed by processing unit 704, such as an operating system and / or programs that implement various server functions, such as those of system 500 of FIG. 5 or any other system described herein, or the functions of system 500 or any other system described herein.

[0050] "Software" generally refers to a set of instructions that, when executed by processing unit 704, cause server system 700 (or portions thereof) to perform various operations and thus define one or more specific machine embodiments that perform and implement the operations of the software programs. The instructions may be stored as firmware resident in read-only memory and / or as program code stored on a non-volatile storage medium that can be read into volatile working memory for execution by processing unit 704. The software may be implemented as a single program or a collection of separate programs or program modules that interact as desired. From local storage 706 (or non-local storage, as described below), processing unit 704 may retrieve program instructions for execution and data for processing in order to perform the various operations described above.

[0051] In some server systems 700, multiple modules 702 may be interconnected via a bus or other interconnect 708 to form a local area network that supports communication between the modules 702 and other components of the server system 700. The interconnect 708 may be implemented using a variety of technologies, including server racks, hubs, routers, etc.

[0052] A wide area network (WAN) interface 710 may provide data communication capabilities between a local area network (interconnect 708) and a network 726, such as the Internet. Technologies including wired (e.g., Ethernet, IEEE 702.3 standard) and / or wireless technologies (e.g., Wi-Fi, IEEE 702.11 standard) may be used.

[0053] In some embodiments, local storage 706 is intended to provide working memory for processing unit 704, providing fast access to programs and / or data to be processed while reducing traffic on interconnect 708. Storage for large amounts of data can be provided on a local area network by one or more mass storage subsystems 712, which can be connected to interconnect 708. Mass storage subsystem 712 can be based on magnetic, optical, semiconductor, or other data storage media. Direct-attached storage, storage area networks, network-attached storage, etc. can be used. Any data stores or other data collections described herein, as created, consumed, or maintained by a service or server, can be stored in mass storage subsystem 712. In some embodiments, additional data storage resources can be accessible (possibly with increased latency) via WAN interface 710.

[0054] The server system 700 can operate in response to requests received via the WAN interface 710. For example, one of the modules 702 can implement a supervisory function and assign individual tasks to the other modules 702 in response to received requests. Work distribution techniques can be used. Once a request is processed, results can be returned to the requestor via the WAN interface 710. Such operations can generally be automated. Furthermore, in some embodiments, the WAN interface 710 can connect multiple server systems 700 together to provide a scalable system capable of managing large volumes of activity. Other techniques for managing server systems and server farms (collections of cooperating server systems) can be used, including dynamic resource allocation and reallocation.

[0055] Server system 700 can interact with a variety of user-owned or user-operated devices over a wide area network, such as the Internet. One example of a user-operated device is shown in Figure 7 as client computing system 714. Client computing system 714 can be implemented as a consumer device, such as, for example, a smartphone, other mobile phone, tablet computer, wearable computing device (e.g., smart watch, eyeglasses), desktop computer, laptop computer, etc.

[0056] For example, client computing system 714 may communicate over WAN interface 710. Client computing system 714 may include computer components such as a processing unit 716, a storage device 718, a network interface 720, a user input device 722, and a user output device 724. Client computing system 714 may be a computing device implemented in various form factors, such as a desktop computer, a laptop computer, a tablet computer, a smartphone, other mobile computing device, a wearable computing device, etc.

[0057] The processor 716 and storage device 718 may be similar to the processing unit 704 and local storage 706 described above. An appropriate device may be selected based on the demands placed on the client computing system 714; for example, the client computing system 714 may be implemented as a "thin" client with limited processing power or as a high-performance computing device. The client computing system 714 may be provided with program code executable by the processing unit 716 to enable various interactions with the server system 700.

[0058] The network interface 720 may provide a connection to a network 726, such as a wide area network (e.g., the Internet), to which the WAN interface 710 of the server system 700 is also connected. In various embodiments, the network interface 720 may include a wired interface (e.g., Ethernet) and / or a wireless interface implementing various RF data communication standards, such as Wi-Fi, Bluetooth, or cellular data network standards (e.g., 3G, 4G, LTE, etc.).

[0059] User input device 722 may include any device through which a user can provide signals to client computing system 714, which can interpret the signals as indicating particular user requests or information. In various embodiments, user input device 722 may include any or all of a keyboard, touchpad, touchscreen, mouse or other pointing device, scroll wheel, click wheel, dial, button, switch, keypad, microphone, etc.

[0060] The user output device(s) 724 may include any device through which the client computing system 714 can provide information to a user. For example, the user output device(s) 724 may include a display for displaying images generated by or delivered to the client computing system 714. The display may incorporate various image generation technologies, such as, for example, a liquid crystal display (LCD), a light emitting diode (LED) including an organic light emitting diode (OLED), a projection system, a cathode ray tube (e.g., a CRT), etc., along with supporting electronics (e.g., digital-to-analog or analog-to-digital converter, a signal processor, etc.). Some embodiments may include a device such as a touchscreen that functions as both an input and output device. In some embodiments, other user output devices 724 may be provided in addition to or instead of a display. Examples include indicator lights, speakers, tactile "display" devices, printers, etc.

[0061] Some embodiments include electronic components such as a microprocessor, storage, and memory that store computer program instructions on a computer-readable storage medium. Many of the features described herein can be implemented as a process specified as a set of program instructions encoded on a computer-readable storage medium. These program instructions, when executed by one or more processing units, cause the processing units to perform various operations indicated in the program instructions. Examples of program instructions or computer code include machine code, such as produced by a compiler, and files containing higher-level code that is executed by a computer, electronic component, or microprocessor using an interpreter. Through appropriate programming, processing units 704 and 716 can provide various functions for server system 700 and client computing system 714, including any of the functions described herein as being performed by a server or client, or other functions.

[0062] It will be appreciated that the server system 700 and the client computing system 714 are exemplary and that variations and modifications are possible. Computer systems used in connection with embodiments of the present disclosure may include other functionality not specifically described herein. Additionally, while the server system 700 and the client computing system 714 are described with reference to particular blocks, it should be understood that these blocks are defined for ease of description and are not intended to imply a particular physical organization of component parts. For example, different blocks may, but need not, be located in the same facility, in the same server rack, or on the same motherboard. Furthermore, the blocks need not correspond to physically separate components. The blocks may be configured to perform various operations, for example, by programming a processor or providing appropriate control circuitry, and the various blocks may or may not be reconfigurable, depending on how the initial configuration is obtained. Embodiments of the present disclosure may be realized in a variety of apparatuses, including electronic devices implemented using any combination of circuitry and software.

[0063] While the present disclosure has been described with reference to specific embodiments, those skilled in the art will recognize that numerous variations are possible. Embodiments of the present disclosure can be implemented using various computer systems and communication technologies, including, but not limited to, the specific examples described herein. Embodiments of the present disclosure can be implemented using any combination of dedicated components and / or programmable processors and / or other programmable devices. The various processes described herein can be implemented on the same processor or on multiple different processors in any combination. Where a component is described as being configured to perform a particular operation, such configuration can be achieved, for example, by designing electronic circuitry to perform the operation, by programming a programmable electronic circuit (such as a microprocessor) to perform the operation, or any combination thereof. Furthermore, while the above-described embodiments may refer to specific hardware and software components, those skilled in the art will recognize that different combinations of hardware and / or software components can also be used, and that a particular operation described as being implemented in hardware can also be implemented in software, or vice versa.

[0064] A computer program incorporating various features of the present disclosure may be encoded on and stored on a variety of computer-readable storage media, with suitable media including magnetic disks or tapes, optical storage media such as compact disks (CDs) or digital versatile disks (DVDs), flash memory, and other non-transitory media. A computer-readable medium encoded with the program code may be packaged with a compatible electronic device, or the program code may be provided separately from the electronic device (e.g., via internet download or as a separately packaged computer-readable storage medium).

[0065] Therefore, although the present disclosure has been described in connection with specific embodiments, it will be appreciated that the present disclosure is intended to cover all modifications and equivalents that come within the scope of the appended claims.

Claims

1. 1. A method for determining primary site from a biomedical image, comprising: identifying, by a computing system, a first biomedical image of a first sample from one of the primary site or the secondary site associated with a condition of the first subject; applying, by the computing system, the first biomedical image to a site prediction model comprising a plurality of weights to determine the primary site of the condition, the site prediction model being trained using a training dataset having a plurality of examples, each example comprising: a second biomedical image of a second sample from one of the primary or secondary sites of the condition in the second subject from which the second sample was obtained; a first label identifying one of the primary site or the secondary site of the second sample from which the second biomedical image was obtained; and a second label identifying the primary site of the condition in the second subject; applying, storing, by the computing system, an association between the first biomedical image and the primary site determined using the site prediction model; and A method comprising:

2. The method of claim 1 , further comprising providing, by the computing system, the association between the first biomedical image and the primary site.

3. 10. The method of claim 1, wherein applying further comprises applying the first biomedical image to the site prediction model to determine a plurality of candidate primary sites of the condition in the first subject.

4. 10. The method of claim 1, wherein applying further comprises applying the first biomedical image to the site prediction model to determine a confidence score for the primary site of the condition.

5. 10. The method of claim 1, wherein applying further comprises applying the first biomedical image to the site prediction model to determine a ranking of the plurality of candidate primary sites.

6. The method of claim 1 , wherein identifying the first biomedical image further comprises obtaining the first biomedical image of the first sample via a tissue imaging means.

7. 2. The method of claim 1, wherein the weights of the site prediction model are configured into: (i) a plurality of convolution blocks for generating a plurality of feature maps from the biomedical image; and (ii) an activation layer for determining the primary site of the condition based on the plurality of feature maps.

8. 1. A method of training a model to determine primary site from a biomedical image, comprising: and identifying, by a computing system, a training data set having a plurality of examples, each example of the plurality of examples comprising: a biomedical image of the sample from one of the primary or secondary sites of the condition in the second subject from which the sample was obtained; a first label identifying one of the primary site or the secondary site of a second sample from which the biomedical image was obtained; and a second label identifying the primary site of the condition in the second subject; and applying, by the computing system, the biomedical image of each of the plurality of examples in the training dataset to a site prediction model including a plurality of weights to determine the site of the condition of the sample; comparing, by the computing system, for each example of the plurality of examples of the training dataset, the primary site identified in the label of the example with the site determined by the site prediction model; updating, by the computing system, at least one of the weights of the region prediction model based on a comparison between the first region identified in the label of each example and the second region determined by the region prediction model; storing, by the computing system, the plurality of weights of the region prediction model in one or more data structures; A method comprising:

9. 10. The method of claim 8, further comprising applying, by the computing system, an acquired biomedical image of a second sample to the site prediction model to determine a second site of the second sample.

10. 10. The method of claim 8, further comprising: in response to determining, by the computing system, that a loss metric for at least one example of the plurality of examples exceeds a threshold, reapplying the biomedical image of the at least one example to the site prediction model.

11. 9. The method of claim 8, wherein updating further comprises updating at least one of the plurality of weights of the site prediction model using a classification loss determined based on the comparison.

12. 10. The method of claim 8, wherein applying further comprises applying the biomedical image in each of the plurality of examples of the training dataset to determine a plurality of candidate primary sites of the condition in the first subject.

13. 9. The method of claim 8, wherein applying further comprises applying the biomedical image in each of the plurality of examples of the training dataset to determine a confidence score for the primary site of the condition.

14. 10. The method of claim 8, wherein the weights of the site prediction model are configured into: (i) a plurality of convolution blocks for generating a plurality of feature maps from the biomedical image; and (ii) an activation layer for determining the primary site of the condition based on the plurality of feature maps.

15. 1. A system for determining primary site from biomedical images of metastases, comprising:

1. A computing system having one or more processors coupled to a memory, identifying a first biomedical image of a first sample from one of a primary site or a secondary site associated with a condition of the first subject; determining the primary site of the condition by applying the biomedical image to a site prediction model comprising a plurality of weights, the site prediction model being trained using a training dataset having a plurality of examples, each example comprising: a second biomedical image of a second sample from one of the primary or secondary sites of the condition in the second subject from which the second sample was obtained; a first label identifying one of the primary site or the secondary site of the second sample from which the second biomedical image was obtained; and a second label identifying the primary site of the condition in the second subject; applying, storing an association between the first biomedical image and the primary site determined using the site prediction model; A system comprising a computing system configured to:

16. The system of claim 15 , wherein the computing system is further configured to provide the association between the first biomedical image and the primary site.

17. 16. The system of claim 15, wherein the computing system is further configured to apply the first biomedical image to the site prediction model to determine a plurality of candidate primary sites of the condition in the first subject.

18. 16. The system of claim 15, wherein the computing system is further configured to apply the first biomedical image to the site prediction model to determine a confidence score for the primary site of the condition.

19. 16. The system of claim 15, wherein the computing system is further configured to apply the first biomedical image to the site prediction model to determine a ranking of the plurality of candidate primary sites.

20. 16. The system of claim 15, wherein the weights of the site prediction model are configured into: (i) a plurality of convolution blocks for generating a plurality of feature maps from the biomedical image; and (ii) an activation layer for determining the primary site of the condition based on the plurality of feature maps.