Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

初めに 機械学習の教科書では(紙面の都合上やらなさそうな)様々なパラメータを変えた際にどのように変化するのかについて、SVCを用いてやってみました。 ちなみに使用したのは0~9までの数字が書かれたDigitsの画像データ。 Digitsのデータについてこちらで可視化等は行ってみています。 LinearSVC まずはsvm.LinearSVCで正則化定数Cのチューニングを行ってみたいと思います。カーネル法を試す前に線形のSVMから始めた方が良いらしいです。結果はロジスティクス回帰分析とだいたい同じような感じになります。 svm.LinearSVCはLinearに特化したアルゴリズムのため、svm.SVCよりも高速で動くとのこと(未検証) 交差検証は10分割で行い、正答率の平均値を今回はscoreとして、プロットしてみました。(本来はテストデータを訓練データを分けてから交差検証した方が、よいで
LinearRegression# class sklearn.linear_model.LinearRegression(*, fit_intercept=True, copy_X=True, n_jobs=None, positive=False)[source]# Ordinary least squares Linear Regression. LinearRegression fits a linear model with coefficients w = (w1, …, wp) to minimize the residual sum of squares between the observed targets in the dataset, and the targets predicted by the linear approximation. Parameters:
ログの監視といえば、特定のキーワード(例えばErrorという文字列とか、Warningという文字列とか)をベースに監視ツールで検知させるといったことを実施するのが一般的かと思います。 ただ、この対処をするには、どういったログが出力されるのかを予め知っておく必要があり、その条件を決めるのもなかなか大変なのではないでしょうか。 そのようなケースに対し、もう少し分析技術の要素を取り入れて異常な状態に気づけるようにするアプローチを考えてみます。 試したこと 今回試したのは、ログをgensimのdoc2vecでベクトル化し、k-meansでクラスタリング。 さらにそれを時間毎に区分けして各ログパターンの発生件数をヒートマップ化してみます。 サンプルプログラム Python3で、gensim、matplotlib、sklearnのKMeansを利用しています。 # !/bin/env python f
5. Dataset loading utilities¶ The sklearn.datasets package embeds some small toy datasets as introduced in the Getting Started section. To evaluate the impact of the scale of the dataset (n_samples and n_features) while controlling the statistical properties of the data (typically the correlation and informativeness of the features), it is also possible to generate synthetic data. This package als
train_test_split# sklearn.model_selection.train_test_split(*arrays, test_size=None, train_size=None, random_state=None, shuffle=True, stratify=None)[source]# Split arrays or matrices into random train and test subsets. Quick utility that wraps input validation, next(ShuffleSplit().split(X, y)), and application to input data into a single call for splitting (and optionally subsampling) data into a
API Reference# This is the class and function reference of scikit-learn. Please refer to the full user guide for further details, as the raw specifications of classes and functions may not be enough to give full guidelines on their use. For reference on concepts repeated across the API, see Glossary of Common Terms and API Elements.
Pythonでは、pickle(英:漬け物)という仕組みを利用することで、オブジェクトをシリアライズ化できます。これにより、構造をもつデータの転送や、永続化——データを生成したプログラムが終了してもそのデータを存続させること——が可能となります。 pickleを利用するよう自分で設計することもあるでしょう。あるいは、ライブラリのマニュアルにpickleを利用するよう記載されていることもあるでしょう。例えば、scikit-learnでは、pickleか、joblib拡張版のpickleを利用してモデルを永続化するよう記載があります。機械学習つながりで言えば、書籍の付録として学習済みの重みがpickleで提供されることもあるでしょう。 pickleは、その利便性と、公式ドキュメントやPythonチュートリアルにおける、物騒な警告で有名です。 警告:pickle モジュールはエラーや不正に生成さ
コンテンツ抽出のdom-basedモデルとは、domの構造を特徴量として利用するコンテンツ抽出の手法です。今回は、web2textというツールで使われている特徴量を、RandomForestで実行します。 特徴量一覧 上記特徴量のうち、いくつかを利用します。 データの準備 記事urlの一覧から取得したhtmlファイルから、以下を取り出します。 テキスト要素を持つノードのテキスト テキスト要素を持つノードのxpath そのテキスト要素が抽出したいコンテンツか否か 以下がcsvの例です。(ただし、このcsvは以前の記事のPascal VOCデータから生成しているため、抽出したくないコンテンツも若干含まれています。) #text,label,xpath "We use cookies to ensure that we give you the best experience on our we
機械学習 機械学習には様々な種類のものがあります.大きく分けると以下のように なります. 教師あり学習 教師なし学習 その他(強化学習など) 今回はロジスティック回帰を使うために簡単に教師あり学習について紹介したいと思います. 教師あり学習(回帰) 教師あり学習ではデータと正解ラベルの2つの情報が渡されます. 大量のデータから「このデータの正解はこのラベルであった」というパターンを見つけ出して,正解ラベルのないデータに対してもそれを予測するものになります. 教師あり学習はさらに正解ラベルの種類によって回帰と分類に分けられます. 回帰は,正解となる値が連続した数値となるものです. よく見られる例として: ビールの売り上げは気温に影響すると言われています. この情報を元に実際の売り上げと気温のデータを利用して機械学習を行うことで、天気予報から得た翌日の気温から売り上げを予測することが可能になり
初めての機械学習 初めて機械学習を行う方向け、初めての機械学習特集です。 今回は機械学習とはの概要と開発環境について紹介していきます。 機械学習とは データから知識を引きだし活用すること。 大きく教師あり学習と教師なし学習の2種類ある。 教師あり学習 ユーザーが入力データと望ましい出力のペア群をアルコリズムに与える。このペアのデータを「教師」としてアルコリズムは出力を生成するからである。詳しくは次回紹介。 教師なし学習 ユーザーが入力データのみをアルコリズムに与える。よって出力結果はどういったものになるか、わからない。詳しくは第3回で。 開発環境 Visual Studio Code マイクロソフトが開発しているソースコードエディタ。 Windows、Mac OS、Linux上でも使え、マークダウン エディタとしても使える優れもの。 多言語対応、拡張機能もあり、Pythonのデバックを可能
初めに またdigitsネタ、一回目はこちら。同じデータをいろいろな方法を使用して、ごちゃごちゃ分析するのはデータ分析の基本中の基本(?)なので…。 Random Forestは、パラメータの寄与率まで出せるという利点があります。今回はdigitsをRandom Forestで学習させてみて、一回目で分析したPCAと比較していきたいと思います。 Random Forestを使ってみる # -*- coding: utf-8 -*- from sklearn import datasets from sklearn import ensemble from sklearn import metrics from sklearn import decomposition from sklearn.model_selection import train_test_split import ma
MLflow MLflowはオープンソースで、機械学習処理のライフサイクル管理を行うソフトウェアです。Kubernetesで管理している環境だとKubeflow、AWSならSageMakerとか、この分野の用途で利用できるものはいろいろあるかと思いますが、OSSでいろんなシーンで適用できそうです。 MLflow 現時点(2018/10/03)でバージョン0.7というのがリリースされており、絶賛開発中のようです。 MLflowは、要素として3つで構成されています。 MLflow Tracking : 学習の実行履歴管理 MLflow Projects : 学習処理の実行定義 MLflow Models : 学習モデルを用いたAPIサーバの実行定義 MLflow Tracking 学習モデル生成時に、生成されたモデルの実体や学習モデルの評価結果のスコア情報等を記録し、履歴管理する機能です。 学
前回までは属性に対しての解析だったので今度は画像を分類わけしてみることにした。 といっても、右も左もわからない状態がどうやって進んだのか?という参考になればという程度のメモである。 犬猫 試してみたのはこっちのコンペのデータ https://www.kaggle.com/c/dogs-vs-cats 犬か猫かを分類しようぜというやつだ。 データ確認 DLしながらデータセットの中身を確認 The training archive contains 25,000 images of dogs and cats. Train your algorithm on these files and predict the labels for test1.zip (1 = dog, 0 = cat). といっても、データを確認するも何もない。 画像を犬(1)か猫(0)に分類しろってだけな模様。 どこか
scikit-learnでは外れ値検知の手法の1つであるLOF(Local Outlier Factor)が提供されていますが、versionが0.19以前ではテストデータに対する正常データ・異常データの判定ができませんでした。version0.20からテストデータに対する正常データ・異常データの判定機能が実装されましたので、そちらを紹介します。 使い方 One Class SVMのようなscikit-learnに実装されている外れ値検知の手法では、正常データが大多数であるような訓練データを与え、fitメソッドで学習をおこないます。学習済みのモデルのpredictメソッドを使うことで、テストデータが正常か異常かが判定されます。LOFを使う場合にも同様の流れになりますが、fitメソッドを使うときにちょっとだけ違いがあり、novelty=Trueという引数が必要になります。例えば、次のように訓
目的 交差検証について調べたりコード化してみる そもそもの発端としては 前回の訓練データだと90ぐらいのスコアになったのをアップロードしてみたらちょこっとしかUPしてなかったということである。 以下のようなろくでもない検証にしかしてなかったのでダメだろうとは思っていたが ここまで差が出るとはちょっとびっくりであった。 なので、調べてみることにした。 [過剰適合] https://ja.wikipedia.org/wiki/%E9%81%8E%E5%89%B0%E9%81%A9%E5%90%88 [交差検証] https://ja.wikipedia.org/wiki/%E4%BA%A4%E5%B7%AE%E6%A4%9C%E8%A8%BC ググってみた。 「モデルの説明変数は必要以上に増やせば増やすほど学習データのシグナルだけでなくノイズにまでフィットしてしまう」 訓練データに最適化しすぎ
ハイパーパラメータのチューニング 前回の続き 交差検証を調べていたら以下の記事に遭遇 https://qiita.com/tomov3/items/039d4271ed30490edf7b これの後半にモデルに対するパラメータのチューニングの仕方が載っていたので、それを参考に今回は**「ハイパーパラメータのチューニング」**をやってみることにする。 ググる https://blog.amedama.jp/entry/2017/09/05/221037 いくつかググってみたのだが、ここが自分には一番わかりやすかった。 つまるところ、それぞれのモデル?を作成する際のパラメータについて、 いっぱい試したいからそれを設定できるようにしたぜってことの様子。 なので、これだけ理解しても無駄だった。 それぞれのモデルに食わせたいパラメータを理解しないと意味がないと理解。 とりあえず決定木とSVMのパラメ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く