스터디/기타

    [Linux] Udemy - Linux Command Line 부트캠프 강의 후기

    [Linux] Udemy - Linux Command Line 부트캠프 강의 후기

    (아직 강의를 다 들은 것은 아닌 중간 후기입니다..) 글또라는 모임에서 Udemy의 강의를 수강할 수 있는 기회를 주셨다.그래서 매일 사용하고 있지만 한 번도 제대로 공부해본 적이 없는 Linux CLI에 대해 강의를 들어보기로 했다. 일단 강의가 엄청 많았다..그리고 제목을 봤을 때는 어? 이것들 다 아는 것 같은데? 싶은 것들이 많아서 처음에는 강의를 잘못 선택했나 싶었다.그래도 일단 들어보자 싶어서 들어봤더니 나쁘지 않았다. 아는 내용은 스킵하거나 배속으로 넘겨가면서 듣기만 해도 어느정도 정리가 되는 느낌이었고,강의에서 명령어마다 쓸만한 옵션들을 소개해줘서 '이런 옵션도 있었구나' 하면서 재밌게 들었다.예를 들면, ls는 항상 "ls -al" 요것만 습관적으로 썼었는데 --sort=size, --..

    [Leetcode] 01. Add Two Numbers (Medium)

    [Leetcode] 01. Add Two Numbers (Medium)

    # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next #최종 제출 class Solution: def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]: result = ListNode() curr_node = result while True: next_val, curr_node.val = divmod(curr_node.val+l1.val+l2.val, 10) curr_node.next = ListNode(val=ne..

    [Ray] 1. Python - Ray의 기본 개념과 Tasks

    1. Ray란? Ray를 테스트 해볼 수 있는 환경을 구성하였으니 Ray를 사용해봐야 합니다. Ray는 아직까지 국내에서는 활성화된 라이브러리가 아니라서 자료를 찾아보기 어려운데요, 가장 공부해보기 좋은 자료는 Ray 공식 문서입니다. docs.ray.io/en/master/ray-overview/ A Gentle Introduction to Ray — Ray v2.0.0.dev0 .rst .pdf to have style consistency --> docs.ray.io 공식 문서에 따르면 Ray는 "분산 애플리케이션을 구축하기 위해 간단하고 범용적인 API를 제공"을 미션으로 합니다. 그리고 그 미션을 달성하기 위해 아래 3가지 목표가 있습니다. Providing simple primitives fo..

    [Ray] 0. GCP와 Docker를 이용한 Jupyter Notebook 환경 구성

    [Ray] 0. GCP와 Docker를 이용한 Jupyter Notebook 환경 구성

    Ray란 아주 단순한 데코레이터만 사용하는 것으로 병렬 처리를 구현해주는 기능입니다. # https://docs.ray.io/en/latest/# # Ray 공식 문서에 있는 Getting Started with Ray Code import ray ray.init() @ray.remote def f(x): return x * x futures = [f.remote(i) for i in range(4)] print(ray.get(futures)) # [0, 1, 4, 9] @ray.remote라는 단순한 데코레이터로 함수 또는 클래스를 감싸는 것만으로 코드를 병렬 처리할 수 있습니다. 일반적인 파이썬 코드뿐 아니라 ML, Crawling 등에서 Ray를 활용하여 병렬 처리를 적용할 수 있고, 코어가 많을수..

    [Open API] 사이퍼즈 전적 검색 사이트 만들기 #1 - 닉네임 검색

    [Open API] 사이퍼즈 전적 검색 사이트 만들기 #1 - 닉네임 검색

    롤, 배그 Open API를 다뤄보다 보니 한 번의 분석으로 끝나는 것이 아니라, 분석 결과를 상시적으로 라이브 할 수 있는 사이트를 만들어보고 싶어 졌다. 그래서 사이퍼즈 Open API를 이용해 전적 검색 사이트를 간단하게 만들어 보고, 더 나아가서 게임 내의 요소들을 분석하고 결과를 라이브 해보려고 한다. 파이썬을 이용해 분석 및 웹 개발을 하며 웹 개발은 처음이기에 Flask라는 간단하게 시작할 수 있는 프레임워크를 공부하며 간단하게 만들어보기 시작했다. 여기서 '고구마' 유저의 닉네임을 클릭하면 해당 유저의 전적 기록을 조회한다. 현재는 닉네임 검색과 해당 유저들의 전적 검색 결과를 간단한 표로 보여주는 기능만 구현한 상태 기능도 계속해서 추가하고, 비효율적이고 가독성 떨어지는 코드들도 수정해야..

    [프로세스 마이닝] Data Science In Action 강의 - 02

    Decision Trees 2018-02-20에 작성한 글 1.4 Learning Decision Trees Decision Tree 는 의사결정 나무, 결정 트리로 불리는 supervised learning 기법이다. flow-chart와 유사한 그래프를 이용하여 의사결정을 도와주는 도구로써 예측 성능은 일반적으로 그리 뛰어나지 않은 편이지만, 해석력이 매우 뛰어나다. 또한 Decision Tree는 Robust한 특성을 가지고 있어서 정규화나 결측치 처리 등의 전처리 과정을 할 필요가 없이 작동하는 장점을 가지고 있다. 그래서 자료 자체를 시각화하여 보여주거나 머신 러닝의 결과를 해석하는 데에 사용하는 경우도 많다. 그리고 아주 손쉽게 알고리즘을 적용가능한데 반해 각 변수의 영향력을 그런대로 잘 측정..

    [프로세스 마이닝] Data Science In Action 강의 - 01

    Introduction 2018-02-13에 작성한 글 개인적으로 진행하는 스터디에서도, 학교에서도 여러가지 경로를 통해 접해보면서 프로세스 마이닝을 이벤트 로그를 이용하여 프로세스 모델을 규명하고 문제점을 찾아서 해결하는 것 정도로만 생각해왔다. 하지만 지속적으로 프로세스 마이닝에 대한 이야기를 나눌 때 용어나 개념이 이해가 가지 않는 부분이 많아서 좀 더 자세히 공부해보고자 한다. 구글링을 해보니 Coursera에서 Wil van der Aalst라는 네덜란드 출신의 Eindhoven 대학 교수님이 강의하신 Process Mining: Data Science in Action이 유명한 것 같아 공부하면서 블로그에 정리해볼 것이다. Data and Process Mining 1.1 Data Scienc..

    [GCP] 구글 클라우드 플랫폼으로 분석 환경 무료로 만들기

    [GCP] 구글 클라우드 플랫폼으로 분석 환경 무료로 만들기

    Tensorflow을 활용한 딥러닝 분석 환경 구축 2018-09-30에 작성한 글 저와 같은 학생들에게 딥러닝을 공부하면서 가장 큰 문제는 컴퓨팅 능력일 것입니다. 큰 데이터를 활용해서 많은 노드와 여러 개의 레이어를 쌓은 신경망을 노트북의 보잘것없는 CPU로 학습하려고 하면 정말 오래 걸립니다. 그래서 꾸역꾸역 공개된 서버의 Jupyter Notebook을 활용해서 학습하더라도 기본적으로 몇 시간, 넘어서는 몇 일 동안 학습을 진행하는 모습에 가슴이 답답해져서 GCP를 이용하고자 마음 먹었습니다. GCP(Google Cloud Platform)은 구글에서 Compute Engine, Storage, Network 등을 클라우드 환경에서 빌려 사용하고 사용한 만큼 금액을 지불하는 서비스입니다. 하지만 ..