전체 글57 [정보처리기사 꼭 출제되는 문항] 필기 1과목 - 모듈, 객체지향, 디자인 패턴 ☆ 모듈의 결합도 : 낮을수록 좋음!!!! - 두 모듈 간의 상호 의존도 - 모듈 간의 결합도를 약하게 만들면 독립성이 향상되어 유지보수 작업이 쉬워짐 ☆ 모듈의 결합도 순서! (약할수록 좋고, 아래로 내려갈수록 결합도 강해짐) -> 순서 기억 필요- 자료 결합도 : 모듈간의 인터페이스가 자료 요소로만 구성 - 가장 바람직!! 결합도 가장 약함!!- 스탬프 결합도 : 자료 구조를 조회하는 경우의 결합도- 제어 결합도 : 제어 신호를 이용하여 통신하는 경우- 외부 결합도 : 외부로 선언한 변수를 참조할 경우- 공통 결합도 : 공통 자료 영역을 사용하는 경우- 내용 결합도 : 한 모듈이 다른 모듈의 내부 기능 및 내부 자료를 조회하도록 설계 - 가장 나쁜거!! 가장 강함!!* 자 -> 스 -> 제 -.. 2024. 5. 24. 텐서플로와 케라스 소개: 딥러닝의 핵심 도구들 1. 텐서플로와 케라스란? 텐서플로(TensorFlow)는 구글에서 개발한 파이썬 기반의 무료 오픈 소스 머신 러닝 플랫폼으로, 넘파이와 유사한 점에서 출발하면서도 머신 러닝과 딥러닝에서의 활용을 더욱 확장한 도구입니다. 텐서플로의 주요 목표는 엔지니어와 연구자가 수치 텐서를 활용한 수학적 표현을 편리하게 할 수 있도록 하는 것이며, 이를 통해 머신 러닝 모델을 효과적으로 구축하고 훈련할 수 있습니다. 텐서플로는 넘파이와 달리 자동 그레이디언트 계산을 지원하여 머신 러닝에 특히 적합하며, CPU 뿐만 아니라 GPU와 TPU와 같은 고도로 병렬화된 하드웨어 가속기에서도 실행 가능합니다. 또한, 텐서플로로 정의된 계산은 여러 머신에 효과적으로 분산시킬 수 있어 대규모 데이터셋에 대한 학습도 가능합니다. 뿐만.. 2023. 12. 13. 신경망 훈련과 역전파: 모델 최적화의 핵심 메커니즘 1. 신경망 훈련 입력데이터를 신경망에 넣었을 때, 활성화 함수인 ReLU를 적용한 출력을 나타내는 식은 아래와 같습니다. output = relu(dot(W, input) + b) 위의 식에서 텐서 W와 b는 신경망의 층에서 사용되는 가중치(weight)와 편향(bias)을 나타냅니다. 이들은 모델이 훈련되는 동안 학습되는 파라미터(parameters)로서, 초기에는 작은 난수로 초기화됩니다. 처음에는 가중치 행렬 W가 난수로 초기화되어 있기 때문에 출력인 output은 의미 있는 패턴을 갖지 않을 수 있습니다. 그러나 이후에 모델이 훈련 데이터를 기반으로 예측을 수행하고, 예측 결과와 실제 결과 간의 차이에 대한 피드백 신호를 받으면서 가중치 W와 편향 b가 점진적으로 조정됩니다. 훈련은 아래와 같은.. 2023. 12. 12. 텐서: 신경망의 핵심, 다양한 데이터를 감싸는 표현의 핵심 1. 텐서(tensor) 대부분 머신 러닝 시스템은 주로 텐서를 기본 데이터 구조로 채택하고 있습니다. 여러분은 텐서플로(TensorFlow)에서 이 용어를 들어본 적이 있을 것입니다. 이제 텐서가 정확히 무엇인지 살펴보겠습니다. 텐서는 데이터를 담는 컨테이너로, 주로 수치형 데이터를 다루기 때문에 숫자를 위한 컨테이너로 볼 수 있습니다. 텐서에서는 종종 차원을 축(axis)이라고 지칭합니다. 1) 스칼라 텐서 하나의 숫자만을 담고 있는 텐서를 스칼라 또는 랭크 0 텐서라고 부릅니다. 스칼라 텐서의 축 개수는 0이며, 이를 랭크(rank)로도 표현합니다. 스칼라 텐서의 예는 다음과 같습니다. import numpy as np # 스칼라 텐서 생성 scalar_tensor = np.array(5) # 생성.. 2023. 12. 5. 이전 1 2 3 4 ··· 15 다음