본문 바로가기

KHUDA

KHUDA ML세션 1주차

혼자서공부하는 머신러닝 + 딥러닝 

1.나의 첫 머신러닝

2.데이터 다루기 

 

1-1인공지능

인공지능(artipicial intelligence)란 사람처럼 "학습"할 수 있고 "추론"할 수 있는 지능을 가진 컴퓨터 시스템을 만드는 기술 

 

머신러닝(machine learning)이란 규칙을 프로그래밍하지 않아도 자동으로 데이터에서 규칙을 학습하는 알고리즘 

인공지능 분야의 하위분야 중에서 지능을 구현하기 위한 소프트웨어를 담당하는 핵심 분야이다. 

 

딥러닝(deep learning)이란 인공신경망(artificial neural network)을 기반으로 하는 방법들을 딥러닝이라고 일컫습니다. 

 

1-2 코랩 활용

colab 활용 예시

import matplotlib.pyplot as plt
import numpy as np

# Data
districts = ["Jongrogu", "Jongru", "Yongsangu", "Seongdonggu", "Kwangjingu", "Dongdaemoongu",
            "Jungranggu", "Seongbukgu", "Gangbukgu", "Dobonggu", "Nowonggu", "Eunpyonggu",
            "Seodaemungu", "Mapogu", "Yangcheongu", "Gangseogu", "Gurogu", "Guemcheongu",
            "Youngdeungpogu", "Dongjakgu", "Kwanakgu", "Seoucheogu", "Gangnamgu", "Songpagu",
            "Gangdonggu"]

total_population = [151767, 126409, 228830, 303158, 352692, 346551, 398812, 441590, 314090,
                    335280, 535282, 481663, 310069, 373629, 459849, 593708, 406748, 233371,
                    368402, 397618, 502117, 431027, 544028, 677489, 426219]

# Normalize the data for better visualization
normalized_population = np.array(total_population) / max(total_population)

# Create a colormap
colors = plt.cm.plasma(normalized_population)

# Plot the data
fig, ax = plt.subplots(figsize=(12, 8))
scatter = plt.scatter(range(len(districts)), [1] * len(districts), c=colors, marker='s', s=500)

# Create a colorbar
cbar = plt.colorbar(scatter, orientation='horizontal')
cbar.set_label('Normalized Total Population')

# Set x-axis ticks and labels
plt.xticks(range(len(districts)), districts, rotation=45, ha='right')

# Remove y-axis ticks and labels
plt.yticks([])

# Set plot title
plt.title('Population Heatmap of Seoul Districts')

# Show the plot
plt.show()

matplotlib과 산점도를 이용한 히트맵

1-3 K-Nearest Beighbors 알고리즘 


      first_data = [[l,w] for l, w in zip(lenght, weight)] #데이터 정리 
      first_target = [1] * 35 + [0] * 4
      print(fish_target)

kn =  KNEighborsClassifier()

k-최근접 이웃 분류 모델을 만드는 사이킷런 클래스 입니다. 

score()훈련된 모델의 성능을 측정합니다. 

머신러닝 알고리즘이 데이터에서 규칙을 찾는 과정을 훈련이라고 합니다 fit() 메서드가 하는 역할

kn.predict([[30,600]])

predict 메서드는 새로운 데이터의 정답을 예측합니다. 

 

2-1 데이터 다루기 

 

지도학습은 입력과 타깃을 전달하여 모델을 훈련한 다음 새로운 데이터를 예측하는데 활용합니다. 

비지도학습은 타깃 데이터가 없고 입력데이터에서 특징을 찾는데 주력합니다. 

훈련 세트는 모델을 훈련할 때 사용하는 데이터 입니다. 

테스트 세트는 전체 데이터 에서 20~30%를 테스트 데이터로 활용합니다. 

 

numpy

seed()

난수를 생성하기 위한 정수 초깃값을 지정합니다. 

arrange()

일정한 간격의 정수 또는 실수 배열을 만듭니다. 기본 간격은 1입니다. 

 

2-2 데이터 전처리

 

데이터 전처리는 머신러닝 모델에 훈련 데이터를 주입하기 전에 가공하는 단계를 말합니다. 

표준점수는 훈련세트의 스케일을 바꾸는 대표적인 방법 중 하나입니다. 

 

train_test_split()

훈련데이터와 테스트 세트로 나누는 함수 

kneighbors()

k-최근접 이웃 객체의 매서드입니다. 

'KHUDA' 카테고리의 다른 글

KHUDA Data buisness 01  (0) 2024.03.13
KHUDA ML 세션 5주차  (1) 2024.02.27
KHUDA ML 세션 4주차  (1) 2024.02.20
KHUDA ML세션 3주차  (1) 2024.02.13
KHUDA ML세션 2주차  (1) 2024.02.05