일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 28 | 29 | 30 | 31 |
- GPT-4
- gpt
- OpenAI
- 해커톤
- 딥러닝
- PCA
- 분류
- 회귀
- Machine Learning
- deep learning
- 지도학습
- supervised learning
- 티스토리챌린지
- LG
- LG Aimers
- regression
- AI
- LG Aimers 4th
- 오블완
- LLM
- Classification
- ChatGPT
- 머신러닝
- Today
- Total
목록전체 글 (355)
SYDev
함수 템플릿과 static 지역변수static 지역변수는 템플릿 함수 별로 각각 존재한다. 다음 예제를 통해서 이러한 사실을 확인해보자.#include using namespace std;template void ShowStaticValue(void){ static T num=0; num+=1; cout(); ShowStaticValue(); ShowStaticValue(); cout(); ShowStaticValue(); ShowStaticValue(); cout(); ShowStaticValue(); ShowStaticValue(); cout1 2 3 1 2 3 1 2 3 클래스 템플릿과 static 멤버변수함수 템플릿의 경우와 유사하게..
템플릿 매개변수에서 변수의 선언 템플릿을 정의할 때 결정되지 않은 자료형을 의미하는 용도로 사용되는 T 또는 T1, T2와 같은 문자를 가키려 '템플릿 매개변수'라 한다. 템플릿 매개변수에 전달되는 자료형 정보를 가리켜 '템플릿 인자'라 한다. 이를 이용한 예제를 살펴보자. #include using namespace std; template class SimpleArray { private: T arr[len]; public: T& operator[] (int idx) { return arr[idx]; } SimpleArray& operator=(const SimpleArray& ref) { for(int i=0; i
클래스 템플릿 특수화 함수 템플릿을 특수화 하듯이 클래스 템플릿도 특수화를 할 수 있다. 클래스 템플릿을 특수화하는 이유는 특정 자료형을 기반으로 생성된 객체에 대해, 구분이 되는 다른 행동양식을 적용하기 위해서이다. 관련하여 예제를 살펴보자. #include #include using namespace std; template class Point { private: T xpos, ypos; public: Point(T x=0, T y=0) : xpos(x), ypos(y) { } void ShowPosition() const { cout
Point 클래스 템플릿과 배열 클래스 템플릿 Point 템플릿 클래스의 객체를 저장하는 객체는 다음 방법으로 생성할 수 있다. BoundCheckArray iarr(50);//int형 데이터 저장 BoundCheckArray oarr(50);//Point 템플릿 클래스의 객체 저장 BoundCheckArray oparr(50);//Point형 포인터 저장 typedef Point* POINT_PTR; BoundCheckArray oparr(50);//Point형 포인터 저장 그렇다면 이를 이용해 지난 chapter 13의 예제를 확장해보자. 파일명 : PointTemplate.h #ifndef __POINT_TEMPLATE_H_ #define __POINT_TEMPLATE_H_ template clas..

넘파이로 데이터 준비 넘파이를 이용해서 이전보다 간편하게 데이터를 준비할 수 있다. np.column_stack() 및 훈련 데이터 준비 import numpy as np np.column_stack(([1,2,3], [4,5,6])) array([[1, 4], [2, 5], [3, 6]]) -> np.column_stack() 함수는 전달받은 리스트를 일렬로 세운 다음 차례대로 나란히 연결한다. 연결할 리스트는 파이썬 튜플(tuple)로 전달한다. 더보기 튜플은 리스트처럼 원소에 순서가 있지만 수정할 수 없다는 차이점이 있다. fish_length = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29.7, 30.0, 30.0, 30.7, 31.0, 31.0, 31.5, 32.0, ..

지도 학습과 비지도 학습 지도 학습(supervised learning): 입력과 타깃을 전달하여 모델을 훈련한 다음 새로운 데이터를 예측하는 데 활용한다. 비지도 학습(unsupervised learning): 타깃 데이터 없이 학습한다. 따라서 입력 데이터에서 어떤 특징을 찾는 데 주로 활용한다. 지도학습에서 데이터와 정답을 입력(input)과 타깃(target)이라 부르며, 이 둘을 합쳐 훈련 데이터라 부른다. 훈련 세트와 테스트 세트 훈련 세트(train set): 모델을 훈련할 때 사용하는 데이터이다. 보통 훈련 세트는 크면 클수록 좋다. 테스트 세트(test set): 훈련된 모델을 평가할 때 사용하는 데이터이다. 보통 전체 데이터에서 20~30%를 테스트 세트로 사용하는 경우가 많다. 전체 ..

생선 분류 문제 생선의 특성인 '길이'와 '무게' 데이터를 가지고 생선 '도미'와 '빙어'를 분류하는 모델을 만들어보자. 용어 정리 분류(classification): 머신러닝에서 여러 개의 종류(혹은 클래스(class)) 중 하나를 구별해내는 문제를 이르는 말. 특성(feature): 학습 모델로 정답을 도출해내기 위해 고려하는 데이터 샘플(sample): 학습 데이터에 포함된 하나의 특징벡터 위 문제에서는 '도미'와 '빙어'가 각각 분류해야 하는 클래스이며, 생선의 길이와 무게가 특성에 해당된다. 마지막으로 생선의 길이 데이터에 포함된 각각의 값(예를 들어 25.4cm)이 샘플이다. 도미, 빙어 데이터 bream_length = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29...
클래스 템플릿의 정의 함수 템플릿과 마찬가지로 클래스도 템플릿화를 통해 별도의 클래스를 정의할 필요가 없어진다. #include using namespace std; template class Point { private: T xpos, ypos; public: Point(T x=0, T y=0) : xpos(x), ypos(y) { } void ShowPosition() const { cout