タグ Cython
人気順 10 users 50 users 100 users 500 users 1000 usersAtCoderでCythonの力を開放する魔術詠唱 - 学習する天然ニューラルネット
概要 以下のformatをPythonで提出すればいい mycode = r''' # distutils: language=c++ # cython: language_level=3, boundscheck=False, wraparound=False, cdivision=True {ここにcythonのコードを書く} ''' import sys import os if sys.argv[-1] == 'ONLINE_JUDGE': # コンパイル時 with open('mycode.pyx', 'w') as... 続きを読む
Cython で Python ⇔ C++ のインタフェースを作る - 雑食性雑感雑記
以前、Python と C++ を繋ぐためには SWIG を使ってたが、 Cython 0.13 以降では Cython 自身で Python と C++ を繋ぐことができる。 (2018/05時点で 0.28) この機能を試してみた。 ここまで来てようやく cythonize を知ったので、ビルドはそちらで。 環境前提 Ubuntu 16.04 Python 3.5 Cython 0.28 その他必要なものは... 続きを読む
『Cython ―Cとの融合によるPythonの高速化』のメモ
参考文献 『Cython ―Cとの融合によるPythonの高速化』, オライリー・ジャパン, ISBN978-4-87311-727-0 以下では、Cython本と呼ぶ Cython ドキュメント(和訳) — Cython 0.17.1 documentation Cython概要 Cythonは、PythonとCもしくはC++の静的型システムを融合したプログラミング言語 クレオール型プログラミング言語 ... 続きを読む
Go言語でMeCabを使う - 人工知能してみる
2017 - 12 - 08 Go言語でMeCabを使う 自然言語処理 MeCab Go言語 こんにちは。 機械学習 系は Python にライブラリが偏っていることもあり圧倒的に Python 一択ではあるのですが処理が遅いのが問題です。 Cythonって手もありますがビジネスで使うってなると Ruby とかGoで使えた方がいいよなーと思ってます。 そこでGoの勉強も兼ねて 自然言語処理 の基本... 続きを読む
道具としてのCython - tkm2261's blog
2017 - 08 - 17 道具としてのCython Python Kaggle 皆様tkm2261です。今日は道具としてのCythonと題して、 使うことに特化してCythonの解説をしたいと思います。 きっかけはKaggle Cythonを使うとき FaronさんのF1最適化 DP (Dynamic Programming)を含んだ実装はCythonの出番 使い方 その1 『Cython実装... 続きを読む
Python pandas パフォーマンス維持のための 3 つの TIPS - StatsFragments
2015-07-11 Python pandas パフォーマンス維持のための 3 つの TIPS pandas Python pandas でそこそこ大きいデータを扱う場合、その処理速度が気になってくる。公式ドキュメントではパフォーマンス向上のための方法として Cython や Numba を使う方法を記載している。 Enhancing Performance — pandas 0.16.2 do... 続きを読む
O'Reilly Japan - Cython
強力なライブラリを豊富に備え、科学計算から統計分析、金融工学まで利用が広がるPython。スクリプト言語とは思えない高速性の秘密が、NumPyやSciPyなどのPythonパッケージで広く使われているCythonです。CythonはPythonプログラムの実装を高速化するコンパイラであると同時に、C/C++で書かれたライブラリをPythonから利用できるようにするブリッジとしての役割も果たします。... 続きを読む
[Python][Cython]メモ: numpyアクセス高速化 | Momentum
概要 ・Cythonを用いてnumpyのarrayへのアクセスを高速化する ・numpy使用時に陥りがちな罠(様々なサイトで書かれているが)をまとめておく 準備(setup.py) とりあえずsetup.pyを用いたコンパイル方法を使うにあたって、numpyのarrayを使う際に微妙に書き換える場所があるのでそれをメモ include_dirsの設定を行う必要がある 続きを読む