# engineering

4개의 포스트

튀는 loss잡기 , 성능과 데이터 크기

🎃🤖 데브코스 AI 5기 Monthly project #2 (Boston) 진행 중 발생한 궁금증 같은 모델(MLP)사용시 범주형 피처를 임베딩한 방법이 원핫인코딩 방식보다 loss가 약 1.46배 높게나오고 val_loss가 튐 각각 최적화 진행함 문제점 1. loss가 튀는 이유? trainloss는 수렴하는 반면 valloss는 심하게 튐(train_loss에 비해 바뀌는 소숫점 단위가 다름) 문제점 2. 임베딩 방식이 원핫인코딩보다 성능이 낮음 원핫인코딩과 임베딩은 모두 범주형 변수를 처리하기 위한 방법이다. 테스트할 Task 1. 배달 시간 예측 사용할 데이터 (17만개 = train + val + test)

2023년 5월 4일
·
0개의 댓글
·
post-thumbnail

소프트웨어 공학이란?

소프트웨어 공학이란 무엇일까? 위키에서는 SEBOK을 인용하여 다음과 같이 정의하고 있다. 링크 > 소프트웨어의 개발, 운용, 유지보수 등의 생명 주기 전반을 체계적이고 서술적이며 정량적으로 다루는 학문이다. 즉, 공학을 소프트웨어에 적용하는 것이다. 다시 말해, 소프트웨어 개발을 보다 효과적이고 효율적으로 하기 위한 다양한 접근을 하는 것이다. 소프트웨어 공학의 시작은 현장의 필요에서 나왔다. 소프트웨어 개발은 생각보다 어려워서 많은 문제들이 발생했다. 이를 해결하려는 다양한 시도들이 있었고 이를 체계화하면서 시작되었다. 소프트웨어 공학의 목표는 무엇인가? ![](https://velog.velcdn.com/images/lmlabs/post/ef0f6e

2022년 11월 23일
·
0개의 댓글
·

서버 업데이트 절차

2020년 개발 회고 글에서 말했듯, 우리 회사는 trust-chain-services 라는 Go 언어로 짜여진 백엔드 서버가 존재한다. 지난 2주 정도 동안 이 백엔드 서버에 대해 몇가지 업그레이드를 수행하고 버전을 1.5.3.x 에서 1.5.4로 업데이트 했다. ...글을 쓰며 생각해보니, 1.6.x 로 업데이트를 했어야 하나 하는 생각이 들지만, 여튼. 이 업데이트를 수행하면서, 이제는 정말 고정적인 절차가 필요하다는 생각이 들어 이를 정리해둔다. 우리의 프론트엔드 앱들은 크게 웹앱들과 모바일앱으로 나눌 수 있다. 여기서 웹앱들은 서버와 함께 즉시 업데이트 배포가 가능하지만, 모바일앱은 그렇지 못하다. 우선 애플과 구글의 심사를 통과하는 시간이 존재하며, 설사 통과해서 배포가 되더라도, 사용자가 업데이트하지 않고 그냥 쓸 가능성이 존재한다. 즉각적이고 강제적으로 업데이트 내용을 배포할 수

2021년 3월 13일
·
0개의 댓글
·

React의 Custom Hook 리팩토링

React Hook 이란 객체지향언어(Object-Oriented Programming, OOP)에서 클래스(Class)는 데이터의 정의와 그 데이터를 대상으로 동작하는 함수(Method, 이하 메소드)들의 정의로 구성된다. 그리고 클래스 외부에서 접근할 수 있는 함수들을 제한함으로써, 내부 데이터와 함수들의 복잡성을 감춘다(encapsulation, 캡슐화). 그렇기에 잘 테스트가 된 클래스는 안심하고 반복적으로 재사용되며, 소프트웨어를 구성하는 든든한 빌딩 블록이 된다. 이러한 크고 작은 클래스들이 계층 구조로, 또는 그래프 구조로 서로 구성되어 최종적으로 하나의 소프트웨어가 된다. 이러한 관점에서 React Hook 은 React로 개발된 앱의 클래스라고 볼 수 있다. 이는 언어의 문법적 관점에서 클래스를 말하는 것이 아니라, 내부 데이터와 메소드들을 캡슐화한 구성요소라는 관점에서 말하는 것이다. React Hook 중 가장 단순한 기본 Hook 인 useState

2020년 12월 13일
·
0개의 댓글
·