[
  {
    "path": ".gitignore",
    "content": "# Byte-compiled / optimized / DLL files\n__pycache__/\n*.py[cod]\n*$py.class\n\n# C extensions\n*.so\n\n# Distribution / packaging\n.Python\nenv/\nbuild/\ndevelop-eggs/\ndist/\ndownloads/\neggs/\n.eggs/\nlib/\nlib64/\nparts/\nsdist/\nvar/\nwheels/\n*.egg-info/\n.installed.cfg\n*.egg\n\n# PyInstaller\n#  Usually these files are written by a python script from a template\n#  before PyInstaller builds the exe, so as to inject date/other infos into it.\n*.manifest\n*.spec\n\n# Installer logs\npip-log.txt\npip-delete-this-directory.txt\n\n# Unit test / coverage reports\nhtmlcov/\n.tox/\n.coverage\n.coverage.*\n.cache\nnosetests.xml\ncoverage.xml\n*.cover\n.hypothesis/\n\n# Translations\n*.mo\n*.pot\n\n# Django stuff:\n*.log\nlocal_settings.py\n\n# Flask stuff:\ninstance/\n.webassets-cache\n\n# Scrapy stuff:\n.scrapy\n\n# Sphinx documentation\ndocs/_build/\n\n# PyBuilder\ntarget/\n\n# Jupyter Notebook\n.ipynb_checkpoints\n\n# pyenv\n.python-version\n\n# celery beat schedule file\ncelerybeat-schedule\n\n# SageMath parsed files\n*.sage.py\n\n# dotenv\n.env\n\n# virtualenv\n.venv\nvenv/\nENV/\n\n# Spyder project settings\n.spyderproject\n.spyproject\n\n# Rope project settings\n.ropeproject\n\n# mkdocs documentation\n/site\n\n# mypy\n.mypy_cache/\n\n# macOS\n.DS_store\n.DS_store?\n"
  },
  {
    "path": "CNN_sentence/README.md",
    "content": "# A Sensitivity Analysis of (and Practitioners' Guide to) Convolutional Neural Networks for Sentence Classification\n\n\n\n## 1. Background\n\n### CNN Architecture\n\nbegin with a tokenized sentence -> a sentence matrix\n\nsentence matrix의 row는 word vector들.\n\nword vector들은 pretrained 사용\n\n\n\nword vectors dimension: d\n\nlength of a given sentence: s\n\n*sentence matrix: s x d*\n\n\n\ntreat sentence matrix as an ‘image’\n\nperform convolution on it via linear filters\n\nfilters with widths equal to the dimensionality of the word vectors (d)\n\nheight of the filter: the region size of the filter.\n\n\n\ndenote the sentence matrix by A\n\nA[i:j]: the sub-matrix of A from row i to row j.\n\n\n\nw: weight matrix\n\nb: bias term\n\nThe output sequence of the convolution operator: $o_i = w \\cdot{A[i:j+h-1]}$\n\nfeature map: $c_i = f(o_i + b)$ \t$c \\in R^{s-h+1}$\n\nA pooling function is thus applied to each feature map to induce a fixed-length vector.\n\nA common strategy is 1-max pooling\n\nthe outputs generated from each filter map can be concatenated into a fixed-length, ‘top-level’ feature vector\n\nthen fed through a softmax function to generate the final classification.\n\n\n\n## 2. Baseline Models\n\n\n\n![Imgur](https://i.imgur.com/s7aXR1N.png)\n\n**CNN architecture for sentence classification**\n\nregion sizes -> gram\n\nfeature map -> convolution 결과\n\n필터 개수만큼의 feature map을 만들고, Max-pooling 과정을 거쳐 클래스 개수만큼의 스코어를 출력\n\n\n\nWe kept only the most frequent 30k n-grams for all datasets\n\ntuned hyperparameters via nested cross-fold validation\n\nincorporating word2vec embeddings into feature vectors\n\n\n\n### configuration\n\na linear kernel SVM exploiting uni- and bi-gram features\n\nused averaged word vectors (from Google word2vec or GloVe)\n\n\n\n![Imgur](https://i.imgur.com/L7FZiC9.png)\n\n\n\n## references\n\nA Sensitivity Analysis of (and Practitioners’ Guide to) Convolutional\nNeural Networks for Sentence Classification(2016) - Ye Zhang, Byron C. Wallace\n\nhttp://www.wildml.com/2015/11/understanding-convolutional-neural-networks-for-nlp/\n\nhttps://ratsgo.github.io/natural%20language%20processing/2017/03/19/CNN/"
  },
  {
    "path": "LICENSE",
    "content": "MIT License\n\nCopyright (c) 2017 YBIGTA\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "QRNN/README.md",
    "content": "https://arxiv.org/abs/1611.01576\n"
  },
  {
    "path": "README.md",
    "content": "# DeepNLP-Study\n\n딥러닝 기반 자연어처리 스터디의 논문 구현 코드 및 스터디 자료 모음 공간입니다.\n\n\n## 2018년 7~8월 스터디\n- 목표\n  - [CMU Neural Networks for NLP 2018](http://phontron.com/class/nn4nlp2017/index.html) 강의를 듣고 발제한다.\n  - 매주 모든 사람이 두 강의씩 들으며, 그 중 두 명이 한 강의씩 맡아 발제한다.\n  - 발제하지 않는 나머지 사람들은 질문을 하고 발제자는 답변을 한다.\n- 강의마다 나온 질문과 답변은 다음 위키 페이지에 모아서 정리한다.\n  - [Q&A-for-CMU-Neural-Networks-for-NLP-2018](https://github.com/YBIGTA/DeepNLP-Study/wiki/%5BQ&A-for-CMU-Neural-Networks-for-NLP-2018%5D)\n- 참여자 : 김우정, 김지혁, 박성남, 조용래\n\n\n# 과거 스터디 히스토리\n\n## 2018년 1~2월 스터디 목표\n- 목표\n  - 이론 - 조재민님의 챗봇을 위한 딥러닝 강의 자료 공부하기 (논문 발제 모음 : [PAPERS REVIEWED](https://github.com/YBIGTA/DeepNLP-Study/wiki/%5BPAPERS-REVIEWED%5D))\n    - [Day 01 Introduction to Chatbot](https://www.slideshare.net/JaeminCho6/dl-chatbot-seminar-day-01-80593691)\n    - [Day 02 Text Classification with CNN/RNN](https://www.slideshare.net/JaeminCho6/dl-chatbot-seminar-day-02)\n    - [Day 03 Conversation Modeling with Seq2Seq / Attention](https://www.slideshare.net/JaeminCho6/dl-chatbot-seminar-day-03)\n    - [Day 04 QA with External Memory](https://www.slideshare.net/JaeminCho6/dl-chatbot-seminar-day-04)\n  - 구현 - 직접 딥러닝 모델을 한 달에 하나씩 구현해 보기\n    - [논문 구현 프로젝트](https://github.com/YBIGTA/DeepNLP-Study/projects/1?)\n- [스터디 세부 계획](https://github.com/YBIGTA/DeepNLP-Study/wiki/%5B%EC%8A%A4%ED%84%B0%EB%94%94-%EC%84%B8%EB%B6%80-%EA%B3%84%ED%9A%8D-(2018%EB%85%84-1~2%EC%9B%94)%5D)\n\n\n## Github 운영 방식\n\n* 모든 스터디 자료는 이 repository를 통해 공유하는 것을 원칙으로 합니다.\n* Wiki\n  * 스터디 계획, 일정 등의 문서를 작성합니다.\n  * 발제를 위한 논문 요약 및 설명 등도 공유합니다.\n* Projects\n  * 논문 구현 프로젝트 진행 상황을 공유합니다.\n  * 스터디 관련 전반적인 할 일들을 관리합니다.\n* Code\n  * 논문 구현 코드를 논문 별로 폴더를 만들어서 commit합니다.\n  * Commit message 대괄호 안에 논문 이름 약어를 적어 commit을 구분합니다.\n  * 수정 사항을 영어로 적을 때는 명령문으로, 첫 글자는 대문자로 적습니다.\n  * 두 명 이상의 사람이 동시에 같은 파일을 수정하지 않도록 주의합니다.\n  * Commit message 예시 : `[논문이름] Do something`\n\n"
  },
  {
    "path": "TCML/README.md",
    "content": "# TCML\n\nMeta-Learning with Temporal Convolutions\n\n[https://arxiv.org/abs/1707.03141](https://arxiv.org/abs/1707.03141)\n\n"
  },
  {
    "path": "show-attend-and-tell-pytorch/README.md",
    "content": "# Show Attend and Tell\n\npaper: https://arxiv.org/abs/1502.03044\n\nreference: https://github.com/yunjey/show-attend-and-tell"
  },
  {
    "path": "show-attend-and-tell-pytorch/models.py",
    "content": "from torchvision.models import vgg\nfrom torch import nn\n\n## Encoder\n\nclass Encoder(nn.Module):\n    def __init__(self):\n        super(Encoder, self).__init__()\n        self.original_model = vgg.vgg19_bn(pretrained=True)\n        self.convs = list(self.original_model.children())[0]\n        self.layers = nn.Sequential(*list(self.convs)[:-1])\n        \n    def forward(self, x):\n        x = self.layers(x)\n        return x\n\n\n\n\n"
  }
]