gnuplot

連絡

実行手順

1106_ゼミ報告

ゼミ目標

CNNモデルについて調べる

未着手

未解決

優先度低

卒論

耐候性鋼橋の耐候性鋼材の錆の現地調査(日本鉄鋼連盟、土木研究センター、東北の大学や高専の土木構造系研究室の共同研究) と何らかの定量化手法との比較を(人間の現場での評価を教師として)AIに機械学習させてみる。

(現場で簡単なのはデジカメ、セロテープはややめんどう、膜圧はもっとめんどう)

現場デジカメ撮影の画像データ(伊藤さんの卒論2004:概要pdfスライドpdf

セロテープ試験の2値化データ(藤原さんの卒論2005:概要pdfスライドpdf

膜厚計の錆厚データ(橘さん2006:概要pdfスライドpdf

参考資料

AIによる耐候性鋼材のさびの特徴分析

画像処理を用いた耐候性鋼材の腐食状況の定量化に関する検討

畳み込みニューラルネットワークを用いた腐食環境が異なる鋼材腐食部劣化度判定の試み (普通鋼材)

画像処理とパターン認識手法を利用した耐候性鋼材のさび外観評価

耐候性鋼材の運用実績

土木工学分野における人工知能技術活用のために解決すべき課題と進めるべき研究開発

機会学習を用いた耐候性鋼材のさび外観評価モデルの開発

インフラ維持管理へのAI技術適用

畳み込みニューラルネットワークを用いた耐候性鋼材腐食部劣化度判定の試み

いちばんやさしいpythonの本

ゼロから作るDeep Learning

進捗

日時置換文字

   &date;、 &time;、 &now;は、記事が書き込まれるときに置換されて記録されます。
   &date;、 &time;、 &now;は、他のインライン要素の子要素になることができます。
   &date;、 &time;、 &now;は、他のインライン要素を子要素にはできません。
   行中で &_date; と書くと、表示時の日付に置換されて出力されます。
   行中で &_time; と書くと、表示時の時刻に置換されて出力されます。
   行中で &_now; と書くと、表示時の日時に置換されて出力されます。
   行中で &date; と書くと、更新時の日付に置換されます
   行中で &time; と書くと、更新時の時刻に置換されます
   行中で &now; と書くと、更新時の日時に置換されます

2024-11

2024-10

2024-10-30


1030_ゼミ報告

ゼミ目標

補正前補正後
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1023/hoseimae.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1023/hoseigo.png
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1023/hoseimae_RGB.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1023/hoseigo_RGB.png

2024-10-25 今日の目標 画像切り抜きを完了させる

2024-10-23

1023_ゼミ報告

補正後のP3補正後のP6
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/P3.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/P6.png
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/p3rei.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/p6rei.png

2024-10-22 今日の目標

gimpで効率的に画像を抜き出す方法を模索する

2024-10-21 今日の目標1

変換マトリクスを作成する

今日の目標2 画像を抜き取る

2024-10-18 今日の目標 切り取り方法を決める

1016_ゼミ報告

補正前補正後
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/kiritori.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/kiritorigo.png
補正前補正後
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/rating1.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/hg_rating1.png
補正前補正後補正改良後
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hosei_tamesi.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hoseigo.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/corrected_image2.png
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hoseimae.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hoseigo_RGB.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hoseigo2.png
補正前補正後
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/2kaime.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1018/2kaime_syasin.png
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/2kaime_suuti_hoseimae.pnghttps://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/2kaime_suuti.png

色補正過程

https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hoseigo.jpg

2024-10-16

2024-10-15

2024-10-11

2024-10-10

2024-10-07 RGB値を抜き取れそう 明日補正方法を先生に聞きに行く。

2024-09

夏休み終盤になって焦らないようにコツコツ進めていきたい

kaiten_kakutyou.py 90度回転

2024-09-25

2024-09-23

2024-09-19 データを拡張して試してみた 精度は少し上がったが、まだ50%ほどだ これから改善すべきは何なのかを検討したい

以下の要素はよくわからなくなってきたので個々にまとめておく

2024-08-23


ここから下は一旦保留

ゼミ報告(09-09)

データの整理(写真)ラベル付 完了
CNNの作成
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/240811_CNN.png
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/label_distribution.png
https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/240909zemi.png

2024-09-02

2024-08

2024-08-28

2024-08-23

2024-08-20

2024-08-15

2024-08-11

2024-08-10

ラベル付けの作業について勉強した 実際にやってみたいと思う

2024-08-09

2024-08-08

2024-08-07

2024-08-06

2024-08-04

2024-08- 02

2024-08-01

ゼミ報告(5〜7月)

2024-07-31

https://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/hanbetu.png

→今あるデータを使えるのかor新しく取るのか

モデルは畳み込みニューラルネットワークを用いて判別したいと思っている

成果

mnistデータセットを使って判別モデルの作成ができた
今はデータセット内の文字を判別しているので実際の文字を判別できるようにしたい

・2024/7/17

課題
モデルの仕組みを整理する
モデルの精度を高める

・2024/7/10

課題
来週までに実際の手書き文字を判別させる
成果
前回にモデルの作成ができ、そのモデルに実際の文字を入れて判別してみたが正確に判別できなかった
下の画像は2を判別しようとした
今のモデルでは画像を1次元に変換して判別しているが、1次元だと限界なのかもしれない
3次元モデル(CNN)でやる必要があると思ったが
改良次第でなんとかなりそう 
学習率を改善していく
学習率:一回の学習でどれだけ学習すべきか、どれがけパラメーターを更新するか

判別しようとした画像

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/0710.png
http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/0708houkoku.png

判別精度

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/0710_2.png

・2024/7/3

課題
どの程度の文字が正しく判別できているかを説明できるようにする
実際の手書き文字を判別させてみたい
成果
実際の手書き文字を判別させようと思ったが、画像をうまく変換できなかったためまだ判別には至っていない
3次元の画像を1次元にしたい

・2024/6/26までの課題

手書き文字判別までのプロセスを確定させる

成果
本を参考にニューラルネットワークを実装することができた
学習することで精度が高くなる過程が確認できた
テストデータを用いて認識精度を確認したところ2つの精度に差がないことが分かる
ミニバッチのサイズ(取り出す数)を100として、毎回60000個の訓練データからランダムに100個のデータを抜き出している
600回 = 1エポック

認識精度

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/ninsikiseido.png

epoch → 一つの訓練データのすべてを使い切って1周した時を1とする、訓練データを何回用いたかを表す数

・2024/6/19までの課題

引き続き本で学習を進める 文字判別の仕組みを理解したい

あまり進捗なし

今度耐候性橋梁を見に行きたい

・2024/6/12までの課題

千代岡さんから借りたpythonの本を読み終える

2冊目も読み終えたい

発表内容:pythonについて学習を進めている 特にdeeplearningの基礎について

今現在はmnist(エムニスト)という手書き数字の画像セットのダウンロードができたので、次回までに文字を判別する仕組みについて学びたいと思う

mnist:mnistは機械学習の分野で最も有名なデータセットの一つであり、簡単な実験から論文として発表される研究まで様々な場所で利用されている

mnistデータセットは、0から9までの数字画像から構成されている 訓練画像が60000枚、テスト画像が10000枚用意されており、それらの画像を使用して学習と推論を行う

一般的なmnistデータセットの使い方では、訓練画像を使って学習を行い、学習したモデルでテスト画像に対してどれだけ正しく分類できるかを計測する

mnistの画像

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/mnist_gazou.png

何の情報を判別させるか、(明るさ(色スケール)、セロテープ試験、膜厚試験

今度耐候性橋を見に行く

・2024/5/29 までの課題

機械学習環境と構築する

2024-07

2024-07-31

2024-07-25
2024-07-24

参考記事をもとに判別モデルを実装できた

実行ファイル:mnist_loadmodel.py

2024-07-22

引き続き手書き文字のモデルを改良したい

2024-07-21

デスクトップパソコンに機械学習環境を導入した(anaconda3 vscode opencv) 以下のサイトのコードを試したがうまく識別できなかった サイト2をうまく活用して次はやってみたい

2024-07-18

全然更新できていなかった。毎日コツコツ積み重ねていきたい

2024-07-06

実装したいコードを考えたので試してみたい

2024-07-03 

pythonについて学びたい

2024-06

2024-06-28

/ch04/zisaku/two_layer_net_kairyou.py

実際の手書き文字を読み込ませられたが、うまく判別できなかった その原因としてはピクセル値がうまく変換できていないことが考えられる 次回はその原因を解決したい

2024-06-26

パソコンをお願いした 買っていただけるみたい ありがとうございます

機械学習とは重みとバイアスを最適なものに導く作業のこと

2024-06-25

機械学習の概要をなんとなく理解できた

2024-06-24

今日も本を呼んだ 明日コードを実装してみたい

2024-06-23

人通り読み終えられた 理解を深めたい

2024-06-22

anacondaとtensorflowの違い

進捗なし

2024-06-13

忘れている箇所が多かったので復習した

2024-06-12 ゼミがあった 引き続き進める

2024-06-11

mnist(エムニスト)データセットのダウンロード方法がわからない

githubをダウンロードするといいのかも?

githubのダウンロード方法 codeからdownload zip

zipファイルの解凍

圧縮 zip -r xxxx.zip directory 解凍 unzip xxxx.zip

※unarコマンドを@Hayakuchi0さんから教えてもらいました。 Windows上で日本語ファイル名のファイルをzipで圧縮して、Linux上でunzipにより解凍すると文字化けすることがありますが、unarで解凍すると文字化けしないようです。

unar xxxx.zip

私が確認した環境CentOS7にはunarはインストールされていなかったので、 インストールして試しました。

unarはzip以外も解凍できるようです。

このページを読み込みたい

cd anaconda3

cd deep-learning-from-scratch-master

cd ch03

2024-06-10

進捗(120/273)

2024-06-09 進捗 (96/273)

2024-06-08 進捗(53/273)

2024-06-07

anaconda3からnumpyを開くことができた。

2024-06-06

明日やること : Numpyのダウンロード

・2024-06-04.05

進捗なし

・2024-06-03

引き続き本を読み進めたい

・2024-06-02

一冊目を読み終えたが、まだ理解しきれてない箇所が多い

・2024-06-01

第10章まで読み終えた

2024-05

・2024-05-31

第8章まで読み終えた

・2024-05-30

pythonの本を使って学習を進めた また、デスクトップのセットアップもしてもらった 引き続き、pythonの勉強を進めたい

・2024-05-29

ゼミがあった。次回のゼミまでに本を読み終えたい

・2024-05-28 (火) 13:16:24 condaコマンドを認識させることができた

Python 3.11.7 (main, Dec 15 2023, 18:12:31) [GCC 11.2.0] on linux Type "help", "copyright", "credits" or "license" for more information.

文字の並べ替えプログラム /pyworks/words_sort.py 画像保存名:words.sort.png

・2024-05-27 condaコマンドが認識されない もう一度やり直さないといけないかも

・2024-05-26 pythonの本を読んだ

・2024-05-25 進捗なし

・2024-05-24 進捗なし

・2024-05-23 pythonの本を読んだ pythonの仕組みについてなんとなく理解が深まった

・2024-05-22 anacondaをインストールできたと思う tensorflowなどのライブラリのインストールは後日にしようと思う

anacondaをインストールしたことでpython3.8を起動できている

※anacondaは無償区分と有償区分があるらしい(参考記事) 

無償で使える条件として 個人かつ非商用目的による使用 教育機関における学生または教員の使用 とあるので大丈夫だと思う

vs code(テキストエディタ:pythonのコードを一つにまとめるためのもの)のダウンロードもできた

vs codeの開き方:ターミナルでcodeと入力

じゃんけんプログラム

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/janken_2024_05_24.png

・2024-05-21

機械学習を行うための環境をつくるためのプロセスを整理した

1.機械学習を行うためにはPythonが実行できるための開発環境が必要

 そのためにanacondaをインストールする

 anacondaをインストールすることで複数の仮想環境を作成して切り替えて使える

2.仮想環境の作成を行い、必要なライブラリをインストールする

Numpy:数値計算 Pandas:データ操作と分析 Matplotlib/Seaborn:データ可視化 Scikit-learn:ディープラーニング TensorFlow/Keras:ディープラーニング PyTorch:ディープラーニング

・2024-05-20 進捗なし

・2024-05-19 前提知識がなくて理解が進まない とりあえず、tenslorflowをダウンロードしてみたいと思う。

ubuntuの場合直接ダウンロードできる と思う

・2024-05-18 機械学習の環境構築するための手順

1.パソコンを準備(Linux ubuntu20.04)

2.言語を決める(python)

3.言語をインストールする(python2.7がインストール済み)

4.環境構築ツールを導入する

anacondaが最適かも

tensorflowを使用するためにはハードウェアの性能の高さが求められる?

tensorflowとは機械学習に用いるためのソフトウェアライブラリ

・2024/05/17 機械学習について調べてみた 教師あり学習 数値を予測する回帰 カテゴリを予測する分類

・2024/05/16 機械学習の環境構築についてもう少し調べたい ubuntuでの環境構築方法について

・2024/05/15 使用しているパソコン Ubuntu20.04 フリーの機械学習ツールに何があるか ex.tensorfolw

パソコン上に機械学習ができる仮想環境を整理する必要がある


3年次

エラーコード [#dd0f431c]

時間が足りないとき

  !<S> Exception user raised but not interceptee.  !        
  ! The bases are fermees.                         !   
  ! Type of the exception: ArretCPUError           !   
  !  [('?', (), (), ())]                           !   
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!   

春課題 弾塑性 [#td1a199a]

創造工房第7回(12/8) [#w0f71c42]

サンドイッチ梁:単純梁(木材+鋼材)の解析 [#v5b1d60b]

メッシュの長さ要素数変位(mm)相対誤差(%)計算者
0.71551920.0837890524615.365安藤
0.81388080.0838038649115.350安藤
0.9825870.08370707398115.45兼田
1.1386710.08420120760214.95兼田
1.2319290.08368815.466柴田
1.3286210.08366915.4857柴田
1.4288540.0836815.47佐藤
1.5200150.08405215.10佐藤
1.6194480.083540293815.62皆川
1.7138010.083435509815.72皆川
1.8125280.08373315.42永山
1.9117690.08392415.23永山
2106990.08407687655915.074
335790.0841456175315.004
416280.08279416.37服部
510160.08303318.89服部
6839-0.08288216.26梶原
7554-0.08087118.28梶原
82850.07999519.20工藤
92610.07898020.22工藤
102320.08191117.26佐々木
112080.07567623.56佐々木
http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/sand_kekka_1215.png

創造工房第6回(11/29) [#x7bfb3cd]

単純梁(異方性1次・等方性2次)の解析 [#u789f929]

異方性1次
メッシュ長さ要素数変位相対誤差計算者
0.71445630.5052522.76安藤
0.81415170.5046922.64安藤
0.9916480.5025952.216兼田
1.1271600.4899140.363兼田
1.2246750.4870880.791柴田
1.3234460.48680100.995柴田
1.4177380.4859991.16佐藤
1.5154380.4851801.33佐藤
1.6159000.4832861.71皆川
1.7121420.4779522.80皆川
1.8116040.4820851.9554永山
1.9103910.4708874.2329永山
2102910.4809102.19
323280.43193712.15
415000.43015612.52服部
54320.28296842.45服部
63560.344155630.00梶原
71960.21393456.49梶原
81040.22987453.25工藤
9810.23230852.75工藤
10780.20327158.65佐々木
11630.22231654.78佐々木
http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/ihousei1zi_kekka_1208.png
等方性2次データ
メッシュ長さ要素数変位相対誤差計算者
0.71445630.4301243.22安藤
0.81415170.4301323.22安藤
0.9916480.4300203.197兼田
1.1271600.4298283.151兼田
1.2246750.4298363.15柴田
1.3234460.429743.13柴田
1.4177380.4297971.3佐藤
1.5154380.4299583.14佐藤
1.6159000.4297553.18皆川
1.7121420.4296763.11皆川
1.8116040.4298293.1507永山
1.9103910.4296843.1159永山
2102910.4296203.10
323280.4291692.99
415000.4292543.01服部
54320.4281702.75服部
63560.4284522.82梶原
71960.425912.21梶原
81040.4260742.25工藤
9810.4255522.12工藤
10780.48838217.20佐々木
11630.4239729.0534佐々木
http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/touhousei2zi_kekka_1208.png

11/24(金)創造工房5回目 [#e5d84b63]

単純梁(等方性1次)の解析 [#tb5d98da]

メッシュ長さ要素数変位相対誤差計算者
0.714552340.4224840.01388安藤
0.81429730.4225700.01409安藤
0.991648-0.4204370.897兼田
1.127160-0.4056182.659兼田
1.2246750.4043492.96柴田
1.3234460.4041853.00柴田
1.4177380.3986044.34佐藤
1.5154380.3965934.83佐藤
1.6161220.3982124.44皆川
1.7120260.3934115.59皆川
1.8116040.3936685.53永山
1.9103910.3906956.24永山
210921-0.3951035.18
32328-0.32476222.06
41500-0.15501362.80服部
5432-0.06527884.33服部
63570.21306248.87梶原
71960.101975.55梶原
81040.115862472.20工藤
9810.125511869.88工藤
1078-0.0773381.44佐々木
1163-0.199952.03佐々木

http:http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/kadai5.png

11/17(金)創造工房4回目 [#y86d3d92]

片持ち梁の解析(サロメ) [#ydde7141]

メッシュ長さ要素数先端変位(4隅の平均値)[mm]相対誤差(\( \frac{salome-手計算}{手計算} \))計算者
0.71984646.542811.91安藤
0.81138126.51042.39安藤
0.9402806.36315254.60兼田
1.1300556.33635255.00兼田
1.2264676.30433755.48柴田
1.3251806.3043555.48柴田
1.4322126.316125.31佐藤
1.5177536.12098.23佐藤
1.6142966.20446256.98皆川
1.7135966.21566256.81皆川
1.828665.73775513.98永山
1.960015.726362514.15永山
256175.645852515.355
323095.472875517.948
46173.61605750.458服部
54943.85803750.422服部
65812.5068262.416梶原
71331.4122578.827梶原
8781.288717580.68工藤
9721.287992580.69工藤
10601.1434482.85佐々木
11651.2312481.154佐々木

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/katamoti4.png 11/10 (金) 創造工房3回目 [#pc409efa]

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2023/satou/b.png

10/27(金) 創造工房実習2回目 [#r022fb54]

コマンド [#nbf6e469]

ls :今いる場所

cd :ファイルを開く

pwd :今いる場所

gedit (ファイル名) :テキストファイルを開く

cp (ファイル名) :コピー

vi (ファイル名) :テキスト上で表示

Esc : q  テキストを閉じる (w 保存 q 出る)

cat  :確認

rm (ファイル名) :削除

cd .. :一つ前に戻る

cd /(住所) :住所にいく

10/20(金)創造工房1回目 [#ae52abcf] あああああ

表サンプル [#ebafbcdf]

メッシュの長さ要素数変位[mm]相対誤差(salome−手計算/手計算)計算者
0.7安藤
0.8安藤
0.9兼田
1.1兼田
1.2.柴田
1.3柴田
1.4佐藤
1.5佐藤
1.6皆川
1.7皆川
1.8永山
1.9永山
2
3
4服部
5服部
6梶原
7梶原
8.工藤
9工藤
10佐々木
11佐々木

Ubuntuについて

CPUについて

環境構築

ITにおける「環境」とは、導入されるシステムやソフトウェアから見た、そのコンピュータ全体のこと 環境構築とは、作業に適した環境を整えること  実行環境と開発環境がある

実行環境

実行環境とは、プログラムやソフトウェアが稼働するために必要なものが揃っている環境のこと プログラムやソフトウェアを動かすためには、条件を整える必要がある。 回線や機材といったハードウェアや、そのプログラミムが動作するためのコンピューター内のソフトウェアです。 「実行環境構築」とは、あるプログラムやソフトウェアを動かすための環境を整えることを指す

開発環境

システムを開発するために必要な環境のことを指す。また、インターネットが必要であれば準備をする 必要なソフトウェアがあればインストールするなど、開発に必要な条件を整えることを「開発環境構築」という 「開発環境」で開発されたシステムは「テスト環境」にて正しく動作するか検証され、ここで問題がなければ「本番環境」と呼ばれる環境で実際に使われることになる。

ローカル環境

個人のコンピュータ内に構築された環境のこと 仮想マシンとは、ローカル環境の中に、ある特定の環境を模して構築されたソフトウェアのこと 個人のコンピュータの中に、擬似サーバーを用意するというイメージ

UNIXコマンド https://www.str.ce.akita-u.ac.jp/~gotou/linux/vine.html#unix

vs codeの開き方:ターミナルでcodeと入力 pythonの開き方:ターミナルでpython(バージョン)と入力 pythonの閉じ方:ctrl + D

anacondaのライブラリなどを開く方法:cd anaconda3 → python

※「,」は表中に入れてしまうと、列が増えてしまうため「,(大文字)」or「、」のどちらかで入力している

用語意味使い方例(入力)出力結果
len長さを測るlen('python')6
str引数を文字列に変換する'python'+ str(version)'python3.6'
printデータの内容を表示するprint('python', 3.6)python 3.6
printsepをつけた場合print('python',sep='---'python---3
range範囲、並びnumber_list10 = range(10) -> number_list_10range(0、10)
address変数に名前をつける(文字列データ)address = 'Tokyo、Japan'特になし
split分けるaddress.split(',')['Tokyo','Japan']
splitaddress.aplit('o')['T'、'ky'、'Japan'、]
upper文字を大文字に変換する文字列のメソッドaddress.upper()'TOKYO'、'JAPAN'
index引数で指定した文字が最初に出てくるのが何文字目かaddress.index('、')5(indecは最初の文字を0として数える)
importインポートするimport datetime

リスト(list)

空っぽのリストを作る ー> new_list = []

list組み込み関数list(range(1、11)「一から始まって11の手前まで」という意味になる[1、2、3、4、5、6、7、8、9、10]
list_Aリストを作るlist_int = [0、1、2、3] -> print(list_int)[0、1、2、3]
list_A[x] = [1]xを1に変えるlist_int[0] = 1特になし
list_A.append(1)一番うしろに1という要素を追加list_int.append(1)特になし
list_A.insert(x、y)xの要素の前にyを追加list_int.insert(1、5)特になし
list_A.pop(x)x番目の要素を戻すと同時に削除list_int.pop(1)]
list_A.remove('X')指定の要素をそのまま削除list_mix.remove('test')
list_A + list_mixリストの連結list_int + list_mix
list_A.extend(list_B)リストの拡張list_int.extend(list_mix)

リスト並べ替え「list_A.メソッド」

メソッド意味備考
sort小さい順 昇順文字はアルファベット順、大文字ー>小文字の順
reverseデータの順番を逆さまにする

タプル(要素の追加や削除ができないリスト)

tuple_test = (1、2、3、'100yen')

セット(単純なデータの集まり リストやタプルのように順番もなければ辞書のような値を呼び出すキーもない 箱の中におもちゃが入っているイメージ)

特徴は同じものを2つ入れられない

test_set = set()setを作成
test_set.add(1)要素を追加
test_set.remove(3)要素を削除

辞書型

変数 = {key:value}意味
country_code = {1:'America'、39:'Italia、86:'China'}組み合わせを作成
country_code[81] = 'Japan'81とJapanという組み合わせを追加

datetime型 [#wb96f17d]

データ型説明
dateある1日の(年月日)を表現する
timeある時刻(時分秒)を表現する
datetimeある日のある時刻(年月日時分秒)を表現する
timedelta2つの時点の差を表現する
tzinfo世界中の時間を扱うためのどこのタイムゾーンであるかの情報を保持する

mnistデータファイルについて

mnistデータの詳細について

mnistとは人が手で書いた0から9までの数字を大量に集めた画像データ集
学習者はこれらのデータを教師データとして取り込みモデルを学習させ、そのモデルをテストすることで学習がどのように実行されるかを学ぶ。

・データとラベルの違い

データ→手書きで書かれた数字を画像にした画像データ
ラベル→その画像に書かれた数字を表すものをラベルという

load_mnist関数「(訓練画像,訓練ラベル),(テスト画像,テストラベル)」

・重みとバイアスを訓練データに適応するように調整することを「学習」という

ミニバッチ学習について

ミニバッチ学習を実施する上で重要となるのが、バッチサイズ
バッチサイズは、データをグループに分けた際の数がどれくらいになるのかをあらわしたもので、バッチサイズが小さいほど処理負担は小さく、大きいほど負荷が大きくなり、なおかつデータ1つ1つの個性も失われてしまう傾向にある
基本的にバッチサイズは小さいサイズから始めるのが効果的である。バッチサイズが小さいと学習にかかる時間を短くできるだけでなく、データの個性を尊重しながら学習を進められる
バッチサイズが小さい場合はノイズの影響を受けやすくなるため、対策が必要→そこで役立つのが学習率
小さいバッチサイズで学習率を大きく設定することでノイズの影響を受けにくくできます。

opencvをインストールする

pip install opencv-python

ディープラーニングで必要なスペック

cv2とは画像を扱うためのpythonライブラリ内に存在するモジュールのこと
kerasはニューラルネットワークのライブラリ「読みやすく簡潔なアーキテクチャで迅速に実装が可能であること」「機械向けではなく人間向けに設計冴えたユーザーフレンドリーなライブラリ」であることを重視して設計されている

STEP(機械学習)

STEP(判別データ)

  多様な状態の耐候性鋼材の画像を大量に収集

  →実際に撮る以外の方法はあるのか、過去に撮った画像や既存のデータセットなど

     評点ごとにわける(先生の意見を元に)

     pythonのPILやOpenCVなどのライブラリを使用して画像をnumpy配列として読み込む

     全ての画像を同じサイズにリサイズ→→→アスペクト比を維持するか、中心部分を切り取るか

     RBGの調整

     サビの色や質感をより効果的に捉えられる色空間を選択する

     十分なデータ数がない場合、データを回転させたり反転させてデータを増やす

    データの割合は以下の割合となるようにしたい

データ割合
トレーニングセット60〜70%
検証セット15〜20%
テストセット15〜20%

異なる条件で撮影された画像を標準化 

モデルの学習と推論時の入力を統一

参考情報 [#d409f6cf]

さびの外観評点は、さび粒子の大きさ、量、ばらつき、さび粒子の色調、さび粒子の凹凸などから総合的に判定される。そこで、複数のパラメータ間の非線形関係を構築できるニューラルネットワークにより、これらのパラメータと外観評点の関連付け

セロテープ試験とニューラルネットワークを併用すれば、比較的正確なさび腐食状況の定量化が可能になることが確認できた。しかし、セロテープ試験は現地での作業性を考えると接写撮影に比べて劣る。そのため、筆者写真を画像処理することで、簡易かつ高精度なさびの腐食状況の定量化の検討を行っていく

得られた画像を試験たいの腐食による質量増加量と紐づける

現状では橋梁毎に経時的な腐食画像を取得し、CNN分類機を作成して健全度判定を行うといったことが望ましいと考えられる

鋼材腐食部の画像処理に基づく劣化度判定の現状

鋼材の画像に基づく劣化損傷度の正確な診断を目指す場合、鋼材の腐食劣化の程度と外観の関係、言い換えれば、腐食環境に大きく依存する腐食の健全度と外観の関係が紐づけられた教師データに基づく機械学習を行う必要があるが、これら紐づけられたデータは依然として少ないなど課題が残されている

環境整備

実行環境

gpu GeForce RTX 4060

Python 3.11.9

tensorflow 2.17.0

anaconda

インストール

参考サイト [#p932fad1]

コマンド

vscode

インストール 

参考サイト [#zc4f5880]

日本語にする

参考サイト

tensorflow

tensorflowとは

googleが開発した、機械学習のソフトウェアライブラリ

ライブラリとはプログラムを組む際によく利用するコードなど、必要な部品をまとめたファイルのこと

tensorflowの1番の特徴は、ニューラルネットワークの構築、訓練ができるシステムの要求に答えられる点

ニューラルネットワークとは、私達人間の脳内にある神経細胞(ニューロン)の繋がりを数式的なモデルで表現したもの

このニューラルネットワークを使用することで、機会が人間と同じように論理的思考や学習を行うことができる

tensorflowの特徴

インストール

参考サイト [#c07794bc]

pip install --upgrade pip
pip install tensorflow 
install後の確認は以下のコマンドを実行
imoprt tensorflow as tf
print(tf.__version__)

TensorRT

tensorRTがやっていることは推論エンジンの生成と推論実行

インストール

参考サイト

参考サイト2

参考サイト

python ライブラリ

opencv

tips

image magic

ファイル解凍コマンド

unzip ~~~.zip

pythonバージョン確認

python -V or python --version or python3 --version

パーミッションを変更する

-rw-rw-r

wikiに画像が貼れないとき

ls -l

で画像を確認

-rw-rw-r

変なスペースが入っていないか→入っている場合 '.png 'となっている

gFTPのパーミッションを変更する

サーバーにアクセスして直接変更する

テキストエディタ

gimp

imagemagic

モデル

grad-camについて

latex

画像を横並びにする

\begin{figure}[H]
\begin{center}
 \begin{minipage}[h]{3.4cm}
  \begin{center}
   \includegraphics[width=10mm]{zu1.png}  %png画像も読み込める
   \caption{画像例1}
   \label{rei1}
  \end{center}
 \end{minipage}
 \begin{minipage}[h]{3.4cm}
  \begin{center}
   \includegraphics[width=10mm]{zu1.png}  %png画像も読み込める
   \caption{画像例1}
   \label{rei1}
  \end{center}
 \end{minipage}
\end{center}
\end{figure}

表を横並びにする

\begin{table}[htbp]
  \begin{minipage}[c]{0.5\hsize}
    \centering
    \begin{tabular}{cc}
      hoge & fuga \\
      gee & boo \\
      foo & bar \\ \hline
    \end{tabular}
    \caption{hoge}
    \label{tb:table1}
  \end{minipage}
  \begin{minipage}[c]{0.5\hsize}
    \centering
    \begin{tabular}{cc}
      sin & cos \\ \hline\hline
      love & hate \\
      holy & meteo \\ \hline
    \end{tabular}
    \caption{fuga}
    \label{tb:table2}
  \end{minipage}
\end{table}

RGB

https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1023/RGB.png https://www.str.ce.akita-u.ac.jp/~gotouhan/j2024/sato/1023/3.png

色補正について

色補正手順

画像の抜き出し

gimp 
切り取りのアイコン → 縦横比固定 1:1

unixコマンド

aの中身のファイルをbの中にファイルとしてコピーする

rsync -auv ./a/* ./b/

画像サイズ変換

convert -geometry "50%" 元のファイル名 変えたいファイル名
convert 元のファイル名 -resize 800x600 変えたいファイル名

pukiwiki


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-11-01 (金) 15:58:38