Posts

Showing posts from February 5, 2024

[Day 35] TensorFlow Advanced techniques

Image
 안녕하세요? 오늘은 Day 35입니다! 아래 것을 시작했다 TensorFlow: Advanced Techniques Specialization 재미있는 내용이 다음과 같다 1) Functional API로 모델 구성 Sequential API  Functional API Functional API 사용할 때, input 레이어 직접 정의해야 하며 각 레이어를 다음 레이어 끝에 붙여야 한다. 그리고 Model의 input와 output도 정의해야 한다. 왜냐면 functional api로 구성되는 모델은 여러 가지 input와 output이 존재할 수 있다  Functional API로 다음과 같은 복잡한 모델 구성할 수 있다 그 모델 보다, 좀 더 단순한 모델로 설명할 것이다 또, 각 output의 성능과 손실 함수 따로 정의 할 수 있다 2) Siamese network model Siamese network는 다음과 같은 2가지 input와 1가지 output이 있는 모델이다 예를 들어자면, 옷을 비교할 수 있는 모델을 만들 수 있다 티셔츠가 비슷하여 1.0로 분류했다 (반대로 0으로 분류했을 것이다) 이미지가 비슷하든 말든 분류하기 위해 euclidean distance 사용할 수 있고 결과 sample이 다음과 같다  이미지가 비슷한 경우 소수를 주는데 반대의 경우 대수를 준다  3) Custom Loss 함수 a의 absolute 값이 우리가 정의한 threshold보다 작은 경우 1/2 * a**2, 반대로 threshold * (abs(a) - 1/2 * threshold) 단순한 version은 다음과 같이 하고 사용할 수 있다 그래도 threshold의 값 조직하려면 더 좋은 방법이 있다 (Class으로) 4) Custom 레이어 Class으로 하고 build 함수에서 w와 b 정의하고, call 함수에선 w*a + b 계산한다 activation 함수도 포함하려면 다음과 같이 코드를 바꿔야 한다 init 함수에서 activation 정의한다