Smile Engineering Blog

ジェイエスピーからTipsや技術特集、プロジェクト物語を発信します

2020-01-01から1年間の記事一覧

GoでGoな非同期処理を試してみよう!

非同期処理、皆さんどうコードを書いてますか? 少し前のこと。弊社の若手(?)の方が、『非同期処理めんどくさい!』みたいなことを騒いでいたのですが、そもそも皆さんどうやって非同期処理のソースコードを書いているのだろう?とふと思ったわけです。そ…

Rustで設定ファイルを複数読み込む

Rustでの標準的・簡易的な設定ファイルの実装方法と問題点 開発したソフトの実行環境が変わるたびにコーディング・コンパイルをしなおすことのないよう、設定情報をソースコードとは別ファイルにしたり、実行時のOSの環境変数から取得したりする設計は常套手…

PlantUML の Illegal reflective access 問題

はじめに 近ごろ [PlantUML] で記述されたテキストに遭遇することが増えてきました。メインのテキストエディタとなりつつある VSCode に [PlantUML extension] をインストールしてみたところ、、

The Continuing Story of Error Correction Code 2

単一パリティ符号とハミング符号 お約束 これからエラー検出・訂正について考えていく訳ですがエラー検出・訂正をするからには何か入力があって、それをどこかに送るなり保存するなりして、受け取った、あるいは読みだしたら間違えているかもしれないからエ…

適応フィルタを作ってみる

信号処理の分野では、適応フィルタが色々な目的で使用されています。ちょっとした理由で適応フィルタのプログラムを作ってみました。 ADF【Adaptive Filter】 適応フィルタの構成 適応アルゴリズム サンプルコード:NLMSで作ってみる FIRフィルタ サンプルコ…

思考のサルベージ(その7)

各工程で心がけたい思想を掘り起こしてみる システムテスト工程末期、客先リリース直前での不具合修正と性能変化ついて考えます。 ちょっとした判定ミス SWの動作としてはよくあるやつで、メインループで、実行命令を受信し、命令内容に従いHWを設定して後は…

PyTorchで京大BERT日本語Pretrainedモデルを使ってみよう

自然言語処理で注目を集めるBERT Googleによって提案されたBERTは、自然言語処理のあらゆる分野へ流用が可能で、ますます注目を集めています。自然言語処理を学んでる方でしたら、一度は触ってみたいですよね! 今日は京大から公開されている、 PyTorch & BE…

Cannot set LC_XXX to default locale: No such file or directory

はじめに ことあるたびに目にする、 Cannot set LC_ALL to default locale: No such file or directory のメッセージ。検索率の高いエラーメッセージなので、回避策?をここに記す。

MIPSとMCPS(?)、100MIPSは100MHzで動くか?

信号処理とMISP(前編・後編)では、ソフトウェアのベンチマークとしてMIPS【Million Instructions Per Second 】が使われることについて書いてきました。 前編(信号処理とMIPS - Smile Engineering Blog) 後編(信号処理とMIPS・後編 - Smile Engineering…

The Continuing Story of Error Correction Code

はじめに 最近、思うところがありエラー検出・訂正を勉強しています。 ネットの情報や書籍を頼りにやっていますが本格的なところは、行列だ、ベクトルだ、線形代数だ、巡回符号がどうのこうので多項式がなんとかで、挙句の果てはガロアなんとかだ、ときて心…

思考のサルベージ(その6)

各工程で心がけたい思想を掘り起こしてみる 「単体テスト」について考えてみましょう。各工程のなかでは割と地味な作業ですが、この作業に割り当てられる時間は全体スケジュールに大きく響いてきます。 いつやるの? V字モデルに従えば、 機能設計 詳細設計 …

Dask備忘録

はじめに 今回は、Daskを触ってみたので使い方を備忘録もかねてまとめてみます。 Daskとは Pythonでデータ分析や機械学習をする際によく利用するライブラリがPandasですが、 Pandasで大容量データを処理すると、 データがメモリに収まらない 基本的に単一ス…