Kindle Scribeがすごく良いという話

昨年、Kindle Scribeを買いました。 皆さんは、Kindle Scribeをご存知ですか?周りにあまりKindleを使っている方が少ないためかあまり認知度が高くない印象があり、満足度高く使ってるぞ!というのを伝えたく、ブログを書いてみました。 Kindle Scribeって何…

k8s のpod からネットワーク速度を覗く

k8s 上のpod でファイルを転送する場合にネットワークが詰まっているかどうか、プロセスがゾンビ化していないかを確認したかったので、やり方を調査したのでメモ。 どう解決したか シンプルに netstat を使うことで確認できた。 久しぶりに netstat を使った…

aws-glue-libs をCI/CD で使いたい

概要 AWS Glue の自動テストで aws-glue-libs コンテナイメージを使いたいが high-uid-error になってしまった。それを回避した話。 前提 AWS Glue の開発を進めやすくするために、amazon から aws-glue-libs というコンテナが公開されている。 https://hub.…

Redshift で日付区間を縦持ちにする

今となっては横持ちのデータを縦持ちに展開する場合、もしくは縦持ちのデータを横持ちに変換する場合、 Airflow なりDataflow なりデータパイプラインで実現すると思います。 今回は検証をしたいためだけのため、横持ちのデータを縦持ちに展開することをSQL…

parquet の中身を見る @mac

久しぶりにparquet file を扱う機会があり、中身を見る必要があったので、やり方を残しておく。 $ brew install parquet-tools 以前のブログでツールはなるべくビルドしたいと書いたが、今回は brew でインストールした。 Java の環境などはセットアップして…

Airflow doc_md のすゝめ

この記事はZenn.devで書いた記事です。 Summary Airflow のdag とtask には、doc_mdというものがあるよ。 これを使えばタスクの定義や目的をみんな大好きMarkdown形式で記述することができるよ。 今回は、Airflow==1.10.12を使ってるけど、Airflow<=1.10.1か…

Rust インストール

Rust をインストールして、色々合わせてインストールされたので、それぞれの役割を書いていきます。 Rust インストール 先日の記事でもRust のインストールを紹介したが、rust-lang.org にインストール方法を説明するページがあるので、そちらを参照されたい…

ターミナルの環境改善活動をしてみた

先日、同僚とモブプログラミングをしていてrgコマンドを使ってgrepに近いことをしていてとても便利そうだったので、導入しようとおもったので、記事にしました。 巷を賑わすRust 製のコマンドたち 最近、自分のターミナルを豊かにするアンテナを貼っていなか…

プライバシーポリシーを設定しました

こんにちは管理人のtoohskです。 下記、「プライバシーポリシー」に関して記載致しましたので、ご一読願います。 当サイトへのコメントについて 免責事項 プライバシーポリシーの変更について 当サイトに掲載されている広告について 当サイトでは、第三者配…

Numpy array のcopy で気をつけたいこと

Python のNumpy array やList オブジェクトのコピーで気をつけたいところの忘備録をブログにしました。 スライス操作による違いも試してみているので、ぜひ一読ください。

GKE とCloudSQL を組み合わせたい

k8s の中にRDB コンテナをデプロイして管理するもよいと思いますが、 RDB だけフルマネージドサービスを使うパターンもあるかと思います。 アプリケーションコンテナはGKE で、RDB はCloudSQL で動かすにはどうしようと考えていたところ、Google Cloud のド…

k8s のpod の中のファイルをlocal にコピーしてくる方法

TL;DR; k8s のpod 内にあるファイルは kubectl cp コマンドでローカルにコピーできるよ 何がしたかったか サーバーにあるファイルをアップロードやダウンロードする場合、よくscp で行うかと思います。 本業の開発では、kubernetes (以下、k8s) を用いて運用…

SudachiPy でユーザ辞書を作ってみた

前回のブログでGiNZA2.0 の導入について記述した。 toohsk.hateblo.jp 形態素解析を行ったところ期待した粒度で分割されていないことがあった。 これは形態素解析を行う上で仕方ない部分であり、 こういう場合には分割されてほしくない単語をユーザ辞書で管…

GiNZA 2.0 を触ってみた。

GiNZA はmegagonlabs が開発している日本語の形態素解析器です。 フレームワークとしてspaCy をFramework として利用しています。 今日2.0 がリリースされたので、インストールとユーザ辞書について触っていきたいと思います。 前提 今回、pyenv でPython 3.…

