본문 바로가기

전체 글596

7장 선형회귀(linear regression) 1. 선형 회귀 선형 회귀 : 실수 벡터 입력이 주어졌을 때 선형적 관계를 지닌 출력 실수 벡터 값을 예측하는 문제 n차원의 입력, m차원의 출력, 데이터 N개 loss값을 가중치 파라미터로 미분하여 loss 값을 낮추는 방향으로 파라미터 업데이트 -> 손실함수를 최소화하는 가중치 파라미터를 가진 선형 회귀 모델 2. 선형 회귀의 수식 선형회귀의 손실함수는 주로 MSE 손실 함수를 사용 각각의 샘플을 따로 계산하는 대신 행렬로 한꺼번에 계산 가능 W와 b로 각각 손실함수를 편미분한 후 경사하강법을 통해 업데이트 3. 선형회귀 실습 import pandas as pd import seaborn as sns import matplotlib.pyplot as plt from sklearn.datasets im.. 2024. 4. 22.
6장 경사하강법 1. 미분, 편미분 편미분: 하나의 입력 변수에 대해서만 미분 gradient : 기울기 벡터 선형계층 미분: m차원의 벡터를 출력으로 갖는 함수 f를 n차원의 벡터 x로 미분하는 경우 2. 경사하강법 경사하강법(gradient descent): 손실함수의 출력을 최소로 만드는 입력을 찾기 위한 방법 -> 손실 함수의 출력값을 낮추기 위해 가중치 파라미터로 미분하여 얻은 그래디언트를 학습률과 곱해서 현재 가중치 파라미터에서 빼줌 ->그래디언트와 반대방향으로! 경사하강법은 지역 최소점(local minima)에 빠질 문제점이 존재하지만, 심층신경망은 가중치 파라미터의 크기가 매우 커지게 되는데, 높은 차원의 공간에서는 지역 최소점이 큰 문제가 되지는 않음. 학습률은 하이퍼파라미터로서, 잘 설정해주어야 한다.. 2024. 4. 22.
(KISA) 필기 침해사고 아티팩트 수집 1. process 2. eventlog 3. mft 4. prefetch 5. pefile 6. memory dump 7. browser 8. persistence tasklist /SVC touch tasklist.txt | findstr svchost processexp -> select columns -> verified signer, version, image path, command line, integrity level explorer.exe -> cmd.exe -> powershell.exe 이게 아니면 이상! pslist에서 찾기 port : local, report가 모두 well-known port가 아니면 이상..!오후 4:21 2024-04-15 taskli.. 2024. 4. 18.
(KISA) 실습 1 교육생자가실습. 시나리오#1 - 프로세스 이상징후 분석 { Q. 악성 프로세스로 의심되는 실행파일의 경로는 무엇입니까? A. C:\Windows\System32\svcnet.exe Q. 악성 프로세스라고 판단하시게 된 이유는 무엇입까? A. 퍼시스턴스에 위의 실행파일 등록되어 있었으며, 서명정보/버전정보등이 올바르게 담겨있지 않다. Q. 악성코드가 사용하는 퍼시스턴스는 무엇입니까? 정확히 서술해주세요 A. KEY: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run VALUE : Shellapi32 DATA : C:\Windows\System32\svcnet.exe Q. 위의 악성실행파일의 생성시간은 언제입니까? A. 2015.06.22 11.. 2024. 4. 18.
(KISA) 강의 1 + 침해사고 조사 및 대응 절차 { 1. 침해사고 아티팩트/로그 수집 (Acquisition) 침해사고 조사분석에 필요한 각종 로그, 설정파일, 디지털 자료들을 피해 시스템에서 확보하는 단계 2. 정보추출 (Extraction) 확보한 디지털 증거들을 분석이 가능한 형태로 가공하고 필요한 내용을 추출하는 단계 3. 분석/해석 (Interpretation) 가공된 정보를 바탕으로 이상징후를 판별하고 분석하는 단계 } + 실습. 침해사고 아티팩스 수집 (Aquisition) { E:\LAB\ process\ # 프로세스의 이상징후 분석에 필요 # E:\DFIR\Sysinternals Suite\procexp.exe(관리자모드) 도구의 "file->save as" 기능을 이용하여 확보 # E:\LAB\S0\p.. 2024. 4. 18.
turtlebot3 자율주행 ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py ros2 launch turtlebot3_navigation2 navigation2.launch.py rviz2에서 2D Pose Estimate를 먼저 해주어야 하고 GUI 환경에서 Nav2 Goal을 지정해줌으로써 터틀봇을 움직일 수도 있지만 아래와 같이 send_goal을 직접 줄 수도 있다. turtlebot3_navigation2를 실행시켜주어야 /navigate_to_pose 액션 서버가 실행된다! ros2 action send_goal --feedback /navigate_to_pose nav2_msgs/action/NavigateToPose "{pose: {header: {stamp: {s.. 2024. 4. 14.
5장. 손실함수 1. 손실함수 N개의 데이터 샘플, n차원 L1 L2 : Euclidean distance RMSE MSE MSE는 L2 노름의 제곱에 상수를 곱한 2. 실습 def mse(x_hat, x): # |x|=(batch_size, dim) print((x-x_hat)**2) y=((x-x_hat)**2).mean() return y x=torch.FloatTensor([[1,1],[2,2]]) x_hat=torch.FloatTensor([[0,0],[0,0]]) print(mse(x_hat,x)) #2.5 torch.nn.function 사용 import torch.nn.functional as F F.mse_loss(x_hat,x) #2.5 F.mse_loss(x_hat,x, reduction='sum').. 2024. 4. 10.
4장. 선형계층 선형계층은 행렬의 곱과 벡터의 덧셈으로 이루어짐! 1. 행렬곱(matmul) x=torch.FloatTensor([[1,2],[3,4],[5,6]]) y=torch.FloatTensor([[1,2],[1,2]]) z=torch.matmul(x,y) print(z) print(z.size()) // 3x2 2. 배치행렬곱(bmm) bmm은 마지막 2개의 차원을 행렬 취급하여 병렬로 행렬 곱 연산 수행 x=torch.FloatTensor(3,3,2) y=torch.FloatTensor(3,2,3) z=torch.bmm(x,y) print(z.size()) #3x3x3 3. 선형계층 W=torch.FloatTensor([[1,2],[3,4],[5,6]]) b=torch.FloatTensor([2,2]) def.. 2024. 4. 10.
6. Training Neural Networks 1 1. Activation Functions(비선형 연산) ReLU를 사용하자! ReLU가 표준으로 많이 사용됨. 하지만, learning rate를 잘 결정해야 한다! 1) Sigmoid 단점: Saturated neurons kill the gradients 기울기가 0에 가까워지는 현상: Saturation -> Vanishing Gradient 문제를 일으킴 (backprop에서 0이 계속 전달됨) 단점: Sigmoid outputs are not zero-centered 2) tanh 장점: zero centered는 해결됨 단점: still kills gradients when saturated 3) ReLU 장점: 양의 값에서는 saturation이 되지 않는다. 장점: 매우 빠름 단점: 음의.. 2024. 4. 8.