반응형

AI 머신러닝 딥러닝 28

파이썬 머신러닝 입문 공부일지 10. 첫 번째 머신러닝 만들기 - 붓꽃 품종 예측하기 (2)

지난 번 포스팅에 이어서 붓꽃 품종 예측을 시작해봅니다. 이전에 공부했던 것을 간단하게 리뷰해봅니다. 사이킷런의 특징 파이썬 친화적인 API 머신러닝 알고리즘을 손쉽게 사용할 수 있는 API 레거시(레거시 시스템은 낡은 기술이나 방법론, 컴퓨터 시스템, 소프트웨어 등을 뜻한다.)가 강력한 API. 오랫동안 쓰여 왔기에 신뢰도가 높다 사이킷런 없을 때 설치 절차 아나콘다 프롬프트를 연다. conda env list 명령어로 가상 환경 목록 확인 conda activate 로 가상환경을 변경 pip install scikit-learn==1.0.2 명령어로 설치 붓꽃 품종 예측하기 예제 붓꽃 데이터 세트로 품종 예측하기 피처로는 꽃잎의 길이와 너비, 꽃받침의 길이와 너비가 주어진다. 피처란, 학습을 위해 주..

파이썬 머신러닝 입문 공부일지 9. 사이킷런 기초 시작하기 (사이킷런 설치하기, 첫 번째 머신러닝 만들기 - 붓꽃 품종 예측하기) (1)

사이킷런 sklearn 사이킷런은 파이썬 머신러닝 중 가장 보편적으로 쓰이는 라이브러리 입니다. 텐서플로가 딥러닝을 위한 라이브러리 라고 한다면, 사이킷런은 머신러닝과 관련된 기술들을 쉽고 통일된 인터페이스로 사용할 수 있게 해줍니다. 사이킷런은 머신러닝을 위한 다양한 알고리즘과 개발을 위해 편리한 API, 프레임워크를 제공합니다. 실전 환경에서 오랜 기간 검증된 라이브러리로 텐서플로, 케라스 등 딥러닝 라이브러리가 강세로 등장한 현재까지도 매우 많은 환경에서 사용되고 있는 라이브러리 입니다. 주피터 환경을 사용하기 위한 Anaconda 를 설치하면 기본적으로 사이킷런까지 설치가 완료됩니다. 앞서 아나콘다를 ai 인공지능 수학을 공부하면서 아나콘다 설치에 대해서 정리한 것이 있으니 이곳을 활용해주세요. ..

AI 인공지능 수학 공부일지 7. 스칼라scalar, 벡터vector, 행렬matrix 텐서tensor

인공지능에서는 많은 데이터를 다루기 때문에 스칼라, 벡터, 행렬, 텐서의 개념은 중요합니다. 1. 스칼라 scalar 스칼라 scalar는 1, 2, 3.6, -4, a 처럼 보통의 수치를 말합니다. 처음에는 그저 한 개의 숫자형이라고 보시면 쉽습니다. 즉, 알파벳과 개별적인 실수와 정수, 그리스 문자의 소문자는 스칼라를 나타냅니다. a, p, α. β 등... a = 1 b = 1.2 c = -5 d = 1.2e5 # (1.2 곱하기 10의 5제곱 = 120000 ) print(a) print(b) print(c) print(d) 이하의 벡터와 행렬, 텐서는 모두 스칼라를 기본으로 한 배열입니다. 2. 벡터 vector 벡터 vector 는 통상 위치와 속도 힘과 같이 크기와 방향성을 가지는 물리량으로..

파이썬 머신러닝 입문 공부일지 8. apply lambda 데이터 가공

apply lambda 람다식 판다스는 apply 함수에서 lambda람다식을 활용해서 데이터를 가공하는 기능을 제공합니다. 람다는 매개변수로 함수를 전달하기 위해 함수 구문을 작성하는 것이 코드가 길어지고 번거롭기 때문에 조금 더 간단하게 함수를 선언하기 위해 만들어진 구문입니다. https://blue-dot.tistory.com/22 파이썬 공부일지 19. 함수 활용 (튜플, 람다)! 다음으로 함수 관련하여 편하게 쓸 수 있는 기능들로 튜플과 람다가 있습니다. 1. 튜플 리스트와 비슷한 자료로 리스트와 다른 점으로는 한 번 결정된 요소는 바꿀 수 없다는 것입니다. a = [ 요소 blue-dot.tistory.com lambda 구문형식 lambda의 구문 형식은 다음과 같습니다. 함수명 = lam..

파이썬 머신러닝 입문 공부일지 7. 결손 데이터 Null Data 처리하기

결손 데이터란? 칼럼에 값이 없는 Null 값을 의미합니다. 이는 넘파이의 NaN으로 표시합니다. NaN 값은 칼럼에 값이 아예 없기 때문에 평균, 총합 등 함수 연산 시에 제외가 되는 것은 당연하겠죠. 100개의 데이터가 있는 칼럼에서 10개가 NaN 값일 경우 이 칼럼의 평균 값은 나머지 90 개의 평균 값이 됩니다. 즉, 머신러닝 알고리즘은 이 NaN 값을 처리하지 않기 때문에 이 값을 다른 값으로 대체해야 합니다. 이 NaN 여부를 확인하는 API 는 isna() 이며 NaN 값을 다른 값으로 대체하는 API는 fillna() 입니다. isna() isna()는 데이터가 NaN 인지 아닌지를 True 와 False 로 알려줍니다. 그럼 총 몇 개의 결손 데이터가 있는지 확인해볼게요. isna() ..

