개인(팀) 프로젝트 23

WEV2VEC2 튜토리얼을 활용하여, STT 이해해보기

지난 4월 12일, 휴대폰을 두고 화장실에 들어갔다가 갇힌 남성의 사연이 화제였다. 살려달라 외쳤지만 나아질 기미가 보이지 않자, 방 안 휴대폰을 떠올렸다고 한다. 그래서 그는, '하이 빅스비'를 외쳤고, 부모님께 통화연결을 해달라는 음성인식에 성공하여 화장실에서 탈출할 수 있었다. 뉴스 출처: https://www.hankyung.com/society/article/2023041213427 이 기사를 접한 뒤, 문득 궁금해졌다. 빅스비는 어떻게 음성을 인식한건지, 그리고 음성 데이터는 어떻게 수집&처리될지 알고 싶어졌다. 그래서 난, 지난 달 지인과의 대화를 통해 알게 된 STT를 떠올렸고, 해당 STT 튜토리얼을 직접 시도해 보았다. 목차 STT의 원리 STT 튜토리얼 한국어 음성인식에 대하여 01...

AWS EC2(Ubuntu) Url port 번호 없이 접속하도록 설정하는 방법

우리는 EC2 등 서버에 웹을 올렸을 때, 해당 링크에 접속하기 위해서는 퍼블릭 ip 주소 뒤에 반드시 port 번호를 설정해야 한다. 이는 누구에게는 번거로움이 될 수 있다. 따라서 이를 해결하는 방법에 대해 조금 더 자세히 설명해보려 한다. (이전에 관련 내용을 간략히 설명한 적 있는데, 궁금하면 아래 포스팅을 참고하면 된다.) Django 웹사이트에 AWS RDS (PostgreSQL) 연결 방법 현재 프로젝트를 진행하며 데이터베이스를 PostgreSQL로 지정하기로 결정했다. RDB를 선택한 이유는 아래와 같다. 사용자 데이터 등 데이터 간 관계 정의 open api data의 경우, 고정된 스키마로 스키마 eng-sohee.tistory.com 1. iptables 설정 초기화 우선 이전에 설정..

데이터베이스에 csv 파일 업로드 시 에러(value too long for type character) 해결

에러 살펴보기 ERROR: value too long for type character varying(76) Call getNextException to see other errors in the batch. 프로젝트 도중 csv 파일을 데이터베이스에 넣어야 했는데, 이때 위와 같은 오류로 데이터가 들어가지 않는다는 이야기를 듣고, 함께 해결에 나섰다! 처음 에러를 봤을 때는, 초기 설정한 스키마의 글자 수 등의 제한에 걸려서 저장이 안되는 줄 알았는데, 전반적으로 TRUNCATE 가 필요한 상황이라는 것을 알았다. 여기서 잠깐! TRUNCATE란? 데이터 테이블은 그대로 남겨놓되, 그 안에 알맹이(인덱스, 스키마, 데이터 등)들을 모두 초기화하는 sql 명령 중 하나다. 그렇다면, TRUNCATE 설정..

django Server에 image 업로드하는 기능 구현 + 이미지 스토리지를 AWS S3로 변경하려는 이유

현재 사진을 업로드하는 기능이 필요해 서버 내 media 폴더를 만들어, 업로드한 이미지가 media에 들어갈 수 있도록 설계했다. 사실 방법 자체는 어렵지 않다. 왜냐하면 django에는 이미 관련 라이브러리 (static 등)가 잘 되어있기 때문이다. 여기서, 필요하면 pillow 등을 추가 설치하면 되므로 프로세스 자체는 복잡하지 않다. 하지만 나는 구글링을 하면서, 중간중간 이해가 되지 않는 부분이 있었기 때문에 (어디로 어떻게 저장되는지 혼란스러웠음) 버벅거렸던 것은 사실이다 ㅜㅜ 그래도 문제를 해결했으니 다행이라고 생각한다! 이제는 유연하게 기능을 구현할 수 있을 것 같다 ㅎㅎ 1. 메인의 settings.py 설정하기 import os # 사진 저장 공간 설정 # media로 접근하면 med..

Django 웹사이트에 AWS RDS (PostgreSQL) 연결 방법

현재 프로젝트를 진행하며 데이터베이스를 PostgreSQL로 지정하기로 결정했다. RDB를 선택한 이유는 아래와 같다. 사용자 데이터 등 데이터 간 관계 정의 open api data의 경우, 고정된 스키마로 스키마 중복 차지 공간 없앰 그런데, RDB에서도 다양한 DB의 종류가 있다. 그 중에서도 가장 대표적인 건 MySQL과 MS SQL 그리고 PostgreSQL이 있다. PstgreSQL을 선택한 이유 PostgreSQL MySQL 빠르게 데이터를 삽입 삭제할 때 용이 고정된 데이터의 처리에 용이 데이터베이스 백업 기능으로 데이터 소실 시 해결 가능 데이터 소실 우려 오픈 데이터 소스 오픈 데이터 소스 다양한 join 방법이 존재 join 등 데이터 집계의 한계 데이터 삭제 및 삽입 프로세스라 업데..

