본문 바로가기

PyTorch

(9)
Paper 구현하고 싶다. #1-5 Optimization & Loss Modules & Training # Intro 센서 기반 IOT 스마트 팩토리 중 설비 쪽에 부서가 배치됐다. 학부시절에 하던 내용들이랑 많이 겹쳐서, 앞으로의 행보가 기대되지만, 굉 장 히 많은 지식들이 요구돼서 긴장도 된다. 기계과라면 가져야 하는 낭만 일반기계기사를 3월 12일 날짜로 홧김에 신청하게 돼서, 지금 여러모로 할일이 많아져 버렸다. 일단 개인적인 목표에서, Tutorial 5까지는 마친 상태지만, 리뷰가 너무 늦춰져서 좀 성실해질 필요가 있다. 아무튼 이어서 쓰면, 1. Optimization Data를 정리하고, Model을 만들었다면, 궁극적인 목표인 Optimization을 할 차례이다. optimization은 Parameter를 Loss Function을 활용하여 최적화시키는 역할을 한다. 간략하게 Flow를..
Paper 구현하고 싶다. #1-4 data.DataLoader Tutorial 2: Introduction to PyTorch # 이전내용 class XORDataset(data.Dataset): def __init__(self, size, std=0.1): """ Inputs: size - Number of data points we want to generate std - Standard deviation of the noise (see generate_continuous_xor function) """ super().__init__() self.size = size self.std = std self.generate_continuous_xor() def generate_continuous_xor(self): # Each data point in the XOR ..
Paper 구현하고 싶다. #1-3 PyTorch FrameWork Tutorial 2: Introduction to PyTorch 1. Intro 오늘 할 내용은 사실 딥러닝 프레임 워크 친숙해지기, 좀 더 나은 알고리즘 탐방하기 쪽에 더 가깝다. XOR 알고리즘은 전기 신호 배우면서 나오는 논리회로 이런 느낌인데 뒷내용에 대입해 보자면 그 내용은 사실 안 중요하다. 단지 볼 부분은 코드 flow와 딥러닝 framework이 어떻게 형성되는지 정도 아는 게 중요하다. 2. Learning by example: Continuous XOR 기본적인 Libraries부터 불러오는데, import torch.nn as nn import torch.nn.functional as F nn과 functional as F를 다양한 오픈소스에서 볼 수 있다. nn과 F의 차이점으로는 ..
Paper 구현하고 싶다. #1-2 Introduction to Pytorch ↓튜토리얼 원문 Tutorial 2: Introduction to PyTorch — UvA DL Notebooks v1.2 documentation Tutorial 2: Introduction to PyTorch Welcome to our PyTorch tutorial for the Deep Learning course 2022 at the University of Amsterdam! The following notebook is meant to give a short introduction to PyTorch basics, and get you setup for writing your own neu uvadlc-notebooks.readthedocs.io 이전 글에서는 Deep Learning 하면서..
Paper 구현하고 싶다. #1-1 Introduction to Pytorch 1. Pytorch 알아보기 Tutorial 2: Introduction to PyTorch — UvA DL Notebooks v1.2 documentation Tutorial 2: Introduction to PyTorch Welcome to our PyTorch tutorial for the Deep Learning course 2022 at the University of Amsterdam! The following notebook is meant to give a short introduction to PyTorch basics, and get you setup for writing your own neu uvadlc-notebooks.readthedocs.io 굉장히 기본적인 내용 같지만, 생각..
Paper 구현하고 싶다. #0 기초 다지기 (학습계획) 1. 계기 로봇 분야 잘하다가 뜬금없이 스마트 공정 쪽으로 간 것처럼 보이는데, 사실 난 그냥 현실이 수치화 돼서 내가 계산한 대로 이뤄지는 것 자체가 행복하다. 근데, 막상 머리로는 전체 시스템이 얼핏 그려지는데 그 디테일들이 그려지지 않는게 항상 아쉬울 따름이었다. 머릿속에서는 a + b + c 해서 내가 원하는 task를 어느 정도 완성시키게 된다. 문제는, '안심하고 쓸 수 있음'이라는 키워드를 붙이기엔 나 스스로 미심쩍은 부분도 많고, 대부분을 경험에 의존하는 경우가 많았다. 만일 나보고 내가 만든 비행기 타라고 하면 나는 양손과 양 주머니에 섭섭하지 않게 리튬배터리를 가득 채우고, 공항 검사대에 들어가 부적격 판정을 받을 생각이 있다. 잡담은 그만하고, 이번 프로젝트를 통해 내가 얻고자 하는 ..
Quadruped 공부 하고 싶다. #6-3 [Task1 - PPO: Cartpole with Pytorch③-3] #PPO with Cartpole in Pytorch Sim2Real을 하기 이전에, 어떻게 Env와 Agent가 소통을 하는지 직접적으로 코드를 짜서 구현해보는 Task를 진행해본다. 추후에 Isaac-Gym에서 이 부분을 커스텀하게 만들어야 하는데 굉장히 복잡할 거 같아서 좀 무섭지만, 그래도 부딪히고 볼 생각이다. 좌측에 Directory를 보면 우리가 일전에 구현한 PPO_torch.py와 이제 만들게 될 GYM_torch.py를 한 폴더에 넣어주고 from PPO_torch import Agent를 통해 파일을 불러온다. utils코드는 단순하게 성능지표를 png파일로 저장해주는 기능이므로 크게 다룰 것이 없다고 생각한다. Algorithm의 Structure를 위주로 설명해 보고자 한다. Op..
Quadruped 공부 하고 싶다. #6-2 [Task1 - PPO: Cartpole with Pytorch③-2] #PPO with Cartpole in Pytorch 일전에 이어서 올린다는 게 예약을 삭제로 했던 거 같다. 블로그를 정리하다가 지금에서야 발견해서 다시 써보려고 한다. 지난번 내용을 간략하게 정리하면, Algorithm을 완성시키기 위해서는 1. PPOMemory (Observated Data Processing) Simulation에서 Observation 된 6가지의 Data에 대해 읽고 버릴 필요가 있다. 그래서 해당 부분을 class PPOMemory를 통해 Data 저장, 추가, 삭제 만들어주었고 Deep-Learning을 위해 Batch function도 만들어준 것을 볼 수 있다. PPOMemory에서의 키워드는 두가지로 정리된다. DRL(Deep-Reinforcement-Learning..
Quadruped 공부 하고 싶다. #6-1 [Task1 - PPO: Cartpole with Pytorch③-1] #PPO with Cartpole in Pytorch DRL에서 가장 쉬운 예제 CartPole과 Isaac에 쓰이는 Pytorch & PPO의 주제가 겹쳐 해당하는 예제를 토대로 PPO를 분석해보려 한다. 일단 원본 코드[1]에서는 slow error가 나서 일부 수정을하고, Rendering 기능이 따로 없어서 내가 조금 편집한 코드를 올려본다. 그리고 코드를 참조하면서 Pytorch지식이 부족한 부분을 Z_Torch_Example로 공부해 봤다. https://github.com/miercat0424/Cartpolev1-PPO-pytorch/tree/main/My_PPO GitHub - miercat0424/Cartpolev1-PPO-pytorch: Pytorch PPO for Cartpole Ex..