본문 바로가기

Programmer Jinyo

(57)
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 3 (Functors) 2020/02/11 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 2 위 글에서 이어지는 글입니다. 2020/02/17 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 4 (Monads) 로 이어집니다. Funtors 이 챕터에서는 functors를 살펴 볼 것이다. 펑터는 추상적 개념인데, 우리에게 컨텍스트(List, Option등이 컨텍스트이다) 안에서 연산의 시퀀스를 표현하는 것을 허락 해 준다.(컨텍스트는 직관적인 이해가 힘들면 어떤 원소를 가지고 있는 wrapper이라고 생각해도 크게 벗어나지 않는다.) 펑..
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 2 (Monoids and Semigroups) 2020/02/07 - [전체보기] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 1 위 글에서 이어지는 글입니다. 다음 글은 2020/02/12 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 3 입니다. 이 글은 scala with cats책을 읽으면서 거의 번역하다시피 한 글임을 먼저 밝히고요, https://books.underscore.io/scala-with-cats/scala-with-cats.pdf 여기서 보실 수 있습니다. Monoids and Semigroups 이 챕터에서는 monoid와 semigroup 타입 클래스에 대해서 알아 볼 것이다. 이 것들은 ..
Scala CaseClass에 대한 특징 정리 Programming in scala 를 참고하여 작성했음을 밝힘니다. 케이스 클래스는 다음과 같이 정의할 수 있다. abstract class Expr // trait가 되어도 괜찮아~ case class Var(name: String) extends Expr case class Number(num : Double) extends Expr case class UnOp(operator:String, arg:Expr) extends Expr case class BinOp(operator:String, left: Expr, right: Expr) extends Expr case수식자는 스칼라 컴파일러에게 해당 클래스에 문법적으로 편리한 기능 몇 가지를 추가하라고 지시하는 것이다. 1. 컴파일러는 클래스 이름..
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 1 (Introduction) 책 링크 : https://books.underscore.io/scala-with-cats/scala-with-cats.pdf Preface 모나드, 그리고 관련 컨셉은 코드에 반복적으로 나타나는 객체지향 디자인 패턴 아키텍처 빌딩 블록과 비슷한 것들이다. 이것들은 객체지향패턴과 두가지 큰 차이점을 가진다. 1. 그것들은 형식을 갖추며, 따라서 자세하고, 정의되어 있다. 2. 그리고 굉장히 굉장히 일반적(일반화 되어있는)이다. 일반화는 이해하기 힘들다는 것을 의미할 수 있다. 모든 사람들이 어려움을 느낀다. 그러나 이 일반화 떄문에 다양한 상황에서 모나드와 같은 것을 적용할 수 있는 것이다. --- Chapter 1 Introduction Cats 는 함수형 프로그래밍을 위한 다양한 툴들을 제공한다. 대..
Scala를 익히기 위한 99 Problems 예제 http://aperiodic.net/phil/scala/s-99/ S-99: Ninety-Nine Scala Problems As in the previous section, we will start with a skeleton file, logic1.scala, and add code to it for each problem. The difference here is that the file starts out almost empty. First of all, consult a good book on discrete mathematics or algorithms for a d aperiodic.net 위 링크에 문제들이 싹 있고 이 포스트에서는 정답을 달아보도록 하겠다. ^_^ (28 번 까지만 풀고..
Scala Future에 대해 기본은 배워보자! 튜토리얼 ~~ 본 글은 http://allaboutscala.com/tutorials/chapter-9-beginner-tutorial-using-scala-futures/ 의 글을 번역(그렇지만 전부 하지는 않고 필요한 부분만)한 것임을 먼저 알립니다! Introduction. Official Scala Future에 대한 문서는 여기서 보시면 됩니다. Scala Future에 대해 짧은 코드 스니펫과 함께 Scala Future을 통한 asynchronous non-blocking operations에 익숙해질 수 있게 도와주겠다. 충성충성^^7. Scala에 대한 기본적인 이해가 있는 독자를 대상으로 하며, 일단은 Future은 일종의 code wrapper이라고 간략하게 알면 된다. Method with fut..
Scala의 모나드(Monad)에 대한 정리 들어가기에 앞서, 혹시 모를 수 있는 용어정리 더보기 Generic : 다양한 메소드를 사용할 때 클래스를 사용해 객체를 인스턴스화 할 때 필요한 Type을 지정해줄 수 있도록 프로그래밍하는 문법이다. 아래와 같은 예시가 있곘다. class GenericStack { stack: T[]; constructor() { this.stack = []; } addItem(item: T): void { this.stack.push(item); } toString(): string { return this.stack.join(', '); } get(index?: number): any { return index ? this.stack[index] : this.stack; } } const stringStack = ..
MarioNETte 논문 리뷰 Few-shot Face Reenactment Preserving Identity of Unseen Targets 요번에 AAAI에 올라간 하이퍼커넥트의 '보이지 않는 타겟의 Identity를 보존하며 몇장의 얼굴 사진만으로 얼굴을 재연'하는 논문이다. 기존의 방법들의 경우, (특히 few-shot setting에서) target 이미지와 source 이미지가 identity가 다를 때에는 얼굴 재연에 있어서 심각한 품질 저하가 일어나고는 했다. 1. identity mismatch를 무시하는 경우에는 새로운 얼굴을 합성했을 때 target이미지와 비슷해지는 결함이 발생한다. (트럼프 얼굴에 다른 표정의 아이린을 target으로 주면 아이린과 닮은 트럼프가 나와버리는 상황 발생 가능) 2. compressed vector representation(AdaIn layer과 같은)의 capacity를 너무 줄일 경우 원..