안녕하세요? 6강 선형회귀입니다.

강의보고오기: https://youtu.be/bPKHIGEh6gU?si=t9fQRQSQwFZd2ZX7

 

6강은 간단한 선형회귀 모델의 예시와 우리가 그린 빨간선이 데이터를 잘 설명하는가에 대한 지표 2개 MSE(Mean Squared Error와 R2 스코어를 다루고 넘어갑니다.

 

우리가 중고등학교때 가장 익숙한 식 중 하나가 $y = ax + b$ 였을 겁니다. a를 기울기, b를 절편이라고 배웠죠. 보통 $a, b$가 주어진 상태에서는 $x, y$의 관계를 그래프로 그려보며 의미를 이해했습니다.

 

선형회귀 예시 - 머신러닝에의 관심사는 a, b

머신러닝에서는 $x, y$가 데이터로서 주어지고 우리는 $a, b$를 구해야 합니다. 그리고 이 때 $a, b$를 다르게 표기 합니다. $a$는 weight(가중치), b를 bias(편항)로 표현하며, 식은 아래와 같습니다.

$$ y = wx + b $$

$x, y$ 값은 데이터로 주어질 것입니다. 가장 많이 사용하는 집값의 예를 보겠습니다. 

면적과 집값과의 관계

 

그림에서 첫 번째 열이 면적 $x$의 값입니다. 두 번째열은 집의 가격 $y$입니다. 두개 열의 데이터를 학습하여 집값을 빨간선으로 예측합니다.

 

저 빨간선을 그리기 위해서 우리가 알아야 할 값은 뭘까요? 1차 방정식에서 기울기( $ w $ )와 절편( $ b $ )를 알면 우리가 원하는 빨간선을 그릴 수 있습니다. 데이터를 바탕으로 데이터를 가장 잘 설명하는 빨간선을 찾는 것이라고 표현할 수 있습니다. 

 

학습하는 코드를 보겠습니다.

 

선형회귀 코드

 

코드 진짜 간단하죠? 생성형 AI를 활용해서 만들었습니다. 만약 코딩을 공부하고 싶으시면 이론을 공부하신 후에 생성형 AI에 만들어 달라고 하면 코드를 만들어 줄겁니다. 그리고 한줄 한줄 설명도 해줍니다. 쉽죠?

 

하지만 우리는 저 코드안에 들어있는 알고리즘에 대한 공부를 할 예정입니다. 결코 쉽지 않습니다. 

 

평가 지표 - MSE, R2 Score

우리가 그린 빨간선이 얼마나 데이터를 잘 설명해주는가를 평가하기 위한 지표 2개를 설정했습니다.  MSE와 R2 스코어입니다. 이 중에서 MSE는 앞으로 앞으로 자주 등장하니 눈여겨 보시기 바랍니다.

 

강의에서 두개의 지표에 대한 자세한 설명을 했습니다. 잘못된 내용은 피드백 바랍니다. 



의견

저는 원래 실용주의적인 성향이 강해서 이론보다는 코드 구현을 중요하게 여겼지만, 최근에는 생각이 바뀌었습니다. 이론을 이해하고 생성형 AI와 소통하며 코딩하고 결과를 분석하는 과정이 더 중요하다고 생각합니다. 대학원에서 대부분의 과제를 생성형 AI의 도움을 받아 수행해보니, 이론을 알아야 생성형 AI에게 좋은 명령과 질문을 할 수 있음을 알게 되었습니다. 또한, 코드와 실행 결과를 해석하고, 생성형 AI가 잘못된 정보를 제공할 때 이를 수정할 수 있습니다.

 

언젠가는 이론을 몰라도 모든 것을 쉽게 구현할 수 있는 날이 올지도 모릅니다. 과거에 수학 계산원이 중요한 역할을 했지만 컴퓨터의 등장으로 사라진 것처럼, 언젠가는 컴퓨터 관련 개발자도 사라지고 연구자만 남을 수도 있습니다. 마치 수학 분야에서 연구자는 여전히 남아 있는 것처럼요.

 

하지만, 아직까지는 AI 개발자에게 이론 지식은 중요합니다. 새로운 기술이 나왔을때 관련 문헌을 읽고 적용하기 위해서는 이해가 필요합니다. 현재 급속도로 새로운 기술이 나오고 있는 상태죠. 그리고 생성형 AI 특성 상 잘 알려지지 않은 도메인에 대해서는 깊은 이해가 없어 오류도 높을 수 있습니다. 아직 사람의 수정과 선택이 필요한 상태이니 열심히 공부하시기 바랍니다.~

 

 

감사합니다.

'Machine Learning' 카테고리의 다른 글

8강 선형회귀 - Loss Function  (0) 2024.07.20
7강 벡터  (0) 2024.07.20
5강 머신러닝의 개요 subNote - for 기술사  (0) 2024.07.17
4강 머신러닝 뜻 / 머신러닝 개요  (0) 2024.07.17
3강 인공신경망의 역사  (1) 2024.07.16

강의보고오기:  https://youtu.be/e4ScjpAjkBU?si=AdBXxmFe_5uC_lDx

 

ITPE에서 제공해 주신 서브노트를 바탕으로 머신러닝의 개요를 설명드렸습니다. 4강에서 처럼 기존 서브노트 내용 중에서 제 생각과 다른 부분을 설명드렸습니다. 제가 틀릴 수도 있으니 보시는 분들 모두 비판적으로 봐주시고 틀린 내용 피드백해 주시면 고치도록 하겠습니다. 

 

머신러닝이 분류와 예측을 하게 만들어진 것도 우리 인간이 하는 일이 분류와 예측이기 때문인거 같습니다. 머신러닝이 이런 일을 하게 만든것도 우리 인간이 하는일을 대신하게 만들려고 한거니까 당연한 결과인거 같습니다. 

 

자세한 내용은 강의를 참고하세요~

 

감사합니다.

'Machine Learning' 카테고리의 다른 글

7강 벡터  (0) 2024.07.20
6강 선형회귀  (0) 2024.07.18
4강 머신러닝 뜻 / 머신러닝 개요  (0) 2024.07.17
3강 인공신경망의 역사  (1) 2024.07.16
2강 인공지능 뜻(AI 뜻) - Russell & Norvig 표준정의  (1) 2024.07.16

강의보고오기: https://youtu.be/dxqHj1v8HQ8

 

안녕하세요? 

 

드디어 머신러닝입니다. 강의 앞부분에 인공지능 관련한 서브노트 리뷰 부분이 있습니다. 서브노트에 제 생각에 틀리다고 할 수 있는 내용이 있습니다. 

 

서브노트 인공지능 정의 고치기

인공지능의 정의: 인간의 신경망을 수학적 모델로 Machine이 인간의 학습능력과 추론능력, 지각능력, 자연언어의 이해능력 등을 컴퓨터 프로그램으로 실현한 기술/Computer Science의 분야 

출처: ITPE 서브노트

 

 

위의 정의를 보고 혹시 이상함을 느끼셨나요? 저는 학창시절 객관식 문제를 볼때 "다음 중 틀린 것은?" 의 문제 유형이 더 쉬웠습니다. 가끔 "다음 중 틀린 것은?"  에 밑줄 같은 강조 표시가 없어서 실수 한적도 있지만요. 그리고 옳은 것을 고르는 문제를 풀때도 틀린 걸 지워나가며 풀었던 것 같습니다. 한마디로 대부분의 사람이 틀린 거 찾기에 더 익숙하다는 거죠. 그래서 틀린 내용을 보고 고쳐보면 학습에 많은 도움이 되는 것 같습니다. 

 

 

"인간의 신경망을 수학적 모델로 Machine" 이 부분은 인공지능이 아니라 인공신경망과 관련된 얘기입니다. 지난 강의에서 말씀드렸지만, 충돌 후에 랜덤으로 회전하는 로봇청소기도 인공지능입니다. 이 로봇청소기가 인공신경망이 없다고 해서 인공지능이 아니다라고 할 수 없는거죠. 단지, 똑똑하지 못할 뿐입니다. 또한 뒷부분의 인간의 학습능력과 ... 이 부분도 MA Book 기반으로 생각해보면 인공지능의 정의라고 하기에는 너무 협소합니다. 

 

MA book 기반의 인공지능 정의가 궁금한 분은 MA book이나 2강 링크(https://syai.tistory.com/5) 참고하세요. 

 

머신러닝 정의 

기술사 공부하며 가장 도움된 부분은 어떤 용어든 정의를 먼저 보고 스스로 가장 적합한 정의를 찾아보려고 하는 것입니다. 예전의 저는 이해자체에 중심을 두어서 "정의"에 크게 신경을 쓰지 않았습니다.  내가 무슨 공부를 하려는 건지 본질에 대한 사유와 고찰이 "정의"부터 시작된다는 걸 잘 몰랐습니다. 

 

경험(E)을 바탕으로 작업(T)성과(P)를 높이는 학습(L) 알고리즘(A)을 연구하는 분야. 

머신러닝 뜻 개념도
머신러닝 정의 개념도

 

기술사 공부하시는 분들은 ET PAL이라고 외우시고요, 다른 분들은 왜 이렇게 정의할 수 있는지 곰곰히 생각해보시면 됩니다. 사실 저는 상기 정의가 아주 마음에 드는 것은 아닙니다. 저는 "분류와 예측"이라는 말을 넣고 싶거든요. 머신러닝이 하는 일은 대부분 수학적 이론을 바탕으로 데이터를 학습하여 "분류와 예측"을 수행하기 때문입니다. 

 

 

머신러닝의 분류

그런데 잘 생각해보면, 제가 회사에서 보고서를 쓸 때 하던일이 대부분 "분류와 예측" 이였던 것 같습니다. 그래서 Machine Learning이 발달 할 수도록 제가 불안한가 봅니다. 제가 하던일을 저보다 더 빠르게 잘하니까 제가 필요 없어질 수 있다는 위기감이 계속해서 들고있으니까요. 

 

다음 내용은 ML을 "분류"하는 것입니다. 우리가 머신러닝을 어떻게 구분할까요? Label이 있는 데이터를 학습한 후에 하는 분류와 예측을 우리는 Supervised Learning이라고 하고요, Label이 없는 데이터를 학습한 후에 기계가 분류와 예측을 한다면 Unsupervised Learning이라고 부릅니다.  

 

상세한 내용은 강의 내용을 참고하시고, 틀린 내용이 있다면 피드백 주세요. 

 

감사합니다.

 

   

+ Recent posts