かんちゃんの備忘録

プログラミングや言語処理、ゲームなど知的好奇心のための備忘録(個人の感想)です。

正規表現マッチングの処理時間にも気をつける

本記事は Sansan Advent Calendar 2022 - Adventar の初日の記事です。 正規表現は文字列マッチングにおいて、とても便利な機能です。 基本的に各プログラミング言語でライブラリとして実装されており、利用可能です。 そんな正規表現ですが、例えば貪欲な探…

スマブラSPのオンラインの入力遅延と付き合う

本記事は、スマブラ Advent Calendar 2019の20日目の記事です。 スマブラ発売から1年が経ちましたが、全く飽きる気配がなくこの面白いゲームにどれだけ時間を使ってしまうのか、と恐怖を覚えているほどです。 オンライン*1ばかりやっていたのですが、最近は…

朝起きるためにやることやらないこと

夜型人間 Advent Calendar 2019 10日目の記事です。 全員が正確な時計を持ち、カレンダーで予定を分単位で記録でき、いつでも連絡を取ることのできる世の中では、8時集合と言えばそれは08:00(JST/UTC+0900)集合なのです。 ニワトリが泣き出したらだとか、日…

1年ぶりのXonsh

本記事は Xonsh Advent Calendar 2018の16日目の記事です。 昨年の Advent Calendar 以降使っていなかった Xonsh について約1年ぶりに触ります。 ほんと少しでも書いてくれるだけでハッピー。 ということで、よりハッピーになっていただきたいのでほんの少し…

MeCabの使い方の備忘録

Sansan Advent Calendar 2018 の1日目の記事です。 いつもお世話になっているMeCabについての備忘録です。 インストール、辞書、辞書整備、Pythonやシェルでの取り扱いまで、使い方をまとめます。 マニュアル読めば分かるよ!というかたは公式マニュアルが充…

固定回線(IPoE方式のv6アルファ)を引いた

上京してから1年半ほどWiMAXを利用していたのですが、いろいろと限界を感じたため固定回線を引きました。 高速と言われているIPoE方式にしたのでそのまとめです。 結論としては、快適な回線を得ることができました。 固定回線を引くことにしたきっかけ OCN …

サポーターズ勉強会でPythonでのスクレイピングについて登壇しました

10月10日に「Pythonで始めるスクレイピング」というタイトルでサポーターズColabで登壇しました。 発表内容の概要と振り返りを書こうと思います。 発表内容 初心者を対象に、Python言語によるWebクローリングとスクレイピングについて説明とハンズオンを行い…

Gitレポジトリ内でのNameやEmailの設定

一つのGitアカウントで、会社と個人の両方を使っています。 そうした場合に、会社のレポジトリでは会社のEmail、個人のレポジトリでは個人のEmailをコミットログに残しておきたいです。 そのための設定の備忘録です。 localで設定 単純です。 作業対象のGit…

はてなブログ記事中の外部ドメインへのリンクを新規タブで開くようにスクリプトを仕込む

はてなブログの記事をMarkdownで書いているのに、リンクを新規タブで開くようにしようと思うと、素のHTMLを書くことになります。 せっかくのMarkdownのうまみが減ってきて、重量級マークアップになってしまいます。 今回はドメインが異なる場合には、新しい…

会社の勉強会で話しました

7月18日に自社開催の勉強会で登壇しました。 記事を書こうと思っていたのですが、気がつくと1ヶ月ほど経っていました。。。 (すぐに書こうと思っていたはずなのに、ボーッとしていた) 勉強会で話したことや感想を書きます。 「自然言語処理(NLP)領域に関わっ…

サポーターズ勉強会で文書分類についてハンズオンを行いました

7月31日に「文書分類で自然言語処理に触れる」というタイトルでの講師を行いました。 このような機会をいただき、どうもありがとうございました。 本記事では、題目の理由や講演の振り返りを行います。

系列ラベリングの素性抽出

系列ラベリング問題を取り扱う際の素性抽出が、いつも複雑になりがちなので、テンプレートを書いてサクッと抽出できるよう整理しました。 どんな素性を抽出したいか 固有表現抽出を例にあげます。 以下の表は、「午前8時に東京駅で集合する。」という文を形…

Google Compute EngineでPythonのGPU環境を構築

機械学習環境として、Google Compute Engine(GCE)のGPUインスタンス上にPythonを構築しました。 また、GPU対応版のLightGBMとCatboostをインストールしました。 本記事はその備忘録となります。

ErgoDoxEZを購入した

HHKB Pro 2 type-Sの日本語配列から、左右分離型キーボードであるErgoDoxEZに移行しました。 目的だった猫背の解消は、徐々に軽減されつつあるように思います。 きっかけから購入までを紹介します。 猫背解消がきっかけ 徹底的な猫背解消に取り組むためです…

Xonshを使ってみた

【Xonsh Advent Calendar 2017の13日目の記事です。】 Xonshがいいという話を聞いて、これは使ってみないと!と思い使ってみました。 今良いんですよXonshが https://t.co/zSU1i0yxPo— ばんくし (@vaaaaanquish) 2017年11月24日 その備忘録です。

