You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
主張:高速化は最後のおたのしみにしましょう。 無駄にいじいじして高速化させて満足し、結局その後はほとんど使わなかったなあ、、、が私の日常です。 えらい人も言っていますが、高速化なんてホント最後でいいんです・・・。 今まで何十回後悔したことか。。。(これからもまたやりますが。) pythonであれば numba,cython,swig など、コンパイルしちゃう系の力(パワー)を借りることで、 全く同じアルゴリズムでもざっくり100倍単位で簡単に高速化できます。 しかし、このやり方ではpythonのインタープリターなゆるふわ△言語の良さを(該当コード部分において)捨ててしまいます。結局C/C++に魂を売っているだけです。 私は魂を売ることそれ自体が好きなので良いですが、この行為はpythonの持つ別の面での高速性、つまり "生産性の高さ" を犠牲にしています。 コードの実行スピードが速くなって
本記事をお読みになる前に 掲題のとおり、本記事では Python のソースコードにおいてインデントレベル 2 で自動整形する設定について扱っております。 しかしながら、コメントにて @shiracamus 様からご指摘いただいたように、推奨されているインデントレベルは 4 であり、本記事の内容はそれから外れたものとなりますのでご注意ください。 既存ソースコードに合わせたり、プロジェクトの方針として 4 以外を設定する、といったケースにおいて本記事が参考になればと思います。 以下、ご指摘いただいた内容を転記いたします。 既存コードに合わせてインデントを2にするのはいいですが、そうでないならインデントは4が推奨ですね。 参考: PEP8: Pythonコーディングスタイルガイド コードのレイアウト インデント 1レベルインデントするごとに、スペースを4つ使いましょう。 @shiracamus
GBDTで予測分布が出せると話題のNGBoostを試してみましたので、備忘録がわりに投稿します。実際に動かしてみたい方はこちらを参考にしてください。 所感 modelチューニングをほぼしていない状態かつ、今回の小さいデータセットでは精度はほぼ同じ。 分布が算出できるのは使いどころがあるかもですね。 インポート あとでNGBoostとLightGBMをちょっと比較するのでlightgbmもインポートしておきます。 # ngboost from ngboost.ngboost import NGBoost from ngboost.learners import default_tree_learner from ngboost.scores import MLE from ngboost.distns import Normal, LogNormal # lightgbm import li
OpenCVで特徴量マッチング 特徴量マッチングとは、異なる画像でそれぞれ抽出した特徴量の対応付けのことです。 パノラマ画像の作成 物体検知 動体追跡 で登場する技術です。 OpenCVには、以下のライブラリが用意されています。 特徴量抽出 特徴量マッチング マッチング結果の表示 今回は、OpenCV 3 + Python 3 を使って、下記のような、回転、ズームした画像の特徴量マッチングをしてみます。 マッチング結果を描画 OpenCVとは OpenCV(Open Source Computer Vision Library)はBSDライセンスの映像/画像処理ライブラリ集です。画像のフィルタ処理、テンプレートマッチング、物体認識、映像解析、機械学習などのアルゴリズムが多数用意されています。 ■ OpenCVを使った動体追跡の例 (OpenCV Google Summer of Code
- はじめに - 本記事はpython prompt toolkit(以下 ptk)の動作を理解するメモです。 ptkで出来ること、その概要を書いています。 - はじめに - - ptkとは - ptkで作成されたツール - ptkの描画を理解する - print_formatted_text Application Screenオブジェクトのレンダリング KeybindingとFilter 関連 おわりに - ptkとは - ptkは、Pythonで実装されているCLI用のツールキットである。 コンソール上でのフルスクリーンアプリケーションの作成 dialogs、progress-barの生成 シェルのようなインタラクティブな入出力 補完 clipboardの管理 出力テキスト色の変更 シンタックスハイライト EmacsとViのキーバインディング マウスカーソルによる操作 各種非同期処理
matplotlibで図を描画するとき、余白に納得がいかないことがある。 調整方法を自分用にメモ。 余白の大きさを変える plt.subplots_adjust()を使うと余白を調整できる。 ドキュメントによると、デフォルト値は以下の通り。 left = 0.125 # the left side of the subplots of the figure right = 0.9 # the right side of the subplots of the figure bottom = 0.1 # the bottom of the subplots of the figure top = 0.9 # the top of the subplots of the figure wspace = 0.2 # the amount of width reserved for space b
機械学習Podcast「TWiML&AI」で先週取り上げられた可視化ライブラリ「Yellowbrick」が非常に便利だったので紹介します!ちなみにPodcastには作者の1人であるRebecca Bilbroさんが出演しているので興味持った方は是非聞いてみてください。 twimlai.com www.scikit-yb.org Yellowbrickとは 一言で言うと、機械学習に特化した可視化ライブラリです。実装的な面で言うと(こちらの方がわかりやすいかもしれません)、scikit-learnとmatplotlibをラップして、scikit-learnライクなAPIで使うことができるものです。 例えば相関行列のヒートマップをプロットしたい場合は次のように書くだけでグラフを作ることができます。 visualizer = Rank2D(features=features, algorithm=
概要 ImageDataGenerator を使用して画像分類の学習を行うチュートリアル。 関連記事 pynote.hatenablog.com pynote.hatenablog.com Jupyter Notebook 本記事のコード全体は以下。 keras-image-data-generator-usage.ipynb 概要 関連記事 Jupyter Notebook flower_photos モデルを作成する。 モデルをコンパイルする。 ImageDataGenerator を作成する。 学習する。 損失関数の値、精度の履歴を可視化する。 評価する。 推論する。 続きを読む 概要 CNN の学習を行う場合にオーグメンテーション (augmentation) を行い、学習データのバリエーションを増やすことで精度向上ができる場合がある。 Keras の preprocessing.
概要 入力補完、コードの自動整形など Jupyter Notebook のおすすめの nbextensions を紹介する。 概要 関連記事 テーマやフォントの変更について Notebook のインストール方法について 試した環境 導入 次の2つをインストールする。 有効にする。 設定画面にアクセスする。 おすすめの nbextensions Toggle all line numbers (行番号表示の切り替え) isort formatter (import 文の自動整形) Autopep8 (コードの自動整形) Live Markdown Preview (マークダウンのリアルタイム表示) Codefolding (コードの折りたたみ) ExecuteTime (実行時間表示) Hinterland (入力補完) Table of Contents (2) (目次自動作成) Vari
塩コンペに関しては、大会1位を飾ったphalanxさんが記事を書いているのでぜひとも参照してください!自分もやったことは記事内の2ヶ月〜最終日以外はほぼ同じです。 本題 時系列のコンペでは、特徴量として各訓練例が取得された時間や日付を組み込むことがあります。 しかしhourを例に考えてみると、23時の次は0時ですがこの間には数値的なつながりがありません。そこで循環性を考慮できるように三角関数を各特徴量に適用させます。 %matplotlib inline import pandas as pd import numpy as np dates = pd.date_range(start='2017-01-01', end='2017-12-31', freq='H') df = pd.DataFrame(data=np.zeros(len(dates)), index=dates, col
Pythonの可視化ライブラリ「Bokeh」ではじめるデータビジュアライゼーション Bokehではじめるデータビジュアライゼーション 2019年1月22日、freee株式会社にて、Data Driven Developer Meetupが主催するイベント「Data Driven Developer Meetup #4」が開催されました。サービスをより良いものにするために日々データと向き合っているデータサイエンティストやエンジニアなど、様々な職種で活躍する人々が集い、知見を共有する本イベント。今回は日本経済新聞社とエムスリー株式会社の2社がメインセッションに登壇し、自社の取り組みについて語りました。プレゼンテーション「Bokehではじめるデータビジュアライゼーション」に登場したのは、YukiyoshiSato氏。デモを交えながら、Pythonのインタラクティブビジュアライゼーションライブラリ
Chainer チュートリアル 数学の基礎、プログラミング言語 Python の基礎から、機械学習・ディープラーニングの理論の基礎とコーディングまでを幅広く解説 ※Chainerの開発はメンテナンスモードに入りました。詳しくはこちらをご覧ください。 何から学ぶべきか迷わない ディープラーニングを学ぶには、大学で学ぶレベルの数学や Python によるプログラミングの知識に加えて、 Chainer のようなディープラーニングフレームワークの使い方まで、幅広い知識が必要となります。 本チュートリアルは、初学者によくある「まず何を学べば良いか」が分からない、 という問題を解決するために設計されました。 初学者は「まず何を」そして「次に何を」と迷うことなく、必要な知識を順番に学習できます。 前提知識から解説 このチュートリアルは、Chainer などのディープラーニングフレームワークを使ったプログ
口上 データを扱う際に大事なのはそのデータをよく見ることです。 データを見て、そのデータをどう扱うか考える。そのデータを深く理解すれば、これまで以上にデータが活かせます。 可視化のライブラリはたくさんあり、どれを使ってよいかが難しいですが、私の最近のおすすめはDashです。 このライブラリは、Flask、React、Plotlyが組み合わされて作られており、ウェブアプリケーションに簡単にできます。また、下のように動きのあるグラフが簡単に作れるところも良いところです。 また、タブでページを分けられるので、プレゼンテーションのような利用の仕方も出来ます。これまで、データを扱うプレゼンテーションって退屈なことが多かったと思います(私だけかもw)。その理由は、多くのデータを扱っている割に、発表時はそこから切り抜かれたものしか扱えないという制約が大きかったと思います。 しかしこのライブラリを使えば、
はじめに Kaggleで使えるPandasの使い方を備忘録として残します。 随時更新していく予定です。 更新:2019年1月29日15時 様々なコンペで使える便利な関数を追記しました。 Pandas Basics Cheat Sheet(基本的な使い方) [引用]https://becominghuman.ai/cheat-sheets-for-ai-neural-networks-machine-learning-deep-learning-big-data-678c51b4b463 プログレスバーを表示する df.apply()やdf.map()の進捗を見たい時に、 tqdmというライブラリを使うことでプログレスバーを表示することができます。 import pandas as pd import numpy as np from tqdm._tqdm_notebook import t
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く