본문 바로가기

전체 글12

[Java] 예시 코드로 알아보는 Java 기초 개념 Java는 다양한 응용 프로그램을 개발하는 데 사용되는 강력한 프로그래밍 언어이다. 이번 포스팅에서는 Java의 기초적인 개념과 기본 코드를 설명하겠다.01. Java란?Java는 Sun Microsystems(현재는 Oracle Corporation 소유)에서 개발한 고수준의 객체 지향 프로그래밍 언어이다. Java의 주요 특징은 플랫폼 독립성, 객체 지향성, 강력한 메모리 관리 및 멀티스레딩 지원이다.1) Java의 주요 특징플랫폼 독립성Java는 'Write Once, Run Anywhere'라는 슬로건을 가지고 있다. 즉, 한 번 작성한 코드가 다양한 플랫폼에서 실행될 수 있다. 이는 Java Virtual Machine(JVM) 덕분이다.객체 지향 프로그래밍(OOP)Java는 객체 지향 언어로,.. 2024. 5. 27.
[딥러닝] RNN 알아보기 ## 참고 사이트- https://ratsgo.github.io/natural%20language%20processing/2017/03/09/rnnlstm/- https://warm-uk.tistory.com/54## 시퀀스(sequence)?- 말 그대로 순서가 있는 data  Text는 '문맥'이라는 순서가 있고, 시계열 데이터에는 '시간'이라는 순서가 있듯이, 영상이나 음성 등도 전부 순서와 함께 흘러가는 시퀀스 데이터이다.- 이러한 시퀀스 데이터를 다루는 모델을 시퀀스 모델(Sequence model)이라고 한다.  순서가 있는 Sequence data에서 특징들을 추출하여 여러가지 문제를 해결하고 예측하며, 대표적으로 RNN, GRU, LSTM등이 있다.​- 그럼 일반적인 데이터와는 뭐가 다를까.. 2024. 5. 6.
[슬기로운 인턴생활] 네 번째 TASK - MongoDB에서 유사 데이터 join 네 번째 TASK - MongoDB에서 유사 데이터 join 01. TASK 요약 지팬스 스마트로에서 진행하고 있는 주요 사업 중 하나는 해양수산 빅데이터를 판매하는 것이다. 현재 선박 관련 데이터는 실시간으로 MongoDB에 들어오고 있는데, 소비자가 MongoDB에 저장되어있는 데이터를 구매했을 때 (추가 구매를 하도록) 유사한 다른 데이터와 join해서 제공할 수 있도록 하는 것이 이번 업무이다. 여기서 가장 큰 문제! MongoDB는 Mysql이 아니라 NoSQL이고, 이는 관계형데이터베이스가 아니기에 DB 내부에서는 join이 불가능하다는 점이다. 정리하자면, 관계형 데이터베이스(RDB)에 해당하지 않는 몽고디비에 저장된 데이터를 어떻게 join해서 csv파일로 저장하는 것이 가장 효율적인 방식.. 2024. 3. 25.
[딥러닝] 광학 문자 인식(OCR) / API / OCR Pre-trained 모델 적용 01. OCR이란? OCR(광학 문자 인식)은 Optical Character Recognition의 약자로, 스캔한 종이 문서나 PDF 파일, 텍스트 이미지 등 다양한 종류의 문서를 편집/검색 가능한 데이터로 변환하는 데에 사용되는 기술이다. 딥러닝을 적용한 OCR은 글자의 영역을 탐지하는 모델(Text Detection Model)과 해당 영역에서 글자를 인식하는 모델(Text Recognition Model) 두 가지 단계로 구성되어 이다. OCR의 과정을 두 단계로 나누는 이유는 데이터를 다양하게 활용하여 원활한 학습이 가능하고, 자원의 효율성과 언어별 정확도 등을 향상시킬 수 있기 때문이다. 그럼 이제 본격적으로 OCR 사용방법에 대해 공부해보자. 02. API의 개념과 활용 OCR을 제대로 활.. 2024. 3. 15.
[DataBase] MongoDB 파헤치기 MongoDB란? MongoDB는 NoSQL 데이터베이스의 한 종류로서, 비관계형 데이터를 저장하고 관리하는 데에 사용된다. 여기서 NoSQL는 YesSQL의 반대 의미가 아닌! Not Only SQL의 줄임말로, SQL만을 사용하지 않는 데이터베이스 관리 시스템(DBMS)을 지칭한다. 즉, 관계형 데이터베이스를 아예 사용하지 않는다는 의미가 아닌 여러 유형의 데이터베이스를 사용한다는 것이다. 01. 도큐먼트(Document) MongoDB는 도큐먼트 지향 데이터베이스이다. 도큐먼트(Document)란, MongoDB의 기본 단위로, 관계형 데이터베이스에서의 '행'의 개념과 유사하다. 이는 JSON 형태의 정렬된 key와 value의 집합으로 이루어져 있는데, key값은 대소문자를 구분하는 문자열이며 중.. 2024. 3. 7.
[DataBase] PostgreSQL 파헤치기 PostgreSQL이란? PostgreSQL은 관계형 데이터베이스 관리 시스템(RDBMS) 중 하나로, JSON 및 XML 데이터 유형을 지원하는 오픈소스이다. PostgreSQL은 클라이언트/서버 모델을 사용한다. 서버에서는 데이터베이스 내의 파일을 관리하며, 클라이언트에서 들어오는 연결들을 수용하고 데이터베이스 액션을 수행한다. 또한 클라이언트는, 기존 서버와의 간섭 없이 새로 생성된 서버 프로세스와 통신한다. PostgreSQL 사용방법은 크게 두 가지로 나뉜다. GUI(그래픽 사용자 인터페이스) 도구와 명령줄 인터페이스를 통한 커맨드 라인 사용이다. 각각의 방법에 대해 간단히 알아보자. 사용방법 1) GUI(Graphic User Interface, 그래픽 사용자 인터페이스) 도구 - pgAdmi.. 2024. 3. 4.
[슬기로운 인턴생활] 세 번째 Task - DB에서 불러온 데이터로 TAT 고도화 세 번째 Task - DB에서 불러온 데이터로 TAT 고도화 01. 개요 엑스프레소로 가져오는 실시간 위치 데이터를 참고하여, 20개 정도의 터미널에 들어왔다 나가는 차량 파악 후 리스트업. (날자 별로 차량이 어느 터미널에서 어느 정도의 시간이 소요되었는지 파악) - tat: 차량이 각 터미널에 들어왔다가 나가는 시간 - 엑스프레소(Expresso): Gpans smartlo 기업에서 개발한 화물 운송 주문 및 수락, 실적관리 등을 담당하는 운송 전용 어플. (https://play.google.com/store/apps/details?id=net.smartlo.expresso&hl=ko&gl=US&pli=1) 02. 사용 tool - PostgreSQL, MongoDB, Python (각각의 DBMS.. 2024. 3. 4.
[딥러닝] 퍼셉트론(perceptron) / MLP(Multi Layer Perceptron) / 경사하강법 01. 퍼셉트론 퍼셉트론(Perceptron)은 뉴런이 정보를 받아서 문제를 처리하는 원리를 따라한 인공 신경망의 한 종류로, 이진 분류 문제를 해결하는 데에 사용되며 프랑크 로젠블라트(Frank Rosenblatt)에 의해 1957년에 개발되었다. 이는 생물학적 신경계의 기본단위인 뉴런의 구조에서 본따온 구조를 지니고 있으며 인접해있는 다른 뉴련과 다양한 신호를 주고 받으며 정보를 주고받는다. ▶ 양쪽의 구조가 비슷함을 확인할 수 있다. 퍼셉트론은 입력값을 받아서 가중치와의 곱을 계산하고, 이를 활성화 함수를 통해 처리하여 출력값을 생성한다. 이러한 퍼셉트론은 간단한 선형 분류 모형의 형태를 띄고 있기에 단일로는 잘 사용하지 않지만, 딥러닝의 강력한 모델들이 퍼셉트론의 변형된 형태를 사용하기에 그 개념.. 2024. 2. 29.
[Streamlit] Streamlit으로 손쉽게 웹 생성하기/Streamlit 사용법 0. Streamlit이란? Streamlit은 데이터 분석과 시각화를 함께 간편하게 수행할 수 있는 파이썬 오픈 소스 라이브러리이다. 간단하고 직관적인 사용자 인터페이스를 제공하여 사용자가 작업을 빠르게 구축하고 배포할 수 있도록 하며, 파이썬 코드만으로도 간단하게 앱을 구현할 수 있다는 장점을 갖는다. 또한 텍스트 입력이나 이미지 업로드를 비롯하여 데이터 시각화, 체크박스, 링크연결, 사이드바 등 다양한 기능을 자유롭게 사용할 수 있기에 누구나 쉽게 사용할 수 있는 라이브러리로 손꼽힌다. 1. Streamlit 설치 Streamlit을 사용하기 위해서는 가장 먼저 Streamlit 모듈을 설치해주어야 한다. pip install streamlit 설치가 완료되었다면, 터미널 창에 아래의 명령어를 입력.. 2024. 2. 26.
[Paper Review] Deep Learning (Yann LeCun, Yoshua Bengio & Geoffrey Hinton) 논문 리뷰 1 본 논문의 원문파일입니다. publication at: https://www.researchgate.net/publication/277411157_Deep_Learning [필독사항] 1. 논문의 저자는 딥러닝계에서 크게 이름을 알린 Yann LeCun 외 2인입니다. 딥러닝에 처음 입문하시는 분들도 쉽게 이해할 수 있도록 딥러닝의 개괄적인 내용이 담겨있습니다. 2. 본 논문 리뷰에서는, 원문에서 사용된 영어 표현을 최대한 기재하고자 하였습니다. 이를 그냥 지나치지 마시고 원문의 표현을 이해하며 읽으신다면, 더욱 저자의 의도와 가까워질 수 있을 것입니다. 3. 논문 리뷰는 총 세차례에 걸쳐 진행되며, 문단 단위로 진행됩니다. 전체적인 구조는 '[원문 해석] → [요약] → [이론 설명]' 다음과 같습니다.. 2024. 2. 12.