일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 연산자 끼워넣기
- 크롬 설치 안됨
- 로봇청소기
- chromeSetup.exe꺼짐
- 바로꺼짐
- 백준 14888번
- C++
- 크롬설치
- 삼성 sw 역량테스트
- 백준 14503번
- 크롬설치파일꺼짐
- chromeSetup.exe 안됨
- ChromeStandaloneSetup64안됨
- Today
- Total
목록전체 글 (122)
공대생의 개발 일기장
저번 network 배운걸로 실습을 한 번 해봤는데 역시 실습이 짱이다. 걍 빠르게 이해가 된다. network부분은 포스팅한 부분은 내가 정말정말 핵심적이라고 생각했던 것만 따로 정리한거니까 그냥 빠르게 흝는용으로 쓰고 학습에 대한 부분은 실습을 한 번하는게 더 빨리 이해한다. protocol이 뭔지 알아보자. 사실 protocol 단어 자체는 많이 들어봤을 것이다. 근데 뜻은 모른다. 일단 내가 그렇다. '데이터 통신을 원활하게 하기 위해 필요한 통신 규약'이 그 개념이다. 즉, 약속! 이를 지키지 않으면 연결이 되지 않는 것이다. 음... 사실 어떤 과정을 거치는지 더 말할 수 있지만 너무 복잡하고 보니까 각 데이터 영역마다 임의로 정할 수 있는지 워낙 다양해서 딱 여기까지만 설명하겠다. 그냥 pr..
network programming은 음... 사실 모르겠다. 갑자기 개념이 난해해졌달까? 일단은 socket에 대해서 생각해보자. socket이 뭐냐 file이다. 그럼 file과 차이는 뭐냐? 사실 나도 잘 모르겠다... 그냥 특별한 file!이라고 생각하면 편할 것 같다. 일단 이름부터 network니까 인터넷 환경을 이용한다고 생각될 것이다. 그리고 실제로 그렇다. 지금까지 실습한 것이 모두 한 컴퓨터에서 했었다면 network는 여러 대의 컴퓨터끼리 연결...? 그냥 network적 특징을 가진다고 보면될 것 같다. 여러 대의 컴퓨터를 이용하기 때문에 각 컴퓨터마다의 ip를 사용하고 또, port number라는 것도 이용한다. port number 음... ip를 주소라고 치면 port num..
# Loss graph import matplotlib.pyplot as plt plt.plot(history.history['loss']) plt.xlabel('epoch') plt.ylabel('loss') plt.show() # Loss graph를 그린다. 물론 'loss', 'epoch'에 대한 부분은 추가 코드가 있다. 강의노트 확인! # Accuracy graph plt.plot(history.history['accuracy']) plt.xlabel('epoch') plt.ylabel('accuracy') plt.show() # 정확도 graph도 마찬가지. 여기서 Epoch(에포크)는 머신러닝에서 전체 훈련 데이터셋을 한 번 모두 학습하는 과정을 말한다. 즉, Epoch은 전체 데이터셋에 ..
Stochastic Gradient Descent(SGD)는 경사 하강법(Gradient Descent)의 한 종류로, 머신러닝에서 가중치(weight)와 편향(bias)을 최적화하는데 자주 사용되는 최적화 알고리즘이다. 기본적인 경사 하강법은 모든 훈련 데이터를 사용하여 가중치와 편향을 업데이트하는데 반면, SGD는 무작위로 선택된 샘플(mini-batch) 데이터 하나를 사용하여 가중치와 편향을 업데이트한다. 이렇게 하면 일부 샘플 데이터만 사용하기 때문에 전체 데이터를 사용하는 경우보다 더 빠르게 최적화를 수행할 수 있다. 이 파트에 대해서는 포스팅을 할까말까 고민을 많이 해봤는데 너무 그림 설명도 많고 코드도 복잡해서 포스팅하면 시간만 잡아먹고 강의노트를 보는 것보다 이해가 느릴 것 같아 패스하겠다.

이론부터 봐보자. Regression의 세 가지 유형을 한 번 살펴볼 것이다. K-NN Regression은 non-parametric방식이다. 그저 최근접 이웃의 평균을 낸다. 예를 들어 어떤 X데이터에 대해서 10, 20, 30이 최근접 이웃 regression이였다면 x = 10+20+30 / 3 = 20이다. 그렇다면 parametric방식은 무엇이냐? K-NN Regression과 다르게 데이터의 분포가 어떤 함수를 따른다고 가정한다. (여기서는 선형함수와 다항함수인 linear regression, polynomial regression만 다룰 것이다.) 그때 데이터를 '가장 잘 설명하는' 함수의 계수를 추정하는 방식이다. 여기서 '가장 잘 설명하는'의 기준은 손실함수 값을 가장 작게 만드는 ..

깊은 개념에 대한 부분은 따로 서술하지 않겠다. 이 글에서는 간단하게만 그 주의 실습 내용에 대해서 요약이 되어있다. 먼저, numpy라이브러리를 이용해 평균과 표준편차를 구하는 방법이다. mean = np.mean(train_input, axis = 0) # 열별 평균값 구함. -> [ ??, ??, ??, 4번째 열 평균] std = np.std(train_input, axis = 0) # 열별 표준편차 구함. 이를 숙지하고 K-NN에 대해서 보자. 간단하게 말해서 K-NN은 지도학습의 하나로 '데이터 간의 거리를 기반으로 가까운 이웃 데이터의 클래스로 분류하는 알고리즘'이다. 자세한 부분은 구글링이든 뭐든 찾아보길 바란다. 한마디로 이웃에 따라서 데이터를 분류한다는 것. Overfitting(과적합..

이전 포스팅에서는 인공지능에 대해서 공부하기 전 기본적으로 사용될 Python에 대해서 공부했지만 3주차부터는 본격적인 인공지능의 개념에 대해서 등장한다. Numpy를 먼저 살펴보자. 기본적으로 import numpy as np # 이제부터 np의 형태로 호출 arr = np.array(data) # data가 파이썬 리스트나 튜플일 대 numpy배열로 변환. # 이때, List나 Tuple이 2차원이면 마찬가지로 변환된 배열도 2차원. # data = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] -> [[1 2 3 4] \ [5 6 7 8] \ [9 10 11 12]] np.random.seed(42) # 난수 생성기 seed값 설정. 이로써 무작위 결과에 대해 일정한 결과를 얻는다...
1. 파이썬에는 ++, --와 같은 단항 연산자가 없다. 2. 파이썬 또한 long 정수형과 데이터 타입이 구현되어 있다. 3. 논리 자료형의 연산자가 모두 영어 단어로 구성된다. ex) && -> and, !=은 그대로 참고로 True, False로 표기한다. 4. string 메소드는 'python 기본편의 20번에 정리'. 특히 실습에서 사용했던 것들은 여기 정리한다. print(s.capitalize()) print(s.upper()) print(s.replace('A', 'B')) print(' world ', strip()) // 선행 및 후행 공백 제거 5. List - 배열. 하지만 배열과 달리 크기 변경도 가능하고 서로 다른 자료형도 한번에 묶어서 저장 가능. 기본편 25번에 정리되어있다..