時系列モデルを扱う上でデファクトスタンダードになりそうなPythonライブラリが出てきました。 時系列モデルを扱うPythonライブラリは、 scikit-learn のようなデファクトスタンダードなものがありません。そのため時系列モデルを用いて実装を行うためには、…
pandas はデータ解析やデータ加工に非常に便利なPythonライブラリですが、並列化されている処理とされていない処理があり、注意が必要です。例えば pd.Sereis.__add__ のようなAPI(つまり df['a'] + df['b'] のような処理です)は処理が numpy に移譲されてい…
本日、開催されたData Platform Meetup vol.2に参加してきました。発表の内容や関連するリンクをまとめました。 data-platform-meetup.connpass.com 開催日時: 2019年12月2日 会場: Pixivさんオフィス
今回PyCon JP 2019にスタッフとして参加し、Webサイトの運用(と最適化アルゴリズムを用いたタイムテーブルの提案)を行いました。そこで得られた知見と反省をまとめて、今後他のカンファレンスなどでWebサイトの開発運用をする方の参考になれば幸いです。 本…
PyCon JP 2019が終了しました。聴講者としてセッションを見た感想は1つ前のエントリにまとめました。 このエントリでは、自分が行った「ポスター発表」について書きます。今後カンファレンスでポスター発表をする方の参考になれば幸いです。 blog.ikedaosush…
2019年9月16日/17日に開催されたPyCon JP 2019で自分が直接/YouTubeで聴講したセッションについてのまとめです。主に下記の内容を書いています。 スピーカーURL 配信動画 スライド 発表内で出てきたライブラリなどのURL 自分の感想 「あのセッションで話して…
Pythonを使ったデータクローリング・スクレイピングは、エンジニア・非エンジニアを問わず非常に人気や需要のある分野です。しかし、いざデータクローリングしようとすると、複数ライブラリのAPIや、ライブラリそれぞれの関連性に混乱してしまうことがよくあ…
最初に結果です。下のようにGitHub StarのトレンドをBokehで可視化してはてなブログに埋め込む方法を解説します。マウスオーバーしてもらうとtooltipが表示される(=画像埋め込みでない)ことが確認していただけると思います。
「つくばエンジニアLT会」を開催したのでその報告と、つくばのエンジニアのSlackを作成したお知らせです。 tsukuba.connpass.com
NuxtのbuildがローカルのMacでは通るのにCircleCIで失敗する問題で詰まったので、同じ問題にぶつかった方向けにまとめておきます。 自分の場合は、問題は2つありました。 CircleCIでNuxtのbuildのエラーログが出力されない APFS(Macでデフォルトで採用されて…
タイトルで全部言ってしまっているのですが、ハマったので同じハマり方をしている方の検索用にメモっておきます。 自分がぶつかったのはGCLOUD_PROJECTでFirebaseのproject_idを取得して環境ごとに処理を切り分けたかったのですが、GCLOUD_PROJECTが何故か参…
機械学習のモデルを学習する、あるいは推論APIを作成するにあたってSageMakerはとても便利ですが、 定期実行する機能をSageMaker自身では持っていない という問題があります。 このエントリでは、Serverless Framework(以降、Serverless)を使って素早くSageM…
カック@ブロガー / k9u@kakakakakku さんに2019年4月~6月の3ヶ月間ブログメンタリングをしていただいていました 「どんなアドバイスをもらったのか」「どんな効果があったのか」を書きたいと思います。これを読んで、ブログメンタリング応募が増えたりカッ…
2019年1月15日に発売された『iOSアプリ設計パターン入門』が非常に良書だったので紹介します。自分は設計に対してある悩みを抱えていたのですが、この本を読んで一気に解決ました。 peaks.cc
前回の記事でGAになったばかりのAmazon Personalizeの使い方の解説をしました。 ただ、前回の記事では実際にアプリケーションから利用するところ、つまりWeb APIとして公開するところまでは書くことができませんでした。 ということでこの記事では、Serverle…
今週、Amazon PersonalizeがGAになりました。東京リージョンでも使うことができます。 この記事ではAmazon Personalizeの概要、使い方の解説を行います。PythonのAWS SDKを使ってレコメンドアプリケーションを作成していきます。 また事前準備のS3やIAM Role…
PyCon JPの運営メンバーとして自分は、昨年度のPyCon JP 2018のタイムテーブル決めに組み合わせ最適化問題を用いました。ちなみに最終的なタイムテーブルはアルゴリズムで算出された結果を人間がレビューして調整しています。 昨年度は時間の制約があり、い…
機械学習のクラス分類モデルを評価する際に用いる混同行列を簡単に表示できるちょっとしたライブラリがあったので紹介します。 混同行列とは、機械学習で予測したクラス分類の結果をまとめた行列です。ちょうど上の画像のように「どのクラスに分類されて」「…
昨年末のAurora Serverless Data APIの登場で、Lambdaからの利用が簡単になりました。この記事ではServerless Framework、CloudFormationを用いて、Aurora Serverless Data APIとLambdaを使ったAPIを構築する方法を紹介します。 使ったコードはすべてGitHub…
機械学習Podcast「TWiML&AI」で先週取り上げられた可視化ライブラリ「Yellowbrick」が非常に便利だったので紹介します!ちなみにPodcastには作者の1人であるRebecca Bilbroさんが出演しているので興味持った方は是非聞いてみてください。 twimlai.com www.s…
Serverless内で使っている環境変数を外部と共有する方法を紹介します。Serverlessでは設定ファイル内でCloudFormationを書くことができ、そこで作成したS3などのResourceをServerlessプロジェクトから使うことができます。この機能はとても便利なのですが、…
SageMakerとServerlessを使ってscikit-learnの機械学習APIを作る方法を紹介します。 公式ドキュメントやその他の記事の多くはコンソール操作やnotebook上での操作が多く含んでいて、そのコードのまま本番運用に使うのは難しいと感じたので、この記事では コ…
Hacker NewsとRedditでバズっていたPythonのデバッグツールが便利だったので紹介です! PySnooperというライブラリです。 Hacker News - PySnooper: Never use print for debugging again Reddit - PySnooper: Never use print for debugging again ※追記 想…
AWS Lambdaで行えないような重い処理はAWS Batchを使うと簡単に行うことができますが、定期実行したりエンドポイントを作る仕組みはAWS BatchにはまだなくCloudWatchやAPI Gatewayと組み合わせる必要がありますがServerlessと組み合わせることで簡単に実現で…
Nuxt開発の小ネタです。環境変数を開発環境/本番環境で切り分けたいときにどうすればよいか、わからなかったのでメモしておきます。
Nuxt/VuexでFirebase Authenticationを使ったユーザー認証機能を作るにあたって、基本的なやり方はFirebaseドキュメントに書いてあるのですが、「どこに何を書けばいいのか」がよくわからなかったので調べながらまとめてみました。
はじめに 昨日Vaexの性能評価の記事を書きました。 その記事では長くなってしまうので基本的な使い方などを省略しました。 なので今回は入門記事として使い方を紹介します。 blog.ikedaosushi.com
TL;DR アウトオブコア、かつマルチコアでデータ処理を行えるVaexの紹介です。 string関係のメソッドで平均して100倍以上の高速化が確認できました。(作者のベンチマークだと最大1000倍) 文字列処理以外でも数倍~数十倍の高速化が行えそうです。 この記事では…
5回目になりました! 本日「つくばPythonもくもく会No.5」を開催しました。 最近開催報告を書いていなかったのですが、ありがたいことにブログを見て来てくれる方もいらっしゃるようなので、久々に書いてみました。 開催中の風景
TL;DR Lambda Layerを使ってLambdaのデプロイを高速化します。 ServerlessとServerless Pluginを使うことで簡単に実現することができます。 今回試した一例ですが、252.47秒->45.49秒で5倍高速化しました。 はじめに Serverlessを用いたLambda Layerの活用に…