본문 바로가기
300x250

전체 글94

경사하강법 비용함수(cost) 이해하기 이번 포스팅은 경사하강법과 함께 지난 포스팅에서 다뤘던 신경망에 대해서 좀 더 자세히 분석해 보는 것으로, 지난 포스팅과 내용이 이어집니다. 딥러닝 인공 신경망과 뉴런의 구조 원리 개념 짚기 목표 : 손글씨로 적은 숫자 인식 입력층 28x28픽셀로 이루어진 숫자 이미지의 각 픽셀은 0~1 사이의 밝기를 의미하며, 이들이 입력층의 784개 뉴런을 형성하고 뉴런의 활성치를 결정한다. 은닉층 다음 층의 각 뉴런의 활성치는 sum(가중치x이전 층의 활성치)과 bias에 의해서 결정된다. 이 합계에 ReLU 함수를 취한다. 결론적으로 임의로 설정한 두 개의 은닉층은 13,000여개의 가중치와 bias를 가지고 있으며, 이 값들이 신경망이 실제로 어떻게 작동하는지를 결정한다. 출력층 신경망이 주어진 숫자를 분류할 .. 2023. 4. 4.
딥러닝 인공 신경망과 뉴런의 구조 원리 개념 짚기 숫자 3이 있다고 하자. 28 x 28의 저해상도 이미지일지라도, 삐뚤빼뚤하게 작성된 글자일지라도, 밝기가 달라지더라도 우리의 뇌(구체적으로는 시각피질, visual cortex)는 숫자 3을 금방 인식해낸다. 하지만, 28x28 입력값을 받아서 0~9 범위의 정수 값 하나를 내는 프로그램을 내라고 한다면? 굉장히 어려워진다. 이 숫자를 판별하는 문제를 기반으로, 신경망이 구체적으로 무엇인지, 수학으로서 신경망이 뭔지. 신경망 구조가 만들어진 토대와, 학습에 대한 의미를 살펴보자. 뇌와 신경망의 유사점, '뉴런' 입력층 이 숫자 판별 문제에서 뉴런은 0.0~1.0 사이의 숫자를 하나만 담는다. 이미지의 28x28 픽셀을 입력으로 취하는 신경망에는 총 784개의 뉴런들이 있을 것이고, 뉴런의 숫자는 각 .. 2023. 4. 4.
인공지능 머신러닝 딥러닝 개념 차이 관계 간단정리! 인공지능(AI, Artificial intelligence)은 최근 다양한 분야에서 활용되고 있고, 그만큼 관련 용어도 많이 언급되고 있다. AI에 대해 공부한다면 시작 단계에서 접하게 되는 머신러닝, 딥러닝에 대해서 간단히 정리해보고자 한다. 먼저 이들 간의 관계부터 얘기하자면 인공지능>머신러닝>딥러닝이라는 관계를 갖고 있다. 가장 큰 개념인 인공지능부터 알아보자. 인공지능 AI 개념과 역사 인공지능은 한 마디로 인간이 갖고 있는 지능을 인공적으로 구현하려는 컴퓨터 과학의 한 분야다. 용어의 기원부터 살펴보자면 1956년 다트머스 회의에서 존 매카시(John MaCarthy) 라는 미국의 컴퓨터과학자가 처음 제안한 것으로, "기계를 인간이 행동할 때의 지식과 같이 행동하도록 만드는 것"을 연구하는 분야.. 2023. 4. 4.
실리콘 M2 맥북에 tensorflow, pytorch 설치 및 GPU 가속 사용 설정 방법 우선 GPU 가속 설정은 맥북에서 가상환경을 실행한 후 하는 게 안정적이기 때문에, 가상환경을 먼저 만들어두기를 추천한다. M2 맥북 아나콘다 가상환경 설치 방법 w. WordCloud 설치 실패 해결 지난 포스팅에서는 brew를 이용해서 M2 맥북에 아나콘다 설치까지 완료했다. 가상환경은 iterm에서 바로 conda 명령어를 실행하면 된다. 1. 만일 처음이라면 anaconda3 환경을 먼저 설정해줘야 한다. # ex for-data-science.tistory.com 먼저 가상환경을 실행해준다. 나는 lora39라는 파이썬 3.9버전의 가상환경을 만들어둔 후 실행했다. 그 다음으로는 tensorflow-deps를 설치해준다. 중간에 proceeding = y/n 에서 y를 눌러 계속 설치해준다. s.. 2023. 4. 1.
프로그래머스 인공지능 데브코스 AI 5기 합격 후기 2월을 맞이함과 동시에 백수가 되었다. 한 달 정도는 쉬면서 여행을 다녔는데, 이제는 내가 좋아하는 일을 해보고 싶다는 생각이 들었다. 그래서 최근 1년간 내가 가장 즐거웠던 순간들이 언제였는지 돌이켜보았다. 데이터 관련 프로젝트를 하면서 데이터 핸들링을 해보고, 인공지능에 대해서 공부를 하면서 어떻게든 코드를 돌리고 결과물을 내보았던 때라는 생각이 들어 좀 더 공부를 해봐야겠다는 욕심이 생겼다. 찾아보니 KDT라는 좋은 제도가 운영되고 있었다. 몇 달간 하고 싶은 공부를 무료로 하는데, 지원금까지 받을 수 있다니? 이 제도 아래에서 부트캠프라는 이름으로 많은 회사에서 교육과정을 운영하고 있었다. 나는 마침 모집 중이었던 프로그래머스 AI 데브코스에 곧바로 지원했고, 운이 좋게 합격했다. 그래서 지원서 .. 2023. 4. 1.
[3초 해결] 파이썬 np.random.randint 함수 범위 사용법 파이썬에서 무작위로 정수를 생성하되, 내가 범위를 지정해서(예를 들면 0~10 사이) 숫자도 만들고, 배열도 만들고 싶을 때 사용하는 함수다. 사용법이 아주 간단해서 3초 해결이라는 이름을 붙여보았다. np.random.randint(low, high, size, dtype) low에서 high 사이에 size만큼의 숫자를 생성한다. dtype은 따로 설정하지 않는다면 int. 유의해야 할 점이 몇 가지 있다. 1. low값은 생성할 숫자에 포함된다. 2. high값은 생성할 숫자에 포함되지 않는다. 지정해주지 않으면 0부터 low 사이의 값이 만들어진다. 3. size에는 숫자가 들어갈 수도 있고, 튜플 형태로 배열을 지정해 줄 수도 있다. import numpy as np arr1 = np.rando.. 2023. 3. 28.
M2 맥북 아나콘다 가상환경 설치 방법 w. WordCloud 설치 실패 해결 지난 포스팅에서는 brew를 이용해서 M2 맥북에 아나콘다 설치까지 완료했다. 가상환경은 iterm에서 바로 conda 명령어를 실행하면 된다. 1. 만일 처음이라면 anaconda3 환경을 먼저 설정해줘야 한다. # export PATH="아나콘다3가설치된폴더/anaconda3/bin:$PATH" export PATH="/opt/homebrew/anaconda3/bin:$PATH" 나는 brew로 다운받았기 때문에 저 경로에 들어있었다. opt에 없는 경우는 User에서 찾을 수 있다고도 한다. 2. 다음으로는 사용 중인 쉘에 따라 아나콘다 설정을 초기화해 준다. conda init zsh #나는 zsh 쉘을 사용하고 있다. echo $SHELL 명령어로 자신의 shell 확인 가능. 터미널을 종료하고.. 2023. 3. 24.
맥 아나콘다 설치 실패 brew로 해결 지난 포스팅에 이은 또 다른 설치 실패기. 아나콘다 홈페이지에서 설치 파일을 다운받고 실행을 했는데, 마지막 단계에서 설치 실패 오류가 발생했다. 2차 시도로, 그냥 Download가 아니라, 아래 작은 아이콘 Get Additional installers-애플을 눌러 접속한 다음 (M1) 이라고 되어있는 실리콘칩 전용을 다운받아 설치해보았지만 또 실패! M2라서 그런 것일까.. 혹시나 싶어 brew를 열어보니 anaconda 지원이 된다. brew로 python과 anaconda를 다시 설치해보기로 했다. brew install --cask anaconda successfully installed!! 😭😭😭 이제 아나콘다에 가상환경을 설치해서 파이썬 버전만 바꿔주면 되겠다. 다음 이야기는 맥 아나콘다 .. 2023. 3. 23.
파이썬 Python wordcloud 설치 오류 실패기 python wordcloud 설치 시 발생하는 오류와 싸운 스토리. 안타깝게도 아래 방법으로는 해결을 하지 못했기 때문에, 혹시 M1이나 M2를 쓰시는 분들이라면 내 실패기를 읽고 시간을 절약하시기를. 해결책을 찾으면 댓글로 업데이트할 예정이다. 노트북을 mac으로 바꾸게 되었다. 공부를 하던 중에 wordcloud를 그려야 할 일이 생겼는데, 새 노트북의 문제는 패키지들도 처음부터 다 재설치해야한다는 것. 그 와중에 만난 각종 오류를 기재해본다. 1. java 미설치로 인한 오류 방지 wordcolud를 그리기 위해 설치해야하는 konlpy 패키지는 java를 필요로 한다. 나는 macOS & M2칩이라 Arm 64 DMG Installer를 이용해 설치해줬다. 그 덕분인지 Java로 인해 발생하는 .. 2023. 3. 23.