본문 바로가기

Theory

(228)
Python scikit learn의 Label Encoder와 MinMax, Standard, Robust Scaler 이해하기 2021. 4. 5. 08:00 얼핏 관계가 없어 보일 수도 있으나, 이번에는 scikit learn의 Label Encoder와 MinMax, Standard, Robust Scaler를 이야기 해보려고 합니다. 이 아이들 모두 데이터를 만지작 거리다 보면 자주 만나게 되는 아이들입니다. Label Encoder 먼저 연습용 데이터를 즉석에서 만들어 보죠. 그냥 A 컬럼은 문자로, B 컬럼은 흔히 보는 숫자로 되어 있습니다. 네 위와 같이 만들어 지죠. 만약 A컬럼의 문자 a, b, c를 각각 번호 0, 1, 2를 매겨서 변환하고 싶다면 LabelEncoder를 사용하면 됩니다. 먼저 LabelEncoder를 불러와서 A컬럼을 기준으로 fit을 시키면, 어떤 아이를 0이라고 할지, 또 어떤아이를 1이라고 할지를 정합니다. 그 내용이 ..
Box Plot의 기초 2021. 3. 24. 08:00 요즘 수업하면서 box plot의 기초에 대해 궁금해 하시는 분들이 많아서 이 부분만 다시 이야기하려고 블로그에 정리합니다. 데이터의 분포를 관찰하는 좋은 도구 중에 하나가 Box Plot입니다. 간단히 예를 보도록 하죠. 임의로 데이터를 만들어 두겠습니다. 그리고 그림을 그리기 위한 y값도 1로만 채워두겠습니다. 그려보면 위 그림처럼 되죠. 100 근처의 값들이 생뚱(^^)맞게 크게 잡혀있네요. 이제 numpy의 median 명령으로 중간값을 찾아보겠습니다. 45라는 값이 딱 중간 값인가 봅니다. numpy의 percentile 명령을 이용하면 4분의1 (25%), 4분의3 (75%) 지점의 값들을 찾아보면 16과 48이라고 합니다. 그 값을 각각 q1, q3라고 하고 가운데 값은 q2라고 하겠습니다...
Python class로 만드는 1차 저역통과필터 Low Pass Filter 2021. 3. 19. 08:00 디지털 필터에 대해서는 예전에 많이 다루었는데요. 당시에 다룰때는 간단히 Python의 함수(def)를 사용해서 많이 다루었습니다. 이번에는 class를 이용해서 조금 사용성을 높인 코드를 보여드리는 것이 어떨까하고 글을 작성합니다. 일단 1차 저역통과필터는 예전에 소개한 글에서 수식을 가져오겠습니다. 저 식을 코드로 단순 변환 시켜보면 out = (tau * pre_out + ts * data) / (tau + ts) 입니다. 수식에서 분모가 같으니 tau + ts는 빼서 보면 저렇게 되죠. 문제는 pre_out입니다. 현재 출력값 out, 수식에서는 yn의 이전 값이거든요. 그래서 저 코드가 실행된 직후 현재 출력을 별도로 저장해야 합니다. 만약 class를 사용하지 않는다면, 1차 저역통과필터가 필..
ROS move_base를 이용한 주행 - python 편 - 2021. 3. 9. 08:00 최근에 저는 국민대학교에서 주행로봇을 이용해서 겨울방학 특강을 진행했었는데요. 그리고 그 강의가 원격으로 진행되다 보니 수강하는 학생들에게 부족한 부분을 보완하기 위해 영상을 유투브에 공개하기로 결정을 했죠. www.youtube.com/playlist?list=PL83j7f4UkozHPUshNQfPpogJBE0gSnCYH OMO R1mini로 진행하는 AI Robot 수업 www.youtube.com 그 강의 목록이 위의 링크입니다. 강의 당시 강의에서는 틈틈이 이야기를 했는데 강의를 다시 유투브에 올리는 과정에서 빼먹은 내용이 몇 가지 있습니다. 오늘은 그 중 하나를 이야기를 하려고 합니다. youtu.be/8r6x4sKu4EM 강의를 진행하던 중 저는 Jupyter Notebook으로 로봇을 다루는..
AI Robot 수업 - Jetson nano에 YOLOv3 tiny ROS pkg 설치 - 2021. 2. 28. 09:00 이 강좌는 국민대학교에서 2021년 1월 부터 6주간 진행되는 강좌입니다. 국민대의 강좌는 여기서 마치며 그 후 단계는 경진대회를 진행하는 것입니다. 그래서 실제 수업은 5주의 기간인데, 일주일에 4시간 한 번 만나서 실습형으로 진행되다 보니, 많이 짧아서 아쉬움이 있습니다. 그래도 계속 제 블로그에서는 보다 많은 내용을 추가할 예정입니다. 이번 수업에 대한 유투브 영상 : Jetson nano에 ROS YOLOv3 tiny 패키지 설치하기 지금까지의 동영상 강의 : 유튜부 재생 목록 바로가기 OMO R1mini로 진행하는 AI Robot 수업 www.youtube.com 오늘의 수업 교재 위에 공유된 이번 수업자료 영상에는 한 가지 내용이 더 뒤쪽에 첨부되어 있습니다. 위 사이트가 YOLO ROS pk..
OMO R1mini로 진행하는 AI Robot 수업 - ROS 기초편 - 2021. 1. 24. 23:44 대략 6개월 전쯤 저는 2019년 여름방학때 국민대에서 방학 특강으로 Jetbot을 가지고 수업을 진행했었습니다. 그런데 당시 수업이 진행하는 저 조차 만족스럽지가 못했던거죠. 그래서 다시 심기일전~ 새로운 로봇으로 다시 시작하는 마음으로 또~ 특강을 진행했습니다. 이번에는 OMORobot의 R1mini라는 아이를 교재로 사용합니다. 당연히 OMOROBOT은 제가 AI 분야를 책임지고 (응? 그냥 음.. 애쓰고 있는^^) R1mini를 추진하고 있습니다. 사실 일정 자체는 조금 무리했습니다. 방학때 마무리를 해야하는데, 로봇 자체가 2월말 런칭 컨셉이거든요. 그래서 최대한 수강생들에게 불편함이 없도록 노력중인데... ㅠㅠ. 모르겠습니다. 오늘 올리는 이 글과 이 글 속에 포함될 동영상은 일주치 분량입니..
Colab에서 KoNLPy와 WordCloud 설정하기 2021. 1. 15. 07:00 Colab은 무료에 GPU등을 사용할 수 있어서 아마 많이들 사용하실 텐데요. Colab의 사용에서 자연어, 특히 한글 자연어 처리를 해보려는 분들이 처음에 겪는 문제는 아마도 그래프에서 한글 표현과 KoNLPy와 WordCloud의 설치일 겁니다. 오늘은 그것을 다뤄 보도록 하겠습니다.먼저 Colab을 시작합니다. 구글 드라이브에서 새로만들기 후에 Google Colaboratory를 선택합니다.일단, matplotlib에서 그림을 그릴때 한글을 적용해봅니다.그러면 에러가 납니다. matplotlib의 기본 폰트가 한글을 지원하지 않기 때문입니다. jupyter notebook에서 matplotlib의 한글문제를 해결하는 방법을 다루기도 했었구요. 또 Colab에서 한글 문제를 다루는 법도 이야기를 했..
한글 형태소 분석기 KoNLPy 사용을 위한 환경 설정 해보기 2020. 12. 23. 08:00 아주 예전에 Lucy Park님의 KoNLPy를 소개했던 적이 있습니다. 이번에는 시간도 많이 흘러고 하니, KoNLPy를 사용하기 위한 작업도 설명할 겸, 이참에 anaconda 설치와 conda 환경설정, JDK의 설치 등도 모두 이야기를 해보겠습니다. 아나콘다 설치 이미 많은 분들이 이미 알고 계시고 사용하고 계시겠지만 Python을 이용한 데이터 사이언스에서 가장 인기있는 Python 개발 환경이라면 아마도 아나콘다(anaconda)일 겁니다. 아나콘다는 손쉽게 구글에서 바로 찾을 수 있습니다. 아나콘다를 검색하고 들어간 사이트에서 Products에서 Individual Edition을 선택합니다. 그리고 Download를 선택합니다. 자신의 OS에 맞춰 다운로드를 하면 됩니다. 그리고 설치하면 ..

반응형