サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
www.tdi.co.jp
はじめに 近年、AI技術の登場により、画像認識や自然言語処理など多くの分野で、目覚ましい進展がみられていることは、みなさんもご存じだと思います。その1つである「音声認識」に関しても、認識精度が飛躍的に向上しています。 そして、その「音声認識」を実現するためのツールも数多く公開されており、簡単に試すことができるようになっています。今回はその中からいくつかピックアップし、自分の声を録音したデータに対して、どれくらいの認識精度なのか見ていきたいと思います。 ツール1:Julius Juliusとは Juliusは、京都大学等が研究・開発に関わっている、フリーで使える高性能な音声認識ソフトウェアです。汎用性・可搬性が高いことが特徴で、音声認識のモジュール(音響モデル、言語モデル、発音辞書等)を組み替えることで、様々な用途に使うことができます。 導入方法 今回は簡単に導入するために、Google C
はじめに Gitの使い方には私もだいぶ慣れてきたものですが、実際にチーム開発でGitを使う際には、ソースコードのバージョン管理以外にも色々と考えることがあります。例えば、コードレビューはどのタイミングで誰がやる?とか、誰でもマージできるなんて怖いから制限したい!とか、プルリクエストを活用したい!とか。ワークフローの設定などでシステム的に制限をかけられたらなお良しですよね。 私自身が最近そんな状況に遭遇したわけなのですが、今回はCodeCommitの承認ルールワークフローを使って色々とやってみた内容をご紹介したいと思います。 ちなみに、ちょっとだけCodeCommitの歴史(?)を遡ると、2017年11月にプルリクエストがサポートされ、2019年11月にプルリクエストの承認ルールワークフローが実施可能になりました。 やりたいこと 想定するフローをざっくり書くと以下のような感じです。 開発者は
僕「10回試行で1回発生するバグを改修した」 鬼「改修の効果を、繰り返し試験をして確認しなさい」 僕「10回試行して一度も現象が起きないことを確認した」 システム開発の現場で、経験あると思います!! しかし、上記の確認方法では、改修できていなかったとしても35%の確率で事象は発生しないため、無意味な対応でシステムをリリースしかねません。また、確率的に発生するバグなので、何回試験しようが「<たまたま>今回は発生しなかったのでは?」と言われかねません。 では、「発生しないことの確認」とは、いったい何回試験すればよいのでしょうか? 本記事では、この考え方について簡単に書いていきます。
Microsoft Power Apps とは Microsoft Power Apps(以下、Power Apps)とは、Microsoft社が提供しているビジネスアプリケーション開発サービスです。 アプリケーション開発、と聞くとプログラミングスキルが要求されるとお考えの方が多くいらっしゃるのではないでしょうか?しかし、Power Appsにおいてプログラミングスキルは必要ありません。シンプルなキャンバスに様々な装飾を施す要領で直感的、かつ簡単にアプリを作成できます。 当記事では、Power Appsで「来客情報管理アプリ」を作成する手順を記載いたします。 なお、Power Appsは、2016年11月にMicrosoft社からリリースされたローコード開発基盤「Power Platform」のツールの1つです。Power Platformについては、こちらの記事をご覧ください。 <MIS
今、話題になっているAIoT(AI+IoT)デバイスの「M5StickV」を少し触ってみたので、今回はその際に知り得た情報を紹介します。 M5StickVの概要 まず、M5StickVをご存知ですか? M5StickVは、M5Stack社が販売している小型AIカメラデバイスで、Kendryte社のプロセッサK210を搭載しています。非常に小さなデバイスで、一般的な消しゴムを少し大きくしたぐらいの大きさですが、カメラ以外に、液晶ディスプレイやLEDランプ、スイッチ、ジャイロセンサーも装備しています。そして、高性能なニューラルネットワークプロセッサ(KPU)をもっているだけでなく、購入後にセットアップすると、すぐにYOLOモデルを利用した物体検出機能が使えるようになっています。 日本では、スイッチサイエンスや共立電子産業などから購入できますが、なんと3000円程度という低価格です!(2020年
はじめに 少し前のことなのですが、AWS上にUbuntuサーバをたてて欲しいという要望を受けました。依頼者曰く「作業用PC(Windows)から接続できるデスクトップ環境が欲しい」とのことでしたが、使う予定のAmazon AMIにはデスクトップ環境は入っていませんでした。 という訳で、Ubuntuにデスクトップ環境を構築し、リモートで接続できるようにした時の手順を紹介します。 前提 今回はxrdpをサーバに導入して、Windows10のクライアントPCからリモートデスクトップ接続できるようにします。UnixライクOSでは、デスクトップ環境に接続する際にはVNC(Virtual Network Computing)を使うことが多いと思うのですが、xrdpを使えばクライアントがWindowsの場合には追加のソフトウェアが不要(標準で用意されている「リモートデスクトップ接続」を使えばいい)なので
超高速開発基盤「OutSystems」は、ソースコードを記述することなく、詳細設計のみでWebおよびモバイルのアプリケーションを自動生成する開発基盤で、短期間でのアプリ開発を実現します。ソースコードの自動生成だけではなく、アプリケーションのデプロイ・構成管理などの保守・運用まで行えます。 OutSystems以外にも、ローコード開発基盤は数多く提供されています。その中でも、モデル駆動型の開発手法をはじめ、OutSystemsと共通項が多いとされるのが「Mendix」です。 今回はOutSystems(OutSystems 11)を用いたアプリケーション開発経験がある方向けに、簡単なWebアプリケーションの作成を通して、OutSystems 11と比べて、Mendixの開発基盤の機能や操作感にどのような違いがあるか、ご紹介したいと思います。 Mendixとは Mendixは、モバイルアプリケ
1. Tensorflow、Keras、PyTorch Tensorflowと Keras、PyTorchは現代の深層学習でよく使用されるトップクラスのフレームワークです。どんな場合に、どのフレームワークを用いたらよいのか迷うことはあるでしょう。本記事では、Tensorflow、Keras、PyTorchを比較することで、それらのフレームワークの有効な使用方法について記載します。 2. それぞれのフレームワークの概要 比較に入る前に、それぞれのフレームワークの由来や特徴を知っておきましょう。 2.1. Tensorflow Tensorflowはエンドツーエンドかつオープンソースの深層学習のフレームワークであり、Googleによって2015年に開発・公開されました。 今回比較する3つのフレームワークの中で最もドキュメントが多く、トレーニングのサポートもしています。それだけでなく、Tenso
クラウドサービス中でも、ビジネス活用のAIとして広く認知されているIBM Watsonをキーサービスとして提供する「IBM Cloud」について、IoT領域での活用方法を取り上げます。特に、ビジネス(サービス)企画における最初の段階で実施するPoC(Proof of Concept:概念実証)での活用を想定した「センサデータの収集」方法をご紹介します。 実はクラウド環境としてよく利用されているAWSでもセンサーデータを収集することができます。AWSのサービスを使用したIoT活用の方法と今後の応用について取り上げさせていただきます。 1. 今回のシナリオ 上記記事でもお伝えしたように、IoT観点でのクラウド活用フェーズは以下の通りです。 センサーデータの収集 データの分析 新しい付加価値(サービス)の創出 上記に加えて、データ活用までの時間をより早く、より簡単に、といったことも大事な要素にな
Fessとは? プロジェクトにおいて、ファイル名、内容、メタデータなどを検索する機能はさまざまな局面において利用されています。しかし、一つ一つのファイルや用途に合わせて検索機能を作ると非常に時間と手間がかかります。このような悩みをFessは簡単に解消することができます。 Fessはオープンソース型の全文検索サーバーです。設定は非常に簡単で、Java環境さえあればどのOSでも動作させることができる汎用性の高さが特徴です。また、自サーバー内のみならず、Webサイト、Amazon S3やBoxなどのファイルストレージ、SlackなどのSNSまで幅広い検索が可能です。もちろんAPIを用いてWebアプリと連携することもできます。 今回はFessサーバーをWindowsPC内に立て、PC内ファイルとWeb、そしてAmazon S3を横断的に検索したいと思います。 Fess導入の前提条件 Fessの動作
サインアップしたはいいものの、アクティベーション処理をしなければ作成したユーザーは使うことができません。今回の記事では、前回の続きでアクティベーション処理とサインイン処理を実装したいと思います。今回は、HTMLやJavaScriptを用いたクライアントアプリの実装がメインになります。 前回のおさらい 簡単に前回のおさらいをします。サインアップすると、Amazon Cognitoのユーザープールにユーザーが作成されます。ただし、ステータスが「UNCONFIRMED」となっています。 そして、登録したEメールアドレスに検証コードが書かれたメールが送信されてきます。 この検証コードでアクティベーション処理を行い、完了後にはサインインができるようになります。 アクティベーション処理の実装 まずはアクティベーション処理を実装します。まずはアクティベーション画面の実装ですが、必要なJavaScript
プロジェクトの準備 早速、進めていきましょう。 プロジェクト作成 XCodeを立ち上げ、新規プロジェクトを作成します。その際に、OSは「watchOS」、アプリひな型は「iOS App with WatchKit App」を選択してください。 後は、必要な情報を入力してプロジェクトの作成を完了させてください。プロジェクトのオプションはデフォルトのままで問題ありません。 プロジェクトを作成すると、プロジェクトナビゲータに様々なファイルが表示されます。以降は、赤枠で囲った部分に修正を行っていきます。 ひな型が「iOS App with WatchKit App」となっていたように、Apple WatchアプリはペアリングされたiPhone側のアプリと連動して動作します。(1)はこのiPhone側のアプリのUI・動作を記述します。 (2)はApple Watch側のアプリのUI部分を記述します。
その最後に「DevOps試験も合格したいと思っています」と書きましたが、その後無事DevOpsエンジニア試験に合格し、合計6つの試験に合格することが出来ました。AWS界隈では6冠というそうです。以下の図はAWS認定のページから引用させていただいた試験の図です。ちょうどこの灰色の部分にある試験全部に受かったことになります。 そこで、今までの経験を踏まえて、これからAWS6冠を目指している人向けに、役立ちそうなことを書いてみたいと思います。前回の記事と若干重なる内容もありますがご容赦ください。 試験を受験する順番 試験を受ける順番は、個人的には以下の一択ではないかと思います。 クラウドプラクティショナー AWSの超基本を問われる試験なので、一番最初に受けます。 ソリューションアーキテクトアソシエイト(SAA) アソシエイト試験3種の中で、教材が一番豊富に存在するため、勉強しやすい試験です。これ
Amazon Athenaとは Amazon Athenaとは、Amazon Web Services(AWS)のサービスの一つで、「標準 SQL を使用して Amazon Simple Storage Service (S3) でのデータの直接分析を簡易化するインタラクティブなクエリサービス」です。 つまり、AWSのS3ストレージに置いてあるCSVファイルやJSONファイルに対して直接SQLを発行し、クエリの結果を得ることができるサービスです。 構成イメージ Amazon Athenaを使ってみよう 実際に使ってみましょう。 例えば、S3に次のような生徒ごとの5教科のテスト結果の点数が書かれたcsvファイルがあるとします。このcsvファイルがAmazon Athenaからどう見えるか、みてみましょう。 csvファイルイメージ(テスト結果.csv) まずはS3にバケット・フォルダを作成し、
Google ColaboratoryはJupyter Notebookがベースとなっているということで、それぞれの操作に違いがあるのか気になりました。今回は、普段業務で使っているJupyter Notebookと、最近使い始めたGoogle Colaboratoryの使用感の違いについてご紹介していきたいと思います。また、比較に関しては、私が普段よく使う機能であるショートカットキーと、Jupyter Notebookの拡張機能であるipywidgetsにフォーカスします。 ショートカットキーを比較してみた 一般的に、作業時間を短縮し効率良くコーディングしていくために、ショートカットキーを使う方は多いかと思います。ここでは、そんなショートカットキーについて、Jupyter NotebookとGoogle Colaboratoryの違いをみていきます。 Jupyter Notebookの場合
はじめに 先日、社内で「Windows ServerにGitサーバを立てたい」と相談を受けました。GitLabみたいなGitのホスティングサービスを使いたかったのですが、「Windows」という条件を考慮すると結構選択肢が絞られる…! ということで、リッチなGUIは諦めて、Git for WindowsでGitサーバを構築することにしました。 できればユーザ管理もしたかったのですが、GitHubやGitLabが提供するような高度なユーザ管理機能はGit for Windowsには無いようなので、SSHの公開鍵認証を使うことにします。Gitへのpush時はユーザごとに鍵で認証することになるので、せめてコミット履歴にはユーザ情報が残せるはず! 今回は、Git for Windowsを使ってWindowsにGitサーバを構築し、SSH接続でアクセスするまでの手順をまとめたいと思います。 【クライ
はじめに 既に取得済みのAmazon Route 53(以下、Route 53)を利用した独自ドメインがあり、急遽そのドメインで1アカウントだけメールアドレスが必要になりました。Amazon Web Services(以下、AWS)ではAmazon WorkMail(以下、WorkMail)と呼ばれるメールサービスが提供されており、こちらを利用したところ、想像以上に簡単に便利な環境を構築できましたので、その手順をご紹介したいと思います。 WorkMailについて WorkMailはメールとカレンダーのマネージドサービスで、3つの海外リージョン(北バージニア、オレゴン、アイルランド)でサービス提供中です。1ユーザーあたりの1か月の料金は4USD、メールボックス容量は50GBで暗号化されています。送受信されるメールはすべてスキャンされ、スパム、マルウェア、ウィルスチェックを行います。POP3プ
前回からまただいぶ空いてしまいましたが、今回はAmazon Cognitoシリーズの4作目です!1~3作目はこちらをご覧ください。
# 不要な表現を除去し、1文ごとに切り分ける def preprocess(title): path = "novels/{}.txt".format(title) with open(path,"r") as f: novel = f.read() # 改行で分割 novel = novel.split("\n") # 不要な表現、会話文の鍵括弧を除去 # 1文ごとに切分け novel_ = [] for paragraph in novel: paragraph = re.sub("\\u3000","",paragraph) # 青空文庫のデータに含まれる不要表現 paragraph = re.sub("《[^《》]*》","",paragraph) paragraph = re.sub("[.*見出し]","",paragraph) paragraph = re.sub("[#地
はじめに みなさんこんにちは! 突然ですが、AWSを使い始めるときって「EC2とかS3とかが基本のサービスなんでしょ?」ってとりあえず使ってみることがあると思うんです。そしてそこで満足してしまって、その他の「名前のかっこいいサービスたち」に触れなくなってしまう人がいるのではないでしょうか。(特に元からインフラの教養のある人!!)確かにEC2は基本的だし、カンタンにサーバーが構築できて便利です。しかし、AWSはその他のサービスにこそクラウドのおてがるさが凝縮されているんです!使わなきゃもったいないですね!!! ということでこのシリーズ(シリーズ化させたい)では、「機会がないと手を出さないけれど、使ってみるととってもおてがるなAWSのサービス」をチュートリアル的なノリで使っていきます。基本的な使い方や、気をつけるポイントなどを実際に触っていく形で説明していきたいと思っています。 記念すべき最初
同じ部署のメンバーとAWSのサービスを使ったWebアプリを開発することになったのですが、どうせやるならサーバーレスでやりたい!サーバーレスかっこいい!という満場一致の可決により、サーバーレスなWebアプリを開発することになりました。 Webアプリと言えば、やはり一番最初の入口はサインイン画面になるわけですが、はて、どうやったらかっこよくできるのか?と考えて調べた結果、どうやらAmazon Cognitoというものが使えそうだということに。画面はHTML/CSS/JavaScriptで開発しようと決めていたのですが、Amazon CognitoはJavaScriptからも使えるとのこと! ということで、今回はJavaScriptからAmazon Cognitoを使ってみたいと思います。 Amazon Cognitoとは そもそもAmazon Cognito(コグニート)とは何者なのか?ですが
ブロックチェーンにはトークンという概念があります。英語では「Token」と言い、証拠、記念品、代用貨幣、引換券などの意味があります。ブロックチェーンにおける「トークン」は、代用貨幣や引換券という意味が特に強く、仮想通貨そのものとはまた違う立ち位置のものとして扱われています。 今回は、Solidity言語のフレームワークである「Truffle」と、ライブラリの「OpenZeppelin」を使って、Ethereum上で独自のトークンをつくってみたいと思います。 トークンとは トークンとは、冒頭に出てきた「引換券」という言葉を使うと、「ブロックチェーン上で発行された、何かしらの価値と交換できる引換券」と表現できます。トークンの定義自体、想像がしにくく非常に曖昧なものなので、世間一般的には「ブロックチェーン上で発行された独自コイン」のことを皆「トークン」と呼んでいます。 ビットコインのBTC、Et
先日、某無料オンライン大学講座にて、「白川フォント」というものが無料で公開されていることを知りました。 これは、甲骨・金文などの古代文字のためのもので、『現代の漢字を入力するのと同じように、簡単に古代文字の入力が出来ます。』(引用:白川フォント)とのことです。つまり、外字ではなく、対応する現代漢字と同じ文字コードが使われているとのことでした。 また、ちょうどOCRについて調べていたこともあり、このフォントで書かれた文字列を読み取ってみたいと思いました。フォントで提供されている文字が外字になっていないということは、甲骨文字フォントの文字認識がうまくいけば、甲骨文字を現在の文字に変換できるはずです。 では、OCRの基本的な処理を、オープンソースの「Tesseract」を用いて、実際にやってみます! < 実施環境 > 実行マシン: Windows 10 Pro 64bit 利用した主要なソフトウ
はじめに 自然言語は、一定の文明的背景を持つ人たちがコミュニケーションをとるために自然に発展してきた言語であり、それをコンピュータに処理させる一連の技術は自然言語処理(Natural Language Processing、略称:NLP)と呼ばれています。近年、流行のAI技術の中でも、コンピュータに自然言語を理解させる技術(いわゆるNatural Language Understanding、略称:NLU)は難易度の高い分野として知られています。 Stanford Parserを使ってみる 自然言語処理について どの自然言語処理でも大抵、形態素解析、構文解析、文脈解析、意味解析に分けられます。高理解度の文脈解析と意味解析の精度はまだ高くありませんが、形態素解析と構文解析は近年大学やAI研究機構の研究開発で高い精度の結果が得られています。今回、実際にアメリカのStanford大学が開発したS
はじめに 皆様は機械学習やDeep Learningを行う際の実行環境には何をお使いでしょうか。Local PCでやりくり?AWS等のIaaS?それとも社内や自宅に専用機があったりするのでしょうか。 機械学習やDeep Learningを快適に行うためにはそれなりのマシンスペックが必要になります。ある程度のメモリ容量はもちろん、GPUも必須といっていいレベルでしょう。 通常使用のPCでは、メモリが足りず処理できなかったり、1試行ごとに数十分~数時間待つことになったりということがあるのではないでしょうか。また、IaaSを用いれば高スペックな環境を手に入れることはできますが、コストもかかりますし、環境設定に翻弄されることも多いですよね。 実は上に挙げたものは私たちのチームが直面した問題でした。機械学習やDeep Learningを行う際、処理待ちや環境設定に時間を取られてしまい、本来行いたい、
はじめに こんにちは。千葉です。皆さん、AWS Fargateってご存知ですか? AWS Fargateとは、一言でいえば「ホストの管理なしにコンテナを動かすためのサービス」です。AWSにはAmazon ECSという、EC2インスタンスの上でコンテナを動かすためのサービスがあるのですが、これはAmazon ECSの利用者がEC2インスタンスのことを考える必要がありました。「これ以上コンテナを増やしたらメモリが不足しそうだから、EC2のインスタンスタイプを変えようかな」とかです。 しかし!AWS Fargateを使えばEC2インスタンスのことなんか考えなくてよくなります。コンテナに割り当てるCPUとメモリ、あと少しの情報を入力すれば、コンテナが起動します。なんて楽なんでしょう!なんて素晴らしいんでしょう! というわけで、是非皆様にもAWS Fargateの素晴らしさを知っていただきたく、AW
そこで、今回は、TensorFlowで推奨されている Dataset API を利用して、マルチスレッド(並列処理)で、バッチ単位にデータを取得する手法で、(機械学習の)「学習」を行っていきます。 ※データの扱い方について、以前の記事では、キューを扱うことを明示的に記載したコーディング(本記事では、以後「キューベースパイプライン」と呼ぶこととします)となっていましたが、TensorFlowバージョン1.4(2017年11月リリース)から、Dataset APIを利用することが推奨されています。 参考:TensorFlow API Documentation「Threading and Queues」 ※この記事では、(機械学習の)「学習」を以下の条件で行うものとします。 ・入力データとなる、モデルの学習に用いる「学習用データ」と、学習済みモデルを評価するのに用いる「評価用データ」を、別に分
Googleが開発した機械学習のためのオープンソースソフトウェア、TensorFlow。 TensorFlowで学習するデータをインプットさせる場合、CSVやNumpyなどで用意したデータをそのまま利用することもできますが、TensorFlowが推奨フォーマットとして提供しているTFRecordもあります。 TFRecordは、「メモリに収まらないような大きなデータを処理できるようにしたもので、シンプルなレコード指向のバイナリのフォーマット」ということです。 (参考:TensorFlow Programmer’s Guide – Importing Data – Consuming TFRecord data) 少量のデータで処理する場合は、事前にデータをメモリ上に乗せてしまえばいいですが、ディープラーニングのように大量のデータを扱う場合は、それが出来ないこともあるので、TFRecordを
次のページ
このページを最初にブックマークしてみませんか?
『tdiグループ 情報技術開発株式会社』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く