新規事業のつくり方

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

「今年中にあなたが結婚できる確率は4%です。しかし英会話スクールに入ることで、結婚できる確率が2%上がります。」
「あなたは3年後にリストラされる確率は65%です。しかし今からpythonを学ぶことで、リストラされる確率が30%下がります。」

ロジスティック回帰分析は、分類モデルを作るアルゴリズムです。そして、分類結果の発生確率を予測します。例えば「ガンになる確率 30%」 のような予測ができます。

また、モデルの中身を数式として出力できるので、ディープラーニングのようにブラックボックスになりません。そのため、企業データの分析レポートなどでは、ロジスティック回帰とディープラーニングの2種類の手法で分析して比較するということがよく見られます。

一方、ロジスティック回帰は、線形分離可能なクラスに対してのみ高い性能が発揮されます。非線形の問題はうまく学習できないという重回帰分析と同じ問題を抱えています。
続きを読む

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

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

決定木の問題点

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

参考記事:人工知能できのこ派とたけのこ派を予測する【python決定木】続きを読む

きのこ派とたけのこ派を予測する人工知能を作りましたのでご活用ください。pythonとscikit-learnで決定木を作りました。

決定木分析は、機械学習界隈で最も利用されているアルゴリズムです。決定木は、条件分岐のツリーを作り、階層的にデータを分割することで、モデルを作ることができます。

過去記事:AIエンジニアが教えるゼロから機械学習の勉強法

続きを読む

データサイエンスや機械学習では、グラフ作成ツールとしてmatplotlibが大変利用されています。なぜmatplotlibを使うのか、なぜグラフを作成するのか、その理由とグラフの作成方法をまとめました。

過去記事
※pandas編:python機械学習でなぜpandasが利用されているのか
※scikit-learn編:python機械学習(AI)のデータ処理(pandas/scikit-learn)

matplotlibとは

matplotlibは、グラフ描画のためのpython用ライブラリです。データをいろんなグラフで可視化することが出来ます。折れ線グラフや散布図などたくさんのグラフが用意されています。

グラフの持つ力はすごいです。グラフは事実を分かりやすく人に伝えることが出来ます。例えば、横軸にビタミンCの摂取量、縦軸に肌の健康度を取り、棒グラフを作成したところ、右肩上がりなグラフができたとします。そのグラフを広告で大々的に打てば、明日には女性陣がビタミンCを買い込んですぐに売り切れてしまうでしょう。事実を目で見える形で示すこと、これがグラフの持つ力です。

matplotlibは、そんなグラフを簡単に無料で作ることが出来ます。
続きを読む

機械学習ではpandasが非常に利用されています。なぜpandasを使うのか、その理由とpandasの基礎的なデータ処理をまとめました。

Pandasとは

pandasは、エクセルのようにデータを加工したり解析できるpython向けライブラリです。pythonのスクリプトコードの先頭行でインポートすると、pandasを利用することが出来ます。

pandas の基本的なデータ構造はDataFrame(データフレーム)です。DataFrameとは、Excelと同じデータ構造で、二次元のテーブルのことです。つまり行と列をもった配列データです。DataFrameの列データに付与するラベルをカラム(columns)と呼びます。

続きを読む

機械学習のハードルは、どんどん下がっています。理由は、pythonとscikit-learnが簡単だからです。
機械学習の第一歩は、pythonの理解です。この記事では、完全初心者向けに、よく利用するpythonの関数をご紹介します。いわば機械学習のSTEP1です!

pyhonとは

pythonはシンプルなプログラミング言語です。最も習熟しやすい言語のひとつです。また便利なライブラリがたくさんあります。

pandas:pandasは、エクセルのようにデータを処理したり分析できる。
NumPy:高速で行列計算ができるライブラリ。リストと勘違いしやすいので注意。行ごとに列数が異なるような2 次元配列などは扱えません。
scikit-learn:機械学習の機能が豊富。
続きを読む

「初心者だけど機械学習を学びたい」「ゼロからAIを作れるようになりたい」という方向けに、最短で機械学習を習得する方法を書いてみました。

目次

やっぱり機械学習ツールはPythonとscikit-learn
機械学習の実装に必要な知識
機械学習のプログラミングは簡単
機械学習のおすすめ勉強法
 STEP1 機械学習の基礎知識
 STEP2 開発手法の知識
 STEP3 プログラミングの知識
 STEP4 機械学習アルゴリズムの知識

※忙しい方は、「STEP1 機械学習の基礎知識」からお読みください。

やっぱり機械学習ツールはPythonとscikit-learn

データサイエンス界のロイター通信的存在であるKDnuggetsから、今年最も利用されたデータサイエンスや機械学習ツールのランキングが発表されました。
top-analytics-data-science-machine-learning-software-2015-2017
元記事:New Leader, Trends, and Surprises in Analytics, Data Science, Machine Learning Software Poll

トップがpythonです。またAnaconda、Tensorflow、scikit-learnなどpython関連のライブラリもトップ10にランクインしています。また前年比から見た伸び率も非常に高いです。

Pythonは名実ともにAIのディファクトススタンダードになりました。我らがscikit-learnも9位と大健闘しています。Pythonとscikit-learnがあれば、機械学習は何とかなるのです。
続きを読む

「完璧なモデルなどといったものは存在しない。完璧な絶望が存在しないようにね。」


機械学習とは、ある対象の"特徴"をモデルという数式に置き換えたものです。よって、精度100%のモデルは開発できません。世の中の事象には、無限の特徴量が存在しているので、対象のすべての特徴量データを収集することは不可能だからです。
またサイコロのような偶然が支配する事象の予測も不可能です。

しかし人間の行動には、一定のパターンが存在しています。データサイエンティストの仕事は、そのパターンをモデルとして開発し、精度をなるべく100%に近づける事です。

データサイエンティストがモデルを開発する場合、以下のような選択をしています。
・特徴量を選択する
・機械学習のアルゴリズムを選択する
・アルゴリズムのハイパーパラメーターを設定する

参考記事:これだけは知っておけ!PythonでAI開発の基礎まとめ

いろんな選択肢があるため、どうすれば最も精度の高いモデルを開発できるかは、実際に作って評価してみないと分かりません。

ではどうやってモデルを評価すればいいのでしょうか。この記事では、その評価方法を解説します。実は、モデルの評価は「ホールドアウト法」と「交差検定」と「混合行列」が分かれば大丈夫です。pythonとscikit-learnのコードと合わせて見ていきます。
続きを読む

ディープラーニングを、世界一簡単に実装する方法を見つけましたのでご報告します。

ディープラーニングとは

ニューラルネットワークというアルゴリズムがあり、『入力層』・『中間層』・『出力層』の3つに分かれるのですが、このうち『中間層』を多層化したものをディープラーニングと呼びます。機械学習のアルゴリズムの一つです。

ディープラーニングの得意分野

画像認識分野で非常に高い性能を発揮します。理由は、畳み込みニューラルネットワークとReLU関数です。畳み込みニューラルネットワークにより、画像の特徴を適切に捉えることが出来るようになりました。ReLU関数では、誤差逆伝播法で微分が1になることから、勾配が消えなくなるという問題を解決しました。またそもそも計算量が低いため、活性化関数として非常に利用されています。

音声認識分野でも、音声の「あ」とか「い」とかの波形があるのですが、その波形を画像と見立て分類することで、素晴らしい性能を発揮しています。
続きを読む

ここ最近週に1回くらい打ち合わせとかに呼ばれて、「人工知能を分かりやすく説明してください」と頼まれます。ビジネス界隈でも人工知能が語られることが増えてきて、今の業務を人工知能で効率化したいというニーズや、人工知能を使った新しい企画を考えたいという取り組みが加速しています。

そのため、いろいろ試行錯誤しながら説明しているのですが、なかなか伝わらないことも多いです。続きを読む

↑このページのトップヘ