인공지능 공부 18

[2021 NIPA AI 교육 - 응용 / 머신러닝] 00 인공지능/머신러닝 개론

머신러닝은 빅 데이터를 분석할 수 있는 강력한 툴이다. 기존 통계학 및 시각화 방법의 한계를 해결해준다. 머신러닝 : 명시적으로 프로그래밍을 하지 않고도 컴퓨터가 학습할 수 있는 능력을 갖게 하는 것 이전에 작은 데이터를 다룰 때는 명시적 프로그램이과 머신 러닝의 효율차이가 많이 나지 않는다. 하지만 빅 데이터와 같이 큰 데이터가 들어오게 되면 그 모든 데이터를 사람이 보고 케이스를 나누기 쉽지 않다. 그래서 이 데이터들을 분석할 수 있는 방법으로 머신 러닝이 뜨게 된 것이다. 그럼 이 머신러닝에 어떤 기법들이 있는 지 구분해 보도록 하겠다. 이 과목에서는 세 가지 방식중에서 지도학습 위주로 학습할 것이고 이 지도학습 안에서도 중요한 회귀분석과 분류에 대해 학습하겠다. 예측해야 할 결과에 대한 정답 데이..

인공지능 공부 2021.08.19

[2021 NIPA AI 교육 - 기본] 05 Matplotlib 데이터 시각화

이번에는 Matplotlib 데이터 시각화 그래프에 대해 배워보겠다. Matplotlib의 각 요소를 변경하면서 어떻게 그림이 달라지는지 살펴보겠다. 먼저 선으로 된 plot인 Line plot을 그려보겠다. fig, ax = plt.subplots() 으로 정의를 해주고 subplots()에서 괄호가 공란이면 1개의 figure만 만들어준다. 그리고 x = np.arange(15)로 0부터 14까지 정의역을 정의할 수 있다. y = x ** 2에서 x**2는 x^2 이므로 들어온 x값에 대한 제곱이 y값이 된다. 다음으로 ax.plot()에 많은 요소들을 넣어준다. 우선 x와 y를 넣어주고, line의 스타일을 정의할 수 있다. “:”은 그래프를 점으로 표시하는 것을 의미한다. 보면 선들이 점으로 연결..

인공지능 공부 2021.08.11

[2021 NIPA AI 교육 - 기본] 04 데이터 조작 및 분석을 위한 Pandas 심화

저번 시간에 이어 Pandas에 대해 더 깊게 배워보겠다. 먼저 DataFrame을 정렬하는 방법이다. 인덱스 값을 기준으로 정렬할 수도 있고, 컬럼 값을 기준으로 정렬할 수도 있다. 먼저 sort_index()라는 함수를 이용해 인덱스 값을 기준으로 정렬할 수 있다. axis가 0이면 행 인덱스를 기준으로 정렬된다. 오름차순이 디폴트 값이고 만약 내림차순으로 하고 싶다면 ascending = False 로 인자를 콤마찍고 추가해주면 된다. 이렇게 axis를 1로 하면 열 인덱스를 기준으로 정렬할 수 있다. 여기서는 ascending이 False이기 때문에 내림차순으로 된다. 이번에는 컬럼 값을 기준으로 정렬해보겠다. 이때는 사용하는 함수가 다르다. 위와 같이 sort_values()라는 함수를 이용해 ..

인공지능 공부 2021.08.09

[2021 NIPA AI 교육 - 기본] 03 데이터 조작 및 분석을 위한 Pandas 기본

