Smile Engineering Blog

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

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で大容量データを処理すると、 データがメモリに収まらない 基本的に単一ス…

PyTorch超入門!

PyTorchを始めてみよう! 普段、TensorFlowで深層学習のソースを書いてた私……のはずなのですが、いろいろあってPyTorchを勉強する羽目(?)になってしまいました。が、 そもそもPyTorchなんてこれまでまったく触ったことないよ〜!! これではあかん!!と…

git worktree list を少しだけ使いやすく

はじめに みんな大好き git-worktree。中でも list は使用頻度の高いコマンドですが、リスト後に cd することが多いのでこのような関数を利用しています。

初めての git-prompt

はじめに git-worktree で複数のブランチを渡り歩いていると、今どこのブランチにいるのか?どんな状態なのか?がわからなくなることが多々あります。 プロンプトにブランチ名、状態を色で表現させる方法をご紹介します。git-prompt.sh のコメントの他、下記…

信号処理とMIPS・後編

ソフトウェアとMIPS 前編(信号処理とMIPS - Smile Engineering Blog)は、ハードウェアの性能を示すMIPS【Million Instructions Per Second 】について書きましたが、今回はソフトウェアのベンチマークとして書きたいと思います。 MIPS コンピューターの処…

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

各工程で心がけたい思想を掘り起こしてみる 「ハードウェアインターフェースの確認」を取り上げましょう。 組み込み開発では、ハードウェアもオリジナルというのが普通ですね。ソフトウェア開発側の視点でハードウェア機能の確認について考えてみます。 どん…

Pythonで機械学習(kaggle入門その4)

はじめに 以前取り組んだ「House Prices: Advanced Regression Techniques」のモデルの構築、予測について、 XGBoostを試してみました。 XGBoostとは 勾配ブースティングとランダムフォレストを組み合わせたアンサンブル学習モデルのフレームワークです。 ア…

オープンソースの勉強会&イベントに参加してみよう!

突如現れたハッシュタグ #KOF2019 って一体何!?? 先週末、Twitterを何気なく覗いていると、突如『#KOF2019』などという謎のハッシュタグを見かけた方がいらっしゃるのではないでしょうか? はて、格闘ゲームのイベント!?? ……などと思われる方が圧倒的…

Marp CLI による PDF 作成

はじめに ここ最近、技術発表などのスライドは [Marp] を使って作成することが多いです。編集には Visual Studio Code の Extension([Marp for VS Code])を用いますが、commit したタイミングで PDF が自動生成されると便利なのではないかと思い、前段階と…

信号処理とMIPS

MIPS 【 Million Instructions Per Second 】 とは 信号処理や組み込みの分野では、アルゴリズムを提供するソフトウェア(ファームウェア)が、どれくらいの処理量(演算量)が必要なのか問われます。例えば、信号処理の性能を示すものには、処理された結果…

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

各工程で心がけたい思想を掘り起こしてみる 「問題解析、山積み編」です。不具合解析が1件また1件と、どんどん溜まっていくと焦りますね。たいがいそんなときは、ミスをしがちです、私は。 優先順位 システムテストチームから解析依頼がまとめて4件。焦るな…

Jupyter Notebook 便利Tips

はじめに 今回は、Jupyter Notebookの便利な機能について備忘録もかねてまとめてみます。 コード補完 ほとんどのIDEにある機能だが、変数の後の「.」で「tab」キーを押下。 関数(メソッド)の候補が表示される。

TensorFlow2.0ついにリリース!

全く新しくなったTensorFlow つい先程、TensorFlow2.0が正式リリースされたようです!! (ブログを書こうと仮眠して起きたら『rc』が『stable』に変わってました(汗) ←今何時?) 日頃からTensorFlowを使用してあれこれしている筆者としては『やっとリリ…

Raspberry Pi で Jupyter Notebook

はじめに NumPy の勉強ついでに Raspberry Pi で Jupyter Notebook を動かして見ました。備忘のために記しておきます。 ポイント Jupyter Notebook の(デフォルト)設定ファイルは jupyter-notebook コマンドで作る 起動時にブラウザを起動させないようにし…

AIスピーカーの主役はマイク

スピーカーといっても・・・マイクが重要 「モスキートーンのAIスピーカー(?)」では高周波でAIスピーカーが反応するかというテーマで考えてみましたが、今回はAIスピーカーについてもう少し調べてみました。代表的なものは、Amazon Echo, google home, LI…

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

各工程で心がけたい思想を掘り起こしてみる 「問題解析」、これを取り上げてみますか。製造工程の要ですね。 私が実際に経験したケースで考えてみます。 システム試験で問題発生 「システム試験であるシナリオを流したら、タイムアウトした。」と一報が入ま…

Pythonで機械学習(kaggle入門その3)

はじめに 前回の続き「House Prices: Advanced Regression Techniques」をやっていきます。 今回はモデルの構築、予測を行いたいと思います。

GANを試してみました!

話のきっかけ 弊社内で研修を行っているのですが、私はテーマを『AI』と設定し(普段の業務柄……)、画像認識の基本の話をしようかな〜と思って準備を進めようとしていたところ、とある会議にてこんな話題が出たんです。 「今GANとか流行ってるもんね〜。研修…

tmux のビルド

はじめに みんな大好き tmux。apt インストールだとじゃっかん古めなので、最新のリリースからビルドしてみます。

モスキートーンのAIスピーカー(?) 後編

「AIスピーカ」の音声入力 前回は、「モスキートーン」を中心に書きましたが、今回は「AIスピーカ」の音声入力がモスキートーンや高周波に反応するのか? を考えてみます。 素朴な疑問は、8kHz(サンプリング周波数16kHz)程度の帯域にしか対応していない音…

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

各工程で心がけたい思想を掘り起こしてみる 今回は「レビュー」を取り上げてみましょう。 どうすれば、有意義なレビューを実現できるか、考えてみます。 レビューの目的ってなんだっけ レビューアが、作成したレビュー資料(設計書とか、プログラムとか)をレ…

Pythonで機械学習(kaggle入門その2)

はじめに 前回の「Titanic: Machine Learning from Disaster」に続いて、 もう一つのチュートリアル「House Prices: Advanced Regression Techniques」をやっていきます。 【概要】 アイオワ州エイムスの住宅について、住宅価格を予想するもの。 訓練用デー…

そのプロジェクト、上流工程ちゃんとできてますか?

お話のきっかけ とある朝のお話。 今日の作業を始めようとPCに電源を入れ、メールをチェックしていると、 プロジェクトマネージャーからふと相談メールが届いていていることに気づきました。 その相談内容とはこんな具合。 『発注先から基本設計書が届いたけ…

git worktree list を少しだけ使いやすく

はじめに みんな大好き git-worktree。中でも list は使用頻度の高いコマンドですが、リスト後に cd することが多いのでこのような関数を利用しています。 こんなの zsh 用です。 .zshrc あたりに書いておきます。関数名は gitw としてますが好きに変えてく…

Continuing story of elementary mathematics-4

It's a small world forever とあるところに数字が1桁しか使えない国がありました。 最近、負数を補数で表しています。 1桁なので0から9までの10とおりしかありません。 一番大きい数は5.一番小さい数は6です。 あれれ? また、お城で何か起こって…