본문 바로가기
ETC/LEARN

[혼공얄코] 가깝지만 먼 AI에 대해 알아가기 (2주 차)

by 아이엠제니 2024. 7. 11.

 

💾 혼공학습단 12기


 

 

 

 

 

챕터 1. 개발자 이해하기: 개발과 개발자 용어 알기

01-3 프로그래밍 언어도 외국어인가요?


tmi. 세상에 프로그래밍 언어가 9,000개나 존재한다... 😶

 

1. 프로그래밍 언어


  • 컴퓨터에 명령을 내릴 때 사용하는 언어
  • 사람과 컴퓨터 사이에도 언어라 부릴 만큼 정교하고 풍성한 소통 수단이 필요. 그것이 프로그래밍 언어

 

 

2. 프로그래밍 언어가 다양한 이유


  • 대표적인 프로그래밍 언어: C, 자바, 파이썬, 자바스크립트 등
  • 좀 더 읽기 편한 언어, 짧은 코드로 더 많은 지시를 내릴 수 있는 언어, 보다 빨리 작동하는 언어, 오류로부터 안전한 언어를 원하는 사람들이 생김. 이처럼 다양한 요청과 수요에 따라 계속해서 새로운 프로그래밍 언어가 만들어짐
  • 그 결과로 오늘날 널리 사용되는 프로그래밍 언어들은 과거에 비해 편리하면서도 오류 발생이 적고 더 강력한 기능들을 갖추게 되었음

 

 

3. 고수준 언어와 저수준 언어


  • 고수준 언어: 사람의 언어나 표현 방식에 보다 가까운 것을 말함
  • 저수준 언어: 0과 1만 나열되어 있는 기계어에 가까움
  • 어셈블리어
    • 고수준 언어와 기계어 사이에 있음. 기계어를 제외하고는 유일하게 저수준 언어에 속하는 프로그래밍 언어
    • 하나의 명령에 한 가지 동작밖에 할 수 없음. 복잡한 프로그래밍을 해내기는 매우 어려움
    • 하드웨어와 밀접한 개발을 하는 임베디드 개발자들이 많이 사용함
  • 컴파일 언어 (고수준)
    • 프로그래밍을 완료한 뒤 코드 전체를 미리 기계어 등으로 '번역'(컴파일)해 둔 다음에 실행하는 언어
    • 컴파일일 과정으로 전체 개발 시간은 늘어나지만, 오류로부터 비교적 안전하고 프로그램 실행 속도 빠름
  • 인터프리터 언어 (고수준)
    • 사전에 번역하는 과정 없이 실행 시 바로 한 줄씩 '통역'되어 동작하는 언어
    • 신속하고 유연한 개발 과정이 필요한 소프트웨어에 인터프리터 언어가 많이 사용됨
대표적인 컴파일 언어 대표적인 인터프리터 언어
C, C++, C#, 자바, 타입스크립트, 코틀린, 스위프트, 스칼라, Go, 러스트 자바스크립트, 파이썬, 루비, PHP, 펄, R

 

 

4. IDE


  • 통합 개발 환경 (IDE, Integrated Development Environment)
    • 코드를 편리하게 실행할 수 있음
    • 각 기능을 쉽게 테스트하고 오류가 나는 원인을 친절하게 알려 주어 개발을 빠르고 정확하게 할 수 있도록 도와줌
    • 비효율적이거나 반복되는 부분을 스마트하게 재구성해 줌
    • 다른 개발자와 온라인 협업을 도와주는 등 나날이 강력해지고 있음
  • 종류
    • 이클립스: 자바 프로그래밍에 많이 사용됨
    • 인텔리제이: 강력한 기능을 가진 IDE. 모든 기능 사용을 위해서는 유료 정기 구독권 구입해야 함
    • 파이참: 파이썬 개발에 특화된 IDE
    • 안드로이드 스튜디오: 인텔리제이의 안드로이드 개발용 버전. 자바, 코틀린 사용
    • 엑스코드: 맥에서만 사용 가능. 스위프트를 사용하여 아이폰 앱이나 맥용 프로그램 만드는 데 사용
    • 비주얼 스튜디오: 윈도우 프로그램부터 온라인 서비스 등 다양한 소프트웨어 개발에 사용됨
    • 비주얼 스튜디오 코드: 광범위한 종류의 개발에 사용되는 도구. IDE가 아닌 코드 에디터로 구분됨. 하지만 원하는 플러그인을 자유롭게 추가해서 용도에 맞는 IDE로 구성할 수 있음

 

 

 

