‘엔비디아 RTX AI PC 캠퍼스 세미나’를 다녀오고 개념 정리하기
·
Event
아직 12월은 아니었지만 오늘 첫눈이 내렸다. 어제까지만 해도 초록색을 내뿜던 나무들은 흰 눈에 덮여 그 무게를 견디고 있었다. 그 모습을 사진으로 남기고, 발걸음을 옮겨 학교로 향했다. 오늘 학교로 온 이유는 바로 대공연장에서 ‘엔비디아 RTX AI PC 캠퍼스 세미나’가 열렸기 때문이다.  미국 주식에 관심이 있어 엔비디아에 관심이 있었던 적이 있었지만, 정작 엔비디아가 어떤 기업이고, 무슨 서비스를 내세우고 있는지에 크게 관심을 두지는 않았었다. AI 대격변의 시대가 열리고 AI를 개발하는 수많은 회사들이 엔비디아의 제품을 필요로 했기에 엔비디아의 주가가 상승했다고 짐작을 할 뿐이었다. 오늘 세미나에 참석해 엔비디아는 무슨 회사인지, 그리고 제목에 써져있는 RTX는 무슨 뜻인지 확인하고 싶었다. 대..
[JS Deep Dive] 27장 정리 - 배열에 관하여
·
Study/Modern JS Deep Dive
배열은 여러 개의 값을 순차적으로 나열한 자료구조 요소(element): 배열이 가지고 있는 값자바스크립트의 모든 값은 배열의 요소가 될 수 있음배열의 요소는 배열에서 자신의 위치를 나타내는 0 이상의 정수인 인덱스를 갖는다(0부터 시작)배열은 요소의 개수, 배열의 길이를 나타내는 length 프로퍼티를 가짐배열이라는 타입은 존재하지 않으며, 배열은 객체 타입이다.배열은 배열 리터럴, Array 생성자 함수, Array.of, Array.from 메서드로 생성 가능배열의 생성자 함수는 Array이며, 배열의 프로토타입 객체는 Array.prototype이다.일반 객체와 배열을 구분하는 가장 명확한 차이는 “값의 순서”와 “length 프로퍼티” 자바스크립트의 배열은 자료구조에서 말하는 일반적인 의미의 배..
[프롬프트 엔지니어링] 프롬프트 엔지니어링 기법들에 대하여
·
Study/프롬프트 엔지니어링
김진중(골빈해커)님의 '최고의 프롬프트 엔지니어링 강의'를 읽고 정리한 글입니다.프롬프트 엔지니어링이란 AI로 원하는 결과를 생성하기 위해 컴퓨터와 대화하는 방법 1. 프롬프트 엔지니어링의 가장 대표적인 다섯 가지 방법제로샷 프롬프팅LLM에게 아무런 데이터나 예시를 주지 않고 바로 특정 작업을 수행하도록 지시하는 것원샷 러닝LLM에게 명령을 내릴 때 실행 방법에 대한 예시 한 개를 동시에 제공ex) 영어를 한국어로 번역해줘. This is an apple을 한국어로 번역하면 ‘이것은 사과입니다’야.퓨샷 러닝LLM에게 명령을 내릴 때 2~3개부터 수십 개 정도의 예시를 함께 제공하는 것데이터가 부족하거나 특정 작업에 대한 사례가 많지 않을 때 유용CoT(Chain of Thought)LLM에게 문제 해결 ..
[프롬프트 엔지니어링] AI와 LLM에 대하여
·
Study/프롬프트 엔지니어링
김진중(골빈해커)님의 '최고의 프롬프트 엔지니어링 강의'를 읽고 정리한 글입니다.0.  소프트웨어의 발전소프트웨어는 데이터와 알고리즘, 두 가지로 구성 소프트웨어 1.0: 데이터를 알고리즘으로 조작해서 결과를 도출하는 방식소프트웨어 2.0: 데이터를 학습시킨 머신러닝 모델을 만들고, 이 모델을 통해 결과를 도출하는 방식소프트웨어 3.0: 머신러닝 모델을 프롬프트로 제어하는 것 소프트웨어 1.0은 결정론적인 방법 → 입력값에 대해 항상 동일한 출력값 반환소프트웨어 2.0은 머신러닝 모델이 상황에 맞게 스스로 논리 구조를 생성하는 비결정론적 방법 프로그래밍 = 컴퓨터와 상호작용하는 방법프롬프트 엔지니어링 = 자연어로 컴퓨터와 상호작용하는 방법1.  AI의 구분AI는 규칙 기반 AI와 머신러닝으로 구분 규칙 ..
[JS Deep Dive] 24, 25, 26장 정리 - 클로저, 클래스, ES6 함수의 추가 기능에 관하여
·
Study/Modern JS Deep Dive
클로저클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합 자바스크립트 엔진은 함수를 어디서 호출했는지가 아니라 함수를 어디에 정의했는지에 따라 상위 스코프를 결정→ 렉시컬 스코프(정적 스코프) 렉시컬 환경의 “외부 렉시컬 환경에 대한 참조”에 저장할 참조값,즉 상위 스코프에 대한 참조는 함수 정의가 평가되는 시점에 함수가 정의된 환경(위치)의 해 결정 렉시컬 스코프가 가능하려면 함수는 자신이 정의된 환경, 즉 상위 스코프(함수 정의가 위치하는 스코프)를 기억해야→ 함수는 자신의 내부 슬롯 [[Environment]]에 자신이 정의된 환경, 상위 스코프의 참조를 저장 함수 객체의 내부 슬롯 [[Environment]]에 저장된 현재 실행 중인 실행 컨텍스트의 렉시컬 환경의 참조가 상위 스코프이며, 자신..
우아한테크코스 7기 프리코스 최종 회고 (웹 프론트엔드)
·
우아한테크코스(프리코스)
0. 언젠가 한 번 지원해야겠다 생각했던우아한테크코스에 대해서는 옛날부터 들어서 알고 있었다. 내가 아는 지인이 우테코에 다니기도 했었고. 대학에서 컴퓨터공학부 수업을 듣고 있기는 했지만, 웹 프론트엔드에 대한 수업은 많지 않았기에 우테코에 들어가서 1년간 제대로 배우면 좋겠다하는 생각을 가지고 있었다. (물론 학교에서의 수업이 중요하지 않다는 의미는 아니다). 또 합격하지는 못하더라도 4주 동안 진행되는 프리코스를 통해 얻어가는 것이 많다고 하기에 더욱 기대가 되었었다. 그리고 시간은 흘러 우아한테크코스 7기 입학설명회 영상이 업로드가 되었다. 이번 7기의 주제는 ‘메타인지’였다. 메타인지? 어디선가 들어봤지만 정확히 무슨 뜻인지는 잘 몰랐다. 메타인지는 아는 것과 알지 못하는 것을 구분할 수 있는 능..
우아한테크코스 7기 프리코스 2주차 회고 (웹 프론트엔드)
·
우아한테크코스(프리코스)
중간고사와 프리코스 1주차가 마무리되고, 10월 22일 오후 3시부터 프리코스 2주차가 시작되었다. 사실 화요일부터 바로 2주차 프리코스를 시작하지는 않았고, 프리코스 커뮤니티(디스코드)에서 다른분들의 PR을 보며 리뷰를 하고, 또 내가 1주차 미션 PR 링크를 올려서 리뷰를 받았다.1. 1주차 피드백정말 감사하게도 네 분께서 코드 리뷰를 해주셨다. 리뷰 중 기억해두면 좋을 내용들을 요약해보자면변경될 일이 없는 상수값(기본 구분자)는 클래스의 정적 속성이나 상수 변수로 분리하고, 커스텀 구분자만 별도로 관리할 것이 명확추출된 숫자 배열은 메서드 내부의 let으로 둬서 더 명확하게 표현하는 것이 좋을 듯calculateSum 메서드는 sum만 구현하고 다른 로직은 코드 분리하기3번과 비슷한 맥락으로, va..
우아한테크코스 7기 프리코스 1주차 회고 (웹 프론트엔드)
·
우아한테크코스(프리코스)
오래전부터 우아한테크코스에 지원해야겠다고 다짐했었다. 우아한테크코스에 합격했으면 좋겠다는 마음이 크지만, 설령 합격하지 못하더라도 4주간의 프리코스를 통해 한층 더 성장하는 시간을 가질 수 있을 것이다. 열심히 몰입해서 많은 것을 얻어가고 싶었고. 이런 생각들은 자기소개서를 작성하며 더욱 커져갔다.1주차 목표프리코스 1주차에 내가 세운 목표는 다음과 같았다.다음 주부터 중간고사가 시작되는데, 중간고사 대비 공부하는 시간과 프리코스에 투자하는 시간을 1:1 비율로 맞춘다.프리코스를 할 때에는 프리코스에만 몰입한다.프리코스를 진행하며 배운 점들을 글로 기록한다.다음 주에 중간고사 시험을 응시해야되서 여유로운 상황은 아니었지만, 나에게 있어서 프리코스의 우선순위는 중간고사보다 높았기에 꾸준히 프리코스에 시간을..
[JS Deep Dive] 20, 21장 정리 - strict mode, 빌트인 객체에 대하여
·
Study/Modern JS Deep Dive
Strict Modefunction foo() { x = 10;}foo();console.log(x); // ?전역 스코프에도 x 변수의 선언이 존재하지 않기 때문에 ReferenceError를 발생시킬 것 같지만 자바스크립트 엔진은 암묵적으로 전역 객체에 x 프로퍼티를 동적 생성→ 전역 객체의 x 프로퍼티는 마치 전역 변수처럼 사용 가능→ 암묵적 전역(implicit global)이라고 함→ 오류를 발생시키는 원인이 될 가능성이 큼 ES5부터 strict mode(엄격 모드)가 추가→ 자바스크립트 언어의 문법을 좀 더 엄격히 적용하여 오류를 발생시킬 가능성이 높거나 자바스크립트 엔진의 최적화 작업에 문제를 일으킬 수 있는 코드에 대해 명시적인 에러를 발생시킨다.(ESLint 같은 린트 도구를 사용해도 ..
[JS Deep Dive] 19장 정리 - 프로토타입에 대하여
·
Study/Modern JS Deep Dive
자바스크립트는 명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어(클래스 기반 객체지향 프로그래밍 언어보다 효율적이며 더 강력한 객체지향 프로그래밍 능력을 지니고 있는 프로토타입 기반의 객체지향 프로그래밍 언어) 자바스크립트는 객체 기반의 프로그래밍 언어이며 자바스크립트를 이루고 있는 거의 “모든 것이” 객체객체지향 프로그래밍객체지향 프로그래밍은 프로그램을 명령어 또는 함수의 목록으로 보는 전통적인 명령형 프로그래밍의 절차지향적 관점에서 벗어나 여러 개의 독립적 단위, 즉 객체의 집합으로 프로그램을 표현하려는 프로그래밍 패러다임 추상화: 다양한 속성 중에서 프로그램에 필요한 속성만 간추려 내어 표현하는 것객체 : 속성을 통해 여러 개의 값을 하나의 단위로 구성한..