目次
はじめに
本日、
自分が開発者のメンバーとして参加している
SciPyの新しいバージョン1.7.0がリリースされました🎉
今回は、1.7.0の新機能や特徴を、
連続ツイートでまとめてみたので、
そちらを、あとから参照しやすいように
記事としてまとめておきます。
過去のバージョンの記事は下記の通りです。
Tweetまとめ
半年に一回のお楽しみとして、SciPy 1.7.0が正式リリースされました🎉 今回も沢山の便利な新機能が追加されたので、簡単にこのツイートのスレッドで紹介したいと思います😃。また自分が関わった新機能についても紹介させてください。Release SciPy 1.7.0 · scipy/scipy https://t.co/5jiUjx9MrL
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
まずわかりやすい変化として、SciPyのドキュメントページが刷新され、PyData-Sphinx themeが使われるようになりました。これはNumPyやPandasなどが使っているものと同じです。見た目がかなりかっこよくなったと思います。https://t.co/pyEwOgVyOQ
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
今回のリリースの一番大きな改善は統計サブモジュールである、scipy.statsが大規模に改善されたことです。おそらくメインの開発者の半分以上がstatsに投入されていました。このstatsの改善は、Chan-Zuckerberg財団の資金サポートによって実施されました。https://t.co/pHdGJ4u66t
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
まずC++のBoostの一部がscipy取り込まれ、多くの確率分布関数のバックエンドが置き換わり、新しい分布も追加されました。多くの既存バグと計算コストが大幅に向上したと思います。加えて、多くの仮説検定の関数の改善と追加も実施されました。APIの一貫性も向上しています:https://t.co/6WVxZvWnpg
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
続いて、大きな進化として高次元数値積分手法である準モンテカルロ法(Quasi-Monte Carlo)用のサブモジュールstats.qmcが追加されたことです。QMCは様々な分野から要望されており、Sobolサンプラの追加を皮切りに実装されました。計算効率は次のリリースで改善される予定ですhttps://t.co/GlopFHbeMt
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
パフォーマンス関連で嬉しいのは、scipy.spatialのcdistやpdistのような距離計算関数のバックエンドがC++に移植され、非常に高速になったことです。大規模のデータの距離を計算するときにパフォーマンス改善を感じられると思います。:Distance computations https://t.co/gak5w7DibU
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
補間モジュールscipy.interpolateに関しては、これまでもRBF補間の関数としてRbfが存在していましたが、様々なAPIの問題や、バグ、パフォーマンスの問題があり、それらを改善するために、RBFInterpolatorという新しいクラスが追加されました。https://t.co/1KJboN5Qwk
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
最後に自分の貢献を紹介すると、一番自分でも使いそうなのが、optimze.mimizeのソルバーの一つであるNelder-MeadソルバーにBox制約を追加できるようにしたことです。simplexをclipしただけですが、結構様々な問題で動きます。是非使ってみてください😁。https://t.co/SIKi0AGSGf
— Atsushi Sakai (@Atsushi_twi) 2021年6月21日
参考資料
MyEnigma Supporters
もしこの記事が参考になり、
ブログをサポートしたいと思われた方は、
こちらからよろしくお願いします。