01-4 디버깅 중인데, 빌드해 보고 이상 없으면 릴리스할게요


 

 

1. 디버깅


  • 개발에서 20%는 코딩, 80%는 디버깅이라는 말이 있음
  • 디버그
    • 프로그램 개발 중 발생하는 오류나 비정상적인 작업을 분석하고 원인을 찾아 제거하는 작업을 의미함
    • 주로 오류 수정 프로그램과 그 작업을 통칭하는 단어로 사용됨
  • 디버깅: 오류를 찾아 제거하는 과정

 

 

2. 빌드


  • 소스 코드를 비롯한 모든 프로그램 구성 요소를 모아 실행할 수 있는 파일 또는 파일 묶음을 만드는 과정
  • 윈도우 프로그램이라면 exe 파일로, 모바일 앱이라면 앱스토어나 플레이스토어에 올릴 수 있는 apk 파일로 바꿔 주는 과정이 빌드임

 

 

3. 빌드 번호와 버전 번호


  • 빌드 번호
    • 출시되기 전의 프로그램 버전
    • 제품 출시 직전에 진행되는 여러 가지 테스트 단계에서 수정 및 업데이트되는 내용을 빌드 번호로 구분
    • 빌드 번호 종류
      1. 디버그 빌드: 개발자가 제품을 개발하는 동안 오류나 기능을 테스트하기 위해 빌드하는 것
      2. 릴리스 빌드: 제품의 모든 개발이 끝난 후 배포하기 직전에 점검한느 베타 버전임
  • 버전 번호
    • 제품 및 패키지를 출시하고 나면 수정이 불가능한 정식 버전

 

 

4. 배포


  • 빌드를 마친 실행 가능 파일을 사용자가 접근할 수 있는 환경에 배치하는 것
  • 웹사이트
    • 코드를 서버에 업로드해서 사용자들이 컴퓨터나 모바일 장치에서 볼 수 있도록 함으로써 배포
  • 모바일 앱
    • 사용자가 다운로드할 수 있는 형태로 플레이스토어나 앱스토어 같은 앱 마켓에 업로드함으로써 배포가 이루어짐
  • PC용 응용 프로그램은
    • 설치 파일을 다운로드할 수 있도록 웹사이트를 통해 배포함

 

 

 

5. 유지보수


  • 프로그램 배포 후 이어지는 버그 대응 및 기능 업데이트 등의 후속 작업들을 유지 보수라고 함
  • 유지 보수는 프로그래밍보다 더 앞선 기획 단계부터 준비해야 할 요소임

 

 

6. 리팩토링


  • 코드를 개선하여 읽기 쉽고 효율적인 좋은 코드로 만드는 작업
    • '좋은 코드'는 단지 주어진 기능을 잘 해내는 코드가 아님
    • 결과는 바꾸지 않으면서 코드를 더 아름답게 리모델링하는 것

 

 

7. 코드 리뷰


  • 소스 코드에 반영할 때 동료 개발자들이 작성한 코드를 확인하고 의견을 주고받는데, 이를 코드리뷰라고 함
  • 얻을 수 있는 이점
    1. 작성자가 발견하지 못한 오류를 동료가 발견하여 사전에 문제 방지
    2. 노련한 선임 개발자는 신입 개발자가 짠 코드에서 미숙한 부분을 찾아 지도해 주고, 신입 개발자는 선임 개발자가 짠 코드를 통해 실전 지식을 습득할 수 있음
    3. 띄어쓰기 방식이나 함수와 변수에 사용하는 용어를 통일해서 소스 코드를 좋은 가독성과 일관된 스타일로 유지할 수 있음

 

코딩 컨벤션
변수의 이름을 짓는 법, 코드의 줄을 맞추는 법과 같이 팀 또는 회사 내에서 정한 코딩 스타일 규약

 

 

 

 

[Git] 깃 커밋 메시지 컨벤션 Commit Message Convention

1. Message Structure type: Subject body footer 제목은 메시지 타입과 제목으로 구성됨 2. The Type Feat: 수시입출금 조회 기능 추가 타입은 제목 내에 포함되며, 다음 타입 중 하나일 수 있음 Feat: 새로운 기능

devje.tistory.com

코딩 컨벤션은 아니지만, 이전에 정리했던 git commit message convention을 추가함!

 

 

