[묘공단] 코딩테스트 스터디 2주차
[묘공단] 코딩테스트 스터디 2주차
2023.11.30이 글은 골든래빗 코딩 테스트 합격자 되기 파이썬 편의 0장 ~ 4장 써머리입니다. 배열 개념 인덱스와 값을 일대일 대응해 관리하는 자료구조 인덱스만 알면 빠르게 탐색 가능 (Random access) 배열 선언 # 1차원 배열 vector = [0] * 6 # 2차원 배열 (e.g., 3 by 4 matrix) matrix = [[0] * 3 for _ in range(4)] 배열 차원 중첩 리스트 형태로 다차원 배열을 표현 가능 그러나 실제 메모리는 1차원 구조로 저장된다 또한 2차원 배열을 1차원 배열로 표현해서 풀이하는 문제도 꽤 자주 출제됨 matrix1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] matrix2 = [1, 2, 3, 4, 5, 6, 7, 8, 9] # 2행 ..
[묘공단] 코딩테스트 스터디 1주차
[묘공단] 코딩테스트 스터디 1주차
2023.11.20이직을 한 이후로 면접관으로 들어가기 전 문제 검토 때가 아니면 자료구조/알고리즘 공부를 따로 하지는 않았는데, 좋은 기회로 스터디를 진행할 수 있게 되어서 대학생 때로 돌아간 것처럼 바짝 열심히 해보려고 한다. 목표는 AtCoder 청록색 레이팅인데 그동안 머리가 많이 굳어서 정말 열심히 하지 않으면 쉽지는 않을 것 같다. 그래도 공개적으로 이렇게 적어야 바로 아래 단계까지라도 가능하지 않을까, 화이팅! 이 글은 골든래빗 코딩 테스트 합격자 되기 파이썬 편의 0장 ~ 4장 써머리입니다. 0장. 코딩 테스트를 준비하기 전에 타인의 풀이를 보면 사고의 폭을 넓힐 수 있다 더 나은 시간 복잡도 풀이, 또는 언어의 문법을 잘 활용한 간결한 코드 등 비단 코딩 테스트뿐만 아니라 우리는 다른 사람의 코드를 수없이..
AI for Everyone Week1
AI for Everyone Week1
2019.03.10AI-for-Everyone-week1-a4611943-749d-4acd-b210-1a2a373559cc AI for Everyone week1 Introduction 2030년까지 $13 trillion 가치 소프트웨어 분야 뿐만 아니라 여행, 물류, 전장 사업 등 다양한 분야에 영향 ANI → 최근 몇 년간 많은 발전을 결과로 보여줌 (이미지 인식, 음성 합성 등) ANI / AGI가 아니라 약 인공지능 / 강 인공지능으로 표현하는 경우도 있음 Machine learning Supervised Learning 교과서나 튜토리얼 등에서 가장 흔하게 볼 수 있는 Machine learning의 유형! 입력 (A)를 출력 (B)로 가장 잘 설명할 수 있는 관계 (또는 함수)를 찾는 것 프로그래밍을 통해 명..
Spark 환경에서 Sentiment analysis를 해보자 (1)
Spark 환경에서 Sentiment analysis를 해보자 (1)
2019.02.24spark-sentiment-analysis Spark 환경에서 Sentiment analysis를 해보자 (1) Sentiment Analysis는 자연 언어처리 필드에서 오랫동안 연구되어 온 주제입니다. 고전적인 방법 (Naive Bayes)부터 비교적 최근에 많이 사용하는 Neural Network 계열 방법까지 다양한 방법이 존재하는데요. 대용량 데이터가 쌓이고 있는 현재 Spark 환경에서 Sentiment Analysis를 End-to-End로 예제를 들어 진행하려고 합니다. 분량 조절을 위해 이번 포스트에서는 데이터의 전처리까지, 다음 포스트에서는 Classifier 생성 및 평가로 나눠서 포스트를 작성하겠습니다. 환경 Spark 2.3.2 Scala 2.11.x Zeppelin 0.8 In..
한국어 형태소 분석기 성능 비교
한국어 형태소 분석기 성능 비교
2018.12.10형태소 분석기 비교 자연언어처리 모델 설계 전 데이터 전처리는 매우 중요합니다. 특히, 한국어 자연언어처리에서는 문장 분해의 여러 가지 최소 단위를 가질 수 있습니다. 한국어에서 최소 단위는 자소, 음절, 형태소 등이 될 수 있고 자소나 음절 분해보다 형태소 분해는 문장에서의 위치나 문맥에 따라 달라지므로 쉽지 않은 문제가 있는데요. 예를 들어 '하늘을 나는 자동차'와 '나는 밥을 먹는다'에서 '나는'은 문맥에 따라 주어 '나'를 의미할 수도 있고 '날다'를 의미할 수도 있습니다. 최근 카카오에서 딥러닝 기반의 형태소 분석기 khaiii를 발표했습니다. 기존에도 여러 형태소 분석기(한나눔, KOMORAN 등)들이 존재했지만, 딥러닝 기반의 형태소 분석기는 제가 아는 한 처음이었기 때문에 관심이 생겨 여러..
[Troubleshooting] Spark2 UDF NPE Cases
[Troubleshooting] Spark2 UDF NPE Cases
2018.11.25spark-udf-oom Spark 2 UDF에서의 NullPointerException Cases Hive QL보다 Spark가 가지는 장점 중 하나는 자유도 높게 원하는 동작을 구현할 수 있다는 점이다. 그것이 가능한 하나의 이유는 UDF (User Defined Function)일 것이고, 일반적인 개발자라면 쉽게 작은 함수 블록을 선언 및 구현 후 Spark DataFrame에 적용할 수 있다. 다만, 이런 UDF의 경우 디버깅이 쉽지 않고 에러 메시지를 만나면 워낙 많은 케이스가 존재해서 내가 겪었던 몇 가지 사례를 정리해서 올려본다. UDF가 참조하는 Column이 null 값을 가지고 있는 경우 가장 빨리 의심해봐야 하는 부분이다. 입력으로 들어가는 값이 null이라면 연산 과정에서 OOM이..
Apache Spark Linear Regression Example
Apache Spark Linear Regression Example
2018.02.05Linear Regression Example using Apache Spark Example code import org.apache.spark.ml.feature.VectorAssembler import org.apache.spark.ml.regression.LinearRegression import org.apache.spark.sql.SparkSession object LinearRegressionExample { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .appName("Linear Regression Example") .getOrCreate() val loadOptions = Map("sep" -> ..
C++11/14 관련 Problem solving tip
C++11/14 관련 Problem solving tip
2016.12.03https://www.acmicpc.net/blog/view/46 나중에 읽어봐야지
Keras에서 GPU 메모리 할당량 조절
Keras에서 GPU 메모리 할당량 조절
2016.11.18TensorFlow를 Backend로 사용하는 GPU Enabled Keras는 기본값이 모든 GPU Memory를 할당하는 것이다.혼자 쓰는 것이면 문제가 안 되겠지만, 연구실 구성원들과 같이 쓰는 서버이기 때문에 메모리 할당량을 조절하려고 검색을 하니 다음 두 링크를 찾을 수 있었다.https://groups.google.com/forum/#!topic/keras-users/MFUEY9P1sc8https://github.com/fchollet/keras/issues/1538
Keras로 Multi Layer Perceptron 구현하기
Keras로 Multi Layer Perceptron 구현하기
2016.05.10요새 가장 Hot한 Deep Learning 라이브러리는 아무래도 Tensorflow이고 또 많은 연구자들이 사용하고 있다. Keras는 Tensorflow의 Wrapper 라이브러리로 일관성 있는 인터페이스와 Tensorflow에는 미구현 상태인 많은 Deep Learning 관련 도구들이 구현되어있다(BatchNormalization, Xavier Initialization 등...) 이번 포스트에서는 유명한 MNIST 예제를 Multi Layer Perceptrone을 설계해서 성능을 측정해보겠습니다. ipython 파일의 포맷은 여기서 보실 수 있습니다. 해당 예제는 김성훈 교수님의 강의에서 Tensorflow로 구현된 것을 Keras로 구현해본 것입니다. 모듈 import 부분 MNIST 데이터..
Dim Reduction & Feature Selection
Dim Reduction & Feature Selection
2016.05.09이 게시물은 Geunho Lee님에 의해 번역된 게시물입니다. 번역된 게시물은 Geunho Lee님의 블로그에서도 확인하실 수 있으며, 여러분들도 번역 및 게시물 소장에 참여하실 수 있습니다. [Eng. ver.] 왜 feature가 필요할까? 머신러닝은 입력 데이터를 출력 데이터로 대응시켜주는 블랙박스라고 대략 설명할 수 있습니다. 이 매직박스는 입력 데이터의 함수인데 선형 또는 비선형의 형태를 가질 수 있는데, 우리는 훈련 데이터를 사용해서 이 함수를 학습하지만, 항상 잘 학습되지는 않습니다.예를 들어, 우리가 경기장의 관중 수를 입력으로 해서 해당 야구 경기의 결과를 알고 싶다고 합시다. 경기장의 관중 수만으로 경기의 결과를 정확하게 예측하는 것이 가능할까요? 아마도 관중 수 정보만으로는 경기 결과..
pip show / pip로 설치한 package 정보 확인
pip show / pip로 설치한 package 정보 확인
2016.05.06연구실 서버에 설치된 TensorFlow Version을 확인하려고 방법을 검색해보니 pip show를 이용해서 볼 수 있었다. Reference Guide의 내용 번역 및 예제를 추가해서 정리해둔다.연구실의 TensorFlow Version은 확인 결과 0.7.1이었다. 최신 Version은 0.8사용법pip show [options] ...설명한 개 또는 그 이상 설치된 패키지들의 정보를 보여준다.옵션-f, --files각 패키지에 대해 설치된 파일들의 전체 리스트를 보여준다.예제들한 개 패키지에 대한 정보 확인$ pip show sphinx --- Metadata-Version: 2.0 Name: Sphinx Version: 1.3.1 Summary: Python documentation gener..