개발

개발/오류해결

[IntelliJ] Project JDK is not defined 오류 해결 방법

⛔ 문제상황Spring Boot 백엔드 작업을 수행하기 위해 팀레포를 클론하려고 시도하였다.그런데 클론을 했지만 "Project JDK is not defined"라고 뜬다...굉장히 많이 본 오류지만 이에 대해서 자세하게 작성된 글을 못 봐서 나의 경험을 기록하고 공유하고자 글을 작성한다! 아래의 사진을 보면 작동 여부를 확인할 수 있다. 왼사진의 경우에는 WoIApplication이 실행이 안된다. ⭐ 해결 방법저는 다음과 같은 순서로 오류를 해결하였습니다. 1. build.gradle에서 자바 버전을 확인한다.이전의 프로젝트는 모두 자바11을 사용하였고 내가 팀프로젝트를 처음 만드는 입장이라서 당연히 자바11을 생각하고 있었습니다. 하지만 이번에는 다른 팀원이 처음 init을 해준 경우이기 때문에 ..

개발/NLP

[NLP] 파이토치와 구글 코랩으로 배우는 BERT 입문 1장

용어 정리 인공지능>머신러닝>딥러닝 신경망 : 단순한 기능만 가진 뉴런이 층을 이루어, 층 사이에서 연결이 수행되는 것을 통해 형태가 만들어진다. 딥러닝 : 많을 층을 가진 깊은 신경망을 사용해 학습한다. 층의 수가 많아질수록 표현련은 향상하지만, 학습은 어려워진다. 역전파(back-propagation) : 신경망에서 한 층씩 거슬러 올라가도록 오차를 전파시켜 기울기를 계산 및 그 기울기에 기반해 매개변수를 갱신한다. 자연어 처리 개념 자연어 처리 : 컴퓨터가 사람의 자연어를 이해하는 것을 목적으로 한다. DeepL : 일상언어의 미묘한 뉘앙스까지 번역할 수 있다. 형태소 분석 : 자연어를 형태소로 분할하는 것 word2vec 단어를 벡터화(=텍스트를 숫자화하기)하고, 유사도가 높은 단어를 찾거나, 단..

개발/머신러닝

[혼공머신] 4장. 다양한 분류 알고리즘

1. 로지스틱 회귀 이름은 회귀지만 분류 모델이다. 가중치와 계수들을 곱한 z의 값이 아주 큰 양수이면 1, 아주 큰 음수이면 0으로 바꿀 수 있도록 하는 함수는 시그모이드 함수(=로지스틱 함수)이다. z는 0~1사이의 범위를 벗어날 수 없어서 0~1사이의 값을 0~100%까지 확률로 해석할 수 있다. z위치마다 시그모이드 함수를 계산하며 지수 함수 계산을 np.exp()함수를 사용한다. import numpy as np import matplotlib.pyplot as plt z = np.arange(-5, 5, 0.1) phi = 1 / (1 + np.exp(-z)) plt.plot(z, phi) plt.xlabel('z') plt.ylabel('phi') plt.show() (1) 로지스틱 회귀로 ..

개발/머신러닝

딥러닝(OpenCV cnn)을 이용한 Face Recognition 구현하기

💡OpenCV를 이용한 Face Recognition 구현하기 이번에는 Face Recognition으로 인물에 대한 정보를 추출한 후 이미지에서 해당 인물을 찾아내는 프로그램을 구현했습니다. 크게 두 단계로 작업을 나눌 수 있습니다. 우선, pickle을 사용하여 이미지 정보를 추출 후 데이터 셋으로 저장합니다. 그 후 해당 데이터를 활용하여 이미지에서 인물을 찾는 작업을 수행합니다. 최종 결과물은 이미지에서 손흥민을 인식하고 Son 글자가 출력되며 다른 인물들은 표시 되지 않는 프로젝트입니다. 0️⃣ Recognition에 필요한 툴 설치하기 개발 환경은 Anaconda의 VS Code를 사용하였으며 설치 방법은 다음과 같습니다. 1. Anaconda Prompt를 관리자 권한으로 실행합니다. 2. ..

개발/머신러닝

딥러닝(OpenCV dnn)을 이용한 Face Detection GUI로 구현하기

💡개요 개인적으로 머신러닝을 접해보고 싶어서 미니 프로젝트를 개발하기로 하였습니다. 처음으로 인공지능을 배우는 것이니 재미가 있는 내용을 학습하고 싶어 OpenCV를 선택했습니다. 배운 내용들은 틈틈히 블로그에 작성해서 정리해볼 예정입니다. 💡OpenCV를 이용한 Face Detection 구현하기 ▶️ 사용 라이브러리 import cv2 import numpy as np from tkinter import * from PIL import Image from PIL import ImageTk from tkinter import filedialog import cv2로 OpenCV 라이브러리를 넣어줍니다. 또한, PIL(Pillow)를 사용하여 이미지 분석과 처리를 쉽게 할 수 있습니다. ▶️ 변수 선언 ..