파이썬 머신러닝 입문 공부일지 6. 판다스 DataFrame 정렬, Aggregation, GroupBy

데이터 프레임과 시리즈의 정렬 sort_values() 데이터 프레임과 시리즈의 정렬을 위해서는 sort_values() 메소드를 이용합니다. 기본 형식은 다음과 같습니다. df.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False, key=None) by : 정렬의 기준이 될 레이블 입니다. axis : axis=0 은 인덱스, axis=1은 컬럼을 의미하며, 0 이면 행 1이면 열을 기준으로 정렬합니다. inplace : 원본을 대체할지 여부입니다. True 일 경우 원본을 대체합니다. kind : 알고리즘 모드이며 quicksort, mergesort, ..

파이썬 머신러닝 입문 공부일지 5. Pandas 판다스 Index 객체

Pandas 의 index 객체에 대해서 RDBMS (관계형 데이터베이스 관리 시스템) 의 PK(Primary Key) 와 유사하게 사용된다는 것을 앞서 확인하였습니다. https://blue-dot.tistory.com/178 파이썬 머신러닝 입문 공부일지 3. 판다스 Pandas, DataFrame 관련 메소드 기능들 (1) 판다스Pandas 일반적으로 대부분의 데이터 세트는 2차원(행렬구조) 를 이루고 있습니다. (RDBMS : 관계형 데이터베이스 관리 시스템) 판다스는 R을 모티브로 만든 파이썬 라이브러리로 행과 열로 이 blue-dot.tistory.com index 객체 추출 데이터 프레임이나 시리즈에서 Index 객체만 추출하기 위해서는 DataFrame.index, Series.index ..

파이썬 머신러닝 입문 공부일지. 회귀 분석의 회귀란 무슨 뜻일까?

머신러닝을 공부하면서 '회귀분석' 이라는 말을 계속해서 보게 됩니다. 회귀분석이란 둘 이상의 변수 간의 관계를 보여주는 통계적인 방법입니다. 일반적으로 그래프로 표현되는데, 종속 변수와 독립 변수 간의 관계를 테스트 합니다. 비전공자였던 저로써는 남들 다 통계학의 꽃이라고 하는 회귀분석이 대체 무엇인지, 왜 '회귀' 라고 하는지 의아했었어요. 제가 아는 회귀라고 함은 돌아온다는 뜻이에요. (ex. 회귀하다, 로맨스 장르 회귀물 등등...) 그렇다면 회귀 분석이라고 한다면 어떤 것으로 되돌아간다는 뜻인데, 두 변수 간의 관계를 구하는 회귀 분석이 왜 그런 뜻을 가졌는지 도통 모르겠었어요. 그런데 이것은 통계학의 역사에 등장한 인물이 붙인 이름이라 그렇게 표시되었다고 합니다. '회귀' 라는 단어를 처음 붙여..

파이썬 머신러닝 입문 공부일지 4. 판다스 Pandas, DataFrame 관련 메소드 기능들 (2)

Numpy, 리스트, 딕셔너리, DataFrame 상호 변환하기 데이터 프레임은 파이썬의 리스트, 딕셔너리, 넘파이의 ndarry (배열) 과 상호로 변환할 수 있습니다. 앞으로 우리가 사용할 사이킷런 이라는 기계학습 라이브러리 사용에 있어서 API가 DataFrame 을 인자로 입력받을 수 있지만, 기본적으로 넘파이 ndarray 를 사용하는 경우가 대부분 입니다. 그렇기 때문에 데이터 프레임과 넘파이 ndarray 의 상호 변환은 자주 발생하므로 숙지해둡시다. 넘파이 ndarray 와 리스트와 달리 데이터 프레임은 칼럼명을 가지고 있습니다. 변환 시에 칼럼명을 지정하지 않으면 자동으로 칼럼명을 할당합니다. 또한 데이터 프레임은 행과 열을 가지는 2차원 데이터이므로 2차원 이하만 데이터 프레임으로 변환..

파이썬 머신러닝 입문 공부일지 3. 판다스 Pandas, DataFrame 관련 메소드 기능들 (1)

판다스Pandas 일반적으로 대부분의 데이터 세트는 2차원(행렬구조) 를 이루고 있습니다. (RDBMS : 관계형 데이터베이스 관리 시스템) 판다스는 R을 모티브로 만든 파이썬 라이브러리로 행과 열로 이루어진 2차원 데이터를 가장 효율적으로 가공/처리할 수 있는 가장 인기 있는 라이브러리 입니다. 파이썬의 리스트, 컬렉션, 넘파이 등의 내부 데이터 뿐만 아니라 CSV 등의 파일을 쉽게 DafeFrame 으로 변경하여 데이터를 가공/분석하기 편리하게 만들어줍니다. DataFrame 판다스의 핵심 개체는 DataFrame데이터 프레임 입니다. 데이터 프레임은 여러 개의 행과 열로 이루어진 2차원 데이터를 담는 구조 입니다. 데이터 프레임은 중요한 객체인 Index와 유사한 Series 를 이해해야 합니다. ..

반응형