{"id":3507,"date":"2025-09-01T11:12:58","date_gmt":"2025-09-01T09:12:58","guid":{"rendered":"https:\/\/neuraldesigner.com\/learning\/lung-cancer\/"},"modified":"2026-09-18T16:07:52","modified_gmt":"2026-09-18T14:07:52","slug":"lung-cancer","status":"publish","type":"learning","link":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/","title":{"rendered":"Lung cancer survey classification with machine learning"},"content":{"rendered":"<style data-nd-chart-migration=\"1\">\n.nd-chart-bundle{width:100%;max-width:760px;min-width:0;margin:24px auto;box-sizing:border-box;position:relative;overflow-x:auto;text-align:center;background:#fff;color:#30343b}\n.nd-chart-bundle .nd-chart-host{width:100%;height:440px;min-width:0;box-sizing:border-box}\n.nd-chart-bundle:not(.is-ready) .nd-chart-host{position:absolute;visibility:hidden}\n.nd-chart-bundle.is-ready .nd-chart-fallback{display:none!important}\n.nd-chart-bundle .nd-chart-fallback{display:block;margin:0 auto!important;width:100%;height:auto;max-width:100%}\n.nd-chart-bundle>script,.nd-chart-bundle>br,.nd-chart-bundle>p:empty{display:none!important}\n@media(max-width:600px){.nd-chart-bundle{margin:20px auto}.nd-chart-bundle .nd-chart-host{height:440px}}\n<\/style>\n<style>\n.nds{--nds-code-bg:#f3f7fa;--nds-code-fg:#12354b;width:100vw;margin-left:calc(50% - 50vw);padding:22px 24px 14px;background:#eee;color:#1b2635;font-family:\"Outfit\",\"Roboto\",Arial,sans-serif}\n.nds *{box-sizing:border-box}.nds-wrap{width:min(100%,1200px);margin:0 auto}.nds a{text-decoration:none;color:#2d799f}\n.nds-executive{margin:0 0 34px;padding:32px;border-radius:20px;background:linear-gradient(135deg,#12354b,#245e80);color:#fff}.nds-executive h2{margin:0 0 12px;color:#fff;font-size:30px}.nds-executive p{font-size:18px;line-height:1.55}\n.nds-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}.nds-kpi{padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.1)}.nds-kpi strong{display:block;font-size:25px}.nds-kpi span{font-size:13px}\n.nds-actions,.nds-audience,.nds-downloads{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:22px 0}.nds-actions a,.nds-downloads a{padding:12px 20px;border-radius:24px;background:#245e80;color:#fff;font-weight:700}.nds-executive .nds-actions a{background:#fff;color:#12354b}\n.nds-toc{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 42px;padding:0;list-style:none}.nds-toc a,.nds-audience span{display:block;padding:9px 14px;border-radius:20px;background:#e9f2f8;color:#12354b;font-weight:600}\n.nds-card{margin:0 0 54px;scroll-margin-top:90px}.nds-card h2{margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #dbe5ec;color:#001233;font-size:24px}.nds-card p,.nds-card li{font-size:16.5px;line-height:1.6}.nds-card img{display:block;width:auto;max-width:min(640px,100%);height:auto;margin:24px auto;border-radius:12px}.nds-card img.nds-architecture{width:min(1000px,100%);max-width:100%}\n.nds-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.nds-value{padding:20px;border:1px solid #dce8ef;border-radius:14px;background:#f8fbfd}.nds-note{margin:20px 0;padding:18px 20px;border-left:4px solid #56a1c8;border-radius:0 12px 12px 0;background:#f6fafc}.nds-note--warning,.nds-use-boundary{border-left-color:#d79a29;background:#fff9ed}\n.nds-table-scroll{max-width:100%;overflow-x:auto}.nds-card table{width:auto;max-width:100%;margin:24px auto;border-collapse:collapse;background:#fff}.nds-card th,.nds-card td{padding:11px 16px;border-bottom:1px solid #e2e9ee}.nds-card thead th{background:#12354b!important;color:#fff!important}.nds-card tbody th{background:#eaf2f6!important;color:#12354b!important;text-align:left}.nds-card tbody tr:nth-child(even) th{background:#f4f8fa!important}.nds-card tbody td{color:#33424f!important}\n.nds-figure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.nds-figure-grid figure,.nds-architecture-figure{margin:0;padding:16px;border:1px solid #dce8ef;border-radius:15px;background:#f8fbfd}.nds-figure-grid img{width:100%;max-width:100%;margin:0 auto 12px}.nds-card figcaption{color:#405361;font-size:14px;line-height:1.45}\n.nds pre,.nds .wp-block-code,.nds pre[class*=\"language-\"]{display:block;max-width:100%;overflow:auto;padding:18px 20px!important;border:1px solid #d5e2e9!important;border-radius:12px!important;background:var(--nds-code-bg)!important;color:var(--nds-code-fg)!important;box-shadow:none!important;text-shadow:none!important;white-space:pre}\n.nds pre code,.nds pre code *,.nds .wp-block-code code,.nds .wp-block-code code *{border:0!important;background:transparent!important;color:var(--nds-code-fg)!important;box-shadow:none!important;text-shadow:none!important;font-family:Consolas,\"Liberation Mono\",monospace!important;font-size:14px;line-height:1.55}\n.nds :not(pre)>code{padding:.08em .32em;border-radius:4px;background:#e6eef3!important;color:#12354b!important}.nds .nds-expression{max-width:100%;overflow:auto;margin:22px auto;padding:18px 20px;border:1px solid #d5e2e9;border-radius:12px;background:#fff!important;color:#12354b!important;text-align:center}.nds .nds-expression math,.nds .nds-expression mjx-container,.nds .nds-expression .MathJax{background:transparent!important;color:#12354b!important}\n.nds .nds-calculator-grid>br,.nds .nds-calculator-grid>p:empty{display:none!important}\n@media(max-width:820px){.nds-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.nds-value-grid{grid-template-columns:1fr}}@media(max-width:620px){.nds{padding:12px 14px}.nds-kpis,.nds-figure-grid{grid-template-columns:1fr}.nds-executive{padding:24px 20px}.nds-card table{font-size:13px}.nds-card th,.nds-card td{padding:9px 8px}}\n<\/style>\n<style>.nds-card h3{margin:27px 0 12px;color:#12354b;font-size:20px}.nds-centered-figure{width:min(700px,100%);margin:24px auto;padding:16px;border:1px solid #dce8ef;border-radius:15px;background:#f8fbfd}.nds-compact-figure{width:min(560px,100%)}.nds-centered-figure img,.nds-roc-figure img{width:100%;max-width:100%;margin:0 auto 12px}.nds-roc-figure{width:min(600px,100%);margin:24px auto;padding:16px;border:1px solid #dce8ef;border-radius:15px;background:#f8fbfd}.nds-validation-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;align-items:start}.nds-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:24px 0}.nds-flow div{display:flex;min-height:102px;align-items:center;justify-content:center;padding:13px 8px;border-radius:13px;background:#12354b;color:#fff;text-align:center;font-weight:700}.nds-calculator{margin:28px 0;padding:24px;border:1px solid #cfe1eb;border-radius:18px;background:#f7fbfd}.nds-calculator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.nds-calculator-grid>br,.nds-calculator-grid>p:empty{display:none!important}.nds-calculator label{display:flex;min-width:0;flex-direction:column;gap:6px;color:#12354b;font-size:13px;font-weight:700}.nds-calculator input,.nds-calculator select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #b9cfdb;border-radius:9px;background:#fff;color:#173246;font:inherit}.nds-calculator .is-invalid{border-color:#c94747;background:#fff8f8}.nds-calculator-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:20px 0}.nds-calculator button{padding:11px 19px;border:0;border-radius:24px;background:#245e80;color:#fff;font:inherit;font-weight:700;cursor:pointer}.nds-calculator .nds-secondary-action{background:#e1edf3;color:#12354b}.nds-calculator-error{min-height:24px;color:#a12828;text-align:center;font-weight:600}.nds-health-score{max-width:520px;margin:0 auto;padding:18px;border:1px solid #d6e4eb;border-radius:13px;background:#fff;text-align:center}.nds-health-score span,.nds-health-score strong{display:block}.nds-health-score strong{margin:6px 0;color:#12354b;font-size:27px}@media(max-width:1000px){.nds-flow{grid-template-columns:repeat(3,1fr)}.nds-validation-grid{grid-template-columns:1fr}}@media(max-width:760px){.nds-flow,.nds-calculator-grid{grid-template-columns:1fr}}<\/style>\n<div class=\"nds\" data-health-profile=\"biomedical-research\">\n<div class=\"nds-wrap\">\n<section class=\"nds-executive\">\n<h2>Classify historical lung-cancer survey records with a transparent baseline model<\/h2>\n<p>This reproducible Neural Designer example maps 15 demographic, behavioural and symptom fields to the binary label in a 309-row public survey table. On 61 internally held-out records, the fixed direct classifier reaches ROC AUC 0.989 and detects 50 of 54 positive labels at threshold 0.50. The collection lacks the provenance and reference-standard documentation required for clinical screening or diagnosis.<\/p>\n<div class=\"nds-kpis\">\n<div class=\"nds-kpi\"><strong>309<\/strong><span>public survey records<\/span><\/div>\n<div class=\"nds-kpi\"><strong>61<\/strong><span>internally held-out testing records<\/span><\/div>\n<div class=\"nds-kpi\"><strong>0.989<\/strong><span>testing ROC AUC (95% CI 0.971\u20131.000)<\/span><\/div>\n<div class=\"nds-kpi\"><strong>92.6%<\/strong><span>testing sensitivity at score 0.50<\/span><\/div>\n<\/div>\n<div class=\"nds-actions\"><a href=\"#6-clinical-validation\">Review the evidence boundary<\/a><a href=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung_cancer.csv\">Review the data<\/a><\/div>\n<\/section>\n<ul class=\"nds-toc\">\n<li><a href=\"#1-intended-use\">Question and use<\/a><\/li>\n<li><a href=\"#2-cohort-endpoint\">Cohort and endpoint<\/a><\/li>\n<li><a href=\"#3-model\">Model<\/a><\/li>\n<li><a href=\"#4-training\">Training<\/a><\/li>\n<li><a href=\"#5-selection\">Selection<\/a><\/li>\n<li><a href=\"#6-clinical-validation\">Validation<\/a><\/li>\n<li><a href=\"#7-workflow\">Workflow<\/a><\/li>\n<li><a href=\"#8-safety\">Safety and validity<\/a><\/li>\n<\/ul>\n<section id=\"1-intended-use\" class=\"nds-card\">\n<h2>1. Clinical question and intended use<\/h2>\n<p>The model reproduces the binary label attached to records in the supplied survey table. Its defensible use is machine-learning education, software verification and retrospective benchmarking. It does not estimate eligibility for lung-cancer screening and cannot establish whether a person has cancer.<\/p>\n<p>Real screening programmes use defined eligibility criteria and validated methods. For example, current US guidance identifies low-dose computed tomography (LDCT) as the recommended screening test for eligible high-risk adults; this questionnaire model is not an alternative.<\/p>\n<div class=\"nds-value-grid\">\n<div class=\"nds-value\">\n<h3>Inspect imbalance<\/h3>\n<p>Understand why 87.4% positive labels make accuracy alone a misleading performance summary.<\/p>\n<\/div>\n<div class=\"nds-value\">\n<h3>Audit a compact model<\/h3>\n<p>Review a direct 15-input sigmoid classifier with sixteen trainable parameters and exact exported coefficients.<\/p>\n<\/div>\n<div class=\"nds-value\">\n<h3>Expose validation risk<\/h3>\n<p>See how duplicated rows and undocumented label provenance limit otherwise strong internal metrics.<\/p>\n<\/div>\n<\/div>\n<div class=\"nds-audience\"><span>Clinical data science<\/span><span>Epidemiology education<\/span><span>Medical ML research<\/span><span>Biostatistics<\/span><span>Model governance<\/span><\/div>\n<div class=\"nds-note nds-use-boundary\"><strong>Intended-use boundary.<\/strong> This is an educational survey-record classifier. It must not determine screening eligibility, reassure symptomatic people, diagnose lung cancer or replace LDCT, imaging review, pathology or specialist care.<\/div>\n<\/section>\n<section id=\"2-cohort-endpoint\" class=\"nds-card\">\n<h2>2. Cohort, measurements and endpoint<\/h2>\n<p>The local <a href=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung_cancer.csv\"><code>lung_cancer.csv<\/code><\/a> contains 309 rows, 15 inputs and one binary target. It is a cleaned copy of the widely redistributed <a href=\"https:\/\/www.kaggle.com\/datasets\/mysarahmadbhat\/lung-cancer\">Kaggle \u201cSurvey Lung Cancer\u201d table<\/a>. No values are missing, age spans 21\u201387 years, and all other predictors are binary categories.<\/p>\n<div class=\"nds-note nds-note--warning\"><strong>Source limitation.<\/strong> The downloadable file and repository page do not provide a primary collection protocol, recruitment setting, dates, participant identifiers, diagnostic reference standard, assay\/imaging confirmation or label-adjudication procedure. Rows are therefore described as survey records, not independently verified patients.<\/div>\n<div class=\"nds-table-scroll\">\n<table>\n<thead>\n<tr>\n<th>Subset<\/th>\n<th>Rows<\/th>\n<th><code>yes<\/code><\/th>\n<th><code>no<\/code><\/th>\n<th>Purpose<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th>Training<\/th>\n<td>187<\/td>\n<td>160<\/td>\n<td>27<\/td>\n<td>Estimate coefficients<\/td>\n<\/tr>\n<tr>\n<th>Selection<\/th>\n<td>61<\/td>\n<td>56<\/td>\n<td>5<\/td>\n<td>Monitor optimization<\/td>\n<\/tr>\n<tr>\n<th>Testing<\/th>\n<td>61<\/td>\n<td>54<\/td>\n<td>7<\/td>\n<td>Internal final analysis<\/td>\n<\/tr>\n<tr>\n<th>Total<\/th>\n<td>309<\/td>\n<td>270<\/td>\n<td>39<\/td>\n<td>Random 60\/20\/20 row split<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<figure class=\"nds-centered-figure nds-compact-figure\">\n<div class=\"nd-chart-bundle\" tabindex=\"0\" role=\"group\" aria-label=\"Interactive chart; scroll horizontally on narrow screens\" data-native-chart=\"nd-3507-00\">\n<div class=\"nd-chart-host\" id=\"nd-3507-00\" role=\"img\" aria-label=\"Interactive chart: Distribution of positive and negative lung-cancer labels across 309 survey records\"><\/div>\n<p><img decoding=\"async\" class=\"nd-chart-fallback\" src=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-class-distribution-2026.png\" alt=\"Distribution of positive and negative lung-cancer labels across 309 survey records\"><script type=\"application\/json\" id=\"nd-3507-00-data\">{\"config\":{\"displayModeBar\":true,\"displaylogo\":false,\"editable\":false,\"responsive\":true,\"scrollZoom\":true,\"toImageButtonOptions\":{\"filename\":\"neural-designer-chart\",\"format\":\"svg\"}},\"data\":[{\"direction\":\"clockwise\",\"hovertemplate\":\"%{label}\\u003cbr\\u003e%{value}\\u003cbr\\u003e%{percent}\\u003cextra\\u003e\\u003c\/extra\\u003e\",\"labels\":[\"no\",\"yes\"],\"marker\":{\"colors\":[\"#209fdf\",\"#092d40\"]},\"showlegend\":true,\"sort\":false,\"textinfo\":\"label+percent\",\"type\":\"pie\",\"values\":[12.600000381469727,87.4000015258789]}],\"layout\":{\"autosize\":true,\"font\":{\"color\":\"#30343b\",\"family\":\"Arial, sans-serif\",\"size\":14},\"hovermode\":\"closest\",\"legend\":{},\"margin\":{\"b\":68,\"l\":72,\"pad\":4,\"r\":36,\"t\":112},\"paper_bgcolor\":\"#ffffff\",\"plot_bgcolor\":\"#ffffff\",\"title\":{\"automargin\":true,\"pad\":{\"t\":48},\"text\":\"lung_cancer pie chart\",\"x\":0.5,\"xanchor\":\"center\",\"y\":1,\"yanchor\":\"top\",\"yref\":\"container\"}}}<\/script><\/div><figcaption>The positive label represents 87.4% of the table. This is a dataset class proportion, not disease prevalence in a screening population.<\/figcaption><\/figure>\n<div class=\"nds-table-scroll\">\n<table>\n<thead>\n<tr>\n<th>Group<\/th>\n<th>CSV fields<\/th>\n<th>Encoding<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th>Demographics<\/th>\n<td><code>gender<\/code>, <code>age<\/code><\/td>\n<td>Female\/male; age in years<\/td>\n<\/tr>\n<tr>\n<th>Behaviour and context<\/th>\n<td><code>smoking<\/code>, <code>alcohol_consuming<\/code>, <code>peer_pressure<\/code><\/td>\n<td>No\/yes<\/td>\n<\/tr>\n<tr>\n<th>Symptoms and history<\/th>\n<td><code>yellow_fingers<\/code>, <code>anxiety<\/code>, <code>chronic_disease<\/code>, <code>fatigue<\/code>, <code>allergy<\/code>, <code>wheezing<\/code>, <code>coughing<\/code>, <code>shortness_of_breath<\/code>, <code>swallowing_difficulty<\/code>, <code>chest_pain<\/code><\/td>\n<td>No\/yes<\/td>\n<\/tr>\n<tr>\n<th>Target<\/th>\n<td><code>lung_cancer<\/code><\/td>\n<td><code>no=0<\/code>, <code>yes=1<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<figure class=\"nds-centered-figure\">\n<div class=\"nd-chart-bundle\" tabindex=\"0\" role=\"group\" aria-label=\"Interactive chart; scroll horizontally on narrow screens\" data-native-chart=\"nd-3507-01\">\n<div class=\"nd-chart-host\" id=\"nd-3507-01\" role=\"img\" aria-label=\"Interactive chart: Pearson correlations between encoded survey fields and the lung-cancer label\"><\/div>\n<p><img decoding=\"async\" class=\"nd-chart-fallback\" src=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-input-target-correlations-2026.png\" alt=\"Pearson correlations between encoded survey fields and the lung-cancer label\"><script type=\"application\/json\" id=\"nd-3507-01-data\">{\"config\":{\"displayModeBar\":true,\"displaylogo\":false,\"editable\":false,\"responsive\":true,\"scrollZoom\":true,\"toImageButtonOptions\":{\"filename\":\"neural-designer-chart\",\"format\":\"svg\"}},\"data\":[{\"marker\":{\"color\":\"#209fdf\"},\"name\":\"\",\"opacity\":1,\"orientation\":\"h\",\"showlegend\":false,\"type\":\"bar\",\"x\":[0.14499999582767487,0.1509999930858612,0.1809999942779541,0.1860000044107437,0.1899999976158142,0.24899999797344208,0.24899999797344208,0.25999999046325684,0.289000004529953,0.328000009059906],\"y\":[\"anxiety\",\"fatigue\",\"yellow_fingers\",\"peer_pressure\",\"chest_pain\",\"wheezing\",\"coughing\",\"swallowing_difficulty\",\"alcohol_consuming\",\"allergy\"]}],\"layout\":{\"autosize\":true,\"font\":{\"color\":\"#30343b\",\"family\":\"Arial, sans-serif\",\"size\":14},\"hovermode\":\"closest\",\"margin\":{\"b\":68,\"l\":72,\"pad\":4,\"r\":36,\"t\":112},\"paper_bgcolor\":\"#ffffff\",\"plot_bgcolor\":\"#ffffff\",\"title\":{\"automargin\":true,\"pad\":{\"t\":48},\"text\":\"lung_cancer Pearson correlations chart\",\"x\":0.5,\"xanchor\":\"center\",\"y\":1,\"yanchor\":\"top\",\"yref\":\"container\"},\"xaxis\":{\"automargin\":true,\"gridcolor\":\"#d9dde3\",\"linecolor\":\"#9aa3ad\",\"range\":[-1,1],\"title\":{\"text\":\"Correlation\"},\"zerolinecolor\":\"#aeb6c2\"},\"yaxis\":{\"automargin\":true,\"autorange\":\"reversed\",\"categoryarray\":[\"anxiety\",\"fatigue\",\"yellow_fingers\",\"peer_pressure\",\"chest_pain\",\"wheezing\",\"coughing\",\"swallowing_difficulty\",\"alcohol_consuming\",\"allergy\"],\"categoryorder\":\"array\",\"gridcolor\":\"#d9dde3\",\"linecolor\":\"#9aa3ad\",\"type\":\"category\",\"zerolinecolor\":\"#aeb6c2\"}}}<\/script><\/div><figcaption><code>allergy<\/code>, <code>alcohol_consuming<\/code> and <code>swallowing_difficulty<\/code> have the largest displayed coefficients. These are coding-dependent associations, not causal effects, clinical importance or verified risk factors.<\/figcaption><\/figure>\n<div class=\"nds-note nds-note--provenance\"><strong>Split-integrity audit.<\/strong> The 309 rows collapse to 276 unique complete records. Six testing rows exactly duplicate a training row, and seven testing rows share the same 15-input vector with training. This leakage can make internal test performance optimistic; a duplicate-grouped split is required before stronger claims.<\/div>\n<\/section>\n<section id=\"3-model\" class=\"nds-card\">\n<h2>3. Model<\/h2>\n<p>Fourteen binary inputs use minimum\u2013maximum scaling and age uses mean-and-standard-deviation scaling. They connect directly to one sigmoid output, with no hidden layer. The fixed model contains fifteen weights and one bias, so it is a logistic classifier expressed in Neural Designer&#8217;s network framework.<\/p>\n<div class=\"nds-note\"><strong>Output contract.<\/strong> Larger values rank a record toward the source label <code>lung_cancer=yes<\/code>. The sigmoid output has not been independently calibrated, so it is a model score\u2014not an individual probability of cancer.<\/div>\n<figure class=\"nds-architecture-figure\" data-model-stage=\"initial\"><img decoding=\"async\" class=\"nds-architecture\" src=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-network-architecture-2026.png\" alt=\"Direct lung-cancer survey classifier with fifteen inputs and one sigmoid output\"><figcaption>Fixed initial and final 15\u20131 architecture. No hidden layer or neuron-selection experiment was used.<\/figcaption><\/figure>\n<\/section>\n<section id=\"4-training\" class=\"nds-card\">\n<h2>4. Training strategy<\/h2>\n<p>The model minimizes weighted squared error with the quasi-Newton method and L2 regularization weight 0.01. To counter the 270-to-39 class imbalance, the stored project assigns weight 3.9615 to negative records and 0.5722 to positive records.<\/p>\n<p>Across 28 stored iterations (epochs 0\u201327), training error falls from 0.6908 to 0.2006 and selection error from 0.3544 to 0.1447. Optimization stops on minimum loss decrease.<\/p>\n<figure class=\"nds-centered-figure\">\n<div class=\"nd-chart-bundle\" tabindex=\"0\" role=\"group\" aria-label=\"Interactive chart; scroll horizontally on narrow screens\" data-native-chart=\"nd-3507-03\">\n<div class=\"nd-chart-host\" id=\"nd-3507-03\" role=\"img\" aria-label=\"Interactive chart: Weighted-squared training and selection error histories over 28 stored iterations\"><\/div>\n<p><img decoding=\"async\" class=\"nd-chart-fallback\" src=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-training-history-2026.png\" alt=\"Weighted-squared training and selection error histories over 28 stored iterations\"><script type=\"application\/json\" id=\"nd-3507-03-data\">{\"config\":{\"displayModeBar\":true,\"displaylogo\":false,\"editable\":false,\"responsive\":true,\"scrollZoom\":true,\"toImageButtonOptions\":{\"filename\":\"neural-designer-chart\",\"format\":\"svg\"}},\"data\":[{\"connectgaps\":false,\"line\":{\"color\":\"#529cc2\",\"dash\":\"solid\",\"width\":2},\"mode\":\"lines\",\"name\":\"Training error\",\"opacity\":1,\"showlegend\":true,\"type\":\"scatter\",\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],\"y\":[0.6909999847412109,0.3700000047683716,0.30799999833106995,0.2460000067949295,0.22300000488758087,0.21199999749660492,0.2070000022649765,0.20399999618530273,0.20200000703334808,0.20100000500679016,0.20100000500679016,0.20200000703334808,0.20200000703334808,0.20200000703334808,0.20200000703334808,0.20100000500679016,0.20100000500679016,0.20000000298023224,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016,0.20100000500679016]},{\"connectgaps\":false,\"line\":{\"color\":\"#ed982a\",\"dash\":\"solid\",\"width\":2},\"mode\":\"lines\",\"name\":\"Selection error\",\"opacity\":1,\"showlegend\":true,\"type\":\"scatter\",\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],\"y\":[0.3540000021457672,0.2630000114440918,0.17599999904632568,0.14800000190734863,0.1379999965429306,0.1340000033378601,0.1340000033378601,0.13600000739097595,0.13899999856948853,0.14100000262260437,0.1420000046491623,0.1420000046491623,0.1420000046491623,0.1420000046491623,0.14300000667572021,0.14300000667572021,0.14300000667572021,0.14399999380111694,0.14399999380111694,0.14399999380111694,0.14499999582767487,0.14499999582767487,0.14499999582767487,0.14499999582767487,0.14499999582767487,0.14499999582767487,0.14499999582767487,0.14499999582767487]}],\"layout\":{\"autosize\":true,\"font\":{\"color\":\"#30343b\",\"family\":\"Arial, sans-serif\",\"size\":14},\"hovermode\":\"closest\",\"legend\":{\"orientation\":\"h\",\"x\":0.5,\"xanchor\":\"center\",\"y\":-0.24,\"yanchor\":\"top\"},\"margin\":{\"b\":120,\"l\":72,\"pad\":4,\"r\":36,\"t\":112},\"paper_bgcolor\":\"#ffffff\",\"plot_bgcolor\":\"#ffffff\",\"title\":{\"automargin\":true,\"pad\":{\"t\":48},\"text\":\"Quasi-Newton method error history\",\"x\":0.5,\"xanchor\":\"center\",\"y\":1,\"yanchor\":\"top\",\"yref\":\"container\"},\"xaxis\":{\"automargin\":true,\"gridcolor\":\"#d9dde3\",\"linecolor\":\"#9aa3ad\",\"range\":[0,27],\"title\":{\"text\":\"Epoch\"},\"zerolinecolor\":\"#aeb6c2\"},\"yaxis\":{\"automargin\":true,\"gridcolor\":\"#d9dde3\",\"linecolor\":\"#9aa3ad\",\"range\":[0,0.7001000000000001],\"title\":{\"text\":\"WeightedSquaredError\"},\"zerolinecolor\":\"#aeb6c2\"}}}<\/script><\/div><figcaption>Selection error reaches its minimum early and then increases slightly. The displayed final export is reported without claiming that the last iteration is an independently chosen optimum.<\/figcaption><\/figure>\n<\/section>\n<section id=\"5-selection\" class=\"nds-card\">\n<h2>5. Model selection and baseline<\/h2>\n<p><strong>No neuron selection, input selection or architecture selection was performed.<\/strong> The direct 15\u20131 classifier is both the initial and final model. Given the small, duplicated table, adding hidden neurons would increase capacity without repairing the primary evidence limitations.<\/p>\n<div class=\"nds-table-scroll\">\n<table>\n<thead>\n<tr>\n<th>Reference<\/th>\n<th>Testing accuracy<\/th>\n<th>Testing specificity<\/th>\n<th>Interpretation<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th>Majority-class baseline<\/th>\n<td>88.5%<\/td>\n<td>0%<\/td>\n<td>Predict every row as <code>yes<\/code><\/td>\n<\/tr>\n<tr>\n<th>Fixed weighted classifier<\/th>\n<td>91.8%<\/td>\n<td>85.7%<\/td>\n<td>Separates six of seven negative labels at score 0.50<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>The baseline comparison shows why accuracy is secondary here: a trivial classifier already reaches 88.5% because negative labels are rare.<\/p>\n<\/section>\n<section id=\"6-clinical-validation\" class=\"nds-card\">\n<h2>6. Clinical validation<\/h2>\n<p>The final model is evaluated on 61 testing records containing 54 positive labels (88.5% observed test prevalence) and seven negative labels. Neural Designer reports ROC AUC 0.989 with a 95% confidence interval of 0.971\u20131.000.<\/p>\n<figure class=\"nds-roc-figure\">\n<div class=\"nd-chart-bundle\" tabindex=\"0\" role=\"group\" aria-label=\"Interactive chart; scroll horizontally on narrow screens\" data-native-chart=\"nd-3507-04\">\n<div class=\"nd-chart-host\" id=\"nd-3507-04\" role=\"img\" aria-label=\"Interactive chart: Testing ROC curve with area under the curve 0.989\"><\/div>\n<p><img decoding=\"async\" class=\"nd-chart-fallback\" src=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-testing-roc-2026.png\" alt=\"Testing ROC curve with area under the curve 0.989\"><script type=\"application\/json\" id=\"nd-3507-04-data\">{\"config\":{\"displayModeBar\":true,\"displaylogo\":false,\"editable\":false,\"responsive\":true,\"scrollZoom\":true,\"toImageButtonOptions\":{\"filename\":\"neural-designer-chart\",\"format\":\"svg\"}},\"data\":[{\"connectgaps\":false,\"fill\":\"tozeroy\",\"fillcolor\":\"rgba(82,156,194,0.300)\",\"line\":{\"color\":\"#ffffff\",\"dash\":\"solid\",\"width\":1},\"marker\":{\"color\":\"#529cc2\",\"size\":5,\"symbol\":\"circle\"},\"mode\":\"lines+markers\",\"name\":\"Random classifier\",\"opacity\":1,\"showlegend\":false,\"type\":\"scatter\",\"x\":[1,1,1,1,1,1,1,1,0.5714290142059326,0.4285709857940674,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.2857140004634857,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0.14285700023174286,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"y\":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0.9814810156822205,0.9814810156822205,0.9814810156822205,0.9814810156822205,0.9814810156822205,0.9629629850387573,0.9629629850387573,0.9629629850387573,0.9629629850387573,0.9629629850387573,0.9629629850387573,0.9629629850387573,0.9444440007209778,0.9444440007209778,0.9444440007209778,0.9444440007209778,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9259260296821594,0.9074069857597351,0.9074069857597351,0.8888890147209167,0.8888890147209167,0.8888890147209167,0.8888890147209167,0.8888890147209167,0.8888890147209167,0.8888890147209167,0.8703699707984924,0.8148149847984314,0.8148149847984314,0.8148149847984314,0.8148149847984314,0.8148149847984314,0.8148149847984314,0.8148149847984314,0.8148149847984314,0.7962960004806519,0.7777780294418335,0.7777780294418335,0.7592589855194092,0.7592589855194092,0.7407410144805908,0.7222219705581665,0.7037039995193481,0.6851850152015686,0.6851850152015686,0.6666669845581055,0.6481480002403259,0.5925930142402649,0.5370370149612427,0.48148098587989807,0.4444440007209778,0.38888901472091675,0.3518519997596741,0.2777779996395111,0.2222220003604889,0.14814800024032593,0.07407409697771072,0]},{\"connectgaps\":false,\"line\":{\"color\":\"#808080\",\"dash\":\"solid\",\"width\":1},\"mode\":\"lines\",\"name\":\"True Positive Rate (sensitivity)\",\"opacity\":1,\"showlegend\":false,\"type\":\"scatter\",\"x\":[0,1],\"y\":[0,1]},{\"connectgaps\":false,\"marker\":{\"color\":\"#ed982a\",\"size\":8,\"symbol\":\"circle\"},\"mode\":\"markers\",\"name\":\"True Positive Rate (sensitivity)\",\"opacity\":1,\"showlegend\":false,\"type\":\"scatter\",\"x\":[0],\"y\":[0.9259260296821594]}],\"layout\":{\"annotations\":[{\"font\":{\"color\":\"#404044\"},\"showarrow\":false,\"text\":\"Optimal Threshold\",\"x\":0.17,\"y\":0.8359260296821595},{\"font\":{\"color\":\"#404044\"},\"showarrow\":false,\"text\":\"Area under curve: 0.989\",\"x\":0.7,\"y\":0.02}],\"autosize\":true,\"font\":{\"color\":\"#30343b\",\"family\":\"Arial, sans-serif\",\"size\":14},\"hovermode\":\"closest\",\"margin\":{\"b\":68,\"l\":72,\"pad\":4,\"r\":36,\"t\":112},\"paper_bgcolor\":\"#ffffff\",\"plot_bgcolor\":\"#ffffff\",\"title\":{\"automargin\":true,\"pad\":{\"t\":48},\"text\":\"ROC chart\",\"x\":0.5,\"xanchor\":\"center\",\"y\":1,\"yanchor\":\"top\",\"yref\":\"container\"},\"xaxis\":{\"automargin\":true,\"gridcolor\":\"#d9dde3\",\"linecolor\":\"#9aa3ad\",\"range\":[0,1],\"title\":{\"text\":\"False Positive Rate (1-specificity)\"},\"zerolinecolor\":\"#aeb6c2\"},\"yaxis\":{\"automargin\":true,\"gridcolor\":\"#d9dde3\",\"linecolor\":\"#9aa3ad\",\"range\":[0,1],\"title\":{\"text\":\"True Positive Rate (sensitivity)\"},\"zerolinecolor\":\"#aeb6c2\"}}}<\/script><\/div><figcaption>The marked threshold 0.51 is selected from this same testing ROC curve and is descriptive only. The confusion matrix below uses the prespecified article reference threshold 0.50.<\/figcaption><\/figure>\n<h3>Operating point at score 0.50<\/h3>\n<p>At threshold 0.50, the model produces 50 true positives, four false negatives, one false positive and six true negatives.<\/p>\n<div class=\"nds-validation-grid\">\n<div class=\"nds-table-scroll\">\n<table class=\"nds-confusion\">\n<thead>\n<tr>\n<th>Actual \/ predicted<\/th>\n<th>Positive<\/th>\n<th>Negative<\/th>\n<th>Total<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th>Positive label<\/th>\n<td>50<\/td>\n<td>4<\/td>\n<td>54<\/td>\n<\/tr>\n<tr>\n<th>Negative label<\/th>\n<td>1<\/td>\n<td>6<\/td>\n<td>7<\/td>\n<\/tr>\n<tr>\n<th>Total<\/th>\n<td>51<\/td>\n<td>10<\/td>\n<td>61<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"nds-table-scroll\">\n<table class=\"nds-metrics\">\n<thead>\n<tr>\n<th>Testing metric<\/th>\n<th>Value<\/th>\n<th>Count-based interpretation<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<th>Sensitivity<\/th>\n<td>92.6%<\/td>\n<td>50 of 54 positive labels detected<\/td>\n<\/tr>\n<tr>\n<th>Specificity<\/th>\n<td>85.7%<\/td>\n<td>6 of 7 negative labels rejected<\/td>\n<\/tr>\n<tr>\n<th>Precision \/ observed PPV<\/th>\n<td>98.0%<\/td>\n<td>50 of 51 positive calls match the source label<\/td>\n<\/tr>\n<tr>\n<th>Observed NPV<\/th>\n<td>60.0%<\/td>\n<td>6 of 10 negative calls match the source label<\/td>\n<\/tr>\n<tr>\n<th>Accuracy<\/th>\n<td>91.8%<\/td>\n<td>56 of 61 rows classified correctly<\/td>\n<\/tr>\n<tr>\n<th>F1 score<\/th>\n<td>0.952<\/td>\n<td>Summary of precision and sensitivity<\/td>\n<\/tr>\n<tr>\n<th>ROC AUC<\/th>\n<td>0.989<\/td>\n<td>95% CI 0.971\u20131.000<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<div class=\"nds-figure-grid\"><\/div>\n<div class=\"nds-note\"><strong>Interpretation.<\/strong> Internal discrimination is high, but predictive values reflect an artificial 88.5% positive test prevalence and only seven negative examples. Duplicate leakage, the tiny negative denominator and undocumented label ascertainment prevent clinical interpretation.<\/div>\n<\/section>\n<section id=\"7-workflow\" class=\"nds-card\">\n<h2>7. Workflow and reproducibility<\/h2>\n<p>A responsible use of this artifact is a reproducibility workflow, not patient screening:<\/p>\n<div class=\"nds-flow\">\n<div>De-identified research record<\/div>\n<div>Schema and range checks<\/div>\n<div>Duplicate and provenance audit<\/div>\n<div>Versioned model score<\/div>\n<div>Researcher review<\/div>\n<div>Independent clinical evidence<\/div>\n<\/div>\n<p>The calculator reproduces one complete record with the exact exported coefficients. It does not issue a screening decision or clinical classification.<\/p>\n<div id=\"nds-lung-calculator\" class=\"nds-calculator\">\n<h3>Reproduce the exported survey score<\/h3>\n<p>The default row is the reference case generated in Neural Designer. The calculation runs locally with the exact exported scaling and coefficients.<\/p>\n<div class=\"nds-note\"><strong>Research demonstration.<\/strong> Values outside the validated domain are rejected. The output must not guide care and is not a diagnosis, screening recommendation or replacement for low-dose CT and specialist assessment.<\/div>\n<div class=\"nds-calculator-grid\"><label>Gender<select name=\"gender\" data-default=\"male\"><option>female<\/option><option selected>male<\/option><\/select><\/label><label>Age (years)<input name=\"age\" type=\"number\" min=\"21\" max=\"87\" step=\"1\" value=\"62\" data-default=\"62\"><\/label><label>Smoking<select name=\"smoking\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Yellow fingers<select name=\"yellow_fingers\" data-default=\"no\"><option selected>no<\/option><option>yes<\/option><\/select><\/label><label>Anxiety<select name=\"anxiety\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Peer pressure<select name=\"peer_pressure\" data-default=\"no\"><option selected>no<\/option><option>yes<\/option><\/select><\/label><label>Chronic disease<select name=\"chronic_disease\" data-default=\"no\"><option selected>no<\/option><option>yes<\/option><\/select><\/label><label>Fatigue<select name=\"fatigue\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Allergy<select name=\"allergy\" data-default=\"no\"><option selected>no<\/option><option>yes<\/option><\/select><\/label><label>Wheezing<select name=\"wheezing\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Alcohol consuming<select name=\"alcohol_consuming\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Coughing<select name=\"coughing\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Shortness of breath<select name=\"shortness_of_breath\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><label>Swallowing difficulty<select name=\"swallowing_difficulty\" data-default=\"no\"><option selected>no<\/option><option>yes<\/option><\/select><\/label><label>Chest pain<select name=\"chest_pain\" data-default=\"yes\"><option>no<\/option><option selected>yes<\/option><\/select><\/label><\/div>\n<div class=\"nds-calculator-actions\"><button type=\"button\" data-action=\"calculate\">Calculate model score<\/button><button type=\"button\" class=\"nds-secondary-action\" data-action=\"reset\">Reset example<\/button><\/div>\n<div class=\"nds-calculator-error\" role=\"alert\" aria-live=\"assertive\"><\/div>\n<div class=\"nds-health-score\" aria-live=\"polite\"><\/div>\n<\/div>\n<p> <script data-noptimize=\"1\">(() => { const root=document.getElementById('nds-lung-calculator'); if(!root||root.dataset.ready==='1')return; root.dataset.ready='1'; const c={\"names\":[\"gender\",\"age\",\"smoking\",\"yellow_fingers\",\"anxiety\",\"peer_pressure\",\"chronic_disease\",\"fatigue\",\"allergy\",\"wheezing\",\"alcohol_consuming\",\"coughing\",\"shortness_of_breath\",\"swallowing_difficulty\",\"chest_pain\"],\"multipliers\":[2,0.1219957024,2,2,2,2,2,2,2,2,2,2,2,2,2],\"offsets\":[-1,-7.645848751,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],\"weights\":[-0.06480778754,0.2974542379,0.2845471203,0.59150666,0.6562930942,0.5151312947,0.736997366,0.7237182856,0.902156651,0.361536473,0.507469058,0.583845973,0.1998997331,0.5749904513,0.3547144234],\"bias\":1.022695065}; const q=s=>root.querySelector(s); const error=q('.nds-calculator-error'); const result=q('.nds-health-score'); const render=score=>{const label=document.createElement('span');const value=document.createElement('strong');const detail=document.createElement('p');label.textContent='Source-label model score';value.textContent=score.toFixed(6);detail.textContent='The article reference threshold is 0.50. This uncalibrated score is not an individual cancer probability, screening result or diagnosis.';result.replaceChildren(label,value,detail);}; const calculate=()=>{try{error.textContent='';const values=c.names.map(name=>{const el=q('[name=\"'+name+'\"]');el.classList.remove('is-invalid');if(name==='age'){const value=Number(el.value);if(!Number.isInteger(value)||value<21||value>87){el.classList.add('is-invalid');throw new Error('Age must be an integer from 21 to 87 years.');}return value;}if(name==='gender')return el.value==='male'?1:0;return el.value==='yes'?1:0;});let logit=c.bias;values.forEach((value,i)=>{logit+=c.weights[i]*(value*c.multipliers[i]+c.offsets[i]);});render(1\/(1+Math.exp(-logit)));}catch(exception){error.textContent=exception.message;result.replaceChildren();}};q('[data-action=\"calculate\"]').addEventListener('click',calculate);q('[data-action=\"reset\"]').addEventListener('click',()=>{root.querySelectorAll('input,select').forEach(el=>{el.value=el.dataset.default;el.classList.remove('is-invalid');});calculate();});calculate(); })();<\/script><\/p>\n<h3>Reproduce the calculation<\/h3>\n<p>The Python package contains the exact export, input order and reference vector. The Neural Designer package preserves the split, parameters and regenerated analyses.<\/p>\n<pre><code>from model import NeuralNetwork\ninputs = [1, 62, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1]\nscore = NeuralNetwork().calculate_outputs(inputs)[0]<\/code><\/pre>\n<div class=\"nds-downloads\"><a href=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-python-model-2026.zip\">Download Python model (ZIP)<\/a><a href=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung-cancer-neural-designer-project-2026.zip\">Download Neural Designer project (ZIP)<\/a><a href=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2026\/08\/lung_cancer.csv\">Download lung_cancer.csv<\/a><\/div>\n<\/section>\n<section id=\"8-safety\" class=\"nds-card\">\n<h2>8. Safety, generalizability and governance<\/h2>\n<ul>\n<li><strong>Unknown reference standard.<\/strong> The public table does not document how the cancer label was established or when predictors were collected relative to diagnosis.<\/li>\n<li><strong>Not a screening cohort.<\/strong> The 87.4% positive proportion is incompatible with population-screening prevalence and makes PPV\/NPV non-transferable.<\/li>\n<li><strong>Duplicate leakage.<\/strong> Exact records cross training, selection and testing subsets; results must be repeated with duplicate groups kept together.<\/li>\n<li><strong>Tiny negative test group.<\/strong> Specificity is based on only seven negative records, so one error changes it by 14.3 percentage points.<\/li>\n<li><strong>No external validation.<\/strong> There is no independent site, temporal cohort, prospective evaluation or documented subgroup analysis.<\/li>\n<li><strong>Uncalibrated score.<\/strong> No calibration curve, Brier score or recalibration study supports individual probability language.<\/li>\n<li><strong>Incomplete screening variables.<\/strong> The table lacks pack-years, years since quitting and CT findings used in real screening pathways.<\/li>\n<li><strong>Human expert review.<\/strong> Any consequential assessment requires an approved clinical pathway, qualified professionals and an appropriate confirmatory method.<\/li>\n<\/ul>\n<div class=\"nds-note nds-note--warning\"><strong>Decision boundary.<\/strong> Use this model only for education and reproducibility. It must not reassure, diagnose, select patients for screening or replace LDCT, imaging interpretation, pathology or specialist evaluation.<\/div>\n<\/section>\n<section id=\"references\" class=\"nds-card\">\n<h2>References<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.kaggle.com\/datasets\/mysarahmadbhat\/lung-cancer\">Kaggle: Survey Lung Cancer<\/a>. Public redistribution page for the 309-row table; primary collection metadata are not supplied.<\/li>\n<li><a href=\"https:\/\/www.cdc.gov\/lung-cancer\/screening\/index.html\">US Centers for Disease Control and Prevention: Screening for Lung Cancer<\/a>. The recommended screening test is low-dose CT.<\/li>\n<li><a href=\"https:\/\/www.uspreventiveservicestaskforce.org\/uspstf\/document\/RecommendationStatementFinal\/lung-cancer-screening\">US Preventive Services Task Force: Lung Cancer Screening Recommendation Statement<\/a>.<\/li>\n<\/ul>\n<\/section>\n<\/div>\n<\/div>\n<p><script data-nd-chart-migration=\"1\" data-noptimize=\"1\" data-cfasync=\"false\" src=\"https:\/\/cdn.plot.ly\/plotly-basic-4.0.0.min.js\"><\/script><script data-nd-chart-migration=\"1\" data-noptimize=\"1\">(()=>{const start=()=>{if(!window.Plotly)return;document.querySelectorAll('.nd-chart-bundle').forEach(bundle=>{if(bundle.dataset.started)return;bundle.dataset.started='1';const host=bundle.querySelector('.nd-chart-host'),source=bundle.querySelector('script[type=\"application\/json\"]');if(!host||!source)return;const figure=JSON.parse(source.textContent);window.Plotly.newPlot(host,figure.data,figure.layout,figure.config).then(async()=>{const title=host.querySelector('.gtitle');if(title)host.style.minWidth=Math.ceil(title.getComputedTextLength()+48)+'px';await window.Plotly.Plots.resize(host);bundle.classList.add('is-ready');if(window.ResizeObserver){let timer;new ResizeObserver(()=>{clearTimeout(timer);timer=setTimeout(()=>window.Plotly.Plots.resize(host),80);}).observe(bundle);}}).catch(error=>{bundle.dataset.error=String(error);console.error(error);});});};const ready=()=>{if(window.Plotly){start();return;}let count=0;const timer=setInterval(()=>{if(window.Plotly){clearInterval(timer);start();}else if(++count>200)clearInterval(timer);},50);};if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',ready,{once:true});else ready();})();<\/script><\/p>\n","protected":false},"author":11,"featured_media":2726,"template":"","categories":[29],"tags":[38],"class_list":["post-3507","learning","type-learning","status-publish","has-post-thumbnail","hentry","category-examples","tag-healthcare"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Lung cancer survey classification with machine learning<\/title>\n<meta name=\"description\" content=\"Build a machine learning model to make screening patients at risk for lung cancer to facilitate prevention.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Lung cancer early detection machine learning example\" \/>\n<meta property=\"og:description\" content=\"The objective of this example is to obtain lung cancer risk value filling a self-evaluation survey.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/\" \/>\n<meta property=\"og:site_name\" content=\"Neural Designer\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-18T14:07:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Lung cancer early detection machine learning example\" \/>\n<meta name=\"twitter:description\" content=\"The objective of this example is to obtain lung cancer risk value filling a self-evaluation survey.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp\" \/>\n<meta name=\"twitter:site\" content=\"@NeuralDesigner\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/\",\"url\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/\",\"name\":\"Lung cancer survey classification with machine learning\",\"isPartOf\":{\"@id\":\"https:\/\/www.neuraldesigner.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp\",\"datePublished\":\"2025-09-01T09:12:58+00:00\",\"dateModified\":\"2026-09-18T14:07:52+00:00\",\"description\":\"Build a machine learning model to make screening patients at risk for lung cancer to facilitate prevention.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#primaryimage\",\"url\":\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp\",\"contentUrl\":\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp\",\"width\":1200,\"height\":628,\"caption\":\"Lung cancer\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.neuraldesigner.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Learning\",\"item\":\"https:\/\/www.neuraldesigner.com\/learning\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Lung cancer survey classification with machine learning\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.neuraldesigner.com\/#website\",\"url\":\"https:\/\/www.neuraldesigner.com\/\",\"name\":\"Neural Designer\",\"description\":\"Explainable AI Platform\",\"publisher\":{\"@id\":\"https:\/\/www.neuraldesigner.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.neuraldesigner.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.neuraldesigner.com\/#organization\",\"name\":\"Neural Designer\",\"url\":\"https:\/\/www.neuraldesigner.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.neuraldesigner.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/05\/logo-neural-1.png\",\"contentUrl\":\"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/05\/logo-neural-1.png\",\"width\":1024,\"height\":223,\"caption\":\"Neural Designer\"},\"image\":{\"@id\":\"https:\/\/www.neuraldesigner.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/NeuralDesigner\",\"https:\/\/es.linkedin.com\/showcase\/neuraldesigner\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Lung cancer survey classification with machine learning","description":"Build a machine learning model to make screening patients at risk for lung cancer to facilitate prevention.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/","og_locale":"en_US","og_type":"article","og_title":"Lung cancer early detection machine learning example","og_description":"The objective of this example is to obtain lung cancer risk value filling a self-evaluation survey.","og_url":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/","og_site_name":"Neural Designer","article_modified_time":"2026-09-18T14:07:52+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_title":"Lung cancer early detection machine learning example","twitter_description":"The objective of this example is to obtain lung cancer risk value filling a self-evaluation survey.","twitter_image":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp","twitter_site":"@NeuralDesigner","twitter_misc":{"Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/","url":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/","name":"Lung cancer survey classification with machine learning","isPartOf":{"@id":"https:\/\/www.neuraldesigner.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#primaryimage"},"image":{"@id":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#primaryimage"},"thumbnailUrl":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp","datePublished":"2025-09-01T09:12:58+00:00","dateModified":"2026-09-18T14:07:52+00:00","description":"Build a machine learning model to make screening patients at risk for lung cancer to facilitate prevention.","breadcrumb":{"@id":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#primaryimage","url":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp","contentUrl":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/06\/lung-cancer-1.webp","width":1200,"height":628,"caption":"Lung cancer"},{"@type":"BreadcrumbList","@id":"https:\/\/www.neuraldesigner.com\/learning\/examples\/lung-cancer\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.neuraldesigner.com\/"},{"@type":"ListItem","position":2,"name":"Learning","item":"https:\/\/www.neuraldesigner.com\/learning\/"},{"@type":"ListItem","position":3,"name":"Lung cancer survey classification with machine learning"}]},{"@type":"WebSite","@id":"https:\/\/www.neuraldesigner.com\/#website","url":"https:\/\/www.neuraldesigner.com\/","name":"Neural Designer","description":"Explainable AI Platform","publisher":{"@id":"https:\/\/www.neuraldesigner.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.neuraldesigner.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.neuraldesigner.com\/#organization","name":"Neural Designer","url":"https:\/\/www.neuraldesigner.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.neuraldesigner.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/05\/logo-neural-1.png","contentUrl":"https:\/\/www.neuraldesigner.com\/wp-content\/uploads\/2023\/05\/logo-neural-1.png","width":1024,"height":223,"caption":"Neural Designer"},"image":{"@id":"https:\/\/www.neuraldesigner.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/NeuralDesigner","https:\/\/es.linkedin.com\/showcase\/neuraldesigner\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/learning\/3507","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/learning"}],"about":[{"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/types\/learning"}],"author":[{"embeddable":true,"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/users\/11"}],"version-history":[{"count":25,"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/learning\/3507\/revisions"}],"predecessor-version":[{"id":23973,"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/learning\/3507\/revisions\/23973"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/media\/2726"}],"wp:attachment":[{"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/media?parent=3507"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/categories?post=3507"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.neuraldesigner.com\/api\/wp\/v2\/tags?post=3507"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}