개념적으로
단순한 선형 회귀 모델링의 기본 목표는
X와 Y 값의 쌍(즉, X와 Y 측정값)으로 구성된 2차원 평면에서 최상의 직선을 찾는 것입니다.최소 분산 방법을 사용하여 선을 찾으면 다양한 통계 테스트를 수행하여 선이 Y 값에서 관찰된 편차에 얼마나 잘 맞는지 확인할 수 있습니다.
선형 방정식(y = mx + b)에는 제공된 X 및 Y 데이터에서 추정해야 하는 두 개의 매개변수, 즉 기울기(m)와 y 절편(b)이 있습니다. 이 두 매개변수가 추정되면 관측값을 선형 방정식에 입력하고 방정식에 의해 생성된 Y 예측을 관찰할 수 있습니다.
최소분산법을 사용하여 m과 b 매개변수를 추정하려면 모든 X 값에 대해 Y의 관측값과 예측값을 최소화하는 m과 b의 추정값을 찾아야 합니다. 관찰된 값과 예측된 값의 차이를 오류(y i-(mx i+ b))라고 하며, 각 오류 값을 제곱한 다음 이 잔차를 합산하면 결과는 예측 제곱 Bad 숫자가 됩니다. 최적의 피팅을 결정하기 위해 최소 분산 방법을 사용하는 것은 예측 분산을 최소화하는 m과 b의 추정치를 찾는 것과 관련됩니다.
최소 분산 방법을 만족하는 추정값 m과 b를 찾기 위해 두 가지 기본 방법을 사용할 수 있습니다. 첫 번째 접근 방식에서는 수치 검색 프로세스를 사용하여 m과 b의 서로 다른 값을 설정하고 평가하여 궁극적으로 최소 분산을 산출하는 추정치를 결정할 수 있습니다. 두 번째 방법은 미적분학을 사용하여 m과 b를 추정하는 방정식을 찾는 것입니다. 이러한 방정식을 도출하는 데 관련된 미적분학에 대해 다루지는 않겠지만 SimpleLinearRegression 클래스에서 이러한 분석 방정식을 사용하여 m과 b의 최소 제곱 추정치를 찾았습니다(SimpleLinearRegression 클래스 메서드의 getSlope() 및 getYIntercept 참조).
m과 b의 최소 제곱 추정치를 찾는 데 사용할 수 있는 방정식이 있더라도 이러한 매개변수를 선형 방정식에 연결하면 결과가 데이터에 잘 맞는 직선이 된다는 의미는 아닙니다. 이 단순 선형 회귀 프로세스의 다음 단계는 나머지 예측 분산이 허용 가능한지 여부를 결정하는 것입니다.
직선이 데이터에 적합하다는 대립 가설을 기각하기 위해 통계적 결정 프로세스를 사용할 수 있습니다. 이 프로세스는 무작위로 큰 관측치의 확률을 찾기 위해 확률 함수를 사용하는 T 통계량 계산을 기반으로 합니다. 1부에서 언급했듯이 SimpleLinearRegression 클래스는 여러 요약 값을 생성하는데, 중요한 요약 값 중 하나는 선형 방정식이 데이터에 얼마나 잘 맞는지 측정하는 데 사용할 수 있는 T 통계입니다. 적합도가 좋으면 T 통계량이 큰 값이 되는 경향이 있습니다. T 값이 작으면 선형 방정식을 Y 값의 평균이 가장 좋은 예측 변수라고 가정하는 기본 모델로 바꿔야 합니다( 왜냐하면 일련의 값의 평균은 종종 다음 관찰에 대한 유용한 예측변수가 될 수 있기 때문입니다.
T 통계량이 평균 Y 값을 최상의 예측 변수로 사용하지 않을 만큼 충분히 큰지 여부를 테스트하려면 T 통계량을 무작위로 얻을 확률을 계산해야 합니다. 확률이 낮으면 평균이 가장 좋은 예측 변수라는 귀무 가정을 생략할 수 있으므로 간단한 선형 모델이 데이터에 적합하다고 확신할 수 있습니다. (T-통계 확률 계산에 대한 자세한 내용은 1부를 참조하십시오.)
통계적 의사 결정 과정으로 돌아갑니다. 귀무가설을 채택하지 말아야 할 경우를 알려주지만, 대립가설을 채택할지 여부는 알려주지 않습니다. 연구 환경에서는 이론적, 통계적 매개변수를 통해 선형 모델 대안 가설을 수립해야 합니다.
여러분이 구축할 데이터 조사 도구는 선형 모델에 대한 통계적 의사 결정 프로세스(T-테스트)를 구현하고 선형 모델을 구축하는 데 필요한 이론적 및 통계적 매개 변수를 구성하는 데 사용할 수 있는 요약 데이터를 제공합니다. 데이터 조사 도구는 지식 근로자가 중소 규모 데이터 세트의 패턴을 연구하기 위한 의사결정 지원 도구로 분류될 수 있습니다.
학습 관점에서 볼 때, 단순 선형 회귀 모델링은 보다 발전된 형태의 통계 모델링을 이해하는 유일한 방법이므로 연구할 가치가 있습니다. 예를 들어 단순 선형 회귀 분석의 많은 핵심 개념은 다중 회귀(다중 회귀), 요인 분석(요인 분석) 및 시계열(시계열)을 이해하는 데 좋은 기반을 구축합니다.
단순 선형 회귀는 다목적 모델링 기술이기도 합니다. 원시 데이터를 변환(일반적으로 로그 또는 거듭제곱 변환)하여 곡선 데이터를 모델링하는 데 사용할 수 있습니다. 이러한 변환은 단순 선형 회귀를 사용하여 모델링할 수 있도록 데이터를 선형화합니다. 결과 선형 모델은 변환된 값과 관련된 선형 공식으로 표시됩니다.
확률 함수
이전 기사에서는 R에게 확률 값을 찾도록 요청하여 PHP에서 확률 함수를 구현하는 문제를 피했습니다. 저는 이 솔루션이 완전히 만족스럽지 않았기 때문에 PHP를 기반으로 확률 함수를 개발하려면 무엇이 필요한지에 대한 연구를 시작했습니다.
나는 정보와 코드를 온라인에서 찾기 시작했습니다. 두 가지 모두에 대한 한 가지 출처는 C. Probability Functions의 Numerical Recipes 책입니다. PHP에서 일부 확률 함수 코드(gamln.c 및 betai.c 함수)를 다시 구현했지만 여전히 결과가 만족스럽지 않습니다. 다른 구현보다 코드가 조금 더 많은 것 같습니다. 또한 역확률 함수가 필요합니다.
다행스럽게도 나는 우연히 John Pezzullo의 대화형 통계 계산(Interactive Statistical Calculation)을 접하게 되었습니다. 확률 분포 함수에 관한 John의 웹사이트에는 내가 필요한 모든 기능이 있으며 학습을 더 쉽게 만들기 위해 JavaScript로 구현되어 있습니다.
Student T와 Fisher F 함수를 PHP로 포팅했습니다. Java 명명 스타일을 따르도록 API를 약간 변경하고 모든 기능을 Distribution이라는 클래스에 포함시켰습니다. 이 구현의 가장 큰 특징은 이 라이브러리의 모든 함수에서 재사용되는 doCommonMath 메서드입니다. 내가 구현하지 않은 다른 테스트(정규성 테스트 및 카이제곱 테스트)도 doCommonMath 메서드를 사용합니다.
이 이식의 또 다른 측면도 주목할 가치가 있습니다. JavaScript를 사용하면 사용자는 다음과 같이 동적으로 결정된 값을 인스턴스 변수에 할당할 수 있습니다.
var PiD2 = 파이() / 2
PHP에서는 이 작업을 수행할 수 없습니다. 인스턴스 변수에는 단순한 상수 값만 할당할 수 있습니다. PHP5에서는 이 결함이 해결되기를 바랍니다.
목록 1의 코드는 인스턴스 변수를 정의하지 않습니다. 이는 JavaScript 버전에서 값이 동적으로 할당되기 때문입니다.
목록 1. 확률 함수 구현
<?php
// Distribution.php
// 저작권 John Pezullo
// PHP와 동일한 조건으로 출시되었습니다.
// Paul Meagher의 PHP 포트 및 OO'fying
class Distribution {
function doCommonMath($q, $i, $j, $b) {
$zz = 1;
$z = $zz;
$k = $i;
동안($k <= $j) {
$zz = $zz * $q * $k / ($k - $b);
$z = $z + $zz;
$k = $k + 2;
}
$z를 반환;
}
함수 getStudentT($t, $df) {
$t = abs($t);
$w = $t / sqrt($df);
$th = atan($w);
if ($df == 1) {
1을 반환 - $th / (pi() / 2);
}
$sth = 죄($th);
$cth = cos($th);
if( ($df % 2) ==1 ) {
반품
1 - ($th + $sth * $cth * $this->doCommonMath($cth * $cth, 2, $df - 3, -1))
/ (파이()/2);
} 또 다른 {
1 - $sth * $this->doCommonMath($cth * $cth, 1, $df - 3, -1)을 반환합니다.
}
}
함수 getInverseStudentT($p, $df) {
$v = 0.5;
$dv = 0.5;
$t = 0;
while($dv > 1e-6) {
$t = (1 / $v) - 1;
$dv = $dv / 2;
if ( $this->getStudentT($t, $df) > $p) {
$v = $v - $dv;
} 또 다른 {
$v = $v + $dv;
}
}
$t를 반환합니다.
}
함수 getFisherF($f, $n1, $n2) {
// 구현되었지만 표시되지 않음
}
함수 getInverseFisherF($p, $n1, $n2) {
// 구현되었지만 표시되지 않음
}
}
?>
출력 방법
이제 PHP에서 확률 함수를 구현했으므로 PHP 기반 데이터 조사 도구를 개발하는 데 남은 유일한 과제는 분석 결과를 표시하는 방법을 설계하는 것입니다.
간단한 해결책은 필요에 따라 모든 인스턴스 변수의 값을 화면에 표시하는 것입니다. 첫 번째 기사에서는 번아웃 연구에 대한 선형 방정식, T-값, T-확률을 표시할 때 바로 그렇게 했습니다. 특정 목적을 위해 특정 값에 접근할 수 있으면 도움이 되며 SimpleLinearRegression은 이러한 사용법을 지원합니다.
그러나 결과를 출력하는 또 다른 방법은 출력의 일부를 체계적으로 그룹화하는 것입니다. 회귀 분석에 사용되는 주요 통계 소프트웨어 패키지의 출력을 연구하면 동일한 방식으로 출력을 그룹화하는 경향이 있음을 알 수 있습니다. 여기에는 요약표, 분산 분석표, 모수 추정표 및 R 값이 포함되는 경우가 많습니다. 마찬가지로 다음 이름으로 몇 가지 출력 메서드를 만들었습니다.
showSummaryTable()
showAnalyticOfVariance()
showParameterEstimates()
showRValues()
또한 선형 예측 공식( getFormula() )을 표시하는 방법도 있습니다. 많은 통계 소프트웨어 패키지는 공식을 출력하지 않지만 사용자가 위 방법의 출력을 기반으로 공식을 구성할 것으로 기대합니다. 이는 부분적으로 데이터를 모델링하는 데 사용하게 되는 공식의 최종 형식이 다음과 같은 이유로 기본 공식과 다를 수 있기 때문입니다.
Y절편이 의미 있는 해석을 갖지 않거나 입력 값이 변환되었을 수 있습니다. 최종 설명을 얻으려면 변환을 취소해야 할 수도 있습니다.
이러한 모든 방법은 출력 매체가 웹 페이지라고 가정합니다. 이러한 요약 값을 웹 페이지가 아닌 다른 매체에 출력하고 싶을 수도 있다는 점을 고려하여 SimpleLinearRegression 클래스를 상속하는 클래스에 이러한 출력 메서드를 래핑하기로 결정했습니다. 목록 2의 코드는 출력 클래스의 일반 논리를 보여주기 위한 것입니다. 공통 로직을 더욱 돋보이게 하기 위해 다양한 show 메소드를 구현하는 코드를 제거했습니다.
목록 2. 출력 클래스의 공통 논리 시연
<?php
// HTML.php
// 저작권 2003, Paul Meagher
// GPL
include_once "slr/SimpleLinearRegression.php"에 배포됨;
class SimpleLinearRegressionHTML 확장 SimpleLinearRegression {
function SimpleLinearRegressionHTML($X, $Y, $conf_int) {
SimpleLinearRegression::SimpleLinearRegression($X, $Y, $conf_int);
}
함수 showTableSummary($x_name, $y_name) { }
함수 showAnalyticOfVariance() { }
함수 showParameterEstimates() { }
함수 showFormula($x_name, $y_name) { }
함수 showRValues() {}
}
?>
이 클래스의 생성자는 SimpleLinearRegression 클래스 생성자를 둘러싼 래퍼일 뿐입니다. 이는 SimpleLinearRegression 분석의 HTML 출력을 표시하려면 SimpleLinearRegression 클래스를 직접 인스턴스화하는 대신 SimpleLinearRegressionHTML 클래스를 인스턴스화해야 함을 의미합니다. 장점은 사용되지 않는 많은 메서드로 SimpleLinearRegression 클래스를 복잡하게 만들지 않고 다른 출력 미디어에 대한 클래스를 더 자유롭게 정의할 수 있다는 것입니다(아마도 다른 미디어 유형에 대해 동일한 API를 구현함).
그래픽 출력
지금까지 구현한 출력 방법은 요약 값을 HTML 형식으로 표시합니다. 또한 이러한 데이터의 산점도나 선 그래프를 GIF, JPEG 또는 PNG 형식으로 표시하는 데에도 적합합니다.
선과 분포도를 생성하는 코드를 직접 작성하는 것보다 JpGraph라는 PHP 기반 그래픽 라이브러리를 사용하는 것이 더 낫다고 생각했습니다. JpGraph는 Johan Persson에 의해 활발히 개발되고 있습니다. 그의 프로젝트 웹사이트에서는 다음과 같이 설명합니다.
최소한의 코드로 "빠르지만 부적절한 방식으로 얻은" 그래프의 경우든 매우 세밀한 제어가 필요한 복잡하고 전문적인 그래프의 경우 JpGraph를 사용할 수 있습니다. 쉬워집니다. JpGraph는 과학 및 비즈니스 유형 그래프에 모두 적합합니다.
JpGraph 배포판에는 특정 요구 사항에 맞게 사용자 정의할 수 있는 다수의 샘플 스크립트가 포함되어 있습니다. JpGraph를 데이터 조사 도구로 사용하는 것은 내가 필요로 하는 것과 유사한 작업을 수행하는 샘플 스크립트를 찾고 이를 내 특정 요구에 맞게 조정하는 것만큼 간단합니다.
목록 3의 스크립트는 샘플 데이터 탐색 도구(explore.php)에서 추출되었으며 라이브러리를 호출하고 SimpleLinearRegression 분석의 데이터로 Line 및 Scatter 클래스를 채우는 방법을 보여줍니다. 이 코드의 주석은 Johan Persson이 작성했습니다(JPGraph 코드 베이스는 이를 잘 문서화합니다).
목록 3. 샘플 데이터 탐색 도구 explore.php의 함수 세부사항
<?php
// explore.php 스크립트에서 추출한 조각
include ("jpgraph/jpgraph.php");
include("jpgraph/jpgraph_scatter.php");
include ("jpgraph/jpgraph_line.php")
// 그래프 생성
$graph = new Graph(300,200,'자동');
$graph->SetScale("linlin")
// 제목 설정
$graph->title->Set("$title");
$graph->img->SetMargin(50,20,20,40);
$graph->xaxis->SetTitle("$x_name","center");
$graph->yaxis->SetTitleMargin(30);
$graph->yaxis->title->Set("$y_name");
$graph->title->SetFont(FF_FONT1,FS_BOLD);
// X축이 항상 위치하는지 확인하세요.
// Y=0뿐만 아니라 플롯의 맨 아래
// 기본 위치
$graph->xaxis->SetPos('min');
// 멋진 색상으로 산점도를 만듭니다.
$sp1 = new ScatterPlot($slr->Y, $slr->X);
$sp1->mark->SetType(MARK_FILLEDCIRCLE);
$sp1->mark->SetFillColor("빨간색");
$sp1->SetColor("파란색");
$sp1->SetWeight(3);
$sp1->mark->SetWidth(4);
// 회귀선 생성
$lplot = new LinePlot($slr->예측Y, $slr->X);
$lplot->SetWeight(2);
$lplot->SetColor('navy');
// 라인에 pltos를 추가합니다.
$graph->추가($sp1);
$graph->Add($lplot);
// ... 및 스트로크
$graph_name = "임시/테스트.png";
$graph->Stroke($graph_name);
?>
<img src='<?php echo $graph_name ?>' vspace='15'>
?>
데이터 조사 스크립트
데이터 조사 도구는 SimpleLinearRegressionHTML 클래스 및 JpGraph 라이브러리의 메소드를 호출하는 단일 스크립트(explore.php)로 구성됩니다. .
스크립트는 간단한 처리 논리를 사용합니다. 스크립트의 첫 번째 부분은 제출된 양식 데이터에 대한 기본 유효성 검사를 수행합니다. 이 양식 데이터가 유효성 검사를 통과하면 스크립트의 두 번째 부분이 실행됩니다.
스크립트의 두 번째 부분에는 데이터를 분석하고 HTML 및 그래픽 형식으로 요약 결과를 표시하는 코드가 포함되어 있습니다. explore.php 스크립트의 기본 구조는 목록 4에 나와 있습니다.
목록 4. explore.php의 구조
<?php
// explore.php
if (!empty($x_values)) {
$X = 폭발(",", $x_values);
$numX = 개수($X);
}
if (!empty($y_values)) {
$Y = 폭발(",", $y_values);
$numY = 개수($Y);
}
// 변수가 설정되지 않은 경우 입력 데이터 입력 양식을 표시합니다.
if ( (empty($title)) OR (empty($x_name)) OR (empty($x_values)) OR
(비어 있음($y_name)) OR (비어 있음($conf_int)) OR (비어 있음($y_values)) OR
($numX != $numY) ) {
// 입력 폼 표시 코드 생략
} 또 다른 {
include_once "slr/SimpleLinearRegressionHTML.php";
$slr = new SimpleLinearRegressionHTML($X, $Y, $conf_int)
echo "<h2>$title</h2>";
$slr->showTableSummary($x_name, $y_name);
echo "<br><br>";
$slr->showAnalyticOfVariance();
echo "<br><br>";
$slr->showParameterEstimates($x_name, $y_name);
echo "<br>";
$slr->showFormula($x_name, $y_name);
echo "<br><br>";
$slr->showRValues($x_name, $y_name);
echo "<br>"
include ("jpgraph/jpgraph.php");
include("jpgraph/jpgraph_scatter.php");
include("jpgraph/jpgraph_line.php");
// 그래픽을 표시하기 위한 코드는
// explore.php 스크립트. 이 두 줄 플롯의 코드입니다.
// 스크립트를 종료합니다:
// 산점도와 선 그래프를 표시하는 코드가 생략되었습니다.
// 잔차 플롯을 표시하기 위한 코드가 생략되었습니다.
}
?>
화재 피해 연구
데이터 조사 도구를 사용하는 방법을 보여주기 위해 가상의 화재 피해 연구에서 얻은 데이터를 사용하겠습니다. 본 연구는 주요 주거 지역의 화재 피해 규모를 가장 가까운 소방서로부터의 거리와 연관시킵니다. 예를 들어, 보험 회사는 보험료를 결정하기 위한 목적으로 이 관계를 연구하는 데 관심이 있을 것입니다.
이 연구의 데이터는 그림 1의 입력 화면에 표시됩니다.
그림 1. 연구 데이터를 보여주는 입력 화면
데이터가 제출된 후 분석되고 이러한 분석 결과가 표시됩니다. 표시되는 첫 번째 결과 세트는 그림 2에 표시된 대로 테이블 요약 입니다.
그림 2. 테이블 요약은 표시되는 첫 번째 결과 세트입니다.
테이블 요약은 입력 데이터를 표 형식으로 표시하고 관찰된 값 에 해당하는 예측 값 Y를 나타내는 추가 열을 표시합니다.
그림 3은 테이블 요약 다음에 나오는 세 가지 상위 수준 데이터 요약 테이블을 보여줍니다.
그림 3. 테이블 요약 다음에 나오는 세 가지 상위 수준 데이터 요약 테이블을 보여줍니다.
분산 분석 표는 Y 값의 편차가 편차의 두 가지 주요 원인, 즉 모델에 의해 설명되는 분산(모델 행 참조)과 모델에 의해 설명되지 않는 분산(오류 행 참조)에 어떻게 기인하는지 보여줍니다. F 값이 크다는 것은 선형 모델이 Y 측정값의 편차 대부분을 포착한다는 것을 의미합니다. 이 테이블은 각 독립 변수가 테이블에 행을 갖는 다중 회귀 환경에서 더 유용합니다.
매개변수 추정값 표에는 추정된 Y축 절편(Intercept)과 기울기(Slope)가 표시됩니다. 각 행에는 T 값과 극단 T 값을 관찰할 확률이 포함되어 있습니다(Prob > T 열 참조). 기울기에 대한 Prob > T는 선형 모델을 거부하는 데 사용될 수 있습니다.
T 값의 확률이 0.05보다 크면(또는 이와 유사하게 작은 확률) 극단값을 무작위로 관찰할 확률이 작기 때문에 귀무가설을 기각할 수 있습니다. 그렇지 않으면 귀무 가설을 사용해야 합니다.
화재 손실 연구에서 크기 12.57의 T 값을 무작위로 얻을 확률은 0.00000보다 작습니다. 이는 선형 모델이 본 연구에서 관찰된 X 값의 범위에 해당하는 Y 값의 유용한 예측 변수( Y 값의 평균보다 우수함)임을 의미합니다.
최종 보고서에는 상관 계수 또는 R 값이 표시됩니다. 선형 모델이 데이터에 얼마나 잘 맞는지 평가하는 데 사용할 수 있습니다. 높은 R 값은 좋은 일치를 나타냅니다.
각 요약 보고서는 선형 모델과 데이터 간의 관계에 대한 다양한 분석 질문에 대한 답변을 제공합니다. 회귀 분석에 대한 고급 처리 방법은 Hamilton, Neter 또는 Pedhauzeur의 교과서를 참조하세요.
표시될 최종 보고서 요소는 그림 4에 표시된 대로 데이터의 분포도와 선 그래프입니다.
그림 4. 최종 보고서 요소 - 분포도 및 선 그래프
대부분의 사람들은 선 그래프(이 시리즈의 첫 번째 그래프와 같은)에 대한 설명에 익숙하므로 이에 대해서는 JPGraph 라이브러리가 웹용 고품질 과학 그래프를 생성할 수 있다는 점 외에는 언급하지 않겠습니다. 분포나 직선 데이터를 입력할 때도 매우 유용합니다.
두 번째 플롯은 잔차(관측된 Y , 예측된 Y )를 예측된 Y 값과 연결합니다. 이는 탐색적 데이터 분석(EDA) 옹호자들이 데이터의 패턴을 감지하고 이해하는 분석가의 능력을 극대화하는 데 도움을 주기 위해 사용하는 그래프의 예입니다. 전문가는 이 다이어그램을 사용하여 다음에 대한 질문에 답할 수 있습니다.
이 데이터 연구 도구는 더 많은 유형의 그래프를 생성하도록 쉽게 확장될 수 있습니다 — 히스토그램, 상자 플롯 및 사분위수 플롯 - 이는 표준 EDA 도구입니다.
수학 라이브러리 아키텍처
나의 수학 취미로 인해 최근 몇 달 동안 수학 도서관에 관심이 생겼습니다. 이와 같은 연구를 통해 코드 기반을 구성하고 향후 성장을 예측하는 방법에 대해 생각하게 되었습니다.
지금은 목록 5의 디렉터리 구조를 사용하겠습니다.
목록 5. 확장하기 쉬운 디렉토리 구조
phpmath/ burnout_study.php explore.php fire_study.php navbar.php 거리/ 배포.php 피셔.php 학생.php 소스.php jpgraph/ 등... 슬러그/ SimpleLinearRegression.php SimpleLinearRegressionHTML.php 온도/ |
앞으로는 PHP_MATH 변수 설정이 전체 PHP 수학 라이브러리에 대한 구성 파일을 통해 수행될 것입니다.
무엇을 배웠나요?
이 기사에서는 SimpleLinearRegression 클래스를 사용하여 중소 규모 데이터 세트를 위한 데이터 조사 도구를 개발하는 방법을 배웠습니다. 그 과정에서 SimpleLinearRegression 클래스와 함께 사용할 기본 확률 함수도 개발하고 JpGraph 라이브러리를 기반으로 하는 HTML 출력 메서드와 그래프 생성 코드로 클래스를 확장했습니다.
학습 관점에서 볼 때, 단순 선형 회귀 모델링은 더 발전된 형태의 통계 모델링을 이해하는 유일한 방법임이 입증되었기 때문에 추가 연구할 가치가 있습니다. 다중 회귀 또는 다변량 분산 분석과 같은 고급 기술을 살펴보기 전에 단순 선형 회귀에 대한 확실한 이해를 통해 이점을 얻을 수 있습니다.
단순 선형 회귀가 다른 변수의 편차를 설명하거나 예측하기 위해 하나의 변수만 사용하더라도 모든 연구 변수 간의 간단한 선형 관계를 찾는 것이 여전히 연구 데이터 분석의 첫 번째 단계인 경우가 많습니다. 데이터가 다변량이라고 해서 다변량 도구를 사용하여 연구해야 한다는 의미는 아닙니다. 실제로 단순 선형 회귀와 같은 기본 도구로 시작하는 것은 데이터의 패턴 탐색을 시작하는 좋은 방법입니다.