目次
はじめに
本日、
自分が開発者のメンバーとして参加している
SciPyの新しいバージョン1.5.0がリリースされました🎉
今回は、1.5.0の新機能や特徴を、
連続ツイートでまとめてみたので、
そちらを、あとから参照しやすいように
記事としてまとめておきます。
Tweetまとめ
ついにSciPy1.5.0が正式リリースされました🎉 みなさん是非アップデートしてみてください😃 Release SciPy 1.5.0 · scipy/scipy #python https://t.co/urd5VQ6hrn
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
v1.5.0の新機能を簡単に紹介すると、一番のウリは、linalg.lapackで、これまで未対応だったかなりの数のlapackのラッパー関数が新規追加されました(64個)。 LAPACK functions (scipy.linalg.lapack) — SciPy v1.5.0 Reference Guide https://t.co/tpye1V5oGR
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
ちなみにSciPyにとって、Pythonユーザーにlapackのインターフェースを提供するのは、最も重要だとロードマップに書かれています。今回のlapack APIの拡充は、NumFOCUSからgrantを得て開発されました。https://t.co/V4kjhlV5Tx
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
また、blasとlapackのcythonインターフェイスも整備されました。これにより、ユーザーのcythonコードから、scipyのblasやlapackのcythonインターフェイスが直接使えるようになり、高速な演算が可能になります。https://t.co/OEEdnTskdY
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
1.5.0の二つ目のウリは、様々なfortranライブラリでの64bit対応です。今回のリリースでscipyが依存するfortranライブラリの多くが64bit対応しました。これにより例えば非常に大規模なデータの補間などが可能になっています。
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
最後に、コードの改善やcython化により、沢山の関数のパフォーマンスが改善しています。またAWSのlambdaなどに対応するために、バイナリサイズの削減なども始まりました。なので新しい機能を使わない人も、アップデートした方がよさそうです😃
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
ちなみに自分のPRを宣伝しておくと、公式ドキュメントの各APIページにコードサンプルが40個ほど追加されました。またinterpolateモジュールで発生してた意味不明なfortranエラーメッセージがPythonのものになり、わかりやすくなったと思います。https://t.co/aAoM0Ybd3M
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
ちなみに、自分がすごい期待してたいくつかのロボット屋さんに便利なPRは、残念ながら1.5.0にはマージされませんでした。。😰例えばlinprogの新しいソルバーhighs対応、spatial.transform.rotationのcython化、ckdtreeのsimd対応などです。1.6.0には入るはずなので、その分次のリリースが期待大ですが
— Atsushi Sakai (@Atsushi_twi) 2020年6月22日
参考資料
MyEnigma Supporters
もしこの記事が参考になり、
ブログをサポートしたいと思われた方は、
こちらからよろしくお願いします。