본문 바로가기

분류 전체보기29

[혼자 공부하는 머신러닝 + 딥러닝] 특성 공학과 규제 [혼자 공부하는 머신러닝+딥러닝] 책의 내용을 정리한 글 입니다. 개념 다중 회귀 : 다중 회귀(multiple regression)란 여러 개의 특성을 사용하는 회귀 모델이다. → 특성이 많으면 선형 모델은 강력한 성능을 발휘한다. 특성 공학 : 주어진 특성을 조합하여 새로운 특성을 만드는 일련의 작업 과정 ex) 농어 길이 x 농어 높이 규제 : 머신러닝 모델이 훈련 세트를 너무 과도하게 학습하지 못하도록 훼방하는 것을 말한다. (= 훈련 세트에 과대적합되지 않도록 한다.) 선형 회귀 모델에서 규제는 어떻게 이루어질까? 선형 회귀 모델에 규제 추가한다는 것은 특성에 곱해지는 계수(또는 기울기)의 크기를 작게 만드는 일이다. 릿지 규제가 추가된 선형 회귀 모델 중 하나이며, 비교적 효과가 좋아 널리 사.. 2023. 4. 21.
[Ruby On Rails] Module Mixin (1) - include, prepend, extend Ruby는 다중 상속을 지원하지 않는다. 즉 Ruby 클래스는 하나의 부모 클래스(슈퍼 클래스)만 가질 수 있다는 뜻이다. Ruby에서는 다중 상속을 모듈의 Mixin을 통해 구현이 가능하다. Mixin에 대해 알아보기 전 Class와 Module의 차이점과 클래스 조상의 목록인 Ancestors에 대해 먼저 확인해보자. Class vs Module Class 객체 지향 프로그래밍에서 클래스는 클래스 인스턴스, 클래스 객체, 인스턴스 객체 또는 간단히 객체라고 하는 자체 인스턴스를 만드는 데 사용되는 구성이다. 클래스는 인스턴스가 상태와 동작을 가질 수 있도록 하는 구성 요소를 정의한다. 따라서 클래스는 객체 생성을 위해 만드는 것이다. Module 루비에서 모듈은 “메서드와 상수의 모음”을 뜻한다. 따.. 2023. 4. 18.
[Ruby On Rails] Eager loading으로 N+1 문제 해결하기 Ruby On Rails에서 N+1 문제를 해결할 수 있는 방법에 대해 알아보려고 한다. N+1 문제란? 연관 관계가 설정된 엔티티를 조회할 경우 조회된 데이터 개수(n)만큼 연관 관계의 조회 쿼리가 추가로 실행되는 것을 의미한다. School 테이블과 Teacher 테이블이 1:N 관계라고 가정해보자. class School < ApplicationRecord has_many: :teachers end class Teacher < ApplicationRecord belongs_to: :school end 각 학교별 선생님들의 이름을 출력하고자 했을 때, School 데이터 전체를 조회하는 쿼리 하나와 각각의 school에 속해 있는 teachers 데이터를 조회하는 쿼리가 추가로 발생하는 것을 볼 수 .. 2023. 4. 16.
[혼자 공부하는 머신러닝 + 딥러닝] 선형 회귀 [혼자 공부하는 머신러닝+딥러닝] 책의 내용을 정리한 글 입니다. 개념 k-최근접 이웃 알고리즘의 한계는 훈련 세트 범위 밖의 샘플을 예측할 수 없다는 점이다. 이 한계를 해결할 수 있는 방법을 알아보자. 선형 회귀 (linear regression) : 널리 사용되는 대표적인 회귀 알고리즘 특성과 타깃 사이의 관계를 가장 잘 나타내는 선형 방정식을 찾는다. 선형 회귀가 찾은 특성과 타깃 사이의 관계는 선형 방정식의 계수(coef_) 또는 절편(intercept_)에 저장된다. 다항 회귀 : 다항식을 사용한 선형 회귀 다항식을 사용하여 특성과 타깃 사이의 관계를 나타낸다. 모델 기반 학습과 사례 기반 학습 모델 기반 학습 머신러닝 알고리즘이 찾은 값을 의미하는 모델 파라미터가 존재하고 알고리즘의 훈련 과.. 2023. 4. 15.
[혼자 공부하는 머신러닝 + 딥러닝] k-최근접 이웃 회귀 [혼자 공부하는 머신러닝+딥러닝] 책의 내용을 정리한 글 입니다. 개념 지도 학습 알고리즘은 크게 분류와 회귀로 나뉜다. 분류 : 샘플을 몇 개의 클래스 중 하나로 분류하는 문제 회귀 : 클래스 중 하나로 분류하는 것이 아닌 임의의 수치를 예측하는 문제 ex) 내년도 경제 성장률을 예측하거나 배달이 도착할 시간을 예측하는 것 두 변수 사이의 상관관계를 분석하는 방법을 회귀라 부르게 되었다고 한다. k-최근접 이웃 회귀 : k-최근접 이웃 알고리즘을 사용한 회귀 알고리즘이다. → 가장 가까운 이웃 샘플을 찾고 이 샘플들의 타깃값을 평균하여 예측으로 삼는다. 그런데 회귀에서는 예측값이 임의의 숫자이기 때문에 정확한 숫자를 맞힌다는 것은 거의 불가능 하다. 그렇다면 어떻게 모델의 성능을 평가할 수 있을까? .. 2023. 4. 11.
[혼자 공부하는 머신러닝+딥러닝] 데이터 전처리 [혼자 공부하는 머신러닝+딥러닝] 책의 내용을 정리한 글 입니다. 개념 k-최근접 이웃 같은 거리 기반 알고리즘은 샘플 간의 거리에 영향을 많이 받는다. 때문에 모델을 훈련할 때 특성 간의 스케일이 다른 경우 특성값을 일정한 기준으로 맞춰 주어야 한다. 이런 작업을 데이터 전처리(data preprocessing)라고 부른다. (+ 모든 알고리즘이 데이터 전처리가 필요한 건 아니다! 트리 기반 알고리즘들은 특성의 스케일이 다르더라도 잘 동작한다.) 가장 널리 사용하는 전처리 방법 중 하나는 표준점수(혹은 z 점수) 이다. 표준점수 각 특성값이 평균에서 표준편차의 몇 배만큼 떨어져 있는지를 나타낸다. 표준점수를 통해 실제 값의 크기와 상관없이 동일한 조건으로 비교가 가능하다. 그렇다면, 표준점수는 어떻게 .. 2023. 4. 11.