Window에 Cron Tab 설치 방법 + Cron 이란?

나는 최근 진행한 프로젝트 때문에 Cron을 종종 이용했다. 물론 Airflow 등을 쓰면 더 손쉽게 스케줄러 활용이 가능하지만, 파이썬 파일 하나를 간단하게 돌리기로는 (내가 아는 지식 범위 내에서) Cron이 무난하고 이용하기 수월하다고 판단했기 때문이다. 목차 Cron 이란? nnSoft 접속 및 프로그램 설치하기 워드패드로 cron 설정하기 Cron 주기 1. Cron이란? 유닉스 계열의 운영체제에서 사용되는 잡 스케줄러다. 일반적으로 서버 등에서 쓰이는 유닉스 계열의 운영체제가 있는데, 이 유닉스 계열의 운영체제는 cron이라는 잡스케줄러를 가자고 있다. 하지만 윈도우에서도 윈도우용 cron을 사용할 수 있다. 2. nnSoft 접속 및 프로그램 설치하기 http://www.nncron.ru n..

02. Django 에러 : ValueError: Field 'found_count' expected a number but got ''.

Flask 앱의 편리함 때문에, 초기 개발은 Flask 로 수행했지만 (사실 이때까지 배운게 Flask뿐이었음) Django가 더 유동적으로 개발할 수 있다는 장점이 있어, 프로젝트 개선작업은 Django로 하기로 했다. 즉... 그냥 모두 뜯어 고쳐야 한다. 원래도, 초기 개발당시에는, 다소 모르는 내용이 있더라도 완전히 이해하지 않고 프로젝트를 구동시키는 데에 목적이 컸으므로, 완벽하게 이해하며 프로젝트를 수행할 수 있도록 새로 프로젝트를 시작하는 것도 나쁘지 않을 것 같았다. 따라서 나는 Pycharm 을 이용해 Django 프로젝트를 개설했다. 그런데 프로젝트를 한참 수행하던 중, 위와 같은 문제를 맞닥뜨렸다. ❓❗ 에러 살펴보기 ValueError: Field 'found_count' expec..

01. 전주시 빅데이터 분석 공모전 "우수상 수상" : 가치를 인정받다!

나는 이번 6월, 전주시에서 개최한 빅데이터 분석 공모전에서 우수상을 수상했다. 따라서 시청에서의 가치를 인정받았고, 따라서 이번 분석 공모전 결과물에서 더욱 심화시켜 사용자에게 실제로 배포할 만한 서비스를 개발해봐야겠다는 생각이 들었다. 프로젝트 진행 과정 및 결과물 포스팅 01. 전주시 빅데이터 분석 공모전 - 우수상 수상! [참고] 해당 프로젝트는 지난 4월 수행한 것으로, 엔지니어링이 지금보다 미숙할 때 진행했다는 점을 참고해주시기 바랍니다. 목차 참여 계기 준비 과정 데이터 분석 과정 - 서비스 구현 계기 사 eng-sohee.tistory.com 기존 프로젝트에서는 아쉬움을 많이 느꼈다. 크게 나누자면 아래와 같다. 1) 느린 사이트 접속 속도 2) 안정적이지 못한 데이터 집계 과정 3) 실리..

09. Selenium - 동적 사이트 테이블 Crawling : 오류 해결

목차 Selenium으로 인식되지 않는 text를 print 하는 방법 동적 테이블 값을 Selenium + BeautifulSoup4 로 출력하는 방법 01. Selenium으로 인식되지 않는 text를 print 하는 방법 나는 이전동안, Selenium을 이용한 동적 사이트 테이블을 크롤링하는 작업을 수행했다. 수행 기록은 아래와 같다. https://eng-sohee.tistory.com/78 07. Selenium - 동적 사이트 테이블 Crawling 목차 크롤링 사용 목적 Selenium 구현 과정 01. 크롤링 사용 목적 우리는 동적 페이지 내 데이터를 실시간 수집을 해와야 한다. 대시보드에 실시간으로 데이터를 띄워주어야 하기 때문이다. 따라서 eng-sohee.tistory.com 그런데..

08. PSST 기반 사업계획서 작성 방법

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 멘토님으로부터 PSST 기반 사업계획서가 무엇인지 공부해 오라는 과제를 받았다. 유튜브 영상을 기반으로 PSST 사업계획서가 무엇인지 공부해보았고, 해당 게시물에 정리를 해보았다! 목차 PSST란? PSST 사업계획서의 구성 01. PSST란? 1-1. PSST 란? 창업기업들이 성장할 수 있는 아이템을 개발/개선할 수 있는 방법이다. Problem, Solution, Scale-Up, Team의 구조 작성을 원칙으로 한다는 것이 특징이어, 앞 글자를 따와 PSST라고 불린다. Problem: 창업기업이 아이템을 개발하는데 고객기..