2017 年もいよいよ終わり、間もなく 2018 年ですね。
今年 1 年の振り返りのために 2017 年にリリースされた人気の GitHub リポジトリ についてまとめてみました。具体的には「 GitHub に認識されているリポジトリの言語が Python で」「スター数が 2500 以上のもの」をリストアップしてみました。
結果、引っかかったリポジトリの数は合計 32 個です。個人的には、マシンラーニング(機械学習)関連のリポジトリが非常に多いのが印象的でした。
以下私なりにかんたんな説明と description の翻訳を付けています。
1. system-design-primer
大規模システムの設計方法について紹介したドキュメントです。
リポジトリ名 | system-design-primer |
---|---|
説明 | Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards. |
説明(翻訳) | 大規模システムの設計方法を学びましょう。システム設計面接の準備をしましょう。暗記用のフラッシュカード付きです。 |
URL | https://github.com/donnemartin/system-design-primer |
ホームページ | |
スター | 21763 |
2. cpython
CPython そのもののリポジトリです。 2017 年に GitHub に移設したようです。
リポジトリ名 | cpython |
---|---|
説明 | The Python programming language |
説明(翻訳) | Python プログラミング言語 |
URL | https://github.com/python/cpython |
ホームページ | https://www.python.org/ |
スター | 15030 |
3. face_recognition
画像内の人の顔を認識するためのライブラリです。
リアルタイムの顔認識もサポートしているようです。
リポジトリ名 | face_recognition |
---|---|
説明 | The world's simplest facial recognition api for Python and the command line |
説明(翻訳) | Python とコマンドラインで使う、世界で最もシンプルな顔認識 API |
URL | https://github.com/ageitgey/face_recognition |
ホームページ | |
スター | 8444 |
4. pix2code
UI 画像からそれを生成するコードを自動生成するライブラリです。
README からリンクされているデモ動画がわかりやすいです。
現時点では出力フォーマットとして、 iOS アプリ、 Android アプリ、 HTML の 3 つがサポートされているようです。
まだ実用レベルにはなっていなさそうなので、このような技術が数年以内にコーダーの仕事をガラリと変える可能性は低そうですが、今の技術の進歩のスピードを見ると 10 年以内ぐらいには影響がありそうな気もします。
リポジトリ名 | pix2code |
---|---|
説明 | pix2code: Generating Code from a Graphical User Interface Screenshot |
説明(翻訳) | pix2code: グラフィカルユーザーインタフェーススクリーンショットからのコード生成 |
URL | https://github.com/tonybeltramelli/pix2code |
ホームページ | |
スター | 8024 |
5. python-fire
Python のユーティリティクラスをコマンドラインからすぐに呼び出せるようにできるライブラリです。
メソッド名と引数をコマンドラインで渡せばそのままクラスのメソッドが実行できる形のようです。
「 Google の公式なプロダクトではありません」と但し書きがついていますが、リポジトリは Google グループに所属しています。
リポジトリ名 | python-fire |
---|---|
説明 | Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object. |
説明(翻訳) | Python Fire はありとあらゆる Python オブジェクトに対してコマンドラインインタフェース( CLI )を自動生成するライブラリです。 |
URL | https://github.com/google/python-fire |
ホームページ | |
スター | 7655 |
6. ML-From-Scratch
説明のとおり、マシンラーニングのモデルとアルゴリズムを Python で実装したコード集です。
リポジトリ名 | ML-From-Scratch |
---|---|
説明 | Python implementations of Machine Learning models and algorithms from scratch. Aims to cover everything from Data Mining techniques to Deep Learning. |
説明(翻訳) | マシンラーニングのモデルとアルゴリズムの、ゼロベースでの Python 実装。データマイニング技術からディープラーニングまでのあらゆることをカバーすることを目指しています。 |
URL | https://github.com/eriklindernoren/ML-From-Scratch |
ホームページ | |
スター | 7598 |
7. pipenv
bundler や composer 、 npm といった他の言語のパッケージマネージャーと同等の機能を提供するツールです。
Python の virtualenv と pip を組み合わせて、プロジェクト固有の環境をシンプルに構築・管理できる機能を提供しています。
リポジトリ名 | pipenv |
---|---|
説明 | Python Development Workflow for Humans. |
説明(翻訳) | 人間のための Python 開発ワークフロー。 |
URL | https://github.com/pypa/pipenv |
ホームページ | https://docs.pipenv.org/ |
スター | 6936 |
8. sonnet
複雑なニューラルネットワークを構築するための、 TensorFlow ベースのライブラリです。
Google が 2014 年に買収した DeepMind 社が提供しているようです。
リポジトリ名 | sonnet |
---|---|
説明 | TensorFlow-based neural network library |
説明(翻訳) | TensorFlow ベースのニューラルネットワークライブラリ |
URL | https://github.com/deepmind/sonnet |
ホームページ | |
スター | 5698 |
9. gixy
Nginx の設定ファイルを静的に解析するためのツールです。
設定ミスなどを自動的に検出することを目的に作られているようです。
リポジトリ名 | gixy |
---|---|
説明 | Nginx configuration static analyzer |
説明(翻訳) | Nginx コンフィギュレーションのスタティックアナライザー |
URL | https://github.com/yandex/gixy |
ホームページ | |
スター | 5001 |
10. trump2cash
アメリカのドナルド・トランプ大統領のツイートを見て、株取引を行うためのライブラリだそうです(笑)。
リポジトリ名 | trump2cash |
---|---|
説明 | A stock trading bot powered by Trump tweets |
説明(翻訳) | Trump のツイートで動く株取引のボット |
URL | https://github.com/maxbbraun/trump2cash |
ホームページ | https://trump2cash.biz |
スター | 4111 |
11. pytorch-tutorial
ディープラーニング用のライブラリ PyTorch のチュートリアルです。
リポジトリ名 | pytorch-tutorial |
---|---|
説明 | PyTorch Tutorial for Deep Learning Researchers |
説明(翻訳) | ディープラーニングの研究者のための PyTorch チュートリアル |
URL | https://github.com/yunjey/pytorch-tutorial |
ホームページ | |
スター | 4079 |
12. wtfpython
一見直感的でないふるまいをする、トリッキーな Python スニペットのコレクションです。
リポジトリ名 | wtfpython |
---|---|
説明 | A collection of interesting, subtle, and tricky Python snippets. |
説明(翻訳) | Python の、おもしろかったりトリッキーだったりするスニペットのコレクション |
URL | https://github.com/satwikkansal/wtfpython |
ホームページ | https://github.com/satwikkansal/wtfPython |
スター | 4046 |
13. inter
UI 用フォントです。
プログラムの部分で Python が使われているため GitHub 上では言語が Python ということになっていますが Python に限ったものではありません。
リポジトリ名 | inter |
---|---|
説明 | The Inter UI font family |
説明(翻訳) | inter UI フォントファミリー |
URL | https://github.com/rsms/inter |
ホームページ | https://rsms.me/inter/ |
スター | 4045 |
14. wxpy
(中国語で書かれていて読めないのでスキップ)
リポジトリ名 | wxpy |
---|---|
説明 | 微信机器人 / 可能是最优雅的微信个人号 API ✨✨ |
説明(翻訳) | - |
URL | https://github.com/youfou/wxpy |
ホームページ | https://wxpy.readthedocs.io/zh/latest/ |
スター | 3850 |
15. TensorFlow-World
TensorFlow のチュートリアルです。
リポジトリ名 | TensorFlow-World |
---|---|
説明 | Simple and ready-to-use tutorials for TensorFlow |
説明(翻訳) | TensorFlow のシンプルで即使えるチュートリアル |
URL | https://github.com/astorfi/TensorFlow-World |
ホームページ | |
スター | 3676 |
16. pysc2
Google が 2014 年に買収した DeepMind 社による、ゲーム「 StarCraft II 」の AI 学習環境です。
次のページがリリース記事のようです。
リポジトリ名 | pysc2 |
---|---|
説明 | StarCraft II Learning Environment |
説明(翻訳) | StarCraft II の学習環境 |
URL | https://github.com/deepmind/pysc2 |
ホームページ | |
スター | 3635 |
17. SerpentAI
ゲームをプレイするプログラムを作るためのフレームワークだそうです。
リポジトリ名 | SerpentAI |
---|---|
説明 | Game Agent Framework. Helping you create AIs / Bots to play any game you own! BETA |
説明(翻訳) | ゲームのエージェントのフレームワーク。あなたのどんなゲームでもプレイする AI 、ボッツを作成するのを助けます。 β 版です。 |
URL | https://github.com/SerpentAI/SerpentAI |
ホームページ | |
スター | 3353 |
18. deepo
ディープラーニング用の Docker イメージです。
リポジトリ名 | deepo |
---|---|
説明 | A series of Docker images (and their generator) that allows you to quickly set up your deep learning research environment. |
説明(翻訳) | Docker イメージ(とそのジェネレーター)のシリーズです。これを使うと、ディープラーニングの研究環境を素早くセットアップすることができます。 |
URL | https://github.com/ufoym/deepo |
ホームページ | https://hub.docker.com/r/ufoym/deepo |
スター | 3350 |
19. visdom
ウェブブラウザーベースのデータ可視化ツールです。
リポジトリ名 | visdom |
---|---|
説明 | A flexible tool for creating, organizing, and sharing visualizations of live, rich data. Supports Torch and Numpy. |
説明(翻訳) | ライブデータ、リッチなデータのビジュアルを作成・整理・共有するための柔軟なツールです。 Torch と Numpy をサポートしています。 |
URL | https://github.com/fossasia/visdom |
ホームページ | |
スター | 3310 |
20. seq2seq
機械翻訳に使用できる TensorFlow のエンコーダー / デコーダーのフレームワークです。
リポジトリ名 | seq2seq |
---|---|
説明 | A general-purpose encoder-decoder framework for Tensorflow |
説明(翻訳) | TensorFlow の汎用エンコーダー / デコーダーフレームワーク |
URL | https://github.com/google/seq2seq |
ホームページ | https://google.github.io/seq2seq/ |
スター | 3217 |
21. sandsifter
x86 プロセッサーに対してファジング(ファズテスト)を行うためのツールのようです。
リポジトリ名 | sandsifter |
---|---|
説明 | The x86 processor fuzzer |
説明(翻訳) | x86 プロセッサーのファジングツール |
URL | https://github.com/xoreaxeaxeax/sandsifter |
ホームページ | |
スター | 3201 |
22. WebHubBot
世界最大のアダルト動画サイトをクローリングするためのツールです。
動画のタイトル、動画の長さ、 mp4 リンク、 URL などを取得するそうです。
リポジトリ名 | WebHubBot |
---|---|
説明 | Python + Scrapy + MongoDB . 5 million data per day !!!💥 The world's largest website. |
説明(翻訳) | Python + Scrapy + MongoDB 。 1 日に 500 万データを取得。世界最大のウェブサイト。 |
URL | (削除されました) |
ホームページ | |
スター | 3129 |
23. pygorithm
重要な基本的アルゴリズムを網羅した Python ライブラリです。
ソートや探索、経路探索、動的計画法、貪欲アルゴリズムといった、 CS の学生さんにお馴染みのさまざまなアルゴリズムのサンプルコードが入っています。
リポジトリ名 | pygorithm |
---|---|
説明 | A Python module for learning all major algorithms |
説明(翻訳) | すべてのメジャーなアルゴリズムを学ぶための Python モジュール |
URL | https://github.com/OmkarPathak/pygorithm |
ホームページ | |
スター | 3124 |
24. awx
Ansible のウェブインタフェースを提供するためのライブラリのようです。
リポジトリ名 | awx |
---|---|
説明 | AWX Project |
説明(翻訳) | AWX プロジェクト |
URL | https://github.com/ansible/awx |
ホームページ | |
スター | 3063 |
25. shadowbroker
クラッキンググループ Shadow Brokers が「 Lost In Translation 」という名前で公開した Windows などの脆弱性を突くコード(「エクスプロイト」)のようです。
リポジトリ名 | shadowbroker |
---|---|
説明 | The Shadow Brokers "Lost In Translation" leak |
説明(翻訳) | Shadow Brokers の「 Lost in Translation 」リーク |
URL | https://github.com/misterch0c/shadowbroker |
ホームページ | |
スター | 3001 |
26. howmanypeoplearearound
同じ WiFi ネットワークを利用する人の数を数えるツールのようです。
リポジトリ名の howmanypeoplearearound は「 how many people are around 」の意味のようです。
リポジトリ名 | howmanypeoplearearound |
---|---|
説明 | Count the number of people around you by monitoring wifi signals |
説明(翻訳) | WiFi の信号をモニタリングしてあなたの周りにいる人の数を数えます。 |
URL | https://github.com/schollz/howmanypeoplearearound |
ホームページ | |
スター | 2981 |
27. baselines
強化学習アルゴリズムのベースを実装したコード集です。
研究者コミュニティがこれをベースに研究を進められることを目的に作られたようです。
リポジトリ名 | baselines |
---|---|
説明 | OpenAI Baselines: high-quality implementations of reinforcement learning algorithms |
説明(翻訳) | OpenAI Baselines: 強化学習アルゴリズムの高品質な実装 |
URL | https://github.com/openai/baselines |
ホームページ | |
スター | 2972 |
28. apistar
ドキュメント付きの API サイトを作成するためのフレームワークです。
リポジトリ名 | apistar |
---|---|
説明 | A smart Web API framework, designed for Python 3. 🌟 |
説明(翻訳) | Python 向けに設計されたスマートなウェブ API フレームワーク |
URL | https://github.com/encode/apistar |
ホームページ | https://docs.apistar.com/ |
スター | 2938 |
29. pytorch-CycleGAN-and-pix2pix
画像から別の画像を自動生成する( image-to-image translation の)ためのアルゴリズムの Python 実装です。
CycleGAN と Pix2pix という、その筋では有名な画像変換のアルゴリズムを実装しており、 README では画像内の馬をしまうまに変えたり、線画を猫に変えたりするサンプル(オリジナル研究者が出したもの?)が紹介されています。
リポジトリ名 | pytorch-CycleGAN-and-pix2pix |
---|---|
説明 | Image-to-image translation in PyTorch (e.g. horse2zebra, edges2cats, and more) |
説明(翻訳) | PyTorch での画像変換(例: horse2zebra / edges2cats その他) |
URL | https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix |
ホームページ | |
スター | 2791 |
30. fashion-mnist
MNIST 風の、衣服の画像のデータベースです。
MNIST に馴染みの無い方に説明すると、 MNIST database というのは「 Modified National Institute of Standards and Technology database 」の略で、手書きの数字画像のデータベースのことです。マシンラーニングの研究や練習の定番として使われています。
リポジトリ名 | fashion-mnist |
---|---|
説明 | A MNIST-like fashion product database. Benchmark :point_right: |
説明(翻訳) | MNIST 風のファッションプロダクトデータベース。 |
URL | https://github.com/zalandoresearch/fashion-mnist |
ホームページ | https://fashion-mnist.s3-website.eu-central-1.amazonaws.com/ |
スター | 2774 |
31. Pokemon-Terminal
名前のとおり、ポケモンのターミナルのテーマ集です。
README に書いてあるのを読むと 719 体のポケモンのテーマがあるそうです。世界のポケモンですね。
任天堂(株式会社ポケモン)に許可を取っていないのではないかとも思いますが、おしゃれでかわいいです。
リポジトリ名 | Pokemon-Terminal |
---|---|
説明 | Pokemon terminal themes. |
説明(翻訳) | ポケモンのターミナルテーマ。 |
URL | https://github.com/LazoCoder/Pokemon-Terminal |
ホームページ | |
スター | 2657 |
32. ParlAI
Python で実装された、会話の AI 研究のフレームワークです。
ちなみに ParlAI は「パーレイ」と読むそうです。
リポジトリ名 | ParlAI |
---|---|
説明 | A framework for training and evaluating AI models on a variety of openly available dialog datasets. |
説明(翻訳) | さまざまな会話データセットに対する API モデルのトレーニングと評価のためのフレームワーク。 |
URL | https://github.com/facebookresearch/ParlAI |
ホームページ | parl.ai |
スター | 2550 |
以上です。興味のある方は各リポジトリの README などをご覧になってみてください。
尚、スター数は 2017 年 12 月 31 日時点で確認した数字です。
違うブログですが、次の投稿では言語を制限せず「 2017 年リリースの GitHub リポジトリのうちスター数が 1 万を越えているもの」をリストアップしてみました。こちらも興味のある方はよろしければ。