EurekaMoments

新米エンジニアが一人前を目指す修行の日々を記していくブログです。

読書メモ: モダンC言語プログラミング

  • はじめに
  • メモ

はじめに

自分の職場では、プログラムの設計や開発環境構築、コーディングやテストなどで、非効率なやり方だと感じる部分がちょいちょいあり、そろそろ本格的に改善したいという思いが強くなっています。そこで、改善案の参考にしようとこの書籍を読みました。

今回の記事は、これを読みながらTwitter上でメモしたものになります。

続きを読む

機械学習に必要な数学の基本についての勉強メモ: ガウス関数編

  • はじめに
  • 参考書籍
  • ガウス関数とは
  • 2次元への拡張
  • 関数の形を表すパラメータを加えた2次元ガウス関数
  • サンプルコード

はじめに

前回は、指数関数と対数関数の応用編としてシグモイド関数・ソフトマックス関数編を記事にしました。

www.eureka-moments-blog.com

今回は、このシリーズの最後として、ガウス関数について勉強した事のメモになります。

参考書籍

本記事の内容は、下記の書籍を読んで要点を抽出し、メモしたものになります。

Pythonで動かして学ぶ! あたらしい機械学習の教科書

Pythonで動かして学ぶ! あたらしい機械学習の教科書

続きを読む

PlantUMLで描いたUML図をEnterprise Architectからインポートして共有する方法

  • はじめに
  • Enterprise Architect(EA)とは
  • PlantUMLの図をEAからインポートする手順
    • 1. PlantUMLでUML図を描く
    • 2. 作成した図をXMI形式でエクスポートする
    • 3. EAからXMIファイルをインポートする
    • 4. インポートされたUML図を確認する
  • まだまだ知らないEAの便利機能

はじめに

ソフトウェア設計におけるUML図を描くツールとして、近頃はPlantUMLを用いるのが流行りのようですが、それと双璧を成すツールとして、Enterprise Architect(通称EA)という有償の設計開発支援ツールがあります。GUI操作で簡単にUML図を作成する事ができ、自分がいる会社でも導入されているのですが、テキスト形式のPlantUMLと違ってバイナリ形式で保存されるので、作成後の管理という面では不便に感じていました。
そこで最近は、下記の記事のようにPlantUMLでテキストベース作成し、その後の管理を効率化する方法を社内で布教しているのですが、長年EAを使い続けている人達には、「作成した図を共有することができない」「そもそもEAを使う事が会社のルールだろ」と言われ、正直受けが悪いです。

www.eureka-moments-blog.com

「何かいい方法はないものか」と悩んでいたところ、PlantUMLとEAが共通で持つ機能として、「作成したUML図をXMI形式というテキストファイルに変換する」というものがある事を知りました。

ja.wikipedia.org

続きを読む

機械学習に必要な数学の基本についての勉強メモ: シグモイド関数・ソフトマックス関数編

  • はじめに
  • シグモイド関数とは
  • シグモイド関数の微分
  • ソフトマックス関数とは
  • ソフトマックス関数の微分
  • ソフトマックス関数とシグモイド関数の関係
  • サンプルコード

はじめに

前回の記事では、機械学習に必要な指数関数と対数関数の基本について勉強した事を書きました。

www.eureka-moments-blog.com

その応用として、今回の記事では、シグモイド関数・ソフトマックス関数について勉強した事のメモを書こうと思います。参考書籍は、例によって下記を参考にしています。

Pythonで動かして学ぶ! あたらしい機械学習の教科書

Pythonで動かして学ぶ! あたらしい機械学習の教科書

続きを読む

CUnitを使ってC言語プログラムのユニットテストを実行する方法

  • はじめに
  • CUnit for Mr.Andoについて
  • CUnitの導入からサンプル実行までの流れ
    • 1. CUnitのダウンロード
    • 2. ダウンロードされるファイルの内容
    • 3. CUnitの使い方
    • 4. テストの対象とするコードを書く
    • 5. テストコードを書く
    • 6. ソースコードのフォルダ構成を決める
    • 7. Makefileを書く
    • 8. テストコードのmakeと実行
  • 感想
  • サンプルコード

はじめに

以前、C言語で書いたプログラムをPythonから呼び出してユニットテストを実行する方法として、下記の記事を書きました。

www.eureka-moments-blog.com

これはこれで良いのですが、Cythonのコードを書いてビルドできるようにするまでの準備が面倒だなとも感じており、もっと簡単に実行できる方法はないか調べてみました。その結果、「CUnit for Mr.Ando」というフリーのフレームワークを利用して、C言語だけでユニットテストが出来る環境を作ることが出来ることを知りました。
今回見つけた上記の方法を、簡単なサンプルプログラムを作って試してみたので、そのやり方について紹介しようと思います。

経験ゼロでもできるプログラミング現場の単体テスト

経験ゼロでもできるプログラミング現場の単体テスト

続きを読む

機械学習に必要な数学の基本についての勉強メモ: 指数関数・対数関数編

  • はじめに
  • 前回までの記事
  • 指数関数とは
  • 対数関数とは
  • 対数の便利さ
  • 機械学習における対数
  • 関数の最大値、最小値を探す場合
  • 指数関数の微分
  • 対数関数の微分
  • サンプルコード

はじめに

前回の投稿から間が空いてしまいましたが、また下記の書籍を読みながら、機械学習に必要な数学の基礎について勉強を再開しました。

Pythonで動かして学ぶ! あたらしい機械学習の教科書

Pythonで動かして学ぶ! あたらしい機械学習の教科書

今回の記事では、指数関数・対数関数について勉強した際にメモしたことを書いていきます。

前回までの記事

前回までに書いた、「ベクトルと微分編」「行列編」は下記になりますので、合わせてどうぞ。

www.eureka-moments-blog.com

www.eureka-moments-blog.com

続きを読む

ソフトウェアのモジュール設計について学べる良記事リンク集

  • はじめに
  • モジュール化について考えてみたときのまとめ
  • モジュール化設計について
  • 設計の原則: モジュール化

はじめに

最近の自分のソフトウェア設計業務にて、機能設計とモジュール設計について考えさせられる機会がありました。今回の問題では、機能設計の後に続くプロセスとしてモジュール設計があるのですが、これらは両者の違いが曖昧であり、機能設計の中で細かい機能の洗い出しや、扱うデータ構造の定義、クラス定義などを行っていると、モジュール設計って何のためにあるのか正直分からなくなります。
そこで、一般的なモジュール設計、いわゆるモジュール化の定義とは一体なんなのかと調べたところ、いくつか参考になる良記事が見つかったので、それらのリンクと、読んで学んだ事をメモしておこうと思います。

組込みソフトウェア開発のための構造化モデリング 要求定義/分析/設計からソースコード作成までソフトウェア開発上流工程の基本を構造化手法に学ぶ

組込みソフトウェア開発のための構造化モデリング 要求定義/分析/設計からソースコード作成までソフトウェア開発上流工程の基本を構造化手法に学ぶ

  • 作者: SESSAME WG(セサミワーキンググループ)2
  • 出版社/メーカー: 翔泳社
  • 発売日: 2006/01/24
  • メディア: 単行本(ソフトカバー)
  • 購入: 22人 クリック: 139回
  • この商品を含むブログ (22件) を見る

続きを読む