Pythonのrequestsモジュールでの文字コード対策

【Webスクレイピング Advent Calendar 2017 4日目の記事です。】 Pythonのrequestsモジュールは、 「Requestsは、人が使いやすいように設計されていて、Pythonで書かれている Apache2 Licensed ベースのHTTPライブラリです。」 と公式サイト1文目に記述され…

hugでAPIやCLIを作る

【Sansan Advent Calendar 2017 1日目の記事です。】 Pythonで、WebAPIやコマンドラインツールを作ったりするときに、ボトルネックになりがちなのが、ルーティングや引数の管理です。 hugは、ここらへんをよしなにやってくれるPythonモジュールです。 hugを…

ICDAR2017に参加した

最近 会社の技術ブログにうつつを抜かし 、個人ブログに投稿できていなかったので、久しぶりの投稿となります。 (個人ブログ、少しはがんばろう) 会社スポンサーブース対応および聴講を目的に、京都で開催されたICDAR2017に参加しました。 これまで言語処…

Hacker's GATE LT大会に参加した

ウィルゲートさん開催のLT大会に参加しました 株式会社ウィルゲートでご活躍されている先輩に誘われて、5月30日に開催されたLT大会に参加しました。 つい先日にオフィス移転されたようで、本当にきれいなオフィスでした。 本記事は、LT大会の備忘録・感想と…

人工知能学会全国大会(第31回)に参加した

2017年度 人工知能学会全国大会(第31回)に24・25日に参加した。 企業ブースでの説明と少し聴講を行ったので、備忘録としてまとめておく。 聴講 以下のセッションを聴講した。 言語処理に関連する分野を狙った。 オーガナイズドセッション「OS-22 顔文字の…

日本語教育学会の特別講演を聴講してきた

大学時代の恩師が講演すると聞いて、5月20日に早稲田大学で開催される日本語教育学会の特別講演に出向いた。 講演のタイトルは「日本語教育の現代的可能性を拓く:人工知能との対話」。 その感想を備忘録として書き留めておく。 なぜ日本語教育と人工知能? …

研究室の計算機管理者のススメ(3)ツールや言語資源の管理

ツールや言語資源の管理に挑戦しよう 少々、日があいてしまいました。 今回はツールや言語資源の管理について書きます。 ツールや言語資源の管理に挑戦しよう ツールの管理 OSを統一して、共通ディレクトリにインストールしよう Porgによるパッケージ管理 Po…

研究室の計算機管理者のススメ(2)OS

土台をつくろう! 今回は計算機環境の土台作りということで、以下の三点についてお話します。 OSの選定とインストール ディレクトリサーバー ファイルサーバー これにより、ユーザー情報およびファイルを共有することができます。 おっと、導入を読んでいな…

研究室の計算機管理者のススメ(1)導入

計算機管理は辛くて楽しい 研究をしながらの計算機管理は辛いですが、楽しいものでもあります。 計算機管理(Linuxを用いるもの)に興味がある人や、計算機管理初心者向けの内容になります*1。 計算機管理は大変ですが、Linuxに関する知識が山ほど身につきます…

Bloggerからの引っ越し

お引っ越し Bloggerからはてなブログへ引っ越した。 理由は、Markdownが楽に使えるから。 確かにBloggerでもStack Editを使えば書けたけれど、回りくどいのとファイル管理がややこしい。 作業の備忘録などを手軽に書きたいため、はてなブログへ移行した。 移…

zshで引数に指定したファイルの絶対パスを取得

引数の相対パスを絶対パスに展開する「ls test.txt」みたいに相対パスで指定することは良くあるかと思います。後から別ディレクトリで似た作業をやろうとして、過去ログを参考にするのですがパスが違うとよく分からないことがちらほら・・・本当はログに絶対…

シェルスクリプトでスクリプトのパスを取得

シェルスクリプトでスクリプト自身のパスを取得シェルスクリプトを書くときに、cd シェルスクリプトがあるディレクトリというようにカレントディレクトリをスクリプト自身のパスに変更したいときがあります。こうすることで、シェルスクリプト内ではそのシェ…

Pythonの正規表現でカタカナやひらがなを引っかける

perlだとUnicodeプロパティで\p{Hiragana}とするところです。 しかし、PythonはUnicodeプロパティをサポートしていない?ようですので、正規表現で獲得します。前提ひらがなの獲得カタカナの獲得Unicodeの確認前提Unicodeが対象です。ひらがなの獲得reモジュ…

NaiveBayse、SVMによる文書分類を試す

NaiveBayesによる文書分類、SVMによる文書分類を試しました。NaiveBayse, SVMによる文書分類フィードフォワードニューラルネットワークで文書分類ソースコードNaiveBayse, SVMによる文書分類文書分類とは与えられた文書をあるカテゴリに分類することです。 …

機械翻訳尺度METEORについて

機械翻訳の自動評価尺度にはいろいろなものがあります。 代表的なBLEUを始め、RIBESやMETEORなどがあります。評価尺度のうちの1つであるMETEORについて文献を軽く読みました。 その内容について、簡単にまとめたものです。An Automatic Metric for MT Evalua…