AIFFEL Life

[Day 3] 인공지능 개발자 되려면 리눅스를 배워라!

nevermet 2020. 7. 31. 17:50

AIFFEL은 강사가 강의실에 와서 떠드는? 수업을 별로? 하지 않습니다. 모든 강의?라고 할 수 있는 것들이 온라인 컨텐츠로 제작되어 제공되고 있는데요. 들여다 보면 재미있게 만들고 잘 만들기 위해 노력하신 흔적을 곳곳에서 느낄 수 있습니다. 처음엔 이거 뭐야? 검색해 보고 그냥 혼자 공부하는 거랑 뭐가 달라?라고 생각하실 분들이 계실 지 모르겠지만, 조금만 지나면 생각이 달라집니다. 책으로 출판해도 될 만큼 깔끔하게 잘 정리되어 있고, 실습과의 연계가 너무나 잘 이뤄져 있습니다. (짝짝짝) 또 이렇게 공부하다보니 자신이 아는 부분은 빠르게 넘어가고 모르는 부분에 시간을 많이 쓸 수 있어서 더 효과적입니다. 

자! 그래서 인공지능에 대해서 그냥 건너 듣거나 인터넷 검색만 조금 해봤던 제가 기대했던 첫번째 온라인 강의 노드 (AIFFEL에서는 한 단원을 Node라고 합니다)...

그 위대한 첫걸음은 '(나눠준) 네 리눅스를 알아라' 였네요.

예전에 대학교 시절에 unix에 터미널로 로그인하고, 가끔 회사에서 linux 쓸 일은 있었지만, 한국은 윈도우 아닌가요? 심지어 저는 윈도우를 만드는 회사와 윈도우를 깔아 컴퓨터를 파는 회사에 있었는데요...

그래서 차근 차근 공부하라는 대로 공부를 합니다. (인공지는 개발자가 되고 싶은데) 리눅스와 리눅스에서 파이썬 개발환경을 잘 모르시는 분들은 아래 링크들을 참고하시면 좋을 것 같습니다. 어디서 이런 주옥 같은 링크들을 모으셨는지... 

1) 운영체제란? https://jhnyang.tistory.com/16

 

운영체제(Operating System : OS)란 ? 운영체제 종류와 목적, OS 정복

운영체제(OS) 목차 &책 추천 운영체제 종류? 컴퓨터를 사용해본자라면 왼쪽과 같은 화면을 본적이 있을거예요 항상 기본으로 시작되는 화면의 이 아이콘은 무엇을 의마할까요 윈도우!! 우리에게

jhnyang.tistory.com

2) 우분투란? https://dongdong-2.tistory.com/17

 

Ubuntu(우분투)란? 무엇인가

Ubuntu(우분투)는 캐로니컬이 개발한 컴퓨터 OS(운영체제) 입니다. 우리의 일상에서는 주로 Windows(운영체제)을 주로 사용하지만, Ubuntu는 오픈소스로 개발된 운영체제입니다. 그러면 리눅스는 무엇�

dongdong-2.tistory.com

3) 커맨드 라인이란? https://tutorial.djangogirls.org/ko/intro_to_command_line/

 

Command Line 시작하기 · HonKit

벌써부터 기대되지 않나요? 바로 일 분안에 여러분도 코딩 할 수 있어요! 여러분에게 첫 번째 친구를 소개합니다. 바로, 커맨드 라인(command line) 입니다! 해커들이 사용하는 까만 윈도우 창을 어��

tutorial.djangogirls.org

4) 리눅스 ls에 관하여 https://www.leafcats.com/137

 

리눅스 ls -l 명령어 - 파일 정보 확인과 의미

리눅스의 파일에는 파일 이름이나 수정일시 등의 간단한 속성에서부터, 파일의 소유권이나 허가권과 같은 중요한 정보들을 담고 있는 속성들까지 다양한 속성이 존재한다. 특히, 파일 허가권이

www.leafcats.com

5) apt-get이란? https://snrnsnrnd.tistory.com/12f

 

Ubuntu 18.04 LTS apt-get 명령어 사용법

apt-get 명령어는 우분투에서 새로운 패키지(프로그램을 설치할때  가장 보편적으로 사용하고 있는 강력한 명령어 입니다. 오늘은 이 apt-get 명령어 옵션중 가장 보편적으로 사용하는 대표적인 명

snrnsnrnd.tistory.com

6) Ubutu에서 설치된 패키지 리스트 보는 방법 https://askubuntu.com/questions/17823/how-to-list-all-installed-packages

 

How to list all installed packages

I'd like to output a list of all installed packages into a text file so that I can review it and bulk-install on another system. How would I do this?

askubuntu.com

7) 파이썬 가상 환경 이해하기 youtu.be/nxqYctmuO74

8) conda로 Python 가상 환경 만들기 https://uoa-eresearch.github.io/eresearch-cookbook/recipe/2014/11/20/conda/

 

Create virtual environments for python with conda

How to set up a virtual environments using conda for the Anaconda Python distribution A virtual environment is a named, isolated, working copy of Python that that maintains its own files, directories, and paths so that you can work with specific versions o

uoa-eresearch.github.io

9) conda cheet sheet https://docs.conda.io/projects/conda/en/4.6.0/_downloads/52a95608c49671267e40c689e0bc00ca/conda-cheatsheet.pdf

10) git 이해하기 https://opentutorials.org/module/2676

 

지옥에서 온 Git

이 수업은 GITn 시리즈로 완전히 대체 되었습니다. GITn은 보다 많은 내용을 작은 단위로 쪼개서 선택적으로 공부하실 수 있도록 제작된 수업입니다. 아래 주소를 통해서 GITn 을 접할 수 있습니다.�

opentutorials.org

11) git 설치하기 https://zetawiki.com/wiki/%EC%9A%B0%EB%B6%84%ED%88%AC_git_%EC%84%A4%EC%B9%98

 

우분투 git 설치 - 제타위키

다음 문자열 포함...

zetawiki.com

12) git 생성 및 커밋 https://ifuwanna.tistory.com/193

 

Git 저장소 생성 및 커밋 ( init / add / commit )

 개요 깃 (Git) 의 장점중 하나는 대부분의 명령을 로컬에서 실행한다는 점입니다. 원격 저장소(remote Repository) 의 정보가 필요한때만 (pull push 등) 네트워크가 필요하고 그 외에는 오프라인 환경�

ifuwanna.tistory.com

13) git hub 원격 저장소 생성 https://post.naver.com/viewer/postView.nhn?volumeNo=24623326

 

깃허브(Github) 원격저장소(Repository) 생성

[BY 아보느 포스트] 목차 (1~6편이 서로 연관되는 글입니다.)1. 깃허브(Github) 회원가입하기 2. (현재글...

m.post.naver.com

14) git - branch https://backlog.com/git-tutorial/kr/stepup/stepup1_1.html

 

브랜치란? 【브랜치 (Branch)】 | 누구나 쉽게 이해할 수 있는 Git 입문~버전 관리를 완벽하게 이용��

브랜치란? 【브랜치 (Branch)】 | 누구나 쉽게 알 수 있는 Git에 입문하신 것을 환영합니다. Git을 사용해 버전 관리를 할 수 있도록 함께 공부해봅시다!

backlog.com

15) 마크 다운 작성법 https://gist.github.com/ihoneymon/652be052a0727ad59601

 

마크다운 사용법

마크다운 사용법. GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

16) 참고

 - Tensor Flow Guide https://www.tensorflow.org/guide/effective_tf2

 

이펙티브 텐서플로 2.0  |  TensorFlow 코어

Note: 이 문서는 텐서플로 커뮤니티에서 번역했습니다. 커뮤니티 번역 활동의 특성상 정확한 번역과 최신 내용을 반영하기 위해 노력함에도 불구하고 공식 영문 문서의 내용과 일치하지 않을 수

www.tensorflow.org

 - Tensor Flow Github https://github.com/tensorflow/tensorflow

 

tensorflow/tensorflow

An Open Source Machine Learning Framework for Everyone - tensorflow/tensorflow

github.com

- Jupyter https://jupyter.org/

 

Project Jupyter

The Jupyter Notebook is a web-based interactive computing platform. The notebook combines live code, equations, narrative text, visualizations, interactive dashboards and other media.

jupyter.org

- 연봉 많이 받는 프로그래머 https://youtu.be/j5ogDOuqXqg

그러면 이상으로 인공지능 개발자를 꿈꾸는 여러분들의 미래에 행운을 기원하며 이 글을 마칩니다.