星期四

 皆さんこんにちは、リュウタツと申します、中国から来ました、AIデザイン学科の一年生です。

私のテーマは「極東の地」です。

実に中国では日本といえば日中戦争を思い出すでしょう、日本に来る前は日本人ってまだ敵なのかな、仲良くできるかなっと思いました。ようやく、去年の4月にこの極東の地に来ました、飛行機から東京を見る時に:これが日本の首都なのか、金色の光が地上にちらっと光っていた、これからの生活はどうなるだろう、不安でもしましたが、裏返して見るとそんなに大変でもなかったです、日本人たちも優しかったです。

そして日本一体どんな国なのか考えていました、歴史から見るとたしかあっちこっち戦争を起こしてしまったですが、戦争をやめて平和憲法も設立し、もう戦争しないと誓いました;人を殺していましたが、いい薬や商品を作って世界中にもいい響きになりました。そう、わたしが見つけた日本は平和の日本です。

広島と長崎が

星期一

python利用字典爬取网页

 我们有一个包,叫做pycrawler,利用这个包可以放心地爬取网页数据,利用的是chome的内核,在启用此爬取器时,首先要生成一个map来设定爬取规则,爬取器会自动利用此爬取规则进行爬取网页数据,当网站是静态的get请求时你只需要一个规则就可以爬取指定数据,包还会自动帮你去除某些网站里的多余空格和<br/>。

包内还含有数据扁平化工具,如果你需要此包,请联系我。


星期四

在Flutter中使用NumberPicker(数字选择器)

首先说明一下pick这个英文单词,这个单词是 ‘挑选而取出一个’ 的意思,而pick up是捡起的意思。

NumberPicker的包地址是:numberpicker: ^1.2.1 #请在包中心选择更新版本

此包使用NumberPicker类进行使用,但默认的构造函数是不能用的。

decimal:在数据库中也有使用的单词,意思是‘带小数点的’。
horizontal:打横的,水平的。
integer:整数。

看似只有数字能够选择的样子,但事实上并不是如此,只是内部是利用数字来进行分别,其中有一个函参(函数型参数)叫做textMapper,此函数会导入一个String并要求一个String,看到Mapper就知道相当于一个转换器的感觉。

这次我使用integer的构造函数来看看效果,代码如下:
然后效果如下:
功能是用来选择二进的长度,用于创建数据表时设定长度,当然代码的效果只是中间那条数字选择带,值得注意的是实际上value只是0到16,而利用mapper使输出变为2的value次方而已,获取值时需要再次运算一下结果。

mapper:映射器。

以上


星期六

どうやってwidgetにイベントを入れます?


どうやってwidgetにイベントを入れますか
以下のコードの通りすればいいです

InkWell( 
     onTap: () {
         //イベント 
     }, 
     child: //貴方のwidget 
 );


他のtoolでもあります:

GestureDetector(
    ontap: () {},
)

どうやってユーザー別にFirebaseのrealtime database

以下のコードをコピーして図の通りに書き込めばるいいでしょう

// These rules grant access to a node matching the authenticated
// user's ID from the Firebase auth token
{
  "rules": {
    "users": {
      "$uid": {
        ".read": "$uid === auth.uid",
        ".write": "$uid === auth.uid"
      },
    }
  }
}

在Flutter中使用Firebase的Event

首先是获取analytics:
FirebaseAnalytics analytics = FirebaseAnalytics();

主要有以下几个函数:
  • signup(注册):analytics.logSignUp(signUpMethod: aimAcount); 这个signUpMethod是个字符串,这里可以标识在哪个服务商进行登录。

星期四

AIプログラミング講義

これからAIプログラミング2に関する講義を行っていきます。
この講義では、AIそのものがどのような経緯を経て学問として成立してきたかを、コンピュータの歴史とともに探っていきます。どのような学問でもそれが重要な学問であればあるほど、必ず過去の知識や研究を土台にして発展し形成されてきています。今最も注目されている「AI」という学問も全く同じです。その中で使用されている言葉(用語)のほとんどのものが、数学、統計学、計算機科学の言葉です。従って、AIを学ぶためには、このようなその基本になっている学問を理解することが非常に重要になってくるわけです。
そして、さらにもう一つ重要なこととして技術発展のすさまじい速さを理解してもらう必要があります。コンピュータが商用化されて人々が使い始めた頃と、現在では技術進歩のスピードが格段に違います。
今回起きたコロナ問題も「デジタル化」進展におそらく大きな影響を与えるはずです。現在(2020年)は昨年には想像もつかない社会状況になっていますが、悲観的な局面だけではなく、情報技術の分野はとても大きな飛躍が望まれる時期だと思います。その中でも、特にAI技術者に対する期待は非常に大きなものになっています。皆さんが、そのチャンスを最大限生かして自分の能力を向上させていくことを私は強く願っています。

Flutter发布安卓app时的准备

/android/app/src/main/AndroidManifest.xml文件中

  • application: 编辑 alabel 标签, 这是应用的名称。



首先是设置图标:安装下面一套图标处理工具:
dev_dependencies:
    ......
    flutter_launcher_icons: "^0.7.5"

flutter_icons:
    android: "launcher_icon"
    ios: true
    image_path: "assets/icon/icon.png"

运行命令: flutter pub run flutter_launcher_icons:main
然后检查安卓的图标文件会发现launcher_icon.png文件被新增了,感觉不对,要改的应该是ic_launcher.png,所以更改flutter_icons: 设置中的android: 改为 ic_launcher 重新运行命令就发现成功了。

创建密匙
 在此我建议使用KeyStore Explorer来创建密匙,在自己创建时总是遇到不明错误,在Stack Overflow也找不到原因。密匙时间问题:在创建密匙时,要在30年后的

