• 日本語
    • English (英語)
Avinton JapanAvinton JapanAvinton JapanAvinton Japan
  • サービス
    • Avinton Data Platform
    • エッジAIカメラ
      • 自動車ナンバープレート自動認識システム
    • プライベートクラウド
    • AIサービス開発
    • AIカメラ/画像解析無料体験版
  • 最新情報
    • ニュースリリース&イベント情報
    • 技術ブログ&インタビュー
  • アカデミー
    • Avintonアカデミー
    • Academy on Campus
    • Academy with Platform
  • 採用情報
    • Avintonジャパン 採用ページ
    • プロジェクトコーディネーター職紹介
    • 求人一覧
    • よくある質問
  • 企業情報
    • 会社概要
    • 代表からご挨拶
    • SDGsへの貢献
  • お問い合わせ

scikit-learnとは

  • Python3.8 と OpenCV のインストール (Ubuntu20.04LTS)
  • ルーティング
  • postgreSQLへのshp fileのimport
  • NAT
  • データベースの命名規則
  • Avinton Academy コンテンツガイド
  • Docker Compose(Nginx + Flask + MySQL)演習
  • PostGIS exercise
  • Apache Superset maptoolの使い方
  • 三目並べ – 2.〇×を交互にゲーム盤に入るようにしよう
  • Docker 概要とセットアップ
  • 三目並べ – 3.勝敗がつくようにしよう
  • Docker Engineのubuntu上へのinstall
  • クリーンコード(Clean Code)
  • EC2からS3へ自動でぽいぽいアップロードするスクリプトの作成
  • 三目並べ – 4.「スタート」「リセット」ボタンをつけよう
  • 三目並べ – 5.先攻後攻を決めて、コンピュータ対戦にしよう(前編)
  • Apache Zeppelin 基本機能
  • インフラストラクチャー(サーバー、コンポーネント、RAID)
  • Ruby on Rails を MySQLでセットアップ
  • 機械学習入門者向け Support Vector Machine (SVM) に触れてみる
  • AWSアカウントの作成と必ずやるべきセキュリティ対策
  • Scala 基礎
  • VLAN
  • Apache Spark 基礎
  • scikit-learnとは
  • Ruby on Railsによる簡単なウェブアプリケーション
  • 正規表現とパイプ
  • 機械学習エンジニアに必要なスキル
  • Docker, Kubernetesの学び方について
  • NVIDIA Cumulus VX + GNS3でBGPネットワークのシミュレーション
  • Ubuntuの基本設定
  • PostgreSQL Setup
  • REDIS
  • Amazon EC2 インスタンスの初期設定をしよう
  • 軽量版Kubernetesディストリビューション – k0s クラスターの構築
  • GNS3のセットアップ
  • viエディタ
  • AWSのEC2インスタンスでWordPressブログを公開してみよう
  • Pythonでデータベースを操作する
  • Python2.7とOpenCVのインストール
  • ファイル操作コマンド
  • SampleアプリケーションのKubernetes上へのデプロイ
  • OpenCVのテストプログラム
  • グループとユーザー
  • Pythonで画像を分類するプログラムを作成する
  • AWS CLIをインストールしてコマンド操作しよう
  • Virtualisation and Container (仮想化とコンテナ) – Ansible, Docker and Kubernetes
  • Windows Server 2012 R2 Hyper-V
  • Spark SQL エクササイズ
  • 困った時に使うコマンド
  • SparkMLによるKaggle Titanic生存者予測
  • PacketTracerのセットアップ
  • 一般グループのユーザーとグループ
  • AWS Route 53を使って独自ドメインのWebページを表示させてみよう
  • Kubernetesクラスター上へのOpenVINOモデルサーバーを使用したサンプルアプリケーションのデプロイ
  • プライバシーポリシー
  • VMware ESXi サーバー構築
  • 三目並べ – 6.先攻後攻を決めて、コンピュータ対戦にしよう(後編)
  • フロントエンド開発のための環境構築
  • APIのデモンストレーション
  • CISCO 1800ルータセットアップ
  • ファイル検索コマンド
  • ESXi – Switchの追加とVLAN
  • 質問
  • 仮想化環境のディスク容量を拡張する
  • ユーザー権限とアクセス権
  • データ分析基礎 – Part1
  • 三目並べ – 0.導入
  • テキスト処理
  • ESXi – VyOS
  • データベースへのデータロード
  • 機械学習概要1
  • 機械学習入門者向け Naive Bayes(単純ベイズ)アルゴリズムに触れてみる
  • CCNA
  • YOLOv5を用いた物体検出
  • ESXi – 小規模ネットワーク 構築
  • ファイル管理
  • Webアプリ開発に欠かせないGoogle Chrome DevToolsの基本
  • 機械学習入門者向け ChainerRLでブロック崩しの学習
  • AWS CLIを使ってEC2のファイルをS3へアップロードしよう
  • Apache NiFiの環境設定
  • CSV import & export – Node.js, mySQL – 1
  • 機械学習入門者向け ランダムフォレストによる Kaggle Titanic生存者予測
  • 機械学習概要2
  • NodeJSでWebアプリケーション開発 – Socket.IO編
  • Gitとは
  • CSV import & export – Node.js, mySQL – 2
  • Apache NiFi データパイプライン基礎
  • PCからルータ、スイッチへのSSH接続設定
  • データ分析基礎 – Part 2
  • 【Python入門】Python Numpy チュートリアル
  • SQL 便利な関数
  • PostgreSQLによるデータ分析
  • Apache NiFi Exercise
  • 機械学習入門者向け 分類と回帰の違いをプログラムを書いて学ぼう
  • NodeJSでWebアプリケーション開発 – React編
  • Pythonによるマルチスレッドプログラミング実践
  • Apache SparkとApache Zeppelinの概要と環境構築
  • Certbotを使ってSSL証明書を発行し、HTTP通信を暗号化しよう
  • DockerとApacheを使ってWebサーバーを構築しよう
  • NodeJSでWebアプリケーション開発 – React編
  • フロントエンドのWeb開発について
  • Redux基礎 – 主要な概念と用語
  • Apache Superset 概要と環境構築
  • AmazonEC2とVPCでネットワークとサーバーを構築しよう
  • AWS入門者向け 初心者が最初に理解すべきEC2とVPCの基本的な用語解説
  • Linuxとは
  • Pandasによる構造化データ分析
  • Apache Superset 基礎
  • Dockerコンテナイメージの最適化/ベストプラクティス
  • ダイナミックルーティング
  • PostgreSQL – Python – Apache – Bootstrap
  • 三目並べ – 1.ゲーム盤を作ろう