8. 문서화


  • 코드를 전반적으로 요약해서 설명하고, 각 기능을 코드에서 어떻게 사용하면 되는지 등을 정리
  • 워드 문서로 작성하기도 하고, 어느 정도 자동으로 작성해 주는 전문 도구를 사용하기도 함

 

 

 

챕터 2. 개발자 따라가기: 인공지능 기술 알기

02-1 인공지능의 발전

 

 

1. 인공지능


  • 인공지능은 인간의 지능을 모방하여 작업을 수행하는 시스템
  • 언어 번역, 음성 인식, 이미지 분석 등
  • 규칙 기반, 학습 기반(머신러닝, 딥러닝)으로 구분
    • 머신러닝: 컴퓨터가 스스로 학습하는 기술
    • 딥러닝: 머신러닝의 한 방식으로, 인간의 뇌가 정보를 처리하는 방식을 본떠서, 컴퓨터가 사진이나 음성 같은 복잡한 데이터에서 스스로 중요한 특징을 찾아내게 해주는 것

 

 

2. 규칙 기반 인공지능


  • 미리 정해진 규칙이나 조건들을 기반으로 작동하는 인공지능 시스템
  • 개발자가 시스템에 특정 규칙이나 조건을 입력하면, 인공지능은 입력된 규칙에 따라 작동함
  • 장점
    • 규칙이 명확하고 이해하기 쉬움
    • 특정 상황에 대한 반응을 정확히 예측할 수 있음
  • 단점
    • 규칙 외의 상황에 대해서는 대응하기 어려움
  • 개발자가 규칙을 얼마나 잘 설정하느냐가 시스템의 성능을 좌우한다고 볼 수 있음

 

 

3. 머신러닝


  • 인공지능의 한 분야, 컴퓨터가 데이터를 통해 학습하고 스스로 판단을 내릴 수 있게 하는 기술
  • 컴퓨터에게 다양한 데이터를 제공하고, 그 데이터로부터 패턴을 찾아내어 학습하게 함
  • 이 과정에서 컴퓨터는 데이터를 통해 '학습'하고, 그 학습을 바탕으로 새로운 문제를 해결하거나 예측하는 능력을 갖추게 됨
  • 지도 학습, 비지도 학습, 강화 학습으로 나눌 수 있음
    1. 지도 학습
      1. 컴퓨터에게 입력 데이터와 그에 해당하는 정답을 함께 제공함
      2. 이 데이터를 바탕으로, 컴퓨터는 입력 데이터와 출력 데이터 간의 관계(규칙)를 학습함
        * 레이블: 각 데이터 포인트에 붙은 정답이나 목표값
    2. 비지도 학습
      1. 컴퓨터에게 레이블이 없는 데이터만을 제공하고 스스로 제공된 데이터 내의 숨겨진 구조나 패턴을 찾아내는 방식
    3. 강화 학습
      • '시핵착오' 방식을 따름
        1. 알고리즘이 특정 환경 내에서 시도와 오류를 통해 목표를 달성하는 방법을 학습함
        2. 보상 시스템을 기반으로 하는데, 알고리즘이 올바른 결정을 내리면 '보상'을 받고, 잘못된 결정을 내리면 '벌'을 받음

 

 

4. 빅데이터


  • 머신러닝 모델을 훈련시키고 개선하기 위한 핵심 자원으로, 방대한 양의 데이터를 의미함
  • 빅데이터는 인공지능에게 필요한 '학습 자료'를 제공하며, 인공지능은 이 자료를 사용해 학습하고, 그 결과를 실제 세계의 다양한 문제 해결에 적용함
  • 특징
    • 매우 다양한 형태로 존재함 (텍스트, 이미지, 오디오, 비디오 등)
    • 데이터들은 구조화된 형태일 수도 있고, 구조화되지 않은 형태일 수도 있음
    • 데이터가 매우 빠른 속도로 생성, 수집, 처리되어야 함

 

 

5. 딥러닝과 인공 신경망


  • 딥러닝은 머신러닝의 한 형태, 인공 신경망이라는 구조를 사용하여 컴퓨터가 스스로 학습하고 판단을 내릴 수 있게 하는 기술
  • 인공 신경망은 인간의 뇌를 모방한 컴퓨터 시스템을 말함
    • 그물 형태의 여러 '층'으로 구성됨
    • 가장 처음에 '입력 계층'이 있어서, 데이터를 받아들임
    • 마지막에는 '출력 계층'이 있어서 결과를 내놓음
    • 이 두 계층 사이에 존재하는 여러 '은닉 계층'에서 복잡한 연산들을 수행함
    • 각 계층은 여러 '노드' 또는 '뉴런'으로 이루어져 있음

 

 

