LexoRank とは何か?
世の中に転がってる LexoRank の日本語解説記事がどうにも腑に落ちない内容だったので、この記事をしたためることにしました。
世の中に転がってる LexoRank の日本語解説記事がどうにも腑に落ちない内容だったので、この記事をしたためることにしました。
Legalscape (リーガルスケープ) アドベントカレンダー 2021 の 12/20 (月) のエントリです。本日のエントリは、Legalscape が遭遇した SharedArrayBuffer とクロスオリジン分離の問題についてお送りします。
Legalscape (リーガルスケープ) アドベントカレンダー 2021 の 12/16 (木) のエントリです。
Legalscape (リーガルスケープ) アドベントカレンダー 2021 の 12/9 (木) のエントリです。
Legalscape アドベントカレンダー 2021 のエントリ #3 です。
GitHub Actions の timeout-minutes を明示的に指定しなかったことで minute quota 溶かしをやらかしたので作りました。
Jest でテストコードを書いていたら地味に嫌な挙動に悩まされてしまったので、その現象をメモしておきます。
最近お仕事関連で TypeScript 製の CLI アプリケーションを実装することがあり、 npm install できるようになるまでに何かとハマりがちだったので、メモをここに遺しておきます。
複数ワードで構成される一つの整数の下位 k ビットに対する population count を分岐命令なしに実現する方法について Java で考えてみました。
極力手軽に実現する方法についてメモしています。
Xor+ filter を実装するために、ランク辞書の一種である Rank9 を Java で実装したメモです。
ブルームフィルタの代替手段として利用できうる Xor filter を Java で実装して アーティファクトを Bintray で公開しました、というお話です。
(Google) Guava のブルームフィルタ実装 で String オブジェクトを効率よく扱う方法のメモです。
Gradle で管理されている Spring Boot アプリケーションのバージョン情報などをアプリケーションコードから動的に参照できるようにするためのメモです。
一般公募の枠で CfP 出してあえなくリジェクトされたテーマを、スポンサー枠で勝手に敗者復活させてお話してきました。
5 分で話しきれずあえなく時間切れの憂き目にあった資料の供養を兼ねたエントリです。
Fork/Join Parallelism in the Wild の論文を読んだメモです。
Jackson や Java における zlib 関連クラス、zlib そのものの内部実装を把握しながらスループットの最適化を試みるお話です。
EOL が差し迫っている Python 2 を使っているのがそもそもアレじゃね? と言われたらぐうの音も出ない案件です。
久々にブログシステムの環境をアップグレードしたメモです。
java.util.Random#nextInt(int bound) 相当の乱数生成を高速化しました、というお話です。
TL;DR: Airflow 1.10.3 の webhook ベースの Slack integration は致命的にバグっていて生きるのが辛い。
Gradle で管理している Kotlin プロジェクトで spring-boot-configuration-processor を利用し、@ConfigurationProperties アノテーションが付与されたクラスに対するコンフィギュレーションメタデータ spring-configuration-met...
Java 11 がリリースされてはや 1 ヶ月が経ち、また Java 8 のサポート終了を数カ月後に控えたいま、Java 11 以降の Docker イメージとしてどれを選ぶべきなのかを考えてみます。
Google Kubernetes Engine (GKE) 上で稼動させている Java アプリケーションのログをいい感じに Stackdriver Logging で閲覧できるようにするメモです。
盲目的に --add-modules の JVM オプションで解消するのはやめて、Java 11 に備えてちゃんとした対処をしてみよう、というお話です。
いまの仕事とはまったく関係ない内容で JJUG CCC 2018 Spring でお話してきました。
Java アプリケーションを Docker コンテナ上で実行しようとしたときに、ベースイメージとしてどの Docker イメージを選ぶのがよいかを考えてみます。
openjdk:9-jdk など一部の OpenJDK の Docker イメージにて InvalidAlgorithmParameterException の例外が発生する問題に遭遇したので、その解決方法をメモしておきます。
ベンダー非依存のインタフェースを提供する micrometer を使って、メトリクスを計測して外部のサービス (具体的には Datadog) に送信する方法のメモです。
最近携わっているファクトチェック関連のお仕事について デブサミ 2018 でお話する機会 を頂いたので、登壇してきました。
「何気ない str.getBytes(Charset.forName("UTF-8")).length が、JVM を傷つけた」とならないように、String オブジェクトを任意の文字エンコーディングでエンコードしたときのバイト数を、文字列の長さに依存しない (すなわち定数オーダーの) 空間計算量で算出する方法を...
OffsetDateTime#parse() が "2017-01-02T12:34:56.001+0900" のような文字列を解析できないことに腹を立てたのでこのメモを書き殴った。反省するつもりはない。
ちょっと前に巷で話題になっていた A/B テストに関する MS の論文 A Dirty Dozen: Twelve Common Metric Interpretation Pitfalls in Online Controlled Experiments をご多分に漏れず読んでいるので、自分なりに気になったとこ...
書籍をレビューさせていただいたご褒美に「仕事ではじめる機械学習」を電子的にご恵贈いただいたので、(レビューでひと通り読みはしたが、いま一度) 読んでみたメモというか個人の感想を残しておきます。
先日の エントリ にて Maven central リポジトリのインデックスを利用する話題を取り上げたので、今回はそのインデックスを具体的に Java で読み込み、走査する方法についてメモします。
第二十回 #渋谷java で、Maven central repository 上の artifact に対して依存関係の有向グラフを作り PageRank でランキングしてみる、というお話をしてきたメモです。
JJUG ナイト・セミナー 「ビール片手にLT&納涼会 2017」 で、無理矢理 Java に絡めて確率的データ構造の話をしてきたメモです。
KDD 2017 のワークショップ、2017 AdKDD & TargetAd の論文がいくつか事前に公開されていたので、読んだメモを残しておきます。
ベイズ統計における「信用区間」の一つである最高事後密度区間 (Highest posterior density interval, HPDI) について、その区間を求める方法を調べて Java で実装してみたメモです。
滅多なことがなければ使うことはないだろうけど、Commons Math の BrentOptimizer クラスを使って一変数の関数を最適化 (最小化 or 最大化) する方法をメモしておきます。
今回は commons-math3 の BetaDistribution#sample() より 最大で 4 倍以上速い ベータ分布に従う乱数生成器を実装しましたよ、というお話です。
TL;DR: Pure Java 実装な XGBoost 互換の予測専用モジュール xgboost-predictor を基に、Apache Spark 上で お手軽 に XGBoost の予測モデルをロードしたり予測を実現するモジュール xgboost-predictor-spark を作りましたよ、というお話...
Gradle を用いて Scala プロジェクトを複数の Scala バージョンをターゲットにクロスビルドする方法をメモしておきます。
以前の Macbook Pro だと、Ctrl + Shift + Power キーの同時押しでスクリーンロックできていたのだけど、Touch bar 搭載モデルの Macbook Pro (2016) だとできなくなったようなので、同等の手軽さでスクリーンロックできる代替手段を調べました、というメモです。
TL;DR: ガンマ分布に従う乱数生成器を Java で実装し、Commons Math の実装と比較して 最大で約 16 倍 (任意の形状パラメータの乱数を生成する場合) の速度効率を達成しましたよ、というお話です。
このブログで利用している Jekyll テーマの Minimal Mistakes が 4.0.4 のリリースで gem 化されていたので、最新バージョンにマイグレーションするついでに gem 化された Minimal Mistakes のテーマを利用してブログシステムを構築する方法についてまとめてみました。
fast-rng に実装した 指数分布 (exponential distribution) に従う乱数生成器についてのメモです。
xgboost-predictor 0.1.8 をリリースしたのでメモを残しておきます。
TL;DR: Java の java.util.Random#nextGaussian() や java.util.concurrent.ThreadLocalRandom のそれよりも 3 倍 以上速い正規乱数生成器 (正規分布に従う乱数生成器) を実装してみたよ、というお話です。
「一様乱数を足し合わせて平均値をとった値は正規分布っぽくなるよ」というツイートを見かけて、「それって統計的にどうなんだろう?」という疑問が湧いたので検証してみました。
HiveQL 弱者が Hive における WITH 句の実装を知らずに利用したら痛い目に遭いそうになったので、メモを遺しておきます。
Java において JSON を読み書きするライブラリといえば、いまや Jackson がデファクトスタンダードかと思います。今回はこの Jackson をハイパフォーマンスに扱う方法について、第十七回 #渋谷java で発表してきました (発表資料はこのエントリの最後に掲載しています)。
今年の 3 月ごろ に、OS X 上で XGBoost をビルドする方法についてメモを残していましたが、最新版の XGBoost ではビルド方法がまたちょこっとアップデートされているようなので、改めてメモを残しておきます。
ブログシステムとして Jekyll と Minimal Mistakes テーマを導入してみたメモです。