개발/기타

[Anaconda] 가상환경 생성 및 VSCode에 연동

(1) 가상환경 생성하기 Anaconda Prompt 실행 $ conda env list #설치된 가상환경 목록 $ conda create -n py37 python=3.7 #가상환경 설치하기(3.7파이썬 버전의 py37 이름으로 생성) $ conda activate test $ conda deactivate $ conda env remove -n test $ conda list #설치된 패키지 목록 (2) VSCode와 연동 Extensions → python, code runner 설치 ctrl+shift+p → Python : Select Interpreter → 연동하고싶은 가상환경 클릭**기존에 Python 3.9.13(”base”)로 선택되어 있었음

개발/기타

[깃허브] Organization에 있는 Repository를 개인 Repository에 가져오기

프로젝트를 마치고나서 Organization에서 작업한 백엔드 Respository를 개인 Repository에 가져와야 했어요. 그래서 어떻게 했는지 방법에 대해서 정리해보았습니다! 1. 사전작업 (1) 기존 repo(=갖고와야 하는 repo)의 주소를 복사해줍니다. (2) 저장할 폴더를 생성합니다. (3) 신규 repo(=새롭게 저장할 repo)를 생성합니다. 생성 후, 주소를 복사해줍니다. 2. cmd에 작성 (1) cmd 창에 새로 생성해둔 폴더의 위치로 이동하기 위해 cd 명령어를 사용합니다. (2) - 복사해둔 기존 repo의 주소를 git clone 합니다. - 기존 repo의 이름으로 이동해줍니다. - 신규 repo에 새로 git remote set-url --push origin 해줍니다..

개발/JAVA

[JAVA] Swing 이벤트 처리

** 2022년 11월 18일에 작성한 글입니다. ** 이벤트 기반 프로그래밍 이벤트 발생에 의해 프로그램 흐름이 결정되는 방식의 프로그램 패러다임입니다. 이벤트 사용자의 입력, 네트워크로부터 데이터 송수신 등 이벤트 기반 프로그래밍 어떤 사건에 따라 제어 흐름이 결정되어 동작을 처리 이벤트 처리 구조 각 이벤트 소스마다 이벤트 리스너와 연결합니다. 이벤트 소스 객체 : 이벤트를 발생시킨 컴포넌트 객체입니다. 이벤트 리스너 객체 : 이벤트 소스에서 발생한 이벤트를 처리하는 객체입니다. 이벤트 핸들러 메서드 : 전달된 이벤트를 처리하는 메서드입니다. 이벤트 리스너 각 이벤트에 대한 이벤트 핸들러 메서드를 구현하기 위한 객체입니다. 이벤트 소스와 이벤트 리스너를 연결해줍니다. 각 이벤트 소스는 addXXXL..

개발/JAVA

[JAVA] Swing 기본

** 2022년 11월 11일에 작성한 글입니다. ** GUI 프로그래밍 CUI : 텍스트 기반의 입출력입니다. GUI : 시각적인 요소들을 통해 프로그램 구성합니다. GUI 그래픽을 이용하여 사용자에게 이해하기 쉽고 사용하기 쉬운 입출력 인터페이스 제공합니다. 이벤트 기반 프로그래밍입니다. 사용자가 발생시키는 이벤트에 대한 메시지를 처리하는 루틴을 만들어 줍니다. 메시지 구동 구조 OS는 프로그램 내/외부 변화 발생을 메시지를 통해 해당 프로그램에 알려줍니다. 메시지 기반 및 이벤트 기반 프로그래밍입니다. Swing 강력학 GUI 컴포넌트 JDK에서 제공하는 기본 제공 클래스를 통합니다. 쉬운 GUI 컴포넌트 객체지향적 문제 해결 관점에서 프로그래밍입니다. Swing 특징 AWT를 기반으로 기본의 AW..

개발/JAVA

[JAVA] 예외처리

** 2022년 11월 4일에 작성한 글입니다. ** 🎈예외 (Exception) 예외란 프로그램 실행 중에 예기치 못한 상황에서 발생하는 비정상적인 상황을 가리킵니다. 정수를 0으로 나누기 유효하진 않은 배열의 첨자를 사용한 선택식 객체가 할당되지 않은 참조변수의 사용 잘못된 형식의 콘솔 입력이나 파일 접근시의 문제 메서드 호출에 의해 발생 🎈예외처리 (Exception Handling) 예외처리란 예외 발생 시 프로그램의 비정상적인 종료대신 계속해서 정상적인 수행을 할 수 있도록 처리하는 것입니다. 예외 객체 처리 try ~ catch 문에 의해 직접 처리 메서드 호출측으로 던져짐 = throws 예외 객체 프로그램에서 예외도 하나의 객체로 표현되어 일반 객체처럼 클래스를 이용하여 정의되어 사용 가능..

케이비이
'개발' 카테고리의 글 목록