Home Avintonアカデミー scikit-learnとは
scikit learn

scikit-learnはオープンソースのPython機械学習ライブラリです。
このライブラリには教師あり学習や教師なし学習に関するアルゴリズムが用意されているほか、
トイデータセットと呼ばれるサンプルデータセットが用意されているためすぐに機械学習を始めることができます。

scikit-learnで使えるアルゴリズム

回帰

過去の購買データや来場者数など連続する値に対して将来の値を予測することが可能です。
例えば、あるテーマパークの過去の来場者数の傾向をもとに向こう一週間の来場者数を算出することを単回帰分析、
過去の来場者数以外に天候や景気など複数の要因を追加して将来値を予測する重回帰分析などがあります。

分類

文字通り、あるデータがAに該当するかBに該当するか分類することです。
回帰と同様に予測などに役立つアルゴリズムですが、回帰がテーマパークに何人行くか数値を予測する一方、 分類はテーマパークに行きたいor行きたくないの二者択一を予測するアルゴリズムです。

クラスタリング

似ているデータごとにグループ分けすることです。 例えば、SNSに掲載している写真やコメントの傾向からクラスタリングを行い、同じグループに所属する人が 気に入ったものをレコメンドすることでSNSの利用満足度向上やSNS経由の商品購買率UPに繋がるでしょう。 分類と似た手法ですが、大きく異なるのは分類は正解データを学習することでグルーピングする「教師あり学習」である一方、 クラスタリングは正解データはなく単純にデータ間の類似度で分ける「教師なし学習」を採用している点です。

次元削減

元データの意味を保ったまま次元数を減らすアルゴリズムです。
例えば、あるクラスの幅跳びと走り高跳びの結果を跳躍力というデータとしてまとめることで二次元のデータを一次元にまとめることができます。
次元削減はデータ量が減るため計算コストの削減ができるほか、高次元ではできなかったデータの可視化が可能になる一方、データの具体性は元データに劣る点に注意が必要です。

アルゴリズムの選択

scikit-learnには、このように様々なアルゴリズムが用意されているため手軽に試すことができます。
また、下図にあるようにそれぞれの状況に応じてどのアルゴリズムを選択するべきかを示したチートシートと呼ばれるものが存在するため、 機械学習に関する深い知識を有していない人でも適切な手法を使うことができます。

アルゴリズムの選択Choosing the right estimator – scikit-learn