Pandas란? : 구조화된 데이터를 효과적으로 처리하고 저장할 수 있는 파이썬의 라이브러리다. Pandas는 대용량 데이터를 쉽게 처리할 수 있는 NumPy를 기반으로 설계되어있다. (엑셀과 비슷한 데이터 베이스 형태이다.) Pandas의 자료형중에 Series 데이터와 데이터 프레임을 살펴보고 이들을 어떤식으로 다뤄야하는지 알아보겠다. Series의 데이터 형태를 살펴보면 Series는 특수한 딕셔너리라고 생각하기 쉽다. Data와 Index를 가지고 있다. (각각의 Index안에 Data가 들어간다.) NumPy의 array가 보강된 형태로 Data가 Index를 가지고 있다고 생각하면 된다. 1. values(값)를 ndarray의 형태로 가지고 있다. (왼쪽 코드의 주석에서 0 1 2 3 은 인..

인공지능 공부 2021.08.06

[2021 NIPA AI 교육 - 기본] 02 데이터 핸들링을 위한 라이브러리 NumPy

NumPy : Numerical Python (수치적 파이썬) -> Python에서 대규모 다차원 배열을 다룰 수 있게 도와주는 라이브러리 데이터의 대부분은 숫자 배열로 볼 수 있기 때문에 NumPy 라이브러리를 다룰 줄 알아야 많은 데이터를 쉽게 다룰 수 있다. NumPy는 반복문 없이 배열을 빠르게 처리할 수 있다. -> List에 비해 빠른 연산 지원, 메모리의 효율적 사용 그렇다면 List는 NumPy와 구체적으로 어떻게 다를까? 아래는 list 배열을 생성하고 출력한 코드이다. 그리고 아래는 NumPy 라이브러리를 사용해 numpy 배열을 생성하고 출력한 코드이다. (NumPy는 라이브러리이므로 import 키워드를 이용해 불러온다.) ndarray는 n차원의 배열을 의미한다. (n-dimens..

인공지능 공부 2021.08.05

[2021 NIPA AI 교육 - 기본] 01 파이썬의 여러가지 모듈과 패키지

레고를 조립하듯 누군가 만들어놓은 함수와 변수를 사용하면 매우 효율적으로 작업할 수 있다. 이 때 사용하는 레고 블록같은 개념을 ‘모듈’이라고 한다. 모듈 : 특정 목적을 가진 함수, 자료의 모임 또 다른 예를 들자면 라면 레시피를 모듈이라고 할 수 있다. 모듈은 import 키워드를 사용해 불러온다. 모듈을 사용하기 전에는 모듈 속의 사용하려는 함수와 변수의 사용법을 확인해야한다. 모듈을 사용할 때는 모듈이름 뒤에 (.)을 찍은 후 사용할 모듈 속 함수 또는 변수를 명시해 사용하면 된다. (이를 dot notation이라고 한다.) 예시) 만약 원하는 내용의 모듈이 없다면 직접 모듈을 만들 수도 있다. .py의 확장자명 파일(파이썬 파일)로 만든 후 다른 파일에서 앞서 만든 py파일을 import하면 ..

인공지능 공부 2021.08.04

2021 과학기술정보통신부 x 정보통신산업진흥원(nipa) 주관 AI 교육

과기정통부와 nipa(정보통신산업진흥원) 주관의 AI 교육을 받게 되었다. 교육 커리큘럼은 위와 같이 AI 실무 기본과정과 AI 실무 응용과정으로 나뉘어져 있다. 코로나 시즌의 이점을 활용해 지난번 소프트웨어 마에스트로 코딩테스트 플랫폼으로 활용됐던 elice라는 플랫폼에서 교육이 비대면으로 진행된다. 이에 따라 수업 기간도 12월 17일 까지로 넉넉하지만 이번 방학내에 다 끝내버리려고 한다. 토익 영어 공부때문에 바쁜 날들이었지만 평소 관심있었던 인공지능 공부의 입문으로 활용하기에 정말 좋은 기회라 병행하며 진행해보려고 한다. 과정별로 정보통신산업진흥원 명의의 수료증을 발급해주고 과정을 모두 수료 시 한국표준협회의 '인공지능 전문가' 민간 자격 취득지원도 해준다고 한다. 열심히 해봐야겠다 ㅎㅎ

인공지능 공부 2021.08.04

머신러닝이란? (머신러닝 개념, 머신러닝 과정)

머신러닝 응용 개발 : 과거 데이터로부터 패턴을 찾아내어 모델화한 후, 사용자 인터페이스 등을 추가한 application으로 만들어 실무에 사용하는 일련의 과정 (데이터 전처리 -> 모델링 -> 예측(적용)) (1) 데이터 전처리 단계 : 전처리는 데이터의 클린징, 변환, 필터링 등을 통해 원시 데이터를 구조화하여 훈련용으로 사용가능한 데이터셋(dataset)을 생성하는 작업 클린징(cleansing) : 원시 데이터의 결측값(빠진 값), 오류값 등을 제거 또는 수정 변환(transformation) : 범주형 데이터를 (ex.청소년이냐 성인이냐 노인이냐) 숫자로 바꾸거나, 데이터를 표준화하거나, 특이값을 수정/제거하거나 주소(지역명과 숫자)의 GPS값으로의 변환 등 필터링(filtering) : 모델..

인공지능 공부 2021.01.10
반응형