新規事業のつくり方

新しいことを学ぶことが好きです。今は機械学習や自然言語処理に興味があります。

カテゴリ: Pythonで機械学習

SQLiteの環境構築から使い方までを解説します。

RDBMSとは

RDBMSは、リレーショナルデータベース管理システム (Relational Database Management System) の略称です。リレーショナルデータベースを管理するためのソフトウェアのことを指します。代表的なRDBMSには、Oracle Database、MySQL、PostgreSQL、SQLiteなどがあります。

RDBMSの特徴は以下になります。
1. データを表形式で管理し、テーブル間の関連性(リレーション)を定義できる。
2. SQL言語を使用してデータの操作や検索が行える。
3. データの整合性を保つために、トランザクション管理機能やACID特性(原子性、一貫性、独立性、耐久性)を備えている。
4. データの同時アクセスを制御し、不整合を防ぐためのロック機構を持つ。
5. バックアップやリカバリ機能により、データの安全性と可用性を確保できる。

続きを読む

これからAzureの環境構築する人に向けて、Azure独自のネットワーク関連の用語をまとめました。

分類 サービス名 説明
仮想ネットワークの基本コンポーネント 仮想ネットワーク(Vnet) Azure 上で論理的に分離されたネットワーク環境。主に、仮想マシン同士の通信で利用。Azure Portalで、「アドレス空間」と「サブネット」を定義する。また、内部的に DHCP サーバーやサブネット間の自動的なルーティング機能を保持。
サブネット 仮想ネットワークを小さなセグメントに分割し、ネットワークの構成を管理しやすくします。
ネットワークインターフェース(NIC) プライベートIPアドレスとパブリックIPアドレスの両方を仮想マシンに割り当てる。
仮想マシン どの仮想ネットワーク、どのサブネットに配置するかを設定する。
IP アドレス パブリックIPアドレス インターネットから直接アクセスできる IP アドレス。
プライベートIPアドレス 仮想ネットワーク内でのみ使用される IP アドレス。
ネットワークセキュリティ ネットワークセキュリティグループ(NSG) Azureの仮想ネットワーク上のファイアウォール。仮想マシンのネットワークインターフェースや仮想ネットワークのサブネットに適用し、IPアドレス・Service Tagの送受信の制御、トラフィックの許可や拒否といったルールを設定する。
外部接続 Private Link グローバル IP アドレスを使わずに、プライベートエンドポイントに割り当てられたプライベート IP アドレスを経由して、仮想ネットワークから Azure PaaSにアクセスする。
プライベートエンドポイント 仮想ネットワーク内のAzure PaaSのプライベート IP アドレスに接続するネットワークインターフェース。
サービスエンドポイント プライベート IP アドレスのままで Azure PaaSのパブリック IP アドレスに接続するネットワークインターフェース。
DNS プライベートDNSゾーン 仮想ネットワーク内の名前解決サービス。
続きを読む

Fast APIの基本的な使い方を解説します。

Fast APIとは

Fast APIは、Python向けのWebアプリケーションフレームワークです。高速で、非同期処理が可能で、コードからSwagger UIが自動生成できます。

FastAPIは、リクエストとレスポンスのスキーマを定義することになります。これによって、フロントエンドエンジニアが実装の際に利用するドキュメントを簡単に自動生成でき、さらに実際にリクエストパラメータを変更してAPIの呼び出しを試すこともできます。

なお、FastAPIのディレクトリ構造は、api ディレクトリの下に schemas, routers, models, cruds の4つのディレクトリを切るのが一般的のようです。本記事では、パスオペレーション関数(記事後半で説明)を定義するrouters配下のコードのみ実装します。
続きを読む

WSL2のUbuntuで独自の証明書を登録する方法をまとめました。

WSL2のインストール

WSL2は、Widows上でLinuxを動作させるための実行環境です。Windows Subsystem for Linux 2の略称になります。WSL1もありますが、基本はWSL2を選んでおけば大丈夫です。

インストール方法は、PowerShellを管理者として実行し、以下のコマンドを叩くだけです。
wsl --install

後は、PCを再起動し、ユーザ名とパスワードを設定すれば完了です。

続きを読む

機械学習界隈で、最強アルゴリズムの一角を占めていたランダムフォレスト。ディープラーニングが登場した後急速に存在感をなくすものの、その利便性と強力さから多くのデータサイエンティストが現役利用中。

scikit-learnでのランダムフォレスト、分類モデルと重要度評価の実装方法まとめました。

決定木の問題点

決定木は、上から順に条件分岐を作って分類モデルを作る手法です。ルールが可視化できる、正規化や標準化などのデータ加工が不要など、素晴らしいアルゴリズムです。
しかし、決定木は過学習を起こしやすいという問題点がありました。

前の記事:Pythonの決定木分析できのこ派とたけのこ派を予測する続きを読む

↑このページのトップヘ