機械学習の流れ

1. データセットの準備
2. 学習用アルゴリズムを選定
3. 特徴量の選択・加工
4. モデルのトレーニング
5. 訓練済みモデルによる検証/評価
6. ハイパーパラメータの設定

scikit-learnチュートリアル

今回のチュートリアル及び演習はGoogle colaboratory上で行います。
まずは、新しいノートブックを作成します。

必要なライブラリをインポートします。

1
2
3
4
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

サンプルデータを作成します。

1
2
3
4
# 特徴量(入力)
X = np.array([[1], [2], [3], [4], [5]])
# ターゲット(出力)  
y = np.array([2, 4, 6, 8, 10])  

先ほど作成したデータを学習用データ(train data)と検証用データ(test data)に分割します。
学習用データと検証用データは一般的に4:1程度の割合で分割します。

1
2
# データの分割
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

LinearRegression()で線形回帰モデルをインスタンス化します。
その後、fit()を使ってモデルをトレーニングデータに適合させます。

1
2
3
# 線形回帰モデルの構築と訓練
model = LinearRegression()
model.fit(X_train, y_train)

検証用データを使用して予測を行ったあと、最後に精度を確かめるためにMSE(mean squared error:平均二乗誤差)を算出します。
MSEは0に近いほど誤差が少ない(=精度が高い)と判断できます。

1
2
3
y_pred = model.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print("Mean Squared Error:", mse)

演習

scikit-learnにはToy datasetと呼ばれる機械学習をすぐに始めてみたい人向けのデータセットが用意されています。
この演習では、diabetes dataset(糖尿病データセット)を使って年齢、性別、BMI、血糖値などの10個の特徴量から1年後の糖尿病の進行度(ターゲット)を予測する線形回帰モデルを構築します。

1. 各特徴量とターゲット(目的変数)の相関を下図のようなヒートマップとして可視化してみましょう

各特徴量とターゲット(目的変数)の相関を下図のようなヒートマップとして可視化してみましょう

2. すべての特徴量をもとに一年後の糖尿病の進行度を予測します。
線形回帰モデルを構築して決定係数を算出し、予測値と実測値の関係を下図のようなチャートで表示しましょう

すべての特徴量をもとに一年後の糖尿病の進行度を予測します

あなたも、Avintonでこのような最先端技術を習得し活用してみませんか?

社員の成長を導きながら、AIやビッグデータなどの最先端技術をプロジェクトに活用していくことが私たちのビジョンです。Avintonの充実した技術研修でスキルアップを図り、あなたのキャリア目標を一緒に達成しませんか?

採用情報

採用情報

採用情報

Categories

  • 相互学習
  • 社員インタビュー
  • 学習&資格取得
  • 技術解説
  • イベント告知
  • 学内説明会&講義
  • 産学連携
  • 就職活動
  • イベントレポート
  • その他
  • 技術ブログ&インタビュー
  • mainpage
  • New Graduates Interviews
  • 中途エンジニア
  • カテゴリーなし
  • ニュースリリース&イベント

Avinton SDGs

SDGsへの貢献

Search

タグ

5G AI AIエンジニア Apache Apatch AvintonAcacemy Avinton データプラットフォーム CKA DX istio Kubernetes Kunernetes LTE MVI試験 PostgreSQL SDGs SES Spark TensorFlow イベント告知 インターンシップ キャリア サイバー攻撃 サーバークラスター システムエンジニア スタートアップ セキュリティエンジニア セミナー データ データベース バックエンド ビックデータ ベテランエンジニア マイクロサービス 勉強会 大学&専門学校 学習 就職活動 強化学習 教育 環境構築 田中研之輔 経団連 講義 顔認証
© 2023 Avinton | All Rights Reserved | プライバシーポリシー
  • サービス
    • Avinton Data Platform
    • エッジAIカメラ
      • 自動車ナンバープレート自動認識システム
    • プライベートクラウド
    • AIサービス開発
    • AIカメラ/画像解析無料体験版
  • 最新情報
    • ニュースリリース&イベント情報
    • 技術ブログ&インタビュー
  • アカデミー
    • Avintonアカデミー
    • Academy on Campus
    • Academy with Platform
  • 採用情報
    • Avintonジャパン 採用ページ
    • プロジェクトコーディネーター職紹介
    • 求人一覧
    • よくある質問
  • 企業情報
    • 会社概要
    • 代表からご挨拶
    • SDGsへの貢献
  • お問い合わせ
  • 日本語
    • English (英語)
Avinton Japan