02-2 인공지능 더 깊이 알기

 

1. 인공지능의 구분


  • 인공지능은 능력과 목적에 따라 약인공지능과 강인공지능으로 구분
  • 인공지능 시스템이 수행할 수 있는 작업의 복잡성과 범위에 따라 이루어짐

 

  • 약인공지능
    • 좁은 인공지능
    • 매우 특정한 작업을 수행하도록 설계되어 있음
    • 이메일에서 스팸 메일을 필터링하거나 음성 인식을 통해 사용자의 명령을 이해하는 시스템과 같은 것들
    • 주어진 작업에는 탁월하게 활용될 수 있지만, 그 범위를 벗어난 일에는 활용할 수 없음
  • 강인공지능
    • 인간과 유사한 수준의 지능을 가지고 있음
    • 다양한 문제를 스스로 학습하고 해결할 수 있음
    • 학습, 이해와 추론, 심지어 자기 인식 등 인간과 유사한 고차원적인 인지 능력을 가짐

 

 

2. 모델


  • 인공지능에서 '모델'은 데이터로부터 학습된 패턴을 저장한 파일 또는 알고리즘을 의미하며, 입력된 데이터와 출력할 결과 사이의 관계를 나타내는 알고리즘
  • 학습의 결과로 만들어짐
  • OpenAI사의 챗GPT도 이 모델 중 하나임

 

 

3. 자연어 처리


  • 컴퓨터가 인간의 언어를 이해하고 해석할 수 있도록 돕는 기술 분야로, 인간의 의사소통 능력을 컴퓨터에게 부여하려는 목적으로 사용함
  • 자연어 처리는 크게 두 가지 작업으로 나눌 수 있음
    1. 이해: 컴퓨터가 인간의 언어를 인식하고 그 의미를 파악하는 과정
    2. 생성: 컴퓨터가 인간이 이해할 수 있는 언어로 응답하거나 새로운 텍스를 만들어 내는 과정

 

 

4. 생성형 인공지능


  • 컴퓨터가 인간과 유사하게 창의적인 작업을 수행할 수 있도록 해주는 기술
  • 예술 작품을 창작하거나 글을 작성하는 등 인간의 창조적인 능력을 모방하여 새로운 콘텐츠를 생성하는 데 중점을 두고 있음

 

 

5. 트랜스포머


  • 인공지능 분야에서 매우 중요한 모델로, 데이터 처리뿐만 아니라 자연어 처리, 이미지 인식 등 다양한 분야에 활용됨
  • 가장 큰 특징은 인코더-디코더 구조를 띄고 있으며, 어텐션 메커니즘, 그리고 피드 포워드 신경망을 사용함

 

  • 인코더와 디코더
    • 트랜스포머 모델은 인코더와 디코더로 구성됨
    • 인코더는 입력 데이터를 처리하고 이해하는 데 사용됨
    • 디코더는 인코더로부터의 정보를 받아 출력 데이터를 생성함
  • 어텐션 메커니즘
    • 트랜스포머의 핵심 기능 중 하나임
    • 글에서 어느 정보에 '집중'해야 할지 판단하도록 도움
    • 모델이 입력 데이터의 다양한 부분에 적절한 가중치를 부여하여, 중요한 요소에 주목하고 불필요한 부분은 무시할 수 있게 함
  • 피드 포워드 신경망
    • 인코더와 디코더 내부에는 피드 포워드 신경망이 존재함
    • 이 신경망은 어텐션 메커니즘을 통해 얻은 정보를 사용하여 각 단어 또는 문장의 특징을 더욱 세밀하게 분석하고 변환하는 역할을 함
    • 각 위치의 단어에 대해 독립적으로 동작하기 때문에 병렬 처리가 가능하여 매우 효율적임

 

 

02-3 생성형 인공지능 서비스 둘러보기

 

