Machine Learning
06. 시퀀스 자료형(list, tuple, dictionary)
1. 리스트(list), 튜플(tuple), Dictionary 실습 - 파이썬의 배열 형식 - 자료를 나열하여 목록으로 처리 - '[', ']' 문자를 이용하여 표현 - 리스트(List)는 원본 값을 변경 할 수 있으나 튜플(tuple)은 값을 변경할 수 없으며 사용법이 비슷함. - 사전(Dictionary)은 키와 값의 구조를 제공(JAVA: Map) - 시작 인덱스는 0부터 시작하며 - 인덱스는 요소의 끝부터 -1을 시작으로 지정함. - [시작 인덱스: 마지막 인덱스]: 시작 index부터 마지막 index-1 부분까지 요소 추출 - [: 마지막 인덱스]: 처음부터 마지막 index-1 부분까지 요소 추출 - [시작 인덱스:] : 시작 index부터 마지막까지 요소 추출 - [::2]: step을 ..
05. 문자열 시퀀스 자료형
1. 시퀀스 다루기 - mutable(가변, 값 변경 가능) 시퀀스 : list(*), bytes, bytearray - immutable(불변, 값 변경 불가능) 시퀀스 : str(*), tuple(*), range - 인덱싱 : 0부터 인덱스 시작(JAVA 동일) - 슬라이싱 : 문자열의 분할(JAVA: split, substring()) - 연결 : '+'을 이용하여 문자열을 연결하여 새로운 시퀀스 자료 생성 - 반복 : '*'를 이용하여 시퀀스 자료를 여러번 반복하여 새로운 시퀀스 자료 생성 - 멤버 체크 : 'in'을 이용하여 특정 값이 시퀀스 자료로 속해 있는지 검사 - 크기 정보 : len()함수를 이용하여 문자열의 크기나 개수를 산출 - 시작 인덱스는 0부터 시작하며 - 인덱스는 문자열의 ..
04. 컴파일, 파이썬 프로그램 구조, 데이터 타입
1. 컴파일 단계 - 파일 확장자: py(Jupyter Notebook: ipynb json 형식, py 파일로 변경 저장 지원) - 단계: Python 소스는 라인단위 변환기인 Interpreter에 의하여 기계어로 바로 컴파일되어 실행됨. 2. 변수 - 파이썬은 숫자를 포함하여 모든 변수를 내부적으로 객체로 처리한다. - 숫자로 시작할 수 없다. - 파이썬 예약어는 사용하지 못한다. - 대소문자를 구분한다. - 변수 선언시 데이터 타입을 선언하지 않는다(Javascript와 비슷하다). - 객체 기반이라 데이터 타입 변환이 자유롭다(타입을 별도로 선언하지 않는다). - 의미 있는 변수명을 지정한다. - 특별한 경우가 아니면 변수의 길이는 5글자 이상으로 한다. - 자바의 숫자는 상수로 메모리에 여러개..
03. Jupyter Notebook 커널 연동, Anaconda Interpreter사용
1. Jupyter Notebook 커널(Conda 가상환경) 연동 1. Anaconda Prompt 관리자 권한으로 실행 (base) C:\Windows\system32> activate machine 2. ipykernel package(라이브러리) 설치 (자동설치됨) (machine) C:\Windows\system32>pip install ipykernel 3. jupyter notebook에 가상환경 kernel 추가(CPU 기반 커널 연동) (machine) C:\Windows\system32>python -m ipykernel install --user --name=machine Installed kernelspec machine in C:\Users\USERNAME\AppData\Roami..
02. Conda를 이용한 Python 가상환경 생성 및 Tensorflow 설치
- CPU의 종류와 Version에 따라 Tensorflow의 Version이 달라짐. - CPU가 AVX를 지원해야 Tensorflow2.0을 설치할 수 있음. - AVX(Advanced Vector Extensions), AVX2 지원 확인 - CPU Spec 검색 1. Conda를 이용한 Python 가상환경 생성 1) 주로 딥러닝에 사용되는 Python library - numpy(넘파이) : NumPy는 행렬이나 일반적으로 대규모 다차원 배열을 쉽게 처리 할수 있게 해주는 파이썬의 라이브러리, NumPy는 데이터 구조 외에도 수치 계산을 위해 효율적으로 구현된 기능을 제공. - matplotlib(맷플롯립) : 데이터 시각화 파이썬 라이브러리 - pandas : 데이터 분석을 위한 파이썬 라이브..
01. Tensorflow를 위한 Python
1. 소개 - 1990년 귀도 반 로섬(Guido van Rossum)이 만든 Intepreter language - Java class 처럼 미리 컴파일되어 있지 않고 실행 시 라인 단위로 읽어서 컴파일 후 실행 - 구글에서 만들어진 소프트웨어의 50%이상이 파이썬으로 만들어 졌음 - C/C++과 함께 Machine Learning Open Source framework Tensorflow 기반 머신러닝 개발 언어로 지원됨. 2. 장점 - 자바에 비하면 문법이 단순하여 읽고 사용하기가 쉽다. (자바 코드의 약 50% 이하로 제작 가능) - 라즈베리파이등의 사물인터넷 기기와 연동이 수월하다. - 비동기식 코딩으로 혼란스러운 자원 경쟁이나 교착상태를 유발하지 않고도 작성과 유지보수를 수월하게 만들어줌. -..