发布到谷歌

在项目目录中打开一个新终端,然后键入:

cd android

当您在项目的android目录中时,键入以下命令

./gradlew clean

请特别注意./如果您仅键入gradlew clean,即使gradlew确实位于“ android”目录中,它也将无法工作

清除gradle缓存后,只需再次运行build命令

    注意,在AndroidStudio中进行发布,如果有错误,试下运行上面代码和flutter clean,build->Flutter 中进行build,有时不会弹出flutter,点击页面等等就行 


更改启动时的白屏闪动

flutter pub pub run flutter_native_splash:create











星期一

機械学習のF値 F-measure

  • 正解率 (精度, accuracy):正や負と予測したデータのうち,実際にそうであるものの割合
    • mathrm: Accuracy={TP+TN} / {TP+FP+TN+FN}
  • 適合率 (precision):正と予測したデータのうち,実際に正であるものの割合
    • mathrm: Precision={TP} / {TP+FP}
  • 再現率 (recall, 感度, sensitivity):実際に正であるもののうち,正であると予測されたものの割合
    • mathrm: Recall={TP}/{TP+FN}
  • 特異度 (specificity):実際に負であるもののうち,負であると予測されたものの割合
    • mathrm: Specificity={TN}/{FP+TN}
  • F値 (F尺度, F-measure):再現率適合率調和平均
    • 2 * mathrm: Recall * mathrm: Precision / mathrm: Recall + mathrm: Precision
  • ブレイクイブンポイント (breakeven point): 精度を上昇させると共に,再現率を下降させる,またその逆も可能なパラーメータを調整して,再現率と精度が同じになるとき,そのときの再現率(=精度)
離陰至陽 為之 数拠之判真
陰 negative
陽 positive

星期六

Firebase用户中的多种状态与其转换的测试

在FirebaseAuth中应用中用户形态大致被分为3种:有信息用户[有]、匿名用户[匿](默认用户)、未登陆[未]
  • 在未登录时获取的user总是为null
  • 在匿名用户时,获取头像url等将被返回null
  • 在匿名用户时,历遍user.providerData将只有一个厂商为firebase的关联账户
在用户形态中互相转换也需要注意:
  • [未->有]  从未登录转到有信息用户(虽然未尝试,但理所当然是会创建新的ID进行登录)
  • [匿->有]  从匿名用户转到有信息用户
    • 当有信息用户曾经登录过时,匿名用户将会被登出并更换为有信息用户(非link情况,link情况将报错,如下)
    • 经测试,当有信息用户是新用户时,仍然会创建新的用户ID进行登录,正在寻找此解决方案。(此时所利用的是 _auth.signInWithCredential(credential)  进行的用户登录
    • 经过进一步测试,如果是需要从匿名用户转到有信息用户的话,必须从现在匿名用户的user中的linkWithCredential(credential) 成员进行绑定,注意在此时用户信息并不会更新,只有从null直接登录才会登录用户资料,请自行增加用户资料
    • 匿名用户的user中的linkWithCredential(credential) 成员进行转换到已经有信息的账号时,将会弹出一个错误:出现异常:PlatformException (PlatformException(ERROR_CREDENTIAL_ALREADY_IN_USE, This credential is already associated with a different user account., null))
  • [other->未]  当登出时,进入未登录状态,匿名用户若未链接,可能此用户被飘在虚无中
  • [有->匿]  当从未登录进入匿名用户时,创建一个新的匿名用户进行登录(由于匿名用户没有给与credential所以已登录用户是无法绑定匿名用户的 >> 本身有信息用户就包含着一个匿名用户资料
顺带一提,在有信息用户内的 providerData 是这样的:{firebase:<uid> , google.com: <谷歌的专有ID:如123456...>} 而在应用中获取的uid是firebase的。如果是匿名用户,则内部是这样的:{firebase:<uid>}
如果考虑到Firebase有信息用户异常的形态时,或许有以下几种情况:
  • 在登录状态时,在其他设备发生密码修改的操作。
  • 在登录状态时,该用户被删除或删除。
  • 在已经绑定某服务商时,在其他设备实施解绑操作。
在Firebase用户管理中可以对Firebase有信息用户进行以下三项设置:
接下来将进行测试

  • 删除Firebase有信息用户账号时
    • 在删除账号时,实时数据库的数据并不会删除,这是可以预想到的。而这可能会产生数据的沉余。
    • 在删除账号后,客户端并不会发生错误、自动掉线等,用户仍能正常使用,实时数据库数据也能正常读取。
    • 在删除用户后,客户端重新调用登录用户时,并不会跳出请求登录页面,而是自动利用服务商来生成一个新的Firebase有信息用户,此时的用户ID不再是之前删除的用户ID了。再读取数据时也发现数据为空。
  • 停用Firebase有信息用户账号时
    • 在停用账号后,客户端并没有什么反应,数据也能读取。
    • 在停用账号后再从新登陆时,客户端发生错误:出现异常。PlatformException (PlatformException(ERROR_USER_DISABLED, The user account has been disabled by an administrator., null))
    • 此错误发生在://用凭据进行登录
    • var result =await _auth.signInWithCredential(credential);   行中,返回的result也为null
    • 启用账户后从新登陆将如旧运行。





 皆さんこんにちは、リュウタツと申します、中国から来ました、AIデザイン学科の一年生です。 私のテーマは「極東の地」です。 実に中国では日本といえば日中戦争を思い出すでしょう、日本に来る前は日本人ってまだ敵なのかな、仲良くできるかなっと思いました。ようやく、去年の4月にこの極東の...