728x90 반응형 전체 글37 [Database] Transaction Transaction 이란 하나 또는 그 이상의 database operations 의 묶음을 의미한다. 이 묶음은 하나의 작업으로 수행된다. Transaction 은 operation 들이 한번에 일관적으로 수행되는 것을 보장하고 error 가 났을 때 operation 하나하나의 결과 상태가 아닌 transaction 수행 전의 상태로 돌아갈 수 있도록 rollback 할 수 있다. 4 가지 주요 원칙이 있는데 앞글자를 따서 ACID 라고 부른다. Atomicity: 여러 명령들이 나눠질 수 없는 하나의 작업으로 취급된다. 성공하면 모든 것이 성공하는 것이고 실패한다면 모든 것이 실패하는 것이다. Consistency: 모든 데이터는 정의된 규칙에 의해 일관적이어야 한다. Isolation: 한 tr.. 지식/Python 2023. 8. 24. [Database] #1 SQL? SQL Tutorial - Full Database Course for Beginners - YouTube 모든 것이 데이터.. DBMS - A special software program that helps users create and maintain a database - create, read, update, delete - user tell dbms to do those thing Relational Database (SQL) - Organize data into one ore more tables - each table has columns and rows - A unique key identifies each row Non-Relational (no SQL / not just SQL) - O.. 지식 2023. 4. 24. [Active Learning] Lightly ai, Active Learning 이란? 본 포스팅은 lightly ai 블로그 글의 요약 + 사견을 담고 있습니다. An overview of Active Learning methods (lightly.ai) An overview of Active Learning methods Learn about the advantages and disadvantages of Active Learning methods and which of them solves your problem. www.lightly.ai Why Active Learning? 라벨링에는 돈과 시간이 든다. 요즘엔 데이터를 수집할 수 있는 환경이 아주 잘 구축 되어있다. 하지만, 그 데이터를 전부 라벨링하고 저장하고 관리한다는 것은 현실적으로 불가능하다. 그래서 수집된 상태의 데이터,.. 딥러닝/기타 2023. 3. 1. [python] Factory Pattern 개요 메이플스토리에 나오는 주황버섯 클래스를 만들어보자. class OrangeMushroom: def __init__(self): self.max_hp: int = 50 self.hp: int = self.max_hp def hit(self, damage: int): self.hp -= damage def is_dead(self) -> bool: return self.hp bool: return self.hp bool: return self.hp int: return self.w * self.h def aspect_ratio(self) -> float: return self.h / self.w xywh 를 인자로 받고 area, aspect_ratio 메소드가 구현되어 있다. 근데 만약에 내가 가지고 .. 지식/Python 2023. 2. 26. [python] 시간, 타입 체크 데코레이터 개요 파이썬에는 데코레이터라(decorator)는 것이 있다. 직역하면 꾸미다 라는 뜻인데 말그대로 함수를 꾸미는 것이다. 만약 함수의 시간을 체크 하고 싶다고 해보자. 그럼 이렇게 할 것 이다. import time import random def func(): time.sleep(random.random() * 1) start = time.time() func() ellapsed_time = time.time() - start print(f"Ellapsed Time: {ellapsed_time:.2f} seconds") # Ellapsed Time: 0.55 seconds 시간을 재는 곳마다 저런 구조로 코드를 짜야한다면 매우 더러울 것이다. 시간을 재는 함수를 짜보자. def func(): time.. 지식/Python 2023. 2. 26. [Ultralytics Hub Flutter Clone Coding] #2. 홈 만들기 저번 포스팅에서 사이드 메뉴를 만들었다. 이번에는 홈 화면을 구성해보려고 한다. 오른쪽 아이템들은 카드로 구성되어 있다. 5개의 위젯을 가지고 구성하면 될 것 같다. 밑에 빠른 액세스 카드는 이미지가 없기 때문에 이미지는 optional 로 두고 인자에 따라 layout 을 다르게 구성하면 될 것 같다. Flutter 에서는 Card 위젯을 제공한다. 하지만 Card 위젯에는 사이즈를 지정하는 옵션이 없다. 찾아보니 SizedBox 라는 위젯이 있고 이를 사용해 Card를 감싸면 SizedBox 내의 사용가능한 공간 만큼 Card 가 expand 되어 표시되게 된다. Card 의 Layout 을 생각해보자 최상단 Layout 은 Row 가 될 것이고 왼쪽에는 Column 을 사용하면 될 것 같다. Col.. 카테고리 없음 2023. 2. 12. [Ultralytics Hub Flutter Clone Coding] #1. 사이드 메뉴 만들기 강의가 지루해서 클론 코딩을 시작해보려고 한다. 클론 코딩의 대상은 Yolo 를 만든 Ultralytics 라는 회사의 딥러닝 플랫폼 제품이다. https://hub.ultralytics.com/ Ultralytics HUB hub.ultralytics.com 프론트엔드 코딩에 대한 지식이 전무하지만 어떻게든 되겠지 하는 마음으로 해보려한다 ㅎㅎㅎ 홈 화면 왼쪽에는 접어지는 메뉴가 있고 홈, 데이터 셋, 프로젝트, 모델, 기타로 구성되어 있다. 클론 코딩 대상은 홈 ,데이터 셋, 모델 정도로 하려고 한다. 오른쪽에는 튜토리얼과 빠른 액세스, 계정 정보가 보여진다. 사이드 메뉴 flutter 위젯 중에 비슷한게 생긴 것을 찾아 보니 side_navigation 이라는 것이 있었다. pubspec.yaml .. 지식/Flutter 2023. 2. 11. 사람을 미워하지 않는 방법 사람에 대한 생각을 많이 한다. 정말 많이 한다. 책을 많이 읽지는 않지만, 일상생활이나 영화, 드라마 심지어 게임을 하면서도 그 자체를 즐기는 것 보다는 사람에 대한 생각을 많이한다. "너는 특별한 존재야" 라는 말은 그 말 자체로 나를 특별하게 만들어 준다. 너도 특별하고 나도 특별하고 저쪽 어디 사는 사람도 특별하고 이제 막 태어난 아기도 특별하고 곧 죽음을 맞이하는 사람도 특별하다. 모든 사람은 특별하다. 그렇기 때문에 특별한건 특별하지 않다. 조금 슬픈 것 같기도하다. 그런데 역설적이게도 나는 특별하지 않고 너도 특별하지 않다는 사실을 깨닫고 받아들이면 사람을 미워하지 않게된다. 카테고리 없음 2023. 2. 4. [Flutter] Constructor(생성자) 기본적인 생성자 사용법은 다른 언어들과 크게 다르지 않다. 하지만 독특한 문법이 있어서 정리해본다. 단순한 사용법은 다음과 같다. class Person { String name; int age; // 기본 Person(String name, int age) { this.name = name; this.age = age; } // 조금 다르게 Person(String name, int age) : this.name = name, this.age = age; // 조금 짧게 Person(this.name, this.age); } 너무 방법이 다양해서 헷갈리는 것 같다..ㅠ 다른 언어에서는 인자의 개수나 타입을 다르게하여 여러개의 생성자를 만들 수 있다. 하지만 Dart 에서는 생성자 이름이 같으면 erro.. 지식/Flutter 2023. 2. 4. [Flutter] Stateless vs Stateful react 를 잠깐 공부했을 때 state 라는 개념을 접했었다. 그것과 똑같은 개념으로 Flutter 에도 state 가 존재한다. gui 프로그래밍을 해 본 적이 있는 사람은 알고 있겠지만 우리가 보는 화면에서는 계속 rendering 이 발생하고 있다. 이 때 모든 위젯 들을 다시 rendering 한다면 속도가 매우 느릴 것 이다. 이를 최적화 하기 위해 나타난 개념이 state 이다. flutter 에서 stateless 위젯은 위젯을 생성할 때 외에는 rendering 되지 않는다. 다만 stateful 위젯은 내부 변수가 바뀔 때 rendering 을 다시 수행한다. 이러한 철학 때문에 StatelessWidget의 변수를 final 이나 const 로 지정하지 않으면 기분 나쁜 줄이 생긴다.. 지식/Flutter 2023. 2. 3. [Flutter] 개요 본 포스팅은 udemy 의 강의를 기반으로 작성되었습니다. Flutter & Dart - The Complete Guide [2023 Edition] | Udemy Why Flutter Flutter 는 하나의 코드 베이스만으로 다양한 플랫폼에서 구동이 가능하다. 이는 크로스 플랫폼을 개발하기 위한 개발 비용 절감에서 큰 이득을 볼 수 있다. 네이버 블로그에서 Flutter 를 통해 지식IN 을 개발하게 된 이유와 과정을 잘 써주셨는데, 이런쪽에 경험이 전혀 없어서 모든 것을 이해하진 못했지만 좋은 글인 것 같다. 지식iN 앱을 Flutter로 개발하는 이유 (naver.com) 요약하면 기존에 사용하던 라이브러리를 사용하지 못하는 이슈나 아예 새로운 언어를 배워야한다는 단점을 제외하면 Flutter 를.. 지식/Flutter 2023. 1. 29. YOLO 가 세상을 지배한다!!! 딥러닝에 조금이라도 관심이 있는 사람이라면 Yolo 는 한 번쯤 듣거나 사용한 경험이 있을 것이다. 이유가 무엇일까? 성능이 좋아서? 물론 그것도 맞겠지만 Yolo 가 성공(?)한 이유는 쉬운 사용성에 있다. 이제 인공지능 시작하는 친구들에게는 미안한 이야기지만 어디가서 Yolo 해봤다 라고 말하지 말자. 개인적으로 별로 안 좋아 보인다. python 해봤냐는 질문에 print 해봤다! 랑 똑같은 말인 것 같다. 하고 싶었던 말은 "Yolo 는 너무 쉽다!" 이다. 그냥 사용하면 된다. 이것이 세상을 지배하는 첫 번째 단추이다. 누구든 알고 있는(알고 있다고 착각하게 만드는) 친숙한 인공지능 이기 때문이다. 이런 친숙함에서 오는 장점은 한 두가지가 아니다. SOTA Detector 가 나와도 사람들은 Y.. 딥러닝/기타 2023. 1. 23. 이전 1 2 3 4 다음 728x90 반응형