mocchaso note

サーバーエンジニアが何か色々呟いているところ。

WSLにAnaconda, JupyterLabをインストール

言語処理100本ノック 2020を進めていたら、Windows上にAnaconda環境を作ったため、第2章でUNIXコマンドを使えずに詰みました。
経験も兼ねてWSLにAnaconda, JupyterLabをインストールし直した時のメモ書きです。
(記載のURLを参考にしたら無事にインストールし直せました)

まずはAnacondaをインストール。 www.virment.com

JupyterLabのインストールは、Windowsに入れた時と同様、↓を見ながら完了。 qiita.com

JupyterLabでExtensionを入れる際、nodejsが必要になるのでインストール。
$ conda install nodejs
※apt経由だと8.10.0で、バージョンが古い。Extensionのインストールには10以上が必要とのこと。

Extension - @jupyterlab/gitはコマンドでインストール。
$ conda install -c conda-forge jupyterlab-git

言語処理100本ノック 2020「06. 集合」

(まとめ: 言語処理100本ノック 2020年版を解いていく。 - mocchaso note

集合の使い方を↓で確かめながら、実装できました。
note.nkmk.me

言語処理100本ノック 2020「05. n-gram」

(まとめ: 言語処理100本ノック 2020年版を解いていく。 - mocchaso note

n-gramの大体の考え方・実装方法は、↓を見てある程度分かりました。 qiita.com

なぜrange(len(sequence) - n + 1)ではないとダメなのか?
※考え&調査中

言語処理100本ノック 2020年版を解いていく。

(かなり久々の更新...!)
Python, NLPの勉強を目的に、言語処理100本ノック 2020年版をやってみようと思います。
やっていて分からない / 疑問に思った点を調べた結果 / その問題で特に集中して使った知識等を、主にメモしていきます。
※特に詰まることなく出来た問題については、記事ページを作成しない可能性があります。

言語処理100本ノック 2020年版はこちらから。 nlp100.github.io

↓問題全体を通して、よく拝見するサイト

目次

事前準備: 環境構築

第1章: 準備運動

第2章: UNIXコマンド

第3章: 正規表現

第4章: 形態素解析

第5章: 係り受け解析

第6章: 機械学習

第7章: 単語ベクトル

第8章: ニューラルネット

第9章: RNN, CNN

第10章: 機械翻訳

番外編

Git LFSでpushできるようになった!

卒業研究で使うデータをGitHubで管理していたのですが、その中にWordNetもありました。
WordNetは余裕で100MBを超えているため、管理対象にするならGit LFSの導入が必要になりました。
相当時間がかかったものの、何とか導入できたので備忘録。


  1. Windows 8.1なので、Git LFSのページからインストーラをダウンロードしてPCにインストール

  2. 通常のコマンドプロンプトcd (my local repository)

  3. git lfs install

     Updated git hooks.
     Git LFS initialized.
    
  4. git lfs versiongit lfs installが成功しているかの確認 -> OK)

     git-lfs/2.5.1 (GitHub; windows amd64; go 1.10.3; git e1628484)
    
  5. git lfs track (a large file)

  6. git lfs track(a large fileがトラック対象になっているかの確認 -> OK)

     Listing tracked patterns  
         (a large file) (.gitattributes)
    
  7. Windowsエクスプローラ上で、ローカルリポジトリにラージファイルを移動させる

  8. git add (a large file)

  9. git add .gitattributes

  10. git commit -m "test"(コミットメッセージは適宜入力)

     a8e749c4a3 * (a large file)
    
  11. rm .git/hooks/pre-push
    これを行うことでHTTP 401(認証エラー)を回避できるみたい。
    参考サイト:Authentication required : You must have push access to verify locks error. · Issue #2291 · git-lfs/git-lfs · GitHub
    注 ... 項目11以降はbash推奨(cygwinコマンドプロンプトからbashを呼び出す 等)

  12. 以下のどちらかのコマンドを打つ。

    • export GIT_TRACE=1 -> git push origin master

    • GIT_TRACE=1 git push origin master

    GIT_TRACE=1 -> Gitが行っている処理をコマンドプロンプトに表示するようにする
    参考サイト:
    `git push origin master` has not finished · Issue #3257 · git-lfs/git-lfs · GitHub
    Gitのエイリアスで引数を使う



8と9の順番は逆でもOKなのか...?(OKだと予想。ご存知の方是非ご教授ください)
調べてもうまくいかず、最終手段として、GitHub上のGit LFSリポジトリのIssueで質問しました笑
何はともあれ導入できて良かったです。