본문 바로가기

Category

(102)
『 ZERO to ONE: 경쟁하지 말고 독점하라 』를 읽고 학교 수업중 '경제학적 사유의 원리'를 수강하고 있다. 경제학 이론에 대해 탐구하는 수업이며 이번 과제는 경제, 경영 관련 서적을 읽고 내용 정리 및 본인의 생각을 기술하는 것이다. 작년 가을에서 겨울 쯤에 읽었던 책을 기반으로 과제를 제출했고 그 내용을 옮겨 적은 글이다. 『ZERO to ONE: 경쟁하지 말고 독점하라』 소개 『ZERO to ONE: 경쟁하지 말고 독점하라』는 페이팔의 공동 창업자인 피터 틸이 저술한 창업 서적이다. 피터 틸은 스타트업 경영에 대한 자신만의 철학과 경험을 공유하며 벤처 기업 경영론에 대해 펼쳤다. 그는 스타트업이 성공하기 위한 방법들을 다루었으며, 특히 새로운 것을 창조하는 것이 기업가 정신의 핵심임을 강조했다. 또한 기업이 성장 과정에서 겪게 되는 문제들에 대해 서술..
컨테이너화 (Containerization) 01. 컨테이너화란 무엇인가 애플리케이션의 코드를 모든 인프라에서 실행하는 데 필요한 모든 파일 및 라이브러리와 함께 번들로 제공하는 소프트웨어 배포 프로세스 컨테이너화를 사용하면 모든 유형의 디바이스 및 운영 체제에서 실행되는 단일 소프트웨어 패키지 또는 컨테이너를 만들 수 있다. 02. 컨테이너화의 이점은 무엇인가 02-01. 이동성 소프트웨어 개발자는 컨테이너화를 사용하여 프로그램 코드를 다시 작성하지 않고도 여러 환경에 애플이케이션을 배포한다. 02-02. 확장성 컨테이너는 효율적으로 실행되는 경량 소프트웨어 구성 요소이다. 소프트웨어 개발자는 단일 시스템에서 서로 다른 애플리케이션에 대한 여러 컨테이너를 쉽게 추가할 수 있다. 컨테이너 클러스터는 동일한 공유 운영 체제의 컴퓨팅 리소스를 사용하지..
MLOps 개념과 필요성 : MLOps의 핵심 기능 CHAPTER 3 MLOps의 핵심 기능 MLOps의 다섯가지 핵심 기능인 개발, 배포, 모니터링, 반복, 거버넌스를 소개한다. 3.1 머신러닝 입문 머신러닝은 컴퓨터 알고리즘의 총아로서, 명시적으로 프로그래밍되기보다는 자동으로 경험으로부터 배우고 성능을 개선한다. 알고리즘을 활용하여 학습 데이터라고도 불리는 표본 데이터를 분석하고, 예측을 수행하는 소프트웨어 모델을 구축한다. 3.2 모델 개발 3.2.1 비즈니스 목표 수립 비즈니스 목표는 당연히 성능 목표, 기술 인프라 요구사항, 비용 제약을 포함한다. 이러한 요소들은 모두 KPI로 선정할 수 있고, 상용 환경에서 모델의 비즈니스 성능 측정을 위한 모니터링 대상이 될 수 있다. 목표 설정시 변화 관리도 포함하여, 머신러닝 모델이 어떻게 구축되어야 하는..
MLOps 개념과 필요성 : 왜 지금이고 도전과제는 무엇인가 CAHPTER 01 : 왜 지금이고 도전과제는 무엇인가 머신러닝 운영(Machine Learning Operations, MLOps은 조직과 비즈니스 리더들이 장기적 가치를 창출하고 데이터 사이언스, 머신러닝 및 AI를 주도할 때 리스크를 제거하는 데 도움이 되는 프로세스다. 1.1 MLOps와 도전 과제 정의하기 MLOps의 핵심은 머신러닝 모델 생애주기 관리의 표준화 및 간소화다. 머신러닝 모델 생애주기를 규모있게 관리하기 어려운 세 가지 주요 이유는 다음과 같다. 많은 의존성: 데이터는 지속적으로 변화하고, 비즈니스 요구사항도 변경된다. 동일한 언어를 사용하지 않은 이해 관계자들 소프트웨어 개발을 모르는 데이터 과학자 데이터는 항상 변화한다. 즉, 머신러닝 모델은 지속적으로 학습하고 새로운 입력에 ..
연합 학습 알고리즘 및 프로세스 이해 0. 들어가며 아래 강좌에서 4강 연합 학습 이해를 수강하고, 필요한 내용에 대해 정리한 글 입니다. https://www.laidd.org/course/view.php?id=62#section-0 LAIDD(Lectures on AI-driven Drug Discovery) www.laidd.org 1. 연합 학습 알고리즘 1-1) 강의 자료 1-2) 이해한 내용을 바탕으로 한 정리와 예시 2. 연합 학습 프로세스 2-1) 강의 자료 2-2) 이해한 내용 바탕으로 그려본 프로세스 끝
A Survey of Graph Neural Networks for Recommender Systems: Challenges, Methods, and Directions 들어가며 오늘 리뷰할 논문은 Recommender Systems 구현에서 사용되는 GNN 모델들을 정리해 놓은 논문입니다. 프로젝트 진행을 위해 필요한 부분만 살펴볼 예정입니다. 논문 링크는 아래를 참고해주세요 :) ! https://arxiv.org/abs/2109.12843 A Survey of Graph Neural Networks for Recommender Systems: Challenges, Methods, and Directions Recommender system is one of the most important information services on today's Internet. Recently, graph neural networks have become the new state..
Multi-Layer Perceptron, MLP 1. Perceptron 딥러닝에서는 여러 개의 입력을 받아 한 개의 출력을 내는 퍼셉트론 사용 이전 층의 정보를 사용해 새로운 층의 정보 생성 이때 입력 값에 weight 를 주며, bias를 통해 underfitting 또는 overfitting 을 방지 이전의 층에서 예측된 값은 activate function을 통해 값이 변환됨 2. Multi-Layer Perceptron, MLP 퍼셉트론으로 이루어진 층 여러 개를 순차적으로 붙여놓은 형태가 다층 퍼셉트론(MLP) 즉 여러 개의 퍼셉트론 뉴런을 여러 층으로 쌓은 다층신경망 구조 MLP는 정방향 인공신경망 (역전파 하지 않음) MLP의 구조는 입력층, 은닉층, 출력층의 전방향 신경망 위 MLP는 입력 4개, 은닉층의 유닛 5개, 출력 3개를 가지..
FM (Factorization Machine) 1. FM (Factorization Machine) 위의 그림은 MF에 대한 내용 MF는 user, item, rating의 data를 이용하는 추천 시스템 하지만 sparse한 환경이 존재하는 상황에서는 사용하지 못함 이러한 한계점을 해결하기 위해 FM 이 개발되었음 FM은 user, item, rating을 categorical 하게 분할 categorical feature는 one-hot 형태로 표현 따라서 sparse한 벡터는 일반적인 경우 2. Objective Function 다항회귀식으로 추천시스템의 목적 함수를 나타냄 첫번째 식은, 각 사용자에 weight를 부여한 식 두번째 식은, 사용자의 row 간의 weigh를 부여한 식 row 들간의 관계를 파악하기 위함 세번째 식은, b는 bia..
MF (Matrix Factorization) with SGD 더보기 추천 시스템 관련 논문 읽어 보다가 개념 정리가 잘 안되어 있다고 판단되서 글 작성해봅니당 :) !! 1. MF (Matrix Factorization) 선형대수학의 SVD(Singular Value Decomposition)를 응용한 방법론 하나의 행렬을 여러 행렬로 분할한다는 관점 기존의 분할된 행렬에서 핵심 정보만을 사용한다는 효율적인 개념 Full SVD에서 특이값이 높은 상위 k개 를 사용하여 Truncated SVD 구현 Full SVD의 도출값인 A는 Truncated SVD의 도출값과 유사할 것이라는 관점 MF는 Truncated SVD의 왼쪽 두 행렬을 user latent matrix로 사용 MF는 Truncated SVD의 오른쪽 한 행렬을 item latent matrix로 ..
정리 . . . . . . 하고 있는 게 많을수록 하고 싶은 게 많을수록 모든 것에 우선순위를 두고 무엇을 택하고 무엇을 보류하고 무엇을 놓아버릴지 정리를 잘해야만 한다. . . . 잘 가꾸어진 땅에 자라고 있는 나무가 더욱 더 잘 성장할 수 있도록 열매를 맺어 그 열매를 주변에 나누어줄 수 있도록 내가 더 노력을 해야겠지 . . . 결론은 내일 출근 열심히 하고 얼른 개강해서 하고 싶은 공부 시작하자 . . .
백준 | 7576번 | 토마토 1) 문제 링크: https://www.acmicpc.net/problem/7576 2) 코드 from collections import deque m, n = map(int, input().split()) matrix = [list(map(int, input().split())) for _ in range(n)] queue = deque([]) dx, dy = [-1, 1, 0, 0], [0, 0, -1, 1] result = 0 for i in range(n): for j in range(m): if matrix[i][j] == 1: queue.append([i, j]) def bfs(): while queue: x, y = queue.popleft() for i in range(4): nx, ny ..
총명 . . . 요새 데캡디 주제로 금융 고객 예측 및 대출 상품 프로젝트를 진행하고 있는데 그동안 동아리한다 프로젝트한다라고 하면서 데이터 분석을 여러번 해왔는데 이번 프로젝트를 진행하면서 가장 많이 배우는 것 같다. 물론 그동안도 많이 분석을 하면서 실력이 늘기는 했지만 이번에는 실력뿐만 아니라 사고 방식이 변화하고 있는 것 같다. 기존에는 레퍼런스들을 참고하면서 프로젝트는 이렇게 진행되는구나 하고 같은 방식으로 내 프로젝트를 완성해갔다면 이번에는 참고할만한 레퍼런스들이 많지 않아서 유사한 레퍼런스들을 보면서 '연구자들이 왜 이런 방식을 택했을까' '그렇게 한 이유가 정확히 뭘까' '내가 하고 있는 프로젝트에 적합한가, 내지는 적용시킬 수 있는 더 올바른 방향은 뭘까' 라는 생각들을 하고 있다. 오늘도 추..