Pandas DataFrame のX軸の単位を調整する

内容 DataFrame で histogram を描画したときの x, y 軸のスケールの表示を調整する方法について、ハマったのでメモとして残しておきます。 TL;DR DataFrame から直接 df.hist とするのではなく、 一度、 df.plot で matplotlib.axes._subplots.AxesSubplot …

Pandas DataFrame で圧縮したデータファイルを読み込む

概要 圧縮されたファイルを Pandas DataFrame で読み込むための手順を紹介する。 毎回解凍してから読み込みをしていたのを、圧縮したまま読み込めたので、忘備録として残す。 今回は gzip 圧縮した前提で記載します。 内容 すごくシンプルだったので、まずコ…

OSS に Contribute しました

簡単な変更でしたが、OSS に Contribute しました。 github.com 内容と所感 内容はドキュメントに favicon.ico を追加しただけという…笑 実は OSS にコミットという点で言えば、初めてのコミットだった。 しかも、今日初めて読むプロジェクトに Sphinx とい…

Python で標準出力をリアルタイムに出力する方法

Jenkinsで実行ログをリアルタイムで確認したい Jenkis ではジョブの実行ログをリアルタイムに確認することができる。 しかし、 ( Python ではスクリプト言語のため)、処理を高速化するために標準出力をバッファしてまとめて出力する。 なので、 Jenkins で…

ElasticSearch に Bulk Insert をする

以前の記事でも記載したが、本業のプロジェクトで ElasticSearch を利用したシステムの構築をしようとしている。 Docker で作ったデモ環境では、 Embulk での bulk insert ができていた。 しかし、 AWS Elasticsearch Service では embulk-output-elasticsea…

DockerCompose で ES + Kibana 環境を構築しました!

前回の記事で ElasticSearch と Kibana の両方を Docker で起動する方法を紹介した。 toohsk.hateblo.jp しかし、 Docker の Link などを使って管理していたので、手動で管理するものがたくさんあり、大変だった。 なので、今回は Docker Compose を利用する…

Docker で ElasticSearch + Kibana 環境を構築してみた。

本業で ElasticSearch を使うシステム開発を行うことになった。 機能の POC を確認するため、 Docker で ElasticSearch と Kibana を起動することにした。 自分は Docker for Mac を利用している。 Note Linux 環境や Mac ユーザだけど Docker for Mac を利…

Prestoで2つの配列を同時に行に変換する

最近、Treasure Dataに触る機会が増えた。 その中で1行に2つのカラムにそれぞれコンマ区切りのデータがあり、それを行展開するのにハマったポイントがあったのでメモしておく。 そして長くなるので、最初に結論を載せておく。 どういうデータか 以下のような…

勉強会に登壇してきました。

機械学習エンジニアとして副業をしていることもあり、FindyでCTOしている @ma3tk からのお誘いもあり登壇してきました。 engineer-parallel-work.connpass.com 発表資料はこちら。 speakerdeck.com 副業をしていて感じていることを話してきた。 まだ初めて数…

PandasでJSONファイルを保存するときの注意点

個人的にはTensorFlowでモデリングするようになってから、numpyを触る頻度が高くなって、それに伴いpandasを触る機会が減っていった。 データの可視化もpyplotとかseaboneとかを使って、可視化の方法を調べながら模索している状況が増えていった。 しかし、…

JupyterLabでアニメーションが動作しないときの対処

背景・目的 最近、深層強化学習を勉強していて、教材としては https://www.amazon.co.jp/dp/4839965625 を使っている。 コードはノートブックに記述していて、JupyterLabを利用している。 Toy problem として自作で3×3マスの迷路を自作して、選択した行動を…

Kerasで学習したモデルをWebAPIとして提供する

機械学習で学習済みモデルの予測結果をどうやって返すべきか勉強したので、WebAPIとして提供する場合のコードのメモする。 リポジトリはこちら。 READMEに拙い英語でリポジトリの内容について書いた。 個人的な学びポイントは、 load.py の init 関数でリロ…

ブログをはじめました

はじめまして toohskといいます。よろしくお願いします。 toohskの読み方は決まってません。 いろいろなところでこのIDを使ってるのですが。 友達の仕事を手伝うことを契機に 仕事でのメモや技術的なことをポストしたくなり、ブログをはじめました。 以前自…