1. 대표적인 대화형 인공지능 서비스


  • OpenAI - 챗GPT, 마이크로소프트 - 코파일럿, 구글 - 제미나이 등은 채팅을 하듯 텍스트로 문답을 주고받을 수 있는 대화형 인공지능임
    • 챗GPT: 창의성을 바탕으로 한 생성 작업에 특화되어 있음
    • 코파일럿: MS의 검색 엔진인 빙의 데이터와 정보를 기반으로 하여 보다 정확하고 신뢰할 수 있는 답변 제시
    • 제미나이: 구글의 실시간 검색 데이터를 기반으로 역시 신뢰성 있는 답변을 제공
  • 대화형 인공지능의 코딩 기능
    • 코딩 기능 제공함

 

챗gpt: https://chatgpt.com/

코파일럿: https://www.microsoft.com/ko-kr/microsoft-copilot

제미나이: https://gemini.google.com/app?hl=ko

 

 

2. 생성형 인공지능 서비스


  • 달리: OpenAI에서 개발한 이미지 생성형 인공지능 서비스, 텍스트 설명을 보고 그에 맞는 이미지를 만드는 인공지능
  • 미드저니: 미드저니라는 연구실에서 개발한 인공지능 기반 이미지 생성 도구로, 주로 디스코드를 통해 사용됨. 사용자들은 디스코드의 특정 채널에서 직접 텍스트 명령으로 이미지를 요청하고 생성할 수 있음
  • 드래그 겐: 사용자가 이미지의 특정 포인트를 마우스로 드래그하여 자세, 형태, 표정, 레이아웃 등을 정밀하게 조정할 수 있음

 

 

3. 기타 생성형 인공지능 서비스 


  • 동영상 관련 서비스
    • 런웨이 젠2: 미국의 런웨이 리서치에서 개발함. 텍스트 입력이나 주어진 이미지를 바탕으로 동영상을 생성하고 편집하는 서비스임
    • 신시시아: 주어진 대본으로 사람이 말하는 것 같은 동영상을 만들어 내는 서비스
  • 작곡 서비스
    • 뮤즈넷: OpenAI. 다양한 악기와 스타일로 음악을 작곡
    • 마젠타 프로젝트: 구글. 인공지능을 통한 음악과 예술 창작에 중점을 둠. MIDI 생성을 용이하게 함
    • Soundraw: 사용자가 원하는 장르, 기분, 템포에 따라 고유한 음악을 생성해 냄
    • Soundful: 인공지능으로 비디오, 스트림, 팟캐스트 등을 위한 로열티 프리 배경 음악을 만들어 냄
  • 설치형 코딩 지원 서비스
    • 개발자들이 IDE 및 코드 에디터에서 사용할 수 있는 플러그인 형태의 인공지능 코딩 지원 서비스
    • 마이크로소프트 - 깃허브 코파일럿, AWS - 위스퍼러, 탭나인, 코디움
  • 코딩하지 않고 개발하기
    • 노크드(No code)
    • 이마지카 인공지능

 

프롬프트

우리가 인공지능에게 말을 걸 때 쓰는 특별한 종류의 '시작 신호'

  • 형태
    • 텍스트 프롬프트: 질문, 설명, 배경지식, 제약 조건 또는 명령의 형태일 수 있음
    • 이미지 프롬프트: 이미지를 사용하여 시각적인 정보 제공
    • 오디오 프롬프트: 음성 인식, 음악 생성 등 오디오 관련 작업을 위해 사용
  • 효과적인 프롬프트 작성 방법
    • 명확하고 간결하게
    • 구체적인 정보 제공
    • 목적을 분명히 하기
    • 반복과 수정을 통해 개선하기

 

 

 

 

 

기본 숙제(필수)


Ch.01(01-3, 01-4) 확인 문제 풀고 인증하기 (p.68~69 & p.82~83)

 

01-3 확인 문제

1. 다음 중 각각의 IDE와 가장 적합한 용도에 맞게 짝지으세요.

  1. 이클립스 - ㄴ.자바 프로그래밍 연습
  2. 엑스코드 - ㄹ.iOS용 카메라 앱 개발
  3. 비주얼 스튜디오 - ㄱ. 윈도우용 화면 캡처 프로그램 개발
  4. 안드로이드 스튜디오 - ㄷ. 안드로이드용 건강 관리 앱 개발

 

2. 다음 항목들을 저수준부터 사람의 언어에 가까운 순으로 나열하세요.

어셈블리어, 파이썬, 기계어, 영어 -> ( 기계어 -> 어셈블리어 -> 파이썬 -> 영어  )

 

 

