アンドロイドアプリをKotlinで作り始めました。

Keita_Nakamoriです。

スマホアプリを作ってみよう

今日はスマホアプリでも作って、日常の小さな悩みを解決するべく、アンドロイドアプリの作り方を学びはじめました。(悩みwww)

10以上も前、つまりスマホの第二世代くらいのときに、 Javaでやろうとしましたが、環境構築だけで体力を消耗し実現に至りませんでした。

しかし、HTML CSS PHP Python3  JavaScript をここ2年位で使えるようになった今なら、できるんじゃないかと思いまして、始めた次第であります。

最近の言語動向を調べたところJavaではなくKotlinなる言語が盛り上がっている?ようですので

https://classroom.udacity.com/courses/

のブートキャンプでざっとやっていこうという作戦であります。

今日やったこと

 

 

data_scientist:chapter9 教師なし k-means法

k-means法

教師なしクラスタリングということで k-means法を試してみました。

ブロブデータでやってみる

データセットからブロブを呼び出します。

このブロブをk-means法を使って分類します。

k-meansの条件としてクラスタの数を指定しますが、下記のようなエルボ法を使ってベストなクラスタ数を決定します。今回は3です。

 

 

 

 

 

 

 

k-meansの結果がこれです。うまく行っています。

 

顧客データでやってみる

エルボ法でベストなクラスタ数を見つけておきます。

5にしましょうか。

クラスタ数5の結果です。

1と3に固まっていますね。

 

ちなみにk-means デフォルトクラスタ数8でやってみました。

さっきのクラスタ3は下の2,3に分割されてしまっていると考えます。

クラスタ数5に戻って、結果のヒートマップを確認します。

年齢層でみると、クラスタ1は30-35歳、クラスタ3は45-50歳というように離れていることがわかります。

次は職業です。クラスタ数1と3は大きな差がないので、今回のクラスタリング結果に対して職業の寄与度は低いのでしょう。

スクリプト

data_science_chapter_9_k-means

data_scientist:chapter8 リッジ回帰

重回帰の精度を高めるべくリッジ回帰をやってみます。

普通のロジスティック回帰モデルでは最小2乗誤差を目指しますが、入力に対して出力が敏感に変化してしまう場合は、過学習によって訓練Scoreと検証Scoreが一致しない場合があります。

そこで、正則化項 を新たに追加して訓練を緩慢にします。
正則化項は1次のときラッソ回帰、2次のときリッジ回帰といいます。

今回は正則化項なしである重回帰に対して、大きな改善は見られませんでしたので重回帰でも十分な結果が得られていることがわかりました。

スクリプト

data_scientist_chapter_8_Ridge

正規表現で任意の文字列を削除する

チャットボット用の訓練データをクリーニングするために、正規表現を使ってルビを削除する方法をメモしておきます。

詳しくは↓↓↓

re_test

自然言語処理とチャットボット 1

自然言語処理を少しかじっていこうと思います。

まずは環境構築

anaconda navigator で仮想Environmentsをcreateしてnpl_bot仮想環境を新規作成します。

installedをnot installedにして

モジュール群numpy ,  matplotlib,  tensorflow,  keras,  gensim

をインストールします。

nlp_bot右にある三角をおして Open terminalして

pip install janome します。

(ganomeだと勘違いしていてしばらく悩みました。)

environmentasからhomeへ移動してJupyter Notebookをinstallします。

これで環境構築はOKです。

次からはJupyter Notebookを起動してスクリプトを書いて行きます。

アンドロイドスマホをwebカメラにする方法

webカメラを買おうか迷っているあなた!

スマホで代用しませんか?

注意:モバイルwifi 7GB/月契約のやつを使用したら、十数秒で1GB程度消費しました。怖!

使用するときは必ず上限のないwifi(家のやつとか)でやりましょう。

スマホには↓をインストールする

windowsには

https://play.google.com/store/apps/details?id=com.dev47apps.droidcam

から↓を押してインストールする

スマホのアプリを立ち上げるとIPが出てきますので

Windowsアプリを立ち上げると出てくるIPの中に入力します。

19.168.10.xxx とかです。

 

こちらを参考にさせていただきました。

https://www.madosyo.com/?p=2270#toc5

話の構成

  1. テーマ(大枠を話す)
  2. 信頼性を築く(自分の体験談)
  3. 主張
    • 結論としてポイントが3つあります
      1. 1つ目
      2. 2つ目
      3. 3つ目
  4. 理由
  5. 具体例
    1. 具体例として
      1. 1つ目
      2. 2つ目
      3. 3つ目
  6. まとめ
    • ○○をしましょう

クリティカルシンキングとクリエイティグシンキング

クリティカル・シンキング

課題となっている事実並べて、それを収束するように同時に解決する方策を考える

クリエイティブ・シンキング

一つの発見からアイデアを拡散させアイデア複数生み出

 

ビジネスとは人々の不満、不安、不幸、など満たされたい状態を解決することである。