일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- leetcode 819
- 컴퓨터구조
- Python
- 배열
- leetcode 344
- wargame.kr
- docker로 airflow 설치하기
- Hortonworks Sandbox
- airflow docker
- 올바른 변수명 짓기
- Hadoop
- 스파크 완벽 가이드
- 데이터레이크와 데이터웨어하우스
- 블로그 이전했어요
- leetcode
- leetcode 234
- leetcode 121
- leetcode 5
- leetcode125
- leetcode 937
- ctf-d
- MapReduce 실습
- leetcode 15
- 빅데이터를 지탱하는 기술
- leetcode 561
- 머신러닝
- webcrawler
- leetcode 238
- 문자열 조작
- leetcode 49
- Today
- Total
목록Study/AI&DeepLearning (29)
HyeM
시각화를 위한 라이브러리를 import 한다. matplotlib.pyplot은 시각화 라이브러리중 하나이다. ( %matplotlib inline : 주피터 노트북 안에서 시각화 결과를 출력 가능하게 한다.) 점선 그래프 여러 그래프 그리기 1. subplot(행, 열 ,번째) 지정해준다. ( 번째는 0이 아닌 1부터 시작한다.) 2. show()를 통해, subplot으로 만든 빈 그래프 형태를 출력한다. 3. plot, hist, scatter 등으로 그래프를 그린다. subplot : 빈 그래프 모양 만들어 줌. plot : 첫번째 그래프 모양 hist : 히스토그램 모양 (두번째) scatter : 스케터 모양 (세번째) 4. 그래프 옵션 조정 >> 그래프 선 옵션을 줄 수도 있다. - 그래프를..
먼저 numpy 라이브러리를 import 하자. Date Type 1 ) .dtype : 데이터 타입확인 정수는 int 32, 실수형은 float64 처음부터 배열 선언할 때 데이터 타입을 지정해 줄 수 있다. 2 ) .astype() : 데이터 타입 변환 위에서 float64형이었던, arr를 int32로 변환한다. 차원 확인 차원 확인 방법 : len(arr.shape) arr.ndim Reshape reshape : 사이즈는 유지하되, 모양(차원)을 바꿔준다. -1을 활용하면, 사이즈 6을 3으로 나누고 남는거 2 대신에 -1로 쓸 수 있음 Random array 생성 위에서 만든 랜덤 array를 reshape으로 shape을 바꾸고, 차원도 늘리었다. Ravel Ravel : arr의 차원을 2..
Numpy는 고차원의 데이터를 다루기 위한 파이썬 라이브러리 0차원 (Scalar) numpy의 array는 숫자 데이터를 array화 해준다. shape와 ndim을 확인해보면 다음과 같다. 1차원 [] 리스트를 씌우면 차원이 생긴다. shape을 출력하면 (3, ) 이 나오는데, 3은 값이 아닌 shape이다. -> 1차원에 3개의 값이 들어갔다. 2차원 (1, 3)의 의미는 value가 3개 있는게 1개 있다는 의미이다. 즉 차원이 2개 있고, 각 차원마다 각각 3개의 값이 들어있는 것이다. 또 다른 예시를 보면, 0차원 숫자에 [] 를 2번 씌우면 두개의 차원이 된다. Tip! shape 결과값을 뒤에서 부터 보면, 가장 작은 차원의 개수이다. 다차원 shape을 출력하면 다음과 같다.
딥러닝 전체 구조 및 학습 과정 Data -> Model -> logit -> result Loss, Optm ▶ Data : 학습 시킬 데이터. Model에 들어가기 전에 데이터 전처리 필요. Batch로 만들어서 Model에 넣ㅇㅁ ▶ Model : 다양한 Layer층들로 구성됨. - 모델 종류 : LeNet, AlexNet, VGG, ResNet등 - Layer : Convolution, Poolint 등 다양한 layer ▶ Logit (Prediction) : 각 class 별로 예측한 값. 가장 높은 값이 정답. ▶ Lost (Cost) : 예측한 값과 정답을 비교해서 얼마나 틀렸는지 확인. 결과값을 Loss(Cost, Cost Value)라고 부름. Loss를 최소화 하는 것이 학습과정 ▶ ..
01. 마르코프 체인과 LSTM/RNN 이번 챕터에서는 문장 자동 생성을 하는 것이 목표이다. 마르코프체인과 LSTM/RNN은 서로 다른 방식의 문장 생성 방식이다. 마르코프체인 : 확률을 기반으로 문장을 이어 붙임 LSTM/RNN : 머신러닝으로 다음에 위치한 문장 예측하여 문장 생성. 02. 마르코프 체인 마르코프체인 (워드 샐러드) : 확률을 기반으로 하는 방법 -> 마르코프체인을 이용하면 기존 문장을 기반으로 문장을 자동으로 생성가능함. # 마르코프 성질이란 ? - 의미 : 과거의 상태를 무시하고, 현재의 상태만을 기반으로 다음 상태를 선택하는 것 - 표현 : 현재 상태 : qi 다음상태 : qj 다음상태로 이동할 확률 : P(qj | qi ) #현재상태와 다음상태만을 기준으로 결정됨. # 마르코..
01. 문장의 유사도 분석 어떤 두 문장(또는 단어)이 비슷한지, 서로 관련있는 문장인지 분석해본다. 방법 : 레벤슈타인 거리 계산, n-gram 사용 02. 레벤슈타인 거리 레벤슈타인 거리 (편집거리): 두 개의 문자열이 어느 정도 다른지 나타내는 것 예시_ "가나다라"와 "가마바라"는 얼마나 유사할까? -> "가나다라"를 가마바라"로 편집할 때 몇 번의 문자열 조작이 필요할지로 단어의 거리를 구한다. 횟수 편집 조작 결과 0 - 가나다라 1 "나"를 "마"로 변환 가마다라 2 "다"를 "바"로 변환 가마바라 문자열 조작을 나타낸 표에 따라, 문자열을 조작하기 위해선 2번의 조작이 필요하다. => 편집비용(조작횟수)는 2이고, 2는 레벤슈타인 거리이다. [실습1]_ 파이썬으로 레벤슈타인 거리를 계산하는..
지난주에는 베이스정리로 텍스트를 분류해보았다. 이번주는 MLP를 이용하여 텍스트를 분류해보자. 01. MLP란 무엇인가? MLP(다충 퍼셉트론): 입력층과 출력층 상에 각각 전체 결합하는 은닉층을 넣은 뉴럴 네트워크 가장 기본적이 인공신경망 구조이고, 하나의 입력층과 출력층, 그리고 하나 이상의 은닉층으로 구성된다. input layer(입력층), hidden layer(은닉층), output layer(출력층) 있고, 각 층의 뉴런의 개수에는 제약이 없다. (다음 그림에서 뉴런은 원으로 표현됨) MLP는 이 글의 아래의 에서 자세히 다루어 보겠다. 머신러닝 프레임워크는 글을 그대로 입력할 수 없기 때문에, 텍스트 데이터를 숫자로 변환해야 한다. 근데 텍스트 데이터는 길이가 다르므로 고정된 길이의 벡터로..
01. 텍스트 분류 텍스트 분류에는 여러 가지 방법이 있는데, 자주 사용되는 방법인 “베이지안 필터” 를 이용해 실습해본다. 베이지안 필터 - 스팸 메일이나 글을 구분할때 많이 사용됨. - 교사학습/ 비교사학습/ 강화학습의 3가지 머신러닝 종류중 교사학습에 해당한다. - 사용자가 따로 키워드를 지정하지 않아도 스팸 메일을 구분할 수 있음 02. 베이즈 정리 베이즈 정리는 '조건부 확률'과 관련된 이론으로, 토머스 베이즈에 의해 정립된 이론이다. P(A|B) = P(A|B)P(B)/P(A) 조건부 확률 에서 을 나타냄. = P(B|A) 결합확률과 곱셈 법칙 예를 들어 정육면체 주사위를 두 번 던져서 "첫번째가 3", "두 번째가 짝수" 될 확률은 1/6 X 1/2 = 1/12 이다. => 동시에( 연속적으..