3. 다음 중 틀린 것을 고르세요.

  1. 기계어도 프로그래밍 언어에 속합니다.
  2. 사람에게 낯설고 어려울수록 고수준 언어에 가깝습니다.
  3. IDE는 소스 코드에서 오류를 쉽게 찾을 수 있도록 도와줍니다.
  4. 널리 사용되는 언어는 시간이 지남에 따라 바뀔 수 있습니다.
  5. 사람의 언어에 비해 프로그래밍 언어는 언어마다 차이가 크지 않습니다.

 

4. 다음 문장 중 괄호 안에 알맞은 내용을 보기에서 찾아 작성해 보세요.

보기 1. 0  / 2. 1 / 3. 어셈블리어
  • 저수준 언어이면서 기계어가 아닌 언어에는 ( 어셈블리어 )이/가 있습니다.
  • 기계어는 ( 0 )(와)과 ( 1 )(으)로 이루어져 있습니다.

 

5. 다음 문장 중 괄호 안에 알맞은 단어를 보기에서 찾아 작성해 보세요.

보기 1. 컴파일 / 2. 인터프리터
  • 코드를 읽으면서 해석하고 실행하는 것은 ( 인터프리터 ), 코드를 기계어로 바꾸는 과정을 거치는 것은 ( 컴파일 ) 언어입니다.

 

 

01-4 확인 문제

1. 다음 중 틀린 것을 고르세요.

  1. 디버깅은 프로그램을 실행하며 동작을 확인한다는 의미로도 사용됩니다.
  2. 빌드는 배포 이후 이뤄지는 작업입니다.
  3. 안드로이드 앱을 플리이스토어에 업로드하는 것은 배포에 해당합니다.
  4. 빌드는 개발자들이 프로그램을 테스트해 보기 위해서도 이뤄집니다.

 

2. 다음 문장 중 괄호 안에 알맞은 내용을 보기에서 찾아 작성해 보세요.

보기 1. 주석 / 2. 버전 번호 / 3. 빌드 번호
  • 개발자가 소프트웨어를 보다 쉽게 파악할 수 있도록 코드 중간에 포함된 설명을 (1. 주석)(이)라고 합니다.
  • 개발자가 프로그램의 동작을 확인하는 빌드에는 (3. 빌드 번호)(이)가, 테스트를 마치고 고객에게 최종 전달되는 빌드에는 (2. 버전번호)(이)가 올라갑니다.

 

3. 다음 중 틀린 것을 고르세요.

  1. 유지 보수는 소프트웨어가 출시되기 전부터 고려할 사항입니다.
  2. 리팩토링한 프로그램은 이전과 다르게 동작합니다.
  3. 코드 리뷰는 구성원 개발자의 실력 향상에 도움이 됩니다.
  4. 문서화는 소프트웨어를 사용할 사람들을 위한 내용도 포함할 수 있습니다.

 

4. 다음 중 각 문장에 해당하는 작업을 작성해 보세요.

  • 윈도우용 프로그램을 프로그래밍한 뒤 EXE 파일로 내보내기 ( 빌드 )
  • 동료가 작성한 코드에서 수정할 부분 찾기 ( 코드 리뷰 )
  • 게임일 실행되는 동안 일어나는 오류를 찾아 원인 파악 후 해결하기 ( 디버깅 )
  • 모바일 앱을 앱 마켓에 업로드하기 ( 배포 )
  • 교통 정보 앱의 코드를 더 알아보기 쉽게 수정하기 ( 리팩토링 )

 

 

 

2주 차 후기


챕터 2부터가 개정판부터 새로 추가된 AI와 관련된 내용이 시작되었다.

나 또한 챗GPT를 많이 사용하는 편이지만?

막상 AI나 LLM과 같은 단어나 관련된 정보 같은 것을 접할 때면 혼란스러웠다.

어디선가 들어본 단어인 것 같기도 하고, 알 것 같은데 알지 못했던 것...

물론 한 번 읽는다고, 다 이해가 되는 것은 아니겠지만!

얼핏 들었던 것들에 대해 다시 정리해 볼 수 있는 시간이었다.

또한 인공지능 서비스의 종류도 꽤나 다양하다는 걸 알게 되었다.

나중에 써먹을 일이 있지 않을까?

 

 

 

한빛미디어 <혼자 공부하는 얄팍한 코딩 지식> 책 참고

